Build fixes for kqueue support.
[emacs.git] / ChangeLog.2
blob3d0812c2230428a1bce53fb03b1f7ebf79382a6e
1 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
3         * CONTRIBUTE: Remove information about feature freeze.
5         Merge branch 'release-process-lowercase'
7 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
9         Document the release process
11         * admin/notes/versioning: Add information about RC releases.
12         * admin/release-process: Document the release process.
13         * admin/authors.el (authors-ignored-files):
14         * admin/README: Change FOR-RELEASE to release-process.
15         * CONTRIBUTE:
16         * admin/notes/bugtracker: Don't mention FOR-RELEASE.
18 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
20         * admin/release-process: Rename from admin/FOR-RELEASE.
22 2015-11-14  David Engster  <deng@randomsample.de>
24         gitmerge: Fix git log command
26         * admin/gitmerge.el (gitmerge-missing): Use '--left-only' since we
27         only want commits from the branch that is to be merged.
28         (gitmerge-setup-log-buffer): Use the same symmetric range as in
29         `gitmerge-missing'.
31 2015-11-14  David Engster  <deng@randomsample.de>
33         gitmerge: Try to detect cherry-picks
35         * admin/gitmerge.el (gitmerge-default-branch): Change to
36         origin/emacs-25.
37         (gitmerge-missing): Use symmetric difference ('...') between
38         branch and master so that cherry-picks can be detected.
40 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
42         Increment Emacs version on master branch
44         * lisp/cus-edit.el (customize-changed-options-previous-release):
45         Increase previous version to 24.5.
47         * configure.ac:
48         * msdos/sed2v2.inp: Bump version to 25.1.50.
50 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
52         Mention CONTRIBUTE in README, since it was moved from etc/ to root.
53         * etc/TODO: Remove the reference to `etc/CONTRIBUTE'.
54         * README: Mention CONTRIBUTE.
56 2015-11-13  Wilson Snyder  <wsnyder@wsnyder.org>
58         Update verilog-mode.el to 2015-11-09-b121d60-vpo
60         * verilog-mode.el (verilog-auto, verilog-delete-auto)
61         (verilog-modi-cache-results, verilog-save-buffer-state)
62         (verilog-save-font-no-change-functions): When internally suppressing
63         change functions, use `inhibit-modification-hooks' and call
64         `after-change-funtions' to more nicely work with user hooks.
65         Reported by Stefan Monnier.
66         (verilog-auto, verilog-delete-auto, verilog-delete-auto-buffer):
67         Create `verilog-delete-auto-buffer' to avoid double-calling
68         fontification hooks.
69         (verilog-restore-buffer-modified-p, verilog-auto)
70         (verilog-save-buffer-state): Prefer restore-buffer-modified-p over
71         set-buffer-modified-p.  Reported by Stefan Monnier.
72         (verilog-diff-auto, verilog-diff-buffers-p)
73         (verilog-diff-ignore-regexp): Add `verilog-diff-ignore-regexp'.
74         (verilog-auto-inst-port, verilog-read-sub-decls-expr): Fix
75         AUTOINST with unpacked dimensional parameters, bug981.  Reported by
76         by Amol Nagapurkar.
77         (verilog-read-decls, verilog-read-sub-decls-line): Avoid unneeded
78         properties inside internal structures.  No functional change
79         intended.
81 2015-11-13  Dmitry Gutov  <dgutov@yandex.ru>
83         Use generic dispatch for xref backends
85         * lisp/progmodes/xref.el (xref-backend-functions):
86         New variable.
87         (xref-find-function): Remove.
88         (xref-find-backend)
89         (xref--etags-backend): New functions.
90         (xref-identifier-at-point-function)
91         (xref-identifier-completion-table-function): Remove.
92         (xref-backend-definitions, xref-backend-references)
93         (xref-backend-apropos, xref-backend-identifier-at-point)
94         (xref-backend-identifier-completion-table):
95         New generic functions.
97         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
98         Add `elisp--xref-backend' to the beginning of
99         `xref-backend-functions', locally.  Delete references to
100         removed functions and vars.
101         (elisp-xref-find): Remove.
102         (elisp--xref-backend): New function.
103         (elisp--xref-find-references, elisp--xref-find-apropos)
104         (elisp--xref-identifier-completion-table):
105         Turn into appropriately named generic methods.
107         * lisp/progmodes/etags.el (etags-xref-find): Remove.
108         (xref-backend-identifier-completion-table)
109         (xref-backend-references, xref-backend-definitions)
110         (xref-backend-apropos): New generic methods.
112 2015-11-13  Juri Linkov  <juri@linkov.net>
114         Support rectangular regions for more commands
116         * lisp/simple.el (region-extract-function): Handle the arg
117         value ‘bounds’.
118         (region-insert-function): New function.
119         (shell-command-on-region): Add arg ‘region-noncontiguous-p’.
120         If non-nil, operate on multiple chunks.
121         (region-noncontiguous-p): New function.
123         * lisp/rect.el: Add function rectangle--insert-region
124         around region-insert-function.
125         (extract-rectangle-bounds): New function.
126         (rectangle--extract-region): Handle the arg value ‘bounds’.
127         (rectangle--insert-region): New function.
129         * lisp/emulation/cua-rect.el: Add function cua--insert-rectangle
130         around region-insert-function.
131         (cua--extract-rectangle-bounds): New function.
132         (cua--rectangle-region-extract): Handle the arg value ‘bounds’.
134         * lisp/replace.el (query-replace, query-replace-regexp): Add arg
135         ‘region-noncontiguous-p’.  Use ‘use-region-p’.
136         (query-replace-regexp-eval, map-query-replace-regexp)
137         (replace-string, replace-regexp): Use ‘use-region-p’.
138         (keep-lines, flush-lines, how-many): Use ‘use-region-p’.
139         (perform-replace): Add arg ‘region-noncontiguous-p’.
140         If non-nil, operate on multiple chunks.
142         * src/casefiddle.c (Fdowncase_region): Add arg ‘region-noncontiguous-p’.
143         If non-nil, operate on multiple chunks.  (Bug#19829)
145 2015-11-13  Dmitry Gutov  <dgutov@yandex.ru>
147         Handle multiple matches on the same line; add highlighting
149         * lisp/progmodes/xref.el (xref-location-marker): Interpret the
150         column value in characters.
151         (xref--collect-matches): Rename from `xref--collect-match'.
152         Search for all matches in the hit line.  Add `highlight' face to
153         the matched region in the summary.  Update both callers.
155 2015-11-13  Dmitry Gutov  <dgutov@yandex.ru>
157         Replace xref-match-bounds with xref-match-length
159         Relying on xref-location-marker to point to the beginning of the match
161         * lisp/progmodes/xref.el (xref-match-bounds): Remove.
162         (xref-match-length): Add.
163         (xref-make-match): Change the arguments.
164         (xref--match-buffer-bounds): Remove.
165         (xref-match-item): Store length, instead of end-column.
166         (xref-pulse-momentarily)
167         (xref--collect-match)
168         (xref--query-replace-1): Update accordingly.
169         (xref-query-replace): Ditto.  And check that the search results
170         are up-to-date.
172 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
174         Merge from gnulib
176         This incorporates:
177         2015-11-13 xalloc-oversized: improve performance with GCC 5
178         * lib/xalloc-oversized.h: Copy from gnulib.
180 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
182         Spruce up ftfont.c memory allocation
184         * src/ftfont.c (setup_otf_gstring):
185         Avoid O(N**2) behavior when reallocating.
186         (ftfont_shape_by_flt): Prefer xpalloc to xrealloc when
187         reallocating buffers; this simplifies the code.  Do not trust
188         mflt_run to leave the output areas unchanged on failure, as
189         this isn’t part of its interface spec.
191 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
193         Port recent XCB changes to 64-bit ‘long int’
195         For historical reasons, libX11 represents 32-bit values like Atoms as
196         ‘long int’ even on platforms where ‘long int’ is 64 bits.  XCB doesn’t
197         do that, so adapt the recent XCB code to behave properly on 64-bit
198         platforms.  Also, fix what appears to be a bug in the interpretation
199         of xcb_get_property_value_length, at least on my Fedora platform
200         which is running libxcb-1.11-5.fc21.
201         * src/xfns.c (x_real_pos_and_offsets):
202         * src/xterm.c (get_current_wm_state):
203         xcb_get_property_value_length returns a byte count, not a word count.
204         For 32-bit quantities, xcb_get_property_value returns a vector
205         of 32-bit words, not of (possibly 64-bit) long int.
207 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
209         * src/undo.c (run_undoable_change): Now static.
211 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
213         Remove support for ':timeout' from w32 tray notifications
215         * src/w32fns.c (Fw32_notification_notify): Delete the code that
216         supports ':timeout'.
217         (syms_of_w32fns): Don't DEFSYM ':timeout'.  This avoids clashes
218         with dbusbind.c when D-Bus is compiled in.
220         * doc/lispref/os.texi (Desktop Notifications): Don't mention
221         ':timeout'.
223 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
225         * test/automated/simple-test.el: Add test for bug#20698 (bug#21885)
226         (simple-test--transpositions): New macro.
227         (simple-transpose-subr): New test.
229 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
231         * lisp/progmodes/elisp-mode.el: Declare function `project-roots'
233 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
235         * src/undo.c: Small fixes for previous change
236         (run_undoable_change): Mark void argument list.
237         (record_property_change): Remove unused variable `boundary'.
239 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
241         Add a few more variables to redisplay--variables
243         * lisp/frame.el (redisplay--variables): Add bidi-paragraph-direction
244         and bidi-display-reordering to the list.
246 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
248         * lisp/loadup.el: Enlarge the size of the hash table to 80000.
250 2015-11-13  Eli Barzilay  <eli@barzilay.org>
252         Fix point positioning after transposing with negative arg
254         * lisp/simple.el (transpose-subr): When invoked with a negative
255         argument, move point to after the transposed text, like we do
256         when invoked with a positive argument.  (Bug#21885)
258 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
260         Fix last change in shr.el
262         * lisp/net/shr.el (shr--have-one-fringe-p): Rename from
263         have-fringes-p.  All callers changed.  Doc fix.  (Bug#21895)
265 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
267         Fix last change
269         * src/w32fns.c (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]:
270         Don't DEFSYM tray notification symbols if D-Bus is being used.
272 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
274         Another fix for MinGW64 and Cygwin builds due to notifications
276         * src/w32fns.c: Ifdef away tray notification code if D-Bus is
277         being compiled into Emacs.
278         (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]: Don't defsubr
279         Sw32_notification_notify and Sw32_notification_close if the code
280         is not compiled.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
282 2015-11-12  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
284         Remove intern calls and XXX comments from Fx_export_frames
286         * src/xfns.c (Fx_export_frames): Use Qpdf, Qpng, Qpostscript, and
287         Qsvg instead of intern calls.  Use "postscript" instead of "ps"
288         for consistency with image types.  Remove XXX comments.
289         (syms_of_xfns) <Qpdf>: DEFSYM it.
291 2015-11-12  Eric Hanchrow  <eric.hanchrow@gmail.com>
293         shr: don't invoke unbound function (Bug#21895)
295         * lisp/net/shr.el (have-fringes-p): New function.
296         (shr-insert-document, shr-fill-text): Use it.
298 2015-11-12  Juanma Barranquero  <lekktu@gmail.com>
300         * test/automated/keymaps-test.el: Fix test to make it repeatable
302         (keymap-store_in_keymap-FASTINT-on-nonchars): Reset Buffer-menu-mode-map
303         entry to its initial value to make the test repeatable in interactive
304         sessions (assuming it doesn't fail and crashes Emacs, of course).
306 2015-11-12  Artur Malabarba  <bruce.connor.am@gmail.com>
308         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors):
309         Small fix.
311 2015-11-12  Phillip Lord  <phillip.lord@newcastle.ac.uk>
313         The heuristic that Emacs uses to add an `undo-boundary' has been
314         reworked, as it interacts poorly with functions on `post-command-hook'
315         or `after-change-functions'.
317         * lisp/simple.el: New section added.
318         * src/cmds.c (remove_excessive_undo_boundaries): Now in lisp.
319         (self_insert_command): Calls simple.el to amalgamate.
320         (delete_char): Calls simple.el to amalgamate.
321         * src/keyboard.c (last_undo_boundary): Removed.
322         * src/undo.c (run_undoable_change): New function.
324 2015-11-12  Juri Linkov  <juri@linkov.net>
326         Bind [?\S-\ ] to previous line command in Dired-like modes
328         * lisp/arc-mode.el (archive-mode-map):
329         * lisp/dired.el (dired-mode-map):
330         * lisp/proced.el (proced-mode-map):
331         * lisp/vc/vc-dir.el (vc-dir-mode-map):
332         Bind [?\S-\ ] to previous line command.
333         (Bug#20790)
335 2015-11-12  Eli Zaretskii  <eliz@gnu.org>
337         Fix the MinGW64 and Cygwin-w32 builds
339         * src/w32fns.c (MYNOTIFYICONDATAW_V1_SIZE)
340         (MYNOTIFYICONDATAW_V2_SIZE, MYNOTIFYICONDATAW_V3_SIZE): Define and
341         use instead of the corresponding NOTIFYICONDATAW_Vn_SIZE macros,
342         which cause trouble with MinGW42 headers.  Ifdef away tray
343         notifications code for Cygwin.  Reported by Andy Moreton
344         <andrewjmoreton@gmail.com>.
346 2015-11-12  Simen Heggestøyl  <simenheg@gmail.com>
348         Enable sorting of JSON object keys when encoding
350         * lisp/json.el (json-encoding-object-sort-predicate): New variable
351         for specifying a sorting predicate for JSON objects during encoding.
352         (json--plist-to-alist): New utility function.
353         (json-encode-hash-table): Re-use `json-encode-alist' when object keys
354         are to be sorted.
355         (json-encode-alist): Sort output by
356         `json-encoding-object-sort-predicate, when set.
357         (json-encode-plist): Re-use `json-encode-alist' when object keys are
358         to be sorted.
359         (json-pretty-print-buffer-ordered): New command to pretty print the
360         buffer with object keys sorted alphabetically.
361         (json-pretty-print-ordered): New command to pretty print the region
362         with object keys sorted alphabetically.
364         * test/automated/json-tests.el (test-json-plist-to-alist)
365         (test-json-encode-plist, test-json-encode-hash-table)
366         (test-json-encode-alist-with-sort-predicate)
367         (test-json-encode-plist-with-sort-predicate): New tests.
369         * etc/NEWS: Add an entry for the new commands.
371 2015-11-12  Juanma Barranquero  <lekktu@gmail.com>
373         * test/automated/keymap-tests.el: New test file.
375 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
377         Speed up x_real_pos_and_offsets using XCB
379         * src/xfns.c (x_real_pos_and_offsets) [USE_XCB]: Add XCB flavors of
380         all X calls, and pipeline requests when possible, collecting results
381         later.  Eliminate use of x_catch_errors (and thus XSync) in XCB case.
383 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
385         Enable use of XCB for checking window manager state
387         * src/xterm.c (get_current_wm_state) [USE_XCB]: Use XCB calls instead
388         of XGetWindowProperty plus error-catching, since we can explicitly
389         check for errors in the XCB version.  This eliminates 3 XSync calls on
390         top of the round-trip actually fetching the information.
392 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
394         Detect XCB and save a connection handle
396         * configure.ac: If using X11, check for XCB libraries and header.
397         * src/Makefile.in (XCB_LIBS): Define.
398         (LIBX_EXTRA): Include it.
400         * src/xterm.h [USE_XCB]: Include X11/Xlib-xcb.h.
401         (struct x_display_info) [USE_XCB]: Add an XCB connection handle field.
402         * src/xterm.c (x_term_init) [USE_XCB]: Initialize the new field.
404 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
406         Reduce some data dependencies between X calls
408         Gains nothing in the traditional-Xlib code, but more closely aligns
409         with how the XCB version will work.
411         * src/xfns.c (x_real_pos_and_offsets): When translating coordinates,
412         send coordinates (0,0) to the X server and add in the real coordinates
413         after getting the response.  Move XGetGeometry for outer window inside
414         error-trapping block.  Use DPY variable more, since it's available.
416 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
418         Use color cache for creating bitmap
420         * src/image.c (x_create_bitmap_from_xpm_data) [ALLOC_XPM_COLORS]:
421         Set attributes to use the caching color allocator.  Initialize and
422         free the cache.
424 2015-11-12  Eli Barzilay  <eli@barzilay.org>
426         Add "^" to the interactive specs of `dired-next/previous-line'
428         * lisp/dired.el (dired-next-line, dired-previous-line): It makes sense
429         to bind these commands to the arrow keys, and that means that they work
430         better with a "^" in the `interactive' declaration so selection works
431         as expected.
433 2015-11-11  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
435         Sync with soap-client repository, version 3.0.2
437         * soap-client.el: Bump version to 3.0.2.
439         * soap-client.el (soap-warning): Use format, not format-message.
441         * soap-client.el: Add cl-lib to Package-Requires.  Require cl-lib.
442         (soap-validate-xs-simple-type): Use cl-labels instead of cl-flet.
444         * soap-client.el: Support Emacs versions that do not have
445         define-error.
447         * soap-inspect.el: Remove version header.
449         * soap-client.el, soap-inspect.el, jira2.el: Fix first line header
450         format.
452 2015-11-11  Alan Mackenzie  <acm@muc.de>
454         CC Mode: Respect users' settings of open-paren-in-column-0-is-defun-start
456         * lisp/progmodes/cc-engine.el (c-backward-single-comment)
457         (c-backward-comments, c-invalidate-state-cache-1, c-parse-state-1)
458         (c-guess-basic-syntax):
459         Remove bindings of open-paren-in-column-0-is-defun-start to nil.
460         (c-get-fallback-scan-pos): "New" function (existed several years ago).
461         (c-parse-state-get-strategy): Reintroduce the 'BOD strategy, using
462         c-get-fallback-scan-pos.
463         (c-parse-state-1): Handle 'BOD strategy.
465         * lisp/progmodes/cc-mode.el (c-before-change, c-after-change)
466         (c-font-lock-fontify-region): Remove bindings of
467         open-paren-in-column-0-is-defun-start to nil.
469         * doc/misc/cc-mode.texi (Performance Issues)
470         (Limitations and Known Bugs): Fix mix up between @chapter and @appendix.
472 2015-11-11  Artur Malabarba  <bruce.connor.am@gmail.com>
474         * lisp/obarray.el: Fix shadowed variables.
475         (obarray-map, obarray-remove, obarray-put, obarray-get):
476         Change OBARRAY arg to OB to avoid shadowing ‘obarray’.
478 2015-11-11  Eli Zaretskii  <eliz@gnu.org>
480         Avoid error in submitting a form with EWW
482         * lisp/gnus/mm-url.el (mm-url-form-encode-xwfu): Allow argument
483         CHUNK to be nil.  (Bug#21881)
485 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
487         Rename seq-p and map-p to seqp and mapp
489         * lisp/emacs-lisp/seq.el (seqp): New name.
490         * lisp/emacs-lisp/map.el (mapp): New name.
491         * doc/lispref/sequences.texi: Update the documentation for seqp.
492         * test/automated/map-tests.el: Update the tests for mapp.
494 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
496         Rename obarray-p to obarrayp
498         * lisp/obarray.el (obarrayp): New name.
499         * test/automated/obarray-tests.el: Update the tests.
501 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
503         Rename obarray-foreach to obarray-map
505         * lisp/obarray.el (obarray-map): New name.
506         * test/automated/obarray-tests.el: Update the corresponding tests.
508 2015-11-11  Przemysław Wojnowski  <esperanto@cumego.com>
510         New file with obarray functions
512         * lisp/obarray.el: Basic obarray functions extracted from abbrev.el.
513         * test/automated/obarray-tests.el: New file.
515 2015-11-11  Eli Zaretskii  <eliz@gnu.org>
517         Implement tray notifications for MS-Windows
519         * src/w32fns.c (MY_NOTIFYICONDATAW): New typedef.
520         (NOTIFYICONDATAW_V1_SIZE, NOTIFYICONDATAW_V2_SIZE)
521         (NOTIFYICONDATAW_V3_SIZE, NIF_INFO, NIIF_NONE, NIIF_INFO)
522         (NIIF_WARNING, NIIF_ERROR, EMACS_TRAY_NOTIFICATION_ID)
523         (EMACS_NOTIFICATION_MSG): New macros.
524         (NI_Severity): New enumeration.
525         (get_dll_version, utf8_mbslen_lim, add_tray_notification)
526         (delete_tray_notification, Fw32_notification_notify)
527         (Fw32_notification_close): New functions.
528         (syms_of_w32fns): Defsubr functions exposed to Lisp.  DEFSYM
529         keywords used by w32-notification-notify.
531         * doc/lispref/os.texi (Desktop Notifications): Describe the native
532         w32 tray notifications.
534 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
536         Optimize `file-equal-p' and `file-in-directory-p' in Tramp
538         * lisp/net/tramp.el (tramp-handle-file-equal-p)
539         (tramp-handle-file-in-directory-p): New defuns.  Suggested by
540         Harvey Chapman <hchapman@3gfp.com>.
542         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
543         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
544         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist):
545         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist): Use them.
547 2015-11-10  Karl Fogel  <kfogel@red-bean.com>
549         * CONTRIBUTE: Encourage adding tests.
551         Based on this post from John Wiegley:
553           From: "John Wiegley" <johnw@newartisans.com>
554           Subject: Re: [Emacs-diffs] master 1f02cbe: Fix bug#21766 and add test
555           To: Juanma Barranquero <lekktu@gmail.com>
556           Cc: emacs-diffs@gnu.org, bruce.connor.am@gmail.com,
557               emacs-devel <emacs-devel@gnu.org>
558           Date: Wed, 28 Oct 2015 18:45:29 -0700
559           Message-ID: <m2y4emqwg6.fsf@newartisans.com>
561           https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02372.html
563 2015-11-10  David Reitter  <david.reitter@gmail.com>
565         Avoid creating notification objects when possible
567         * src/nsterm.m (windowWillEnterFullScreen, windowWillExitFullScreen:)
568         (windowDidEnterFullScreen, windowDidExitFullScreen): Provide convenience
569         functions that do not require a notification object.  When needed,
570         define NSWindowDidEnterFullScreenNotification to allow for compilation
571         on OS X 10.6.8.
573 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
575         Move INTEGER_TO_CONS body out of .h file
577         * src/data.c (INTBIG_TO_LISP): New macro, with most
578         of the contents of the old INTEGER_TO_CONS.
579         (intbig_to_lisp, uintbig_to_lisp): New functions.
580         * src/lisp.h (INTEGER_TO_CONS):
581         Simplify by using EXPR_SIGNED and the new functions.
582         This shrinks code size a bit, and makes it easier to
583         put a breakpoint on handling of large integers.
585 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
587         Merge from gnulib
589         This incorporates:
590         2015-11-10 intprops: new public macro EXPR_SIGNED
591         2015-11-10 intprops: fix typo in clang port
592         * lib/intprops.h: Copy from gnulib.
594 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
596         Spelling fixes
598         * lisp/net/soap-inspect.el (soap-inspect-xs-simple-type):
599         Fix misspelling in output.
601 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
603         * doc/lispref/variables.texi (Directory Local Variables):
604         Document dir-locals wildcards.
606         * lisp/files.el (dir-locals-file): Point to Info node.
608         * doc/emacs/custom.texi (Directory Variables):
609         Document dir-locals wildcards.
611         * etc/NEWS: Document new functionality.
613 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
615         * lisp/files.el: Don't allow customization of dir-locals sorting.
616         In retrospect, this is not a good idea for the same reason that
617         `dir-locals-file' is a defconst, because it is important that this
618         behaviour be "uniform across different environments and users".
619         Sure, the user can still change the sorting with a hack, but we
620         shouldn't encourage them to change it.
621         (dir-locals--all-files): Return list in the order returned by
622         `file-expand-wildcards'.
623         (file-expand-wildcards): Document the sorting predicate used.
624         (dir-locals-sort-predicate): Delete variable.
626 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
628         * lisp/files.el (dir-locals-read-from-file): Better handle errors.
630         * lisp/isearch.el (search-default-regexp-mode): Change default value.
632 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
634         * lisp/files.el (dir-locals-find-file): Don't stop at unreadable files.
635         `locate-dominating-file' will now keep looking if the files it finds in
636         a given directory are unreadable (or not files).
638 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
640         * lisp/files.el (dir-locals-file): Allow wildcards.
641         (dir-locals-find-file, dir-locals-collect-variables)
642         (dir-locals-read-from-file): Update accordingly.
643         (hack-dir-local-variables): Rename a local variable.
645         * lisp/files-x.el (modify-dir-local-variable): Update accordingly.
647         * lisp/help-fns.el (describe-variable): Update accordingly.
649         * .gitignore: Add .dir-locals?.el.
651 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
653         * lisp/emacs-lisp/map.el (map-merge-with): New function.
655         * test/automated/map-tests.el (test-map-merge-with): New test.
657 2015-11-09  Karl Fogel  <kfogel@red-bean.com>
659         Fix some recently-perturbed bookmark autoloads
661         * lisp/bookmark.el (bookmark-set-internal): Remove unnecessary autoload.
662         (bookmark-set): Restore autoload.
663         (bookmark-set-no-overwrite): Add autoload.
665         Thanks to Juanma Barranquero for noticing the autoload problems
666         introduced by my recent commit adding/changing the above functions
667         (Sun Nov 8 14:16:43 2015 -0500, git commit 3812e17978).
669 2015-11-09  Noah Friedman  <friedman@splode.com>
671         * etc/emacs-buffer.gdb (ydump-buffer): Handle case where gap is at
672         the start of buffer.  I don't recall if older versions of gdb were
673         less strict but you cannot dump a 0-length range in gdb 7.9.1.
675 2015-11-09  Dmitry Gutov  <dgutov@yandex.ru>
677         * lisp/progmodes/project.el: Update Commentary.
679         Merge branch 'project-next'
681 2015-11-09  Dmitry Gutov  <dgutov@yandex.ru>
683         Fold `project-ask-user' into `project-current'
685         * lisp/progmodes/project.el (project-find-functions):
686         Remove `project-ask-user'.
687         (project-ask-user): Remove function and the corresponding
688         `project-roots' implementation.
689         (project-current): Add a new argument, MAYBE-PROMPT.  Prompt the
690         user in case there's no project in the current directory.  Update
691         all callers.
693 2015-11-09  Karl Fogel  <kfogel@red-bean.com>
695         When VC detects a conflict, specify which file
697         * lisp/vc/vc.el (vc-message-unresolved-conflicts): New function.
698         * lisp/vc/vc-svn.el (vc-svn-find-file-hook):
699         * lisp/vc/vc-hg.el (vc-hg-find-file-hook):
700         * lisp/vc/vc-bzr.el (vc-bzr-find-file-hook):
701         * lisp/vc/vc-git.el (vc-git-find-file-hook): Use above new function
702           to display a standard message that specifies the conflicted file.
704         Before this change, the message VC used for indicating a conflicted
705         file was just "There are unresolved conflicts in this file" without
706         naming the file (and this language was duplicated in several places).
707         After this change, it's "There are unresolved conflicts in file FOO"
708         (and this language is now centralized in one function in vc.el).
710         Justification: It's important for the message to name the conflicted
711         file because the moment when VC realizes a file is conflicted does not
712         always come interactively.  For example, some people automatically
713         find a set of Org Mode files on startup, and may keep those .org files
714         under version control.  If any of the files are conflicted, the user
715         just sees some messages fly by, and might later check the "*Messages*"
716         buffer to find out what files were conflicted.  I'm not saying this
717         happened to me or anything; it's a purely hypothetical example.
719 2015-11-09  Eli Zaretskii  <eliz@gnu.org>
721         Fix assertion violation in define-key
723         * src/keymap.c (store_in_keymap): Don't use XFASTINT on non-character
724         objects.  Reported by Drew Adams <drew.adams@oracle.com>
725         and Juanma Barranquero <lekktu@gmail.com>.
727 2015-11-09  Dima Kogan  <dima@secretsauce.net>
729         Fix a memory leak in GC of font cache
731         * src/alloc.c (compact_font_cache_entry): Don't GC unmarked font
732         entities if some of the fonts it references are marked.  This
733         plugs a memory leak.  (Bug#21556)
735 2015-11-09  Paul Eggert  <eggert@cs.ucla.edu>
737         Use INT_ADD_WRAPV etc. to check integer overflow
739         * src/alloc.c (xnmalloc, xnrealloc, xpalloc, Fmake_string):
740         * src/buffer.c (record_overlay_string, overlay_strings):
741         * src/casefiddle.c (casify_object):
742         * src/ccl.c (Fccl_execute_on_string):
743         * src/character.c (char_width, c_string_width, lisp_string_width)
744         (count_size_as_multibyte, string_escape_byte8):
745         * src/coding.c (coding_alloc_by_realloc, produce_chars):
746         * src/data.c (arith_driver):
747         * src/dispnew.c (realloc_glyph_pool, init_display):
748         * src/editfns.c (styled_format):
749         * src/fns.c (Ffillarray):
750         * src/ftfont.c (ftfont_shape_by_flt):
751         * src/gnutls.c (gnutls_hex_string):
752         * src/gtkutil.c (get_utf8_string):
753         * src/image.c (x_to_xcolors, x_detect_edges, png_load_body):
754         * src/keymap.c (Fkey_description):
755         * src/lisp.h (SAFE_ALLOCA_LISP):
756         * src/term.c (encode_terminal_code):
757         * src/tparam.c (tparam1):
758         * src/xselect.c (x_property_data_to_lisp):
759         * src/xsmfns.c (smc_save_yourself_CB):
760         * src/xterm.c (x_term_init):
761         When checking for integer overflow, prefer INT_MULTIPLY_WRAPV to
762         more-complicated code involving division and/or
763         INT_MULTIPLY_OVERFLOW, and similarly for INT_ADD_WRAPV and
764         subtraction and/or INT_ADD_OVERFLOW.
765         * src/casefiddle.c (casify_object): Simplify multibyte size check.
766         * src/character.c: Remove some obsolete ‘#ifdef emacs’s.
767         * src/data.c (arith_driver): Also check for division overflow,
768         as that’s now possible given that the accumulator can now contain
769         any Emacs integer.
770         * src/lisp.h (lisp_word_count): Remove; no longer used.
772 2015-11-08  Dmitry Gutov  <dgutov@yandex.ru>
774         Make sure that the ignore file exists
776         * lisp/vc/vc.el (vc-default-ignore-completion-table):
777         Make sure that the ignore file exists.
779 2015-11-08  Michael Sperber  <mike@xemacs.org>
781         * gnus-sum.el (gnus-summary-backend-map): Bind B-backspace to
782         `gnus-summary-delete-article` in a way that also works on XEmacs.
784 2015-11-08  Simen Heggestøyl  <simenheg@gmail.com>
786         Add support for retrieving paths to JSON elements
788         Add support for retrieving the path to a JSON element. This can for
789         instance be useful to retrieve paths in deeply nested JSON
790         structures.
792         * lisp/json.el (json-pre-element-read-function)
793         (json-post-element-read-function): New variables to hold pre- and post
794         read callback functions for `json-read-array' and `json-read-object'.
795         (json--path): New variable used internally by `json-path-to-position'.
796         (json--record-path, json--check-position): New functions used
797         internally by `json-path-to-position'.
798         (json-path-to-position): New function for retrieving the path to a
799         JSON element at a given position.
800         (json-read-object, json-read-array): Call
801         `json-pre-element-read-function' and `json-post-element-read-function'
802         when set.
804         * test/automated/json-tests.el (test-json-path-to-position-with-objects)
805         (test-json-path-to-position-with-arrays)
806         (test-json-path-to-position-no-match): New tests for
807         `json-path-to-position'.
809 2015-11-08  Karl Fogel  <kfogel@red-bean.com>
811         * etc/NEWS: Mention new `bookmark-set-no-overwrite'.
813         This really should been part of my previous commit
814         (Sun Nov 8 14:16:43 2015 -0500, git commit 3812e17978).
816 2015-11-08  Karl Fogel  <kfogel@red-bean.com>
818         Offer non-overwrite bookmark setter (Bug#15746)
820         * lisp/bookmark.el (bookmark-set-internal): New helper function to do
821         what `bookmark-set' used to do, but with more choices for overwrite
822         vs push, and with minor changes to the interactive prompt format.
823         (bookmark-set): Rewrite as wrapper around above.
824         If overwriting, inform the user of that in the prompt.
825         (bookmark-set-no-overwrite): New function, also done as wrapper.
826         Bind to "M" in `ctl-x-r-map' autoloads.
827         (bookmark-map): Similarly bind "M" here.
829 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
831         * src/unexelf.c (NEW_PROGRAM_H): Remove unused macro (Bug#20614).
833 2015-11-08  Alan Modra  <amodra@gmail.com>
835         ELF unexec: Don't insert a new section
837         Reuse the .bss section instead, making it SHT_PROGBITS.  This way we
838         don't need to mess with symbol st_shndx, or section sh_link and
839         sh_info.
841         This does lead to eu-elflint complaints about symbols defined in .bss
842         with a needed version, because normally it is undefined symbols that
843         have needed versions;  Defined symbols have version definitions.
844         The exception is symbols defined by the linker in .dynbss for
845         variables copied from a shared library in order to avoid text
846         relocations, with copy relocs to copy their initial values from the
847         shared library.  These symbols are both defined and have needed
848         versions, and eu-elflink only expects to see them in SHT_NOBITS
849         sections.  Of course there is no real problem with having such symbols
850         in SHT_PROGBITS sections.  glibc ld.so handles them fine.
852         * src/unexelf.c: Delete outdated comments.
853         (PATCH_INDEX): Delete.
854         (find_section): Delete.
855         (unexec): Don't add a new section.  Instead reuse the last bss
856         section, extending it to cover dumped data.  Make bss sections
857         SHT_PROGBITS.  Remove all patching of sh_link, sh_info and
858         st_shndx.  Rename bss sections.
860 2015-11-08  Alan Modra  <amodra@gmail.com>
862         ELF unexec: Drive from PT_LOAD header rather than sections
864         This rewrites bss handling in the ELF unexec code.  Finding bss
865         sections by name results in complicated code that
866         - does not account for all names of possible bss sections,
867         - assumes specific ordering of bss sections,
868         - can wrongly choose a SHT_NOBITS section not in the bss segment,
869         - incorrectly calculates bss size (no accounting for alignment gaps),
870         - assumes .data and .bss are in the same segment.
872         All of these problems and more are solved by finding the bss segment
873         in PT_LOAD headers, ie. the address range included in p_memsz but not
874         p_filesz of the last PT_LOAD header, then matching SHT_NOBITS sections
875         in that address range.
877         * src/unexelf.c: Delete old ppc comment.
878         (OLD_PROGRAM_H): Define.
879         (round_up): Delete.
880         (unexec): Don't search for bss style sections by name.  Instead,
881         use the last PT_LOAD header address range covered by p_memsz
882         but not p_filesz and match any SHT_NOBITS section in that
883         address range.  Simplify initialisation of section header vars.
884         Don't assume that section headers are above bss segment.  Move
885         copying of bss area out of section loop.  Align .data2 section
886         to 1, since it now covers the entire bss area.  For SHT_NOBITS
887         sections in the bss segment, leave sh_addr and sh_addralign
888         unchanged, but correct sh_offset.  Clear memory corresponding
889         to SHT_NOBITS .plt section.  Delete comment and hacks for
890         sections partly overlapping bss range now that the full range
891         is properly calculated.  Delete now dead .sbss code.
892         (Bug#20614)
894 2015-11-08  Alan Modra  <amodra@gmail.com>
896         ELF unexec: R_*_NONE relocs
898         These should be ignored on all targets.
900         * src/unexelf.c (unexec): Ignore R_*_NONE relocs for any target,
901         not just Alpha.  Comment on reloc size assumption.
903 2015-11-08  Alan Modra  <amodra@gmail.com>
905         ELF unexec: _OBJC_ symbols in bss sections
907         This code assumed that there was only one bss section.  Rather than
908         checking for a particular index, check the section type.  Also, handle
909         the possibility that the section was SHT_NOBITS originally and is
910         unchanged, in which case no clearing is needed (and sh_offset isn't
911         necessarily valid, which can lead to a wild memset).
913         * src/unexelf.c (unexec): Properly handle _OBJC_ symbols in
914         bss sections.
916 2015-11-08  Alan Modra  <amodra@gmail.com>
918         ELF unexec: Symbol table patching
920         No st_shndx value larger than SHN_LORESERVE should be changed.
921         * src/unexelf.c (unexec): Don't adjust any st_shndx larger than
922         SHN_LORESERVE.  Error on SHN_XINDEX.
924 2015-11-08  Alan Modra  <amodra@gmail.com>
926         ELF unexec: Merge Alpha and MIPS COFF debug handling
928         * src/unexelf.c (unexec): Merge Alpha and MIPS COFF debug handling.
929         Don't find .mdebug section index, find the section in the loop.
930         Allow for unlikely possibility that .mdebug is located at sh_offset
931         before bss segment, by calculating move from difference in
932         sh_offset rather than just assuming new_data2_size.  Simplify
933         cbLineOffset handling.
935 2015-11-08  Alan Modra  <amodra@gmail.com>
937         ELF unexec: Tidy code
939         Separate out some of the more mechanical changes so following patches
940         are smaller.
942         * src/unexelf.c (unexec): Rearrange initialisation of program
943         header vars.  Use pointer vars in loops rather than indexing
944         section header array via macros.  Simplify _OBJC_ sym code
945         and reloc handling code.
947 2015-11-08  Alan Modra  <amodra@gmail.com>
949         ELF unexec: Correct section header index
951         First a small fix.  The code incorrectly uses "NEW_SECTION_H (n)" when
952         it should have been using "NEW_SECTION_H (nn)" to find the name of the
953         section currently being processed.  Of course, before the bss
954         sections, n and nn have the same value, so this doesn't matter except
955         in the case of .sbss.  For .sbss this probably meant .bss (most likely
956         the next section) was copied from memory.  A later patch removes the
957         bogus .sbss handling anyway.
959         * src/unexelf.c (unexec): Use correct index to look up names.
961 2015-11-08  Michael Albinus  <michael.albinus@gmx.de>
963         Fix Bug#21841
965         * lisp/filenotify.el (file-notify--rm-descriptor):
966         Use `descriptor' instead of computing its value.
967         (file-notify--descriptor): Additional argument FILE.  Adapt all callees.
968         (file-notify-rm-watch): Use `descriptor' when calling file name handler.
969         (Bug#21841)
971 2015-11-08  Dmitry Gutov  <dgutov@yandex.ru>
973         Remove dirs in vc project roots from the the vc project library roots
975         * lisp/progmodes/project.el (project-library-roots):
976         Remove directories inside the project roots from the result.
977         (http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg00536.html)
979 2015-11-07  Dmitry Gutov  <dgutov@yandex.ru>
981         Move and rename xref-find-regexp to the project package
983         * lisp/progmodes/project.el (project-find-regexp)
984         (project--read-regexp)
985         (project--find-regexp-in): New functions.
987         * lisp/progmodes/xref.el (xref--find-xrefs): Extract from
988         xref--show-xrefs.  Use in existing callers in place of that
989         function.
990         (xref--show-xrefs): Only do the "show" part.
991         (xref-find-regexp): Rename, more or less, to
992         project-or-libraries-find-regexp.
994 2015-11-06  Dmitry Gutov  <dgutov@yandex.ru>
996         Abolish temporary buffer management for xref
998         * lisp/progmodes/xref.el (xref--temporary-buffers)
999         (xref--current)
1000         (xref--inhibit-mark-current)
1001         (xref--mark-selected): Remove.  Remove all references.
1002         (xref--show-xrefs): Do not construct the
1003         list of the temporary buffers, nor pass it along.
1005 2015-11-06  Dmitry Gutov  <dgutov@yandex.ru>
1007         Rename "search path" to "library roots"
1009         * lisp/emacs-lisp/cl-seq.el (cl-set-difference): Retain the order
1010         of the elements from CL-LIST1.
1012         * test/automated/cl-lib-tests.el (cl-lib-test-set-functions):
1013         Update WRT to the above change.
1015         * lisp/progmodes/project.el (project-search-path-function): Rename
1016         to project-library-roots-function, update the documentation and
1017         references.
1018         (project-search-path): Likewise, to project-library-roots.
1019         (project-roots): Clarify documentation.
1020         (project-vc-search-path): Likewise, to project-vc-library-roots.
1021         (project-library-roots): In addition to the renames, thread the
1022         results through file-name-as-directory.
1023         (project-prune-directories): Accept a variable number of
1024         arguments.  Rename to project-combine-directories.
1025         (project-subtract-directories): New function.
1027         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
1028         Append project-roots and project-library-roots together.
1030         * lisp/progmodes/etags.el (etags--xref-find-references): Ditto.
1032 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
1034         Prefer xpalloc to doubling buffers by hand
1036         * src/lread.c (grow_read_buffer): New function, which uses xpalloc.
1037         (read1): Use it for simplicity.
1038         * src/macros.c (store_kbd_macro_char):
1039         * src/minibuf.c (read_minibuf_noninteractive):
1040         * src/term.c (encode_terminal_code):
1041         * src/xrdb.c (magic_db):
1042         Prefer xpalloc to growing buffers by hand.
1043         This doesn’t fix any bugs, but simplifies the code a bit.
1045 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
1047         Merge from gnulib
1049         This incorporates:
1050         2015-11-05 timespec-sub: fix overflow bug; add tests
1051         2015-11-04 intprops: revise _WRAPV macros, revert _OVERFLOW
1052         2015-11-03 intprops: add parentheses
1053         * lib/intprops.h, lib/timespec-add.c, lib/timespec-sub.c:
1054         Copy from gnulib.
1056 2015-11-07  David Reitter  <david.reitter@gmail.com>
1058         Provide NS notification objects where required to eliminate warnings
1060         * nsterm.m (windowDidResize:, toggleFullScreen:):
1061         Call notification functions with notification objects
1062         as per delegate APIs.
1064 2015-11-07  Noam Postavsky  <npostavs@users.sourceforge.net>
1066         Add test for bug #21824
1068         * test/automated/buffer-tests.el: New file.
1069         (overlay-modification-hooks-message-other-buf): New test.
1071 2015-11-07  Kelvin White  <kwhite@gnu.org>
1073         * lisp/erc/erc-pcomplete.el (pcomplete-erc-nicks): Fix bug#18771.
1075 2015-11-07  David Reitter  <david.reitter@gmail.com>
1077         Ignore fullscreen exit notifications on NS when frame is dead
1079         * nsterm.m (windowDidResize:, windowWillExitFullScreen:)
1080         (windowDidExitFullScreen:): Return if frame is dead.
1081         These functions may be called when a fullscreen frame
1082         is closed; they are called before, not after.
1084         May address Bug#21428.
1086 2015-11-07  Eli Zaretskii  <eliz@gnu.org>
1088         Speed up lookup in redisplay--variables
1090         * lisp/frame.el (redisplay--variables): Make it a hash-table.
1092         * src/xdisp.c (maybe_set_redisplay): Access redisplay--variables
1093         as a hash-table.  This speeds up this function by an order of
1094         magnitude: where previously a setq was slowed down by 100% by
1095         introducing the maybe_set_redisplay test, it is now only 5%
1096         slower.
1097         (syms_of_xdisp) <redisplay--variables>: Doc fix.
1099 2015-11-07  Artur Malabarba  <bruce.connor.am@gmail.com>
1101         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Fix a bug.
1103         The defsubst was being created as:
1104             (cl-defsubst name (args) ("DOC") ...)
1106         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors):
1107         Add test.
1109 2015-11-07  Mihai Olteanu  <mihai_olteanu@fastmail.fm>  (tiny change)
1111         Update doc string of hexl-mode
1113         * lisp/hexl.el (hexl-mode): Doc fix.  (Bug#21800)
1115 2015-11-07  Eli Zaretskii  <eliz@gnu.org>
1117         Fix error in copy-abbrev-table
1119         * lisp/abbrev.el (define-abbrev): Don't erase the :abbrev-table-modiff
1120         property of the abbrev-table.  (Bug#21828)
1122         * test/automated/abbrev-tests.el: New file.
1124 2015-11-07  Michael Albinus  <michael.albinus@gmx.de>
1126         Add test to auto-revert-tests.el for Bug#21841
1128         * test/automated/auto-revert-tests.el
1129         (auto-revert-test01-auto-revert-several-files): New test.
1130         (auto-revert-test02-auto-revert-tail-mode)
1131         (auto-revert-test03-auto-revert-mode-dired): Rename them.
1133 2015-11-07  Martin Rudalics  <rudalics@gmx.at>
1135         * doc/lispref/windows.texi (Coordinates and Windows): Fix typo.
1137 2015-11-07  Martin Rudalics  <rudalics@gmx.at>
1139         In x_consider_frame_title don't set title of tooltip frames
1141         * src/xdisp.c (x_consider_frame_title): Return immediately for
1142         tooltip frames to avoid displaying empty tooltips.
1144 2015-11-06  Anders Lindgren  <andlind@gmail.com>
1146         Fixed NextStep fullscreen problem (bug#21770).
1148         * src/nsterm.m (ns_constrain_all_frames): Don't constrain
1149         fullscreen frames.
1151 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
1153         Ensure redisplay after evaluation
1155         * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp):
1156         Revert last change.
1157         * lisp/frame.el (redisplay--variables): Populate the
1158         redisplay--variables list.
1159         * src/xdisp.c (maybe_set_redisplay): New function.
1160         (syms_of_xdisp) <redisplay--variables>: New variable.
1161         * src/window.h (maybe_set_redisplay): Declare prototype.
1162         * src/data.c (set_internal): Call maybe_set_redisplay.  (Bug#21835)
1164 2015-11-06  Artur Malabarba  <bruce.connor.am@gmail.com>
1166         * test/automated/subr-tests.el (subr-test-when): Fix again.
1168 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
1170         Don't invoke overlay modification hooks in wrong buffer
1172         * src/buffer.c (report_overlay_modification): When called with
1173         AFTER non-zero, don't invoke overlay modification hooks if the
1174         buffer recorded in last_overlay_modification_hooks is different
1175         from the current buffer.  (Bug#21824)
1177 2015-11-06  Juanma Barranquero  <lekktu@gmail.com>
1179         * admin/notes/repo: Fix a few obsolete references to Bazaar.
1181 2015-11-06  Artur Malabarba  <bruce.connor.am@gmail.com>
1183         * test/automated/subr-tests.el (subr-test-when): Fix test.
1185 2015-11-06  Martin Rudalics  <rudalics@gmx.at>
1187         Avoid division by zero crash observed by Yuan MEI
1189         See http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg00194.html.
1191         * src/dispnew.c (required_matrix_height, required_matrix_width):
1192         Avoid division by zero.
1193         * src/xterm.c (x_term_init): Init dpyinfo->smallest_font_height and
1194         dpyinfo->smallest_char_width to 1.
1196 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
1198         Ensure redisplay after "C-x C-e"
1200         * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp): Make sure
1201         redisplay happens to account for any side effects of the evaluated
1202         sexp.  (Bug#21835)
1204 2015-11-06  Michael Albinus  <michael.albinus@gmx.de>
1206         Skip some file notification tests for cygwin
1208         * test/automated/file-notify-tests.el (file-notify--test-with-events):
1209         Remove argument TIMEOUT.  Adapt all callees.
1210         (file-notify-test02-events, file-notify-test04-file-validity):
1211         Skip for cygwin.  (Bug#21804)
1213 2015-11-05  Stephen Leake  <stephen_leake@stephe-leake.org>
1215         * lisp/progmodes/xref.el: Require semantic/symref during compilation.
1217 2015-11-05  Daiki Ueno  <ueno@gnu.org>
1219         Suppress redundant Pinentry startup messages
1221         * lisp/net/pinentry.el (pinentry-start): Add optional QUIET argument.
1222         * lisp/epg.el: Declare `pinentry-start'.
1223         (epg--start): Call `pinentry-start' with QUIET argument set.
1225 2015-11-05  Xue Fuqiao  <xfq.free@gmail.com>
1227         * doc/emacs/ack.texi (Acknowledgments): Updates.
1229 2015-11-05  Juanma Barranquero  <lekktu@gmail.com>
1231         * test/automated/elisp-mode-test.el: Silence some run-time warnings.
1232         (xref-elisp-deftest): Bind `find-file-suppress-same-file-warnings' to t.
1234 2015-11-05  Tassilo Horn  <tsdh@gnu.org>
1236         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
1237         Add prettification support for \times.
1239 2015-11-05  Juanma Barranquero  <lekktu@gmail.com>
1241         * test/automated/process-tests.el: Skip tests when bash is unavailable.
1242         (process-test-sentinel-accept-process-output)
1243         (process-test-sentinel-sit-for): skip-unless bash executable found.
1245 2015-11-05  Eli Zaretskii  <eliz@gnu.org>
1247         Add test for bug #21831
1249         * test/automated/process-tests.el
1250         (start-process-should-not-modify-arguments): New test.  (Bug#21831)
1251         Suggested by Nicolas Richard <youngfrog@members.fsf.org>
1253 2015-11-04  Stefan Monnier  <monnier@iro.umontreal.ca>
1255         * lisp/emacs-lisp/eieio-compat.el: Typo caught by tests.
1257         (eieio--generic-static-object-generalizer): Fix typo.
1258         * test/automated/eieio-tests.el: Byte-compile it again.  It looks
1259         like the underlying cause of bug#17852 was fixed in the mean time.
1261 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
1263         Revert "* lisp/subr.el (when): Use `macroexp-progn'"
1265         This reverts commit 8e843831eaf271801836b7a3e4dd3b4fb0bb72b8.
1266         It breaks bootstrapping (duh).
1268 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
1270         * lisp/files.el (report-errors): Obsolete.
1272         (normal-mode, hack-local-variables, dir-locals-find-file):
1273         Use `with-demoted-errors' instead.
1275 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
1277         * lisp/subr.el (when): Use `macroexp-progn'.
1279         * test/automated/subr-tests.el (subr-test-when): New test.
1281 2015-11-04  Juanma Barranquero  <lekktu@gmail.com>
1283         * lisp/progmodes/xref.el: Doc fixes.
1284         (xref-make-file-location, xref-make-buffer-location, xref-make)
1285         (xref-make-bogus-location, xref-make-match): Add cross-references.
1286         (xref--insert-xrefs): Fix typo in docstring.
1288 2015-11-04  Anders Lindgren  <andlind@gmail.com>
1290         Render fringe bitmaps correctly on NextStep (bug#21301)
1292         The fringe bitmaps were inverted, the background was not transparent,
1293         the image data was horizontally mirrored, and periodic fringe bitmaps
1294         were not supported.
1296         * src/nsimage.m ([EmacsImage initFromXBM:width:height:fg:bg:]):
1297         When both background and foreground colors are 0, set the background
1298         alpha channel to 0 (making the background transparent).  When
1299         copying the image data, do this from the most significant bit
1300         (leftmost) to the least (rightmost), to avoid mirroring.
1301         * src/nsterm.m (ns_draw_fringe_bitmap): Don't invert the image bits.
1302         Add support for periodic images (e.g. the empty line indicator).
1304 2015-11-03  Michael Heerdegen  <michael_heerdegen@web.de>
1306         * lisp/emacs-lisp/pcase.el (pcase): Tweak docstring.
1308 2015-11-03  Nicolas Petton  <nicolas@petton.fr>
1310         * admin/MAINTAINERS: Add seq-tests.el, map-tests.el, and thunk-tests.el.
1312         * admin/MAINTAINERS: Add thunk.el.
1314 2015-11-03  Jay Belanger  <jay.p.belanger@gmail.com>
1316         * lisp/calc/calc (calc-bug-address): Change maintainer address.
1318 2015-11-03  Michael Albinus  <michael.albinus@gmx.de>
1320         Fix a stupid error in gfilenotify.c
1322         * src/gfilenotify.c (dir_monitor_callback): Cancel monitor only,
1323         if we've got a `deleted' signal AND the file name is the watched one.
1325 2015-11-03  Stephen Leake  <stephen_leake@stephe-leake.org>
1327         Fix Bug#21816; case insensitive file system in elisp-mode-tests.el
1329         * test/automated/elisp-mode-tests.el (xref-elisp-test-run):
1330         Use case-insensitive string compare for file names.
1331         (emacs-test-dir): Add 'downcase' to cause case differences (at
1332         least on my system).
1334 2015-11-02  Juanma Barranquero  <lekktu@gmail.com>
1336         flymake-tests.el (warning-predicate-rx-gcc): Fix check
1338         * test/automated/flymake-tests.el (warning-predicate-rx-gcc):
1339         Also check that "make" is available, not just "gcc".
1341 2015-11-02  Ken Brown  <kbrown@cornell.edu>
1343         Document behavior of collation on Cygwin
1345         * test/automated/fns-tests.el (fns-tests-collate-sort): Mark as
1346         expected failure on Cygwin.
1347         * doc/lispref/strings.texi (Text Comparison): Document that
1348         punctuation and whitespace are not ignored for sorting on Cygwin.
1350 2015-11-02  Dani Moncayo  <dmoncayo@gmail.com>
1352         * build-aux/msys-to-w32: Prevent double slashes in w32 path list.
1354 2015-11-01  Glenn Morris  <rgm@gnu.org>
1356         * lisp/progmodes/f90.el (f90-no-block-limit): Add associate.
1357         (Bug#21794)
1358         * test/automated/f90.el (f90-test-bug21794): New test.
1360 2015-11-01  Juanma Barranquero  <lekktu@gmail.com>
1362         Fix incompatibility with TCC in test for bug#18745
1364         * test/automated/process-tests.el (process-test-quoted-batfile):
1365         Remove spaces unrelated to the bug being tested.
1367 2015-11-01  Michael Albinus  <michael.albinus@gmx.de>
1369         Improve completion in tramp-gvfs.el
1371         * lisp/net/tramp-gvfs.el (tramp-zeroconf-parse-device-names):
1372         Rename from `tramp-zeroconf-parse-service-device-names'.
1373         (tramp-zeroconf-parse-webdav-device-names): Remove.  Code merged
1374         with `tramp-zeroconf-parse-device-names'.
1375         (tramp-gvfs-parse-device-names): New defun.
1376         (top): Use it when `tramp-zeroconf-parse-device-names' is not
1377         applicable.
1379         * lisp/net/tramp.el (tramp-set-completion-function): The argument
1380         could also be a zeroconf service type.
1382 2015-10-31  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
1384         * lisp/net/ntlm.el: Change version to 2.0.0.
1386 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
1388         Fix bug#21762
1389         * lisp/progmodes/python.el (python-syntax-closing-paren-p): Check with
1390         `eql' instead of `=' to accommodate the case that (syntax-after (point))
1391         returns nil.
1392         * test/automated/python-tests.el (python-indent-inside-paren-7):
1393         New test.
1395 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
1397         * test/automated/python-tests.el: Avoid warnings.
1398         (python-tests-with-temp-buffer, python-tests-with-temp-file):
1399         Bind `python-indent-guess-indent-offset' to nil.
1401 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
1403         * src/alloc.c: Silence compiler warnings.
1404         (pointers_fit_in_lispobj_p, mmap_lisp_allowed_p): #ifdef DOUG_LEA_MALLOC.
1406 2015-10-31  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
1408         * etc/NEWS: Fix js-jsx-mode entry punctuation.
1410 2015-10-31  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
1412         Add JSX indentation via js-jsx-mode  (Bug#21799)
1414         * progmodes/js.el: Add JSX indentation support.
1415         (js--jsx-end-tag-re)
1416         (js--jsx-after-tag-re): New variables.
1417         (js--jsx-find-before-tag)
1418         (js--jsx-indented-element-p)
1419         (js--as-sgml)
1420         (js--expression-in-sgml-indent-line)
1421         (js-jsx-indent-line)
1422         (js-jsx-mode): New functions.
1423         * test/indent/js-jsx.el: New file.
1424         * etc/NEWS: Add information about js-jsx-mode.
1426 2015-10-31  Michael Albinus  <michael.albinus@gmx.de>
1428         Minor fix in filenotify.el
1430         * lisp/filenotify.el (file-notify--event-file-name)
1431         (file-notify--event-file1-name): Normalize result with
1432         `directory-file-name'.
1434 2015-10-31  Eli Zaretskii  <eliz@gnu.org>
1436         Avoid errors in redisplay--pre-redisplay-functions
1438         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect): Don't
1439         use 'bobp', instead compare window-point with 1.  (Bug#21730)
1441 2015-10-30  Paul Eggert  <eggert@cs.ucla.edu>
1443         Merge from gnulib
1445         This incorporates:
1446         2015-10-30 intprops: add WRAPV and const flavors for GCC 5
1447         2015-10-25 stdalign: port to Sun C 5.9
1448         * doc/misc/texinfo.tex, lib/intprops.h, lib/stdalign.in.h:
1449         Copy from gnulib.
1451 2015-10-30  Eli Zaretskii  <eliz@gnu.org>
1453         * src/w32proc.c (_NLSCMPERROR): Fix a typo in the name of this macro.
1454         (w32_compare_strings): Adjust for the correction.
1456 2015-10-30  Michael Albinus  <michael.albinus@gmx.de>
1458         * test/automated/vc-tests.el (vc-test--state)
1459         (vc-test--working-revision, vc-test--checkout-model):
1460         Add result messages.
1462 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
1464         * test/automated/faces-tests.el: Add another test
1466 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
1468         * lisp/faces.el (faces--attribute-at-point): Fix bug
1469         introduced by previous commit.
1471 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
1473         * test/automated/faces-tests.el: New file.
1475 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
1477         * lisp/faces.el: Refactor common code and fix a bug.
1478         (faces--attribute-at-point): New function.  Fix a bug when the
1479         face at point is a list of faces and the desired attribute is not
1480         on the first one.
1481         (foreground-color-at-point, background-color-at-point): Use it.
1483 2015-10-30  Przemysław Wojnowski  <esperanto@cumego.com>
1485         * etc/tutorials/TUTORIAL.translators: Fix PL names.
1487 2015-10-30  Juanma Barranquero  <lekktu@gmail.com>
1489         * lisp/character-fold.el: Provide `character-fold'.
1491 2015-10-30  Tassilo Horn  <tsdh@gnu.org>
1493         * etc/themes/tsdh-dark-theme.el (tsdh-dark): Add more faces
1494         for Gnus and ivy.
1496 2015-10-30  Michael Albinus  <michael.albinus@gmx.de>
1498         Some minor fixes for tramp-gvfs.el
1500         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
1501         An attribute returned by gvfs-info might be empty.  In case of
1502         undetermined uid or gid, return "UNKNOWN" or -1, respectively.
1503         (tramp-zeroconf-parse-service-device-names): New defun.
1504         Derived from `tramp-zeroconf-parse-workstation-device-names'.
1505         (top): Add completion functions for "afp" and "smb" methods.
1507 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
1509         * test/automated/character-fold-tests.el: New file
1511 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
1513         * test/automated/sort-tests.el: New file.
1514         Tests in this file are randomly generated and then tested with
1515         regular, reverse, and case-fold sorting.
1517 2015-10-30  Eli Zaretskii  <eliz@gnu.org>
1519         Describe known problems with pinning Emacs to taskbar
1521         * etc/PROBLEMS: Describe the problem with pinning Emacs to taskbar
1522         on Windows 10.  For the details, see the discussion starting at
1523         http://lists.gnu.org/archive/html/help-emacs-windows/2015-09/msg00000.html.
1525 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
1527         * lisp/isearch.el: Avoid an error that blocks isearch.
1528         (isearch-update): Don't error if `isearch--current-buffer' has
1529         been killed.
1531         * test/automated/isearch-tests.el (isearch--test-update):
1532         New file.
1534 2015-10-30  Phil Sainty  <psainty@orcon.net.nz>
1536         Fix documentation of 'beginning/end-of-buffer'
1538         * lisp/simple.el (beginning-of-buffer, end-of-buffer): Clarify
1539         conditions under which the mark will be pushed at the previous
1540         position.  (Bug#21748)
1542 2015-10-30  Tassilo Horn  <tsdh@gnu.org>
1544         Add RefTeX feature idea: editing RefTeX TOC buffers
1546         More face defs for ivy, swiper, ace-window, eshell
1548 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
1550         * lisp/gnus/auth-source.el: Silence lexical-binding warnings.
1551         (auth-source-netrc-use-gpg-tokens): Simplify (symbol-value 'VAR) to
1552         just VAR.
1553         (auth-source-backend-parse): Use make-instance.
1554         (auth-source-search): Remove unused key args.
1555         Remove unused vars `accessor-key' and `backend'.  Avoid `eval'.
1556         (auth-source-search-backends): Use slot names rather than their initarg.
1557         (auth-source-netrc-create):
1558         (auth-source-delete):
1559         (auth-source-secrets-create, auth-source-plstore-search)
1560         (auth-source-macos-keychain-create, auth-source-macos-keychain-search)
1561         (auth-source-plstore-create, auth-source-netrc-search)
1562         (auth-source-netrc-parse): Remove unused key args.
1563         (auth-source-forget+): Simplify the arglist.
1564         (auth-source-macos-keychain-search-items)
1565         (auth-source-token-passphrase-callback-function): Mark unused args.
1566         (auth-source-epa-extract-gpg-token): Remove unused var `plain'.
1567         (pp-escape-newlines): Declare.
1568         (auto-source--symbol-keyword): New function.
1569         (auth-source-plstore-create, auth-source-netrc-create)
1570         (auth-source-netrc-normalize): Use it.
1571         (auth-source-netrc-search): Don't pass :delete to
1572         auth-source-netrc-parse since it doesn't use it.
1573         (auth-source-plstore-create, auth-source-netrc-create): Use plist-get
1574         symbol-value to index in keyword args.
1575         (auth-source-macos-keychain-result-append): Avoid setq.
1576         (auth-source-netrc-create): Remove unused vars `file' and `add'.
1577         (auth-source-user-or-password): Remove unused var `cname'.
1579 2015-10-29  Juri Linkov  <juri@linkov.net>
1581         * lisp/dired.el (dired-unmark-all-files-query): Declare.
1582         (dired-unmark-all-files): Let-bind it and use instead of ‘query’.
1583         (Bug#21746)
1585 2015-10-29  Juri Linkov  <juri@linkov.net>
1587         * lisp/ielm.el (ielm-indent-line): Use non-nil arg of comint-bol
1588         to go to the beginning of text line instead of command line.
1589         http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02360.html
1591 2015-10-29  Eli Zaretskii  <eliz@gnu.org>
1593         Fix encoding of saving *Help* buffers
1595         * lisp/help-fns.el (describe-function-1): If we use curved quotes,
1596         set help buffer's buffer-file-coding-system to UTF-8.  (Bug#21780)
1598 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
1600         * lisp/emacs-lisp/cl-generic.el: Add (major-mode MODE) context.
1601         (cl--generic-derived-specializers): New function.
1602         (cl--generic-derived-generalizer): New generalizer.
1603         (cl-generic-generalizers): New specializer (derived-mode MODE).
1604         (cl--generic-split-args): Apply the rewriter, if any.
1605         (cl-generic-define-context-rewriter): New macro.
1606         (major-mode): Use it to define a new context-rewriter, so we can write
1607         `(major-mode MODE)' instead of `(major-mode (derived-mode MODE))'.
1609         * lisp/frame.el (window-system): New context-rewriter so we can write
1610         `(window-system VAL)' instead of (window-system (eql VAL)).
1611         (cl--generic-split-args): Apply the rewriter, if any.
1612         (frame-creation-function): Use the new syntax.
1614         * lisp/term/x-win.el (window-system-initialization)
1615         (handle-args-function, frame-creation-function)
1616         (gui-backend-set-selection, gui-backend-selection-owner-p)
1617         (gui-backend-selection-exists-p, gui-backend-get-selection):
1618         * lisp/term/w32-win.el (window-system-initialization)
1619         (handle-args-function, frame-creation-function)
1620         (gui-backend-set-selection, gui-backend-get-selection)
1621         (gui-backend-selection-owner-p, gui-backend-selection-exists-p):
1622         * lisp/term/pc-win.el (gui-backend-get-selection)
1623         (gui-backend-selection-exists-p, gui-backend-selection-owner-p)
1624         (gui-backend-set-selection, window-system-initialization)
1625         (frame-creation-function, handle-args-function):
1626         * lisp/term/ns-win.el (window-system-initialization)
1627         (handle-args-function, frame-creation-function)
1628         (gui-backend-set-selection, gui-backend-selection-exists-p)
1629         (gui-backend-get-selection):
1630         * lisp/startup.el (handle-args-function):
1631         * lisp/term/xterm.el (gui-backend-get-selection)
1632         (gui-backend-set-selection): Use the new syntax.
1634 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
1636         * test/indent/css-mode.css: Add tests for url(...) syntax.
1638 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
1640         * lisp/emacs-lisp/smie.el: Use `declare' for `pure'.
1641         (smie-precs->prec2, smie-merge-prec2s, smie-bnf->prec2)
1642         (smie-prec2->grammar): Use `declare'.
1644 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
1646         * lisp/emacs-lisp/cl-generic.el: Accommodate future changes.
1647         (cl--generic-generalizer): Add `name' field.
1648         (cl-generic-make-generalizer): Add corresponding `name' argument.
1649         (cl-generic-define-generalizer): New macro.
1650         (cl--generic-head-generalizer, cl--generic-eql-generalizer)
1651         (cl--generic-struct-generalizer, cl--generic-typeof-generalizer)
1652         (cl--generic-t-generalizer): Use it.
1653         (cl-generic-ensure-function): Add `noerror' argument.
1654         (cl-generic-define): Use it so we don't follow aliases.
1655         (cl-generic-define-method): Preserve pre-existing ordering of methods.
1656         (cl--generic-arg-specializer): New function.
1657         (cl--generic-cache-miss): Use it.
1658         (cl-generic-generalizers): Only fset a temporary definition
1659         during bootstrap.
1660         (cl--generic-struct-tag, cl--generic-struct-specializers):
1661         Allow extra arguments.
1663         * lisp/emacs-lisp/eieio-compat.el
1664         (eieio--generic-static-symbol-generalizer)
1665         (eieio--generic-static-object-generalizer):
1666         Use cl-generic-define-generalizer.
1667         (eieio--generic-static-symbol-specializers): Allow extra arguments.
1669         * lisp/emacs-lisp/eieio-core.el (eieio--generic-generalizer)
1670         (eieio--generic-subclass-generalizer):
1671         Use cl-generic-define-generalizer.
1672         (eieio--generic-subclass-specializers): Allow extra arguments.
1674 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
1676         * lisp/emacs-lisp/bytecomp.el (compile-defun): Add defvars in scope.
1678 2015-10-29  Michael Albinus  <michael.albinus@gmx.de>
1680         Add "afp" method to Tramp
1682         * doc/misc/tramp.texi (GVFS based methods): Describe `afp' method.
1684         * lisp/net/tramp-gvfs.el (tramp-gvfs-methods): Add "afp" method.
1685         (tramp-gvfs-handle-expand-file-name)
1686         (tramp-gvfs-handler-mounted-unmounted)
1687         (tramp-gvfs-connection-mounted-p, tramp-gvfs-mount-spec)
1688         (tramp-gvfs-maybe-open-connection): Support also "afp".
1689         (tramp-gvfs-handle-file-attributes): Handle the case of empty
1690         "owner::user" and "owner::group" entries.
1692 2015-10-29  Andy Moreton  <andrewjmoreton@gmail.com>
1694         Handle negative coordinates in ‘x_calc_absolute_position’
1696         * src/w32term.c (x_calc_absolute_position): Find display origin to
1697         allow for negative coordinates.
1699 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
1701         (internal--syntax-propertize): Save match-data here (bug#21766)
1703         * lisp/emacs-lisp/syntax.el (internal--syntax-propertize): Save match-data.
1704         * lisp/simple.el (delete-trailing-whitespace): Undo last change.
1706 2015-10-28  Dmitry Gutov  <dgutov@yandex.ru>
1708         Don't require default-directory to end with a slash
1710         * doc/lispref/files.texi (Magic File Names): Document the change
1711         in unhandled-file-name-directory.
1713         * lisp/url/url-handlers.el
1714         (url-handler-unhandled-file-name-directory): Update accordingly.
1716         * src/buffer.c (default-directory): Update the docsting.
1718         * src/fileio.c (unhandled-file-name-directory): Default to calling
1719         `file-name-as-directory'
1720         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02294.html).
1722 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
1724         * lisp/isearch.el: Delete some outdated comments.
1726 2015-10-28  Vibhav Pant  <vibhavp@gmail.com>
1728         Fix eshell/clear not working if the output has a small line count
1730         * lisp/eshell/esh-mode.el (eshell/clear): Use (window-size) as the
1731         number of newlines to be inserted. This fixes the issue where
1732         eshell/clear wouldn't work if the prompt was not at the bottom of the
1733         window, and the output wasn't too long.
1735 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
1737         * lisp/files.el (write-file): Use vc-refresh-state.
1739         * lisp/autorevert.el (auto-revert-handler): Use vc-refresh-state.
1741         * lisp/vc/pcvs.el (cvs-revert-if-needed): Use vc-refresh-state.
1743 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
1745         * lisp/emacs-lisp/macroexp.el: Tweak macroexp-if optimizations.
1746         (macroexp-unprogn): Make sure we never return an empty list.
1747         (macroexp-if): Remove unused (and unsafe) optimization.
1748         Optimize (if A T (if B T E)) into (if (or A B) T E) instead, which does
1749         occur occasionally.
1751 2015-10-28  Juanma Barranquero  <lekktu@gmail.com>
1753         Fix bug#21766 and add test
1754         * lisp/simple.el (delete-trailing-whitespace): Save match data when
1755         calling `skip-syntax-backward'.
1756         * test/automated/simple-test.el (simple-delete-trailing-whitespace):
1757         New test.
1759 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
1761         * doc/lispref/sequences.texi (Sequence Functions): Fix typo.
1763 2015-10-28  Paul Eggert  <eggert@cs.ucla.edu>
1765         * src/dispnew.c (init_display): Simplify overflow checking.
1767 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
1769         * lisp/character-fold.el (character-fold-to-regexp): Fix case
1770         where string ends in space
1772 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
1774         * lisp/emacs-lisp/seq.el (seq-mapn): New function.
1776         * doc/lispref/sequences.texi (Sequence Functions): Document seq-mapn.
1778 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
1780         * lisp/character-fold.el: Make compatible with lax-whitespace.
1781         (character-fold-to-regexp): Rework internals to play nice with
1782         lax-whitespacing.
1784         When the user types a space, we want to match the table entry for
1785         ?\s, which is generally a regexp like "[ ...]".  However, the
1786         `search-spaces-regexp' variable doesn't "see" spaces inside these
1787         regexp constructs, so we need to use "\\( \\|[ ...]\\)" instead (to
1788         manually expose a space).
1790         Furthermore, the lax search engine acts on a bunch of spaces, not
1791         on individual spaces, so if the string contains sequential spaces
1792         like "  ", we need to keep them grouped together like this:
1793         "\\(  \\|[ ...][ ...]\\)".
1795 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
1797         * lisp/isearch.el: Refactor momentary messages.
1798         (isearch--momentary-message): New function.
1799         (isearch-toggle-lax-whitespace, isearch-toggle-case-fold)
1800         (isearch-toggle-invisible): Use it.
1802 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
1804         * lisp/isearch.el: Define all toggles with `isearch-define-mode-toggle'.
1805         (isearch-define-mode-toggle): New macro.
1806         (isearch-toggle-invisible): Rename to
1807         `isearch-define-mode-toggle'.
1808         (isearch-toggle-case-fold, isearch-toggle-invisible)
1809         (isearch-toggle-regexp, isearch-toggle-lax-whitespace): Define
1810         with `isearch-define-mode-toggle'.
1812 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
1814         Avoid using `add-to-list' on a let-local var in tramp-smb.el
1816         * lisp/net/tramp-compat.el (tramp-compat-delete-dups): New defun.
1817         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files): Use it.
1819 2015-10-28  Anders Lindgren  <andlind@gmail.com>
1821         Merge branch 'master' of /Volumes/HD2/build/emacs-git-ssh
1823         Merge branch 'master' of ssh://git.sv.gnu.org/srv/git/emacs
1825         Merge branch 'master' of /Volumes/HD2/build/emacs-git-ssh
1827 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
1829         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files):
1830         Revert 692bce5b9eccfae19ae2a5a23a9ccd8d6bf86076, `delete-dups'
1831         does not exist in XEmacs 21.4.
1833 2015-10-28  Anders Lindgren  <andlind@gmail.com>
1835         Fixed OS X startup crash
1837         Input events started to arrive before ns_term_init() was finished.
1838         Solved by blocking input.  This also seems to correct the "You
1839         can't open the application "Emacs" because it may be damaged or
1840         incomplete" error issued when double-clicking on the Emacs
1841         application.
1843         * nsterm.m (ns_constrain_all_frames, ns_init_term): Block input.
1844         * nsterm.m (ns_send_appdefined, EmacsApp): Trace output.
1846 2015-10-28  Anders Lindgren  <andlind@gmail.com>
1848         Merge branch 'master' of ssh://git.sv.gnu.org/srv/git/emacs
1850 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
1852         * src/process.c (Fget_buffer_process): Improve docstring.
1853         Document the fact that it doesn't return dead processes.
1855 2015-10-28  Anders Lindgren  <andlind@gmail.com>
1857         Fix incorrect NextStep tool-bar-mode -- wrong number of rows in frame.
1859         * nsterm.h (struct ns_output): New flag, in_animation.
1860         * nsfns.m (Fx_create_frame): Initialize in_animation flag.
1861         * nsmenu.m (free_frame_tool_bar, update_frame_tool_bar): Set
1862         in_animation flag around call to "setVisible". Set new tool bar
1863         height before call to setVisible.
1864         * nsterm.m (x_set_window_size): Don't call [view setRow:
1865         andColumns:] as this fools the subsequent call to updateFrameSize
1866         from performing the real resize.
1867         (windowDidResize): Don't update anything when in_animation is
1868         non-zero.
1870         Trace output.
1872         * nsmenu.m (free_frame_tool_bar, update_frame_tool_bar)
1873         (EmacsToolbar):
1874         * nsterm.m (x_set_window_size, updateFrameSize)
1875         ([EmacsView setRows: andColumns:])
1877 2015-10-28  Nicolas Petton  <nicolas@petton.fr>
1879         * lisp/emacs-lisp/thunk.el (thunk-delay): Fix the macro.
1881 2015-10-28  Tassilo Horn  <tsdh@gnu.org>
1883         Prettify TeX macros not ending in a word char
1885         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
1886         Prettify macros which don't end in a word character.
1888 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
1890         Pipe Hg commit descriptions through 'tabindent'
1892         * lisp/vc/vc-hg.el (vc-hg-log-format): Pipe commit description
1893         through 'tabindent'.
1894         (vc-hg-log-view-mode): Set tab-width to 2 locally.
1895         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02259.html)
1897 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
1899         * lisp/net/tramp-smb.el: Avoid using `add-to-list' on a let-local var.
1900         (tramp-smb-handle-directory-files): Use `delete-dups'.
1902         * lisp/net/tramp.el (auto-save-file-name-transforms): Declare.
1904 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
1906         * lisp/international/ccl.el: Use lexical-binding.
1907         (ccl-compile-if): Remove unused var `false-ic'.
1908         (ccl-compile-write-repeat): Remove unused var `i'.
1909         (ccl-compile-map-single): Remove unused var `id'.
1910         (ccl-dump, ccl-dump-binary): Use explicit let-binding to bind the
1911         dynamic var `ccl-code'.
1913 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
1915         * lisp/json.el (json-new-object): Optimize trivial `list' call.
1917 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
1919         * lisp/help.el: Fix bug with incorrect arglist string.
1920         (help-add-fundoc-usage): Don't mistake a mis-formatted string
1921         for a list.
1923 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
1925         * lisp/gnus/gnus-topic.el: Silence some warnings.
1926         (gnus-topic-prepare-topic): Remove unused var `topic'.
1927         (gnus-topic-remove-topic): Mark unused arg `hide'.
1928         (gnus-tmp-header): Declare.
1929         (gnus-topic-goto-missing-group): Remove unused var `entry'.
1930         (gnus-topic-unmark-topic): Mark unused arg `dummy'.
1931         (gnus-topic-copy-matching): Mark unused arg `copyp'.
1932         Move initialization of `topic' into its declaration.
1934 2015-10-27  Stephen Leake  <stephen_leake@stephe-leake.org>
1936         Minor CEDET fixes
1938         * lisp/cedet/cedet-global.el (cedet-gnu-global-gtags-call):
1939         Handle warnings from gtags about invalid options.
1940         (cedet-gnu-global-create/update-database): Do incremental update
1941         properly.
1943         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
1944         Get monotone root right.
1946 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
1948         Fall back to polling in autorevert when needed
1950         * lisp/autorevert.el (auto-revert-notify-handler): When a
1951         `stopped' event arrives from file notification, fall back to polling.
1953         * test/automated/file-notify-tests.el
1954         (file-notify-test03-autorevert): Extend test for polling when file
1955         notification ceases to work.
1957 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
1959         Show full commit messages in 'hg log' when appropriate
1961         * lisp/vc/vc-hg.el (vc-hg-log-format): New variable.
1962         (vc-hg-print-log, vc-hg-expanded-log-entry): Use it.
1963         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02191.html)
1965 2015-10-27  Nicolas Petton  <nicolas@petton.fr>
1967         Use a plain SVG file for the icon
1969         * etc/images/icons/hicolor/scalable/apps/emacs.svg: Use a plain SVG
1970           format instead of the Inkscape SVG format.
1972 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
1974         Fix subtle bug in auto-revert-tests.el
1976         * test/automated/auto-revert-tests.el
1977         (auto-revert-test02-auto-revert-mode-dired): Narrow *Messages*
1978         buffer where it belongs to.  (Bug#21668)
1980 2015-10-26  Nicolas Petton  <nicolas@petton.fr>
1982         * lisp/emacs-lisp/map.el: Better docstrings.
1984         * lisp/emacs-lisp/seq.el: Better docstrings.
1986         * lisp/emacs-lisp/seq.el: Rename all seq arguments to sequence.
1988 2015-10-26  Phillip Lord  <phillip.lord@russet.org.uk>
1990         * lisp/emacs-lisp/ert.el: Print results without newline escaping.
1992 2015-10-26  Stephen Leake  <stephen_leake@stephe-leake.org>
1994         Clarify that load-path contents should be directory file names
1996         * doc/lispref/files.texi (Directory Names): Define and use "directory
1997         file name".  Recommend `expand-file-name'.
1999         * src/lread.c (load-path): Fix doc string; elements are directory file
2000         names.
2002 2015-10-26  Eli Zaretskii  <eliz@gnu.org>
2004         Fix simple-test.el test
2006         * test/automated/simple-test.el (simple-test--dummy-buffer):
2007         Make sure indentation doesn't use TABs, otherwise the 6th test
2008         might fail.
2010 2015-10-26  Mark Oteiza  <mvoteiza@udel.edu>
2012         * lisp/net/eww.el (eww-bookmark-prepare): Use truncate-string-to-width.
2013         `substring' does not account for full width characters.
2015 2015-10-26  Michael Albinus  <michael.albinus@gmx.de>
2017         Further work on `stopped' events in filenotify.el
2019         * doc/lispref/os.texi (File Notifications): Rework examples.
2021         * lisp/filenotify.el (file-notify--rm-descriptor): Optional parameter.
2022         (file-notify--rm-descriptor, file-notify-callback): Improve check
2023         for sending `stopped' event.
2024         (file-notify-add-watch): Check for more events for `inotify'.
2026         * test/automated/file-notify-tests.el
2027         (file-notify--test-expected-events): New defvar.
2028         (file-notify--test-with-events): Use it.
2029         (file-notify--test-cleanup): Make it more robust when deleting
2030         directories.
2031         (file-notify--test-event-test): Check also for watched directories.
2032         (file-notify--test-event-handler): Suppress temporary .#files.
2033         (file-notify-test02-events, file-notify-test04-file-validity):
2034         Rework `stopped' events.
2035         (file-notify-test05-dir-validity): Wait for events when appropriate.
2037 2015-10-26  Artur Malabarba  <bruce.connor.am@gmail.com>
2039         * src/keyboard.c (post-command-hook): Shorten docstring.
2041 2015-10-26  Tassilo Horn  <tsdh@gnu.org>
2043         Fix infinite loop in sh-script's SMIE code
2045         * lisp/progmodes/sh-script.el (sh-smie-sh-forward-token): Fix infinite
2046         loop (bug#21747).
2048 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
2050         * lisp/isearch.el (search-default-regexp-mode): Revert to nil.
2051         Character-fold search _still_ doesn't play well with
2052         lax-whitespace.  So disable it by default (again) for now.
2054 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
2056         * lisp/isearch.el: No visual feedback for default search mode.
2057         During an isearch where character-folding is the default, we don't
2058         want to take up minibuffer space just to tell the user that
2059         "Char-fold " is on.  The same goes for other modes, if the user
2060         changes the default.  In contrast, if the user toggles OFF the
2061         default mode, they should see "Literal", to distinguish it from
2062         the default mode.
2063         (isearch--describe-regexp-mode): Return "" if describing the
2064         default mode, and return "literal " if describing a plain search
2065         and it is not default.
2067 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
2069         * test/automated/simple-test.el: New file.
2070         Define tests for `newline' and `open-line'.
2072 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
2074         * lisp/simple.el (open-line): Integrate with electric-indent-mode.
2075         Also run `post-self-insert-hook' when called interactively.
2077 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
2079         * lisp/simple.el (open-line): Fix docstring.
2080         Also explain apparently redundant line.
2082 2015-10-25  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
2083             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
2085         Sync with soap-client repository, version 3.0.1
2087         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
2088         Bump version to 3.0.1.
2090         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Update home page.
2092 2015-10-25  Eli Zaretskii  <eliz@gnu.org>
2094         * lisp/progmodes/grep.el (grep): Doc fix.  (Bug#21754)
2096 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
2098         * src/keyboard.c (post-command-hook): Extend the docstring.
2099         Mainly, explain how to use it without hanging Emacs, or giving the
2100         impression that it is hanging.  Also mention `pre-command-hook'.
2101         (pre-command-hook): Mention `post-command-hook'.
2103 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
2105         * lisp/custom.el (custom-declare-variable): Shorten code again.
2106         Without using pcase this time.  We can't use pcase because it is
2107         loaded after custom in loadup.el.  Also add a comment explaining
2108         this to future dummies like me.
2110 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
2112         * doc/lispref/os.texi (File Notifications): Document `stopped event'.
2114 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
2116         Introduce `stopped' event in file notification
2118         * lisp/filenotify.el (file-notify--rm-descriptor): New defun.
2119         (file-notify-rm-watch): Use it.
2120         (file-notify-callback): Implement `stopped' event.
2121         (file-notify-add-watch): Mention `stopped' in the docstring.
2122         Check, that upper directory exists.
2124         * test/automated/file-notify-tests.el (file-notify-test01-add-watch):
2125         Add two test cases.
2126         (file-notify-test02-events): Handle also `stopped' event.
2127         (file-notify-test04-file-validity): Add another test case.
2129 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
2131         Revert commit that broke 'make bootstrap'
2133         * lisp/custom.el (custom-declare-variable): Revert commit
2134         79fac080d277fed07b3c192890ad59d36d9f83b6.  custom.el needs to work
2135         even when pcase has not been defined yet, when doing bootstrapping.
2137 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
2139         Port recent inline functions fix to Standard C
2141         * src/lisp.h (LISP_MACRO_DEFUN, LISP_MACRO_DEFUN_VOID): Remove.
2142         All uses rewritten to define the function directly rather than to
2143         use a macro to define the function.  This conforms to Standard C,
2144         which does not allow stray semicolons at the top level.  I hope it
2145         also avoids the problems with TAGS.  Those macros, though clever,
2146         were pretty confusing anyway, and it wasn’t clear they were worth
2147         the aggravation even without the TAGS problem.
2149 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
2151         * lisp/isearch.el: Make character-fold search the default again.
2153 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
2155         * lisp/character-fold.el: Many improvements.
2156         (character-fold-search-forward, character-fold-search-backward):
2157         New command.
2158         (character-fold-to-regexp): Remove lax-whitespace hack.
2159         (character-fold-search): Remove variable.  Only isearch and
2160         query-replace use char-folding, and they both have their own
2161         variables to configure that.
2163 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
2165         * lisp/isearch.el: Generalize definition of regexp-function toggles.
2166         (isearch-specify-regexp-function): New macro for specifying
2167         possible values of `isearch-regexp-function'.
2168         (isearch-toggle-character-fold, isearch-toggle-symbol)
2169         (isearch-toggle-word): Define with `isearch-specify-regexp-function'.
2171 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
2173         * lisp/isearch.el (search-default-regexp-mode): New variable.
2174         (isearch-mode): Use it.
2176 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
2178         * lisp/isearch.el (search-exit-option, search-slow-window-lines)
2179         (search-slow-speed, search-upper-case)
2180         (search-nonincremental-instead, search-whitespace-regexp)
2181         (search-invisible, isearch-hide-immediately)
2182         (isearch-resume-in-command-history, search-ring-max)
2183         (regexp-search-ring-max, search-ring-update, search-highlight)
2184         (isearch-fail): Delete :group entries.
2186 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
2188         * lisp/custom.el (custom-declare-variable): Shorten code a bit.
2190 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
2192         addpm.c: Silence some warnings.
2194         * nt/addpm.c (DdeCommand): Cast pData argument of DdeClientTransaction
2195         to LPBYTE.
2196         (add_registry): Pass NULL to optional lpClass argument of
2197         RegCreateKeyEx, not an empty string.
2199 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
2201         addpm.c: Do not add obsolete GTK libraries to the path.
2203         * nt/addpm.c (REG_GTK, REG_RUNEMACS_PATH): Delete.
2204         (add_registry): Remove variables `size' and `gtk_key'.
2205         Do not add the GTK DLL directory to the library search path; it is
2206         confusing behavior (in particular, the same Emacs version with and
2207         without invoking addpm will use a different path), and the GTK image
2208         libraries are obsolete anyway.
2210 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
2212         addpm.c: Replace existing registry entries, but do not create new ones
2214         * nt/addpm.c (add_registry): If the Emacs registry key exists, replace
2215         existing values from previous versions, but do not add new ones; the
2216         key could exist for other reasons unrelated to old Emacsen, like X-style
2217         resources, or to set some environment variables like HOME or LANG, and
2218         in that case we don't want to populate it with obsolete values.
2220 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
2222         * nt/addpm.c (add_registry): Do not compute unused return value.
2224 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
2226         addpm.c: Don't pass REG_OPTION_NON_VOLATILE to RegOpenKeyEx
2228         * nt/addpm.c (add_registry): Pass 0 to ulOptions argument of
2229         RegOpenKeyEx, not REG_OPTION_NON_VOLATILE.  This doesn't change
2230         current behavior because REG_OPTION_NON_VOLATILE is defined to
2231         be 0L anyway, but that option is actually documented only for
2232         RegCreateKeyEx.
2234 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
2236         * src/w32notify.c (Fw32notify_add_watch): Fix version check.
2238 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
2240         Update frame title when redisplay scrolls selected window
2242         * src/xdisp.c (redisplay_window): Reconsider the frame's title
2243         when the mode-line of the frame's selected window needs to be
2244         updated.
2246 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
2248         Update frame title when scrolling the selected window
2250         * src/window.c (wset_update_mode_line): New function, sets either
2251         the window's update_mode_line flag or the global update_mode_lines
2252         variable.
2253         (Fset_window_start, set_window_buffer, window_scroll_pixel_based)
2254         (window_scroll_line_based): Call it instead of only setting the
2255         window's update_mode_line flag.
2257 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
2259         An even better fix for bug#21739
2261         * src/window.c (set_window_buffer): If the window is the frame's
2262         selected window, set update_mode_lines, not the window's
2263         update_mode_line flag.
2264         * src/buffer.c (Fkill_buffer): Undo last change.
2265         (set_update_modelines_for_buf): Function deleted.
2267 2015-10-24  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
2268             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
2270         Sync with soap-client repository, version 3.0.0
2272         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
2273         Bump version to 3.0.0.
2275         * lisp/net/soap-inspect.el: Merge in changes from Emacs master branch.
2277         * lisp/net/soap-client.el: Merge in changes from Emacs master branch.
2279         * lisp/net/soap-inspect.el: Shorten first line description.
2281         * lisp/net/soap-client.el: Make a small whitespace fix.
2283         * lisp/net/soap-inspect.el: Update copyright years.
2285         * lisp/net/soap-client.el (soap-encoded-namespaces): Move above
2286         first use in soap-encode-xs-element.
2288         * lisp/net/soap-client.el (soap-type-is-array?): new defun
2289         (soap-encode-xs-element): handle array elements in this function
2290         (soap-encode-xs-complex-type): flag error if asked to encode an
2291         array type, this is handled in `soap-encode-xs-element'
2293         * lisp/net/soap-inspect.el (soap-inspect-xs-attribute-group):
2294         Do not print type for attribute group.
2296         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute-group)
2297         New function.
2298         (soap-inspect-xs-attribute-group): Likewise.
2300         * lisp/net/soap-inspect.el
2301         (soap-resolve-references-for-xs-attribute-group): Resolve
2302         references of attributes in an attribute group.
2304         * lisp/net/soap-client.el (soap-decode-xs-attributes): Process attribute
2305         type directly, not through soap-wsdl-get.
2307         * lisp/net/soap-client.el (soap-xs-parse-attribute): Leave reference
2308         nil if reference attribute is nil.
2310         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
2311         Convert XML schema attributes to xsd:string.
2313         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute):
2314         New function.
2315         (soap-sample-value-for-xs-simple-type): Prepend attributes to result.
2316         (soap-sample-value-for-xs-complex-type): Likewise.
2317         (soap-inspect-xs-attribute): New function.
2318         (soap-inspect-xs-simple-type): Print attributes.
2319         (soap-inspect-xs-complex-type): Likewise.
2321         * lisp/net/soap-inspect.el (soap-resolve-references-for-xs-simple-type):
2322         Resolve references for attributes.
2323         (soap-resolve-references-for-xs-complex-type): Likewise.
2325         * lisp/net/soap-client.el (soap-xml-node-find-matching-child):
2326         Rename from soap-xml-node-first-child.
2327         (soap-xs-parse-attribute): Call soap-xml-node-find-matching-child.
2328         (soap-xs-parse-simple-type): Likewise.
2330         * lisp/net/soap-client.el (soap-invoke-async): Add error checking.
2332         * lisp/net/soap-client.el (soap-invoke-internal): New function.
2333         (soap-invoke-async): Call soap-invoke-internal.
2334         (soap-invoke): Likewise.
2336         * lisp/net/soap-client.el (soap-invoke-async): Ensure buffer passed to
2337         url-retrieve callback is killed.
2339         * lisp/net/soap-client.el (soap-parse-wsdl-phase-validate-node):
2340         Rename function.
2341         (soap-parse-wsdl-phase-fetch-imports): Likewise.
2342         (soap-parse-wsdl-phase-parse-schema): Likewise.
2343         (soap-parse-wsdl-phase-fetch-schema): Likewise.
2344         (soap-parse-wsdl-phase-finish-parsing): Likewise.
2345         (soap-parse-wsdl): Update calls.
2347         * lisp/net/soap-client.el (soap-invoke-async): Fix callback invocation.
2349         * lisp/net/soap-client.el (soap-invoke-async): New function.
2350         (soap-invoke): Reimplement using soap-invoke-async.
2352         * lisp/net/soap-client.el (soap-parse-server-response):
2353         Improve docstring.
2354         (soap-invoke): Inline call to soap-parse-server-response.
2356         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
2357         Prevent incorrect warning.
2359         * lisp/net/soap-client.el (soap-parse-server-response):
2360         Rename soap-process-url-response.  Destroy the mime part.
2361         (soap-invoke): Call soap-parse-server-response.
2363         * lisp/net/soap-client.el: Update copyright date.
2365         * lisp/net/soap-client.el: Fix checkdoc issues.
2367         * lisp/net/soap-client.el: Fix indentation and long lines.
2369         * lisp/net/soap-client.el (soap-time-format): Remove variable.
2370         (soap-encode-xs-basic-type): Simplify date-time format detection.
2371         (soap-decode-xs-basic-type): Remove soap-time-format support.
2373         * lisp/net/soap-client.el (soap-process-url-response): New function.
2374         (soap-fetch-xml-from-url): Call soap-process-url-response.
2375         (soap-parse-wsdl-phase-1): New function.
2376         (soap-parse-wsdl-phase-2): Likewise.
2377         (soap-parse-wsdl-phase-3): Likewise.
2378         (soap-parse-wsdl-phase-4): Likewise.
2379         (soap-parse-wsdl-phase-5): Likewise.
2380         (soap-parse-wsdl): Call phase functions.
2382         * lisp/net/soap-client.el (soap-decode-xs-basic-type):
2383         Remove one-argument and call.
2385         * lisp/net/soap-client.el (soap-decode-date-time): Improve docstring.
2387         * lisp/net/soap-client.el (soap-xmlschema-imports): Remove variable.
2388         (soap-parse-schema): Add wsdl argument.  Look up XML schema
2389         imports from wsdl.
2390         (soap-load-wsdl): Do not set soap-xmlschema-imports.
2391         (soap-parse-wsdl): Get XML schema imports from wsdl.
2393         * lisp/net/soap-client.el (soap-current-file): Remove variable.
2394         (soap-wsdl): Add current-file slot.
2395         (soap-fetch-xml-from-url): Add wsdl argument.  Look up current
2396         file from wsdl.
2397         (soap-fetch-xml-from-file): Likewise.
2398         (soap-fetch-xml): Likewise.
2399         (soap-load-wsdl): Always create wsdl object first.
2400         (soap-parse-wsdl): Pass wsdl to soap-fetch-xml.
2402         * lisp/net/soap-client.el (soap-xs-element): Add is-group slot.
2403         (soap-xs-parse-element): Set is-group slot.
2404         (soap-resolve-references-for-xs-element): Skip is-group elements.
2405         (soap-xs-complex-type): Add is-group slot.
2406         (soap-xs-parse-complex-type): Set is-group slot.
2407         (soap-xs-parse-sequence): Parse xsd:group elements.
2408         (soap-resolve-references-for-xs-complex-type): Inline elements
2409         from referenced xsd:group nodes.
2410         (soap-parse-schema): Parse xsd:group nodes.
2412         * lisp/net/soap-client.el (soap-invoke):
2413         Don't set url-http-version to 1.0.
2415         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
2416         Allow choice nodes to accept multiple values.
2418         * lisp/net/soap-client.el (soap-encode-body): Check parameters argument
2419         for extra header values.
2421         * lisp/net/soap-client.el (soap-well-known-xmlns):
2422         Add wsa and wsaw tags.
2423         (soap-operation): Add input-action and output-action slots.
2424         (soap-parse-operation): Parse wsaw:Action nodes.
2425         (soap-encode-body): Encode service-url for WS-Addressing.
2426         (soap-create-envelope): Likewise.
2427         (soap-invoke): Update soap-create-envelope call to provide
2428         service-url argument.
2430         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
2431         Support xsi:type override attribute.
2432         (soap-decode-array): Likewise.
2434         * lisp/net/soap-client.el (soap-parse-schema):
2435         Handle location attribute.
2437         * lisp/net/soap-client.el (soap-decode-type): Check that multiRef
2438         matched validation regexp.
2440         * lisp/net/soap-client.el (soap-encode-xs-simple-type):
2441         Encode xsd:list nodes.
2442         (soap-decode-xs-simple-type): Decode xsd:list nodes.
2444         * lisp/net/soap-client.el (soap-get-candidate-elements):
2445         Fix reference handling.
2447         * lisp/net/soap-client.el (soap-xs-simple-type): Add is-list slot.
2448         (soap-xs-parse-simple-type): Call soap-xs-add-list for xsd:list nodes.
2449         (soap-xs-add-list): New function.
2451         * lisp/net/soap-client.el (soap-encode-xs-element): When a boolean is
2452         expected, interpret nil as "false".
2454         * lisp/net/soap-client.el (soap-make-xs-basic-types): Add gYearMonth,
2455         gYear, gMonthDay, gDay and gMonth.
2457         * lisp/net/soap-client.el (soap-time-format): New variable.
2458         (soap-encode-xs-basic-type): Handle dateTime, time, date,
2459         gYearMonth, gYear, gMonthDay, gDay and gMonth.
2460         (soap-decode-date-time): New function.
2461         (soap-decode-xs-basic-type): Use soap-decode-date-time.
2463         * lisp/net/soap-client.el (soap-encode-xs-basic-type): Validate value
2464         after encoding.
2465         (soap-decode-xs-basic-type): Validate value before decoding.
2467         * lisp/net/soap-client.el (soap-validate-xs-basic-type): New function.
2468         (soap-validate-xs-simple-type): Call soap-validate-xs-basic-type.
2470         * lisp/net/soap-client.el (soap-xs-add-union): Append result to base
2471         instead of overwriting it.
2472         (soap-validate-xs-simple-type): Add union support.
2474         * lisp/net/soap-client.el (soap-xs-add-restriction): Translate pattern
2475         to Emacs regexp using xsdre-translate.
2476         (soap-validate-xs-simple-type): Validate value against pattern.
2478         * lisp/net/soap-client.el (soap-xs-add-union): Preserve WSDL order of
2479         inline simpleType nodes.
2480         (soap-decode-type): Handle union types.
2482         * lisp/net/soap-client.el (soap-decode-xs-attributes): Decode basic-type
2483         attributes.
2485         * lisp/net/soap-client.el (soap-get-xs-attributes-from-groups): Rename
2486         from soap-xs-attribute-group-consolidate, all callers updated
2487         (soap-get-xs-attributes): Rename from
2488         soap-xs-attributes-consolidate, all callers updated
2490         * lisp/net/soap-client.el (soap-xs-type): Add attribute-group slot.
2491         (soap-xs-attribute-group): New type.
2492         (soap-xs-parse-attribute-group): New function.
2493         (soap-resolve-references-for-xs-attribute-group): Likewise.
2494         (soap-xs-add-extension): Handle attribute groups.
2495         (soap-resolve-references-for-xs-simple-type): Likewise.
2496         (soap-xs-parse-complex-type): Likewise.
2497         (soap-xs-parse-extension-or-restriction): Likewise.
2498         (soap-resolve-references-for-xs-complex-type): Likewise.
2499         (soap-xs-attribute-group-consolidate): New function.
2500         (soap-xs-attributes-consolidate): Handle attribute groups.
2501         (soap-parse-schema): Likewise.
2503         * lisp/net/soap-client.el (soap-encode-xs-basic-type):
2504         Fix boolean encoding.
2506         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Print ref
2507         element names in warnings.
2509         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Fix splicing.
2511         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
2512         Eliminate invalid warnings for choice types.
2514         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
2515         Also encode base type attributes.
2517         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Fix compilation
2518         warning.  Print e-name in warnings, or element if e-name is nil.
2520         * lisp/net/soap-client.el (soap-xs-element): Add alternatives slot.
2521         (soap-xs-parse-element): Set substitution-group.
2522         (soap-resolve-references-for-xs-element): Populate alternatives slot.
2523         (soap-get-candidate-elements): New function.
2524         (soap-encode-xs-complex-type): Iterate through all candidate elements.
2525         Handle types with nil type indicator.  Fix warning logic.
2527         * lisp/net/soap-client.el (soap-current-wsdl): Move declaration
2528         earlier in the file to prevent compiler warning.
2530         * lisp/net/soap-client.el (soap-node-optional): New function.
2531         (soap-node-multiple): Likewise.
2532         (soap-xs-parse-element): Call soap-node-optional and
2533         soap-node-multiple.
2534         (soap-xs-complex-type): Add optional? and multiple? slots.
2535         (soap-xml-get-children-fq): New function.
2536         (soap-xs-element-get-fq-name): Likewise.
2537         (soap-xs-complex-type-optional-p): Likewise.
2538         (soap-xs-complex-type-multiple-p): Likewise.
2539         (soap-xs-attributes-consolidate): Likewise.
2540         (soap-decode-xs-attributes): Likewise.
2541         (soap-decode-xs-complex-type): Decode types with nil type indicator.
2542         Support children that use local namespaces.  Decode attributes.
2543         Add type considerations to optional? and multiple? warnings.
2545         * lisp/net/soap-client.el (soap-xs-parse-extension-or-restriction):
2546         Store parsed attributes.
2547         (soap-encode-xs-complex-type-attributes): Encode custom attributes.
2549         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
2550         Don't add the xsi:type attribute (Exchange refuses requests which have
2551         this attribute).
2553         * lisp/net/soap-client.el, soap-inspect.el: Convert to lexical binding,
2554         correct compiler warnings about unused function arguments and
2555         local variables.
2557         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Handle nil
2558         type indicator.
2559         (soap-parse-envelope): Handle response headers.
2560         (soap-parse-response): Likewise.  Only return non-nil decoded values.
2562         * lisp/net/soap-client.el (soap-validate-xs-simple-type):
2563         Return validated value.
2565         * lisp/net/soap-client.el (soap-xs-parse-element)
2566         (soap-xs-parse-simple-type)
2567         (soap-xs-parse-complex-type)
2568         (soap-parse-message)
2569         (soap-parse-operation): Add the current namespace to the element
2570         being created.
2571         (soap-resolve-references-for-xs-element)
2572         (soap-resolve-references-for-xs-simple-type)
2573         (soap-resolve-references-for-xs-complex-type)
2574         (soap-resolve-references-for-operation): Resolve the namespace to
2575         the namespace tag.
2576         (soap-make-wsdl): specify a namespace tag when creating the xsd
2577         and soapenc namespaces
2578         (soap-wsdl-resolve-references): don't update namespace tags in
2579         elements here
2580         (soap-parse-port-type): bind the urn: to soap-target-xmlns
2581         (soap-encode-body): don't add nil namespace tags to
2582         soap-encoded-namespaces
2584         * lisp/net/soap-inspect.el: Use `soap-make-wsdl` to construct the object
2585         for registering the soap-inspect method.  Make debbugs tests pass.
2586         * lisp/net/soap-client.el (soap-decode-any-type): Use soap-l2fq on the
2587         type name, also skip string only nodes when decoding a structure.
2588         (soap-xs-parse-complex-type): (BUG) Dispatch parsing for choice
2589         types too.
2590         (soap-encode-body): Grab the header value from the param table.
2592         * lisp/net/soap-client.el (soap-should-encode-value-for-xs-element):
2593         New function.
2594         (soap-encode-xs-element): Don't encode nil value unless needed.
2596         * lisp/net/soap-client.el (soap-bound-operation): New slot `soap-body`.
2597         (soap-parse-binding): Parse the message parts required in the body.
2598         (soap-encode-body): Encode only the parts that are declared to be
2599         part of the body.
2601         * lisp/net/soap-client.el (soap-encode-xs-element): use the fq name
2602         when writing out the tag.
2603         (soap-encode-body): Remove hack that inserts the xmlns in the
2604         element attributes list.
2606         * lisp/net/soap-client.el (soap-xs-attribute): Add "default" slot.
2607         (soap-xs-parse-attribute): Default slot is set from the XML
2608         "fixed" attribute.
2609         (soap-encode-xs-complex-type-attributes): Encode any attributes
2610         that have a default value.  Also, don't put the xsi:nil attribute
2611         when the complex type has no content anyway.
2613         * lisp/net/soap-client.el (soap-well-known-xmlns):
2614         Add the xml namespace.
2615         (soap-local-xmlns): Start with the xml namespace.
2616         (soap-xml-node-first-child): Skip xsd:annotation nodes too.
2617         (soap-make-xs-basic-types): More xsd types added.
2618         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
2619         Handle "language", "time", "date", "nonNegativeInteger".
2620         (soap-resolve-references-for-xs-element): Don't signal an error if
2621         the element does not have a type.
2622         (soap-xs-parse-simple-type): Subtypes are handled with ecase,
2623         added stum for xsd:list.
2624         (soap-xs-add-union): Call soap-l2fq on all union members.
2625         (soap-xs-add-extension): Call soap-l2fq on the base member.
2626         (soap-resolve-references-for-xs-simple-type): Don't signal an
2627         error if the simple type has no base.
2628         (soap-resolve-references-for-xs-simple-type): Bugfix, call
2629         soap-wsdl-get on each type of the base.
2631         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
2632         Referenced type can be eiher a simple type or a basic type.
2633         (soap-xs-add-restriction)
2634         (soap-xs-parse-extension-or-restriction): Use `soap-l2fq' on base.
2635         (soap-make-xs-basic-types)
2636         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
2637         Add support for more XMLSchema basic types.
2638         (soap-current-file, soap-xmlschema-imports): New defvars.
2639         (soap-parse-schema): Add locations from xsd:import tags to
2640         `soap-xmlschema-imports'.
2641         (soap-wsdl): Make destructor private.
2642         (soap-make-wsdl): New defun, SOAP-WSDL object constructor.
2643         (soap-wsdl-add-alias): Check if we try to replace aliases.
2644         (soap-fetch-xml-from-url, soap-fetch-xml-from-file)
2645         (soap-fetch-xml): New defuns.
2646         (soap-load-wsdl): Update to load the WSDL from either a file or
2647         an url.
2648         (soap-load-wsdl-from-url): Now an alias to `soap-load-wsdl'.
2649         (soap-parse-wsdl): Process wsdl:import tags and imports from
2650         `soap-xmlschema-imports'.
2651         * lisp/net/soap-client.el (soap-l2wk): Bugfix: call symbolp instead of
2652         symbol-name.
2653         (soap-l2fq): Make the name part always a string.
2654         (soap-name-p): New defun, used for name tests.
2656         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-complex-type):
2657         Supply sample values for choice types with a special tag.
2658         * lisp/net/soap-client.el (soap-encode-xs-complex-type):
2659         Handle anonymous elements correctly.
2660         (soap-encode-value): Accept nodes that have no namespace tag.
2662         * lisp/net/soap-client.el (soap-invoke): Encode the string for
2663         `url-request-data' as UTF-8.  Fixes issue 16.
2665 2015-10-24  Nicolas Petton  <nicolas@petton.fr>
2667         Update the new icon
2669         Move the E slightly to the right in the circle.
2671         * etc/images/icons/hicolor/128x128/apps/emacs.png:
2672         * etc/images/icons/hicolor/16x16/apps/emacs.png:
2673         * etc/images/icons/hicolor/24x24/apps/emacs.png:
2674         * etc/images/icons/hicolor/32x32/apps/emacs.png:
2675         * etc/images/icons/hicolor/48x48/apps/emacs.png:
2676         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
2677         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
2678         * nt/icons/emacs.ico: New icom update.
2680 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
2682         Avoid missing inline functions from lisp.h in TAGS
2684         * src/lisp.h (LISP_MACRO_DEFUN): Mention in the commentary the
2685         need to end each invocation with a semi-colon.
2686         Add a semi-colon at the end of each invocation of LISP_MACRO_DEFUN
2687         and LISP_MACRO_DEFUN_VOID.  This is to avoid missing in TAGS
2688         inline functions defined immediately after each invocation, and
2689         also avoid tagging every invocation of these macros.
2691 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
2693         A better fix for bug#21739
2695         * src/buffer.c (set_update_modelines_for_buf): New function.
2696         (Fkill_buffer): Use it to set the global variable
2697         update_mode_lines if the killed buffer was displayed in some
2698         window.  Don't set windows_or_buffers_changed.  This is a better
2699         fix for bug#21739 than the previous fix, since it will cause only
2700         redisplay of mode lines, not of entire windows, but will still
2701         catch attention of x_consider_frame_title in xdisp.c, which
2702         redraws the frame title.
2704 2015-10-24  Tassilo Horn  <tsdh@gnu.org>
2706         * lisp/dired-aux.el (dired-compress-files-alist): Add support for
2707         tar.bz2 and tar.xz archives.
2709 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
2711         Fix infloop in redisplay introduced by a recent change
2713         * src/xdisp.c (redisplay_internal): Avoid inflooping when
2714         redisplaying the selected window sets the selected frame's
2715         redisplay flag.  (Bug#21745)
2717 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
2719         * lisp/emacs-lisp/thunk.el: Better documentation.
2721 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
2723         Replace the old icon for Windows and Mac OSX
2725         * nt/icons/emacs.ico:
2726         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
2727         Use the new icons.
2729 2015-10-23  Stephen Leake  <stephen_leake@stephe-leake.org>
2731         * lisp/emacs-lisp/package.el (package-autoload-ensure-default-file):
2732         `load-path' should contain only directory names.
2734 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
2736         New library thunk.el
2738         thunk.el is extracted from stream.el in ELPA, with additional tests.
2740         * lisp/emacs-lisp/thunk.el: New file.
2741         * test/automated/thunk-tests.el: New file.
2742         * etc/NEWS: Add information about thunk.el
2744 2015-10-23  Michael Albinus  <michael.albinus@gmx.de>
2746         Fix bug#21669
2748         * lisp/filenotify.el (file-notify-rm-watch): Improve check for
2749         calling low-level functions.
2751         * test/automated/file-notify-tests.el (file-notify--test-timeout):
2752         Decrase to 6 seconds for remote directories.
2753         (file-notify-test02-events): Expect different number of
2754         `attribute-changed' events for the local and remote cases.  Apply
2755         short delays between the operations, in order to receive all
2756         events in the remote case.  Combine `attribute-change' tests.
2757         (Bug#21669)
2759 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
2761         Decode the HTML source when displaying it in EWW
2763         * lisp/net/eww.el (eww-view-source): Decode the HTML source
2764         according to its headers.
2766 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
2768         New default icon
2770         * etc/images/icons/hicolor/128x128/apps/emacs23.png:
2771         * etc/images/icons/hicolor/16x16/apps/emacs23.png:
2772         * etc/images/icons/hicolor/24x24/apps/emacs23.png:
2773         * etc/images/icons/hicolor/32x32/apps/emacs23.png:
2774         * etc/images/icons/hicolor/48x48/apps/emacs23.png:
2775         * etc/images/icons/hicolor/scalable/apps/emacs23.svg:
2776         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document23.svg:
2777         Move the old logo files to emacs23.*.
2778         * etc/images/icons/hicolor/128x128/apps/emacs.png:
2779         * etc/images/icons/hicolor/16x16/apps/emacs.png:
2780         * etc/images/icons/hicolor/24x24/apps/emacs.png:
2781         * etc/images/icons/hicolor/32x32/apps/emacs.png:
2782         * etc/images/icons/hicolor/48x48/apps/emacs.png:
2783         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
2784         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document.svg:
2785         New files.
2786         * etc/images/icons/README: Update the copyright information.
2788 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
2790         Fix redisplay of frame title when current buffer is killed
2792         * src/buffer.c (Fkill_buffer): Set windows_or_buffers_changed to a
2793         non-zero value, to redisplay more than just the affected windows.
2794         (Bug#21739)
2796 2015-10-23  Anders Lindgren  <andlind@gmail.com>
2798         NextStep maximization and NSTRACE rewrite
2800         Full-height, full-width, and maximized windows now cover the
2801         entire screen (except the menu bar), including the part where the
2802         system dock is placed.  The system zoom animation is no longer
2803         used.
2805         Made NonMaximized->FullWidth->FullHeight->NonMaximized restore the
2806         original size.
2808         * src/nsterm.m (ns_menu_bar_height): New function, return height of
2809         the menu bar, or 0 when it's hidden.
2810         (constrain_frame_rect): New function for constraining a frame.
2811         (ns_constrain_all_frames): Set frame size explicitly rather than
2812         relying on the system doing it for us by writing back the current
2813         frame size.
2814         (windowWillUseStandardFrame): Register non-maximized width or
2815         height as new user size.  When entering full width or height,
2816         the other size component is taken from the user size.
2817         (fullscreenState): New method for accessing the fullscreen state.
2818         (constrainFrameRect): Restrict frame to be placed under the menu bar,
2819         if present.  The old version, sometimes, restricted the height of a
2820         frame to the screen, this version never does this.
2821         (zoom): Perform zoom by setting the frame to the full size of the
2822         screen (minus the menu bar).  The default system function, with the
2823         zoom animation, is no longer used, as the final frame size doesn't
2824         cover the entire screen.
2826         Rework how to constrain resizing to the character grid.  The old
2827         system used "resizeIncrements" in NSWindows.  However, once a frame
2828         was resized so that it was not aligned to the text grid, it
2829         remained unaligned even after a resize.  In addition, it conflicted
2830         when resizing a fullheight window.
2832         * src/nsterm.m (windowWillResize): Restrict frame size to text grid,
2833         unless when pixelwise frame resizing is enabled.
2834         (updateFrameSize, initFrameFromEmacs)
2835         (toggleFullScreen, handleFS): Don't set resizeIncrements.
2837         Redesign the NS trace system.  The call structure is represented
2838         using indentations and vertical lines.  The NSTRACE macro accepts
2839         printf-style arguments.  New macros for printing various
2840         information.
2842         * src/nsterm.h (NSTRACE_ENABLED): Macro to enable trace system.
2843         (NSTRACE, NSTRACE_WHEN, NSTRACE_UNLESS): Macros to start a new
2844         block (typically a function), accept printf-style arguments.
2845         (NSTRACE_MSG): Macro for extra information, accepts
2846         printf-style arguments.
2847         (NSTRACE_what): Macros for printing various types.
2848         (NSTRACE_FMT_what): Macro with printf format string snippets.
2849         (NSTRACE_ARG_what): Macros for passing printf-style arguments,
2850         corresponds to NSTRACE_FMT_what.
2851         (NSTRACE_RETURN): Macro to print return value, accept
2852         printf-style arguments.
2853         (NSTRACE_RETURN_what): Macros to print return value for
2854         various types.
2856         * nsterm.m: Remove old NSTRACE macro
2857         * src/nsterm.m (nstrace_num): Trace counter.
2858         (nstrace_depth): Current call depth.
2859         (nstrace_leave): NSTRACE support function, called when the
2860         local variable "nstrace_enabled" goes out of scope using the
2861         "cleanup" extension.
2862         (ns_print_fullscreen_type_name): NSTRACE_FSTYPE support function.
2863         (constrain_frame_rect, ns_constrain_all_frames)
2864         (ns_update_auto_hide_menu_bar, ns_update_begin)
2865         (ns_update_window_begin, update_window_end, ns_update_end)
2866         (ns_focus, ns_unfocus, ns_ring_bell, ns_frame_raise_lower)
2867         (ns_frame_rehighlight, x_make_frame_visible)
2868         (x_make_frame_invisible, x_iconify_frame, x_free_frame_resources)
2869         (x_destroy_window, x_set_offset, x_set_window_size)
2870         (ns_fullscreen_hook, ns_lisp_to_color, ns_color_to_lisp)
2871         (ns_defined_color, frame_set_mouse_pixel_position)
2872         (note_mouse_movement, ns_mouse_position, ns_frame_up_to_date)
2873         (ns_define_frame_cursor, x_get_keysym_name, ns_redraw_scroll_bars)
2874         (ns_clear_frame, ns_clear_frame_area, ns_scroll_run)
2875         (ns_after_update_window_line, ns_shift_glyphs_for_insert)
2876         (dumpcursor, ns_draw_vertical_window_border)
2877         (ns_draw_window_divider, ns_draw_relief)
2878         (ns_dumpglyphs_box_or_relief, ns_maybe_dumpglyphs_background)
2879         (ns_dumpglyphs_image, ns_draw_glyph_string, ns_send_appdefined)
2880         (ns_read_socket, ns_select, ns_set_vertical_scroll_bar)
2881         (ns_set_horizontal_scroll_bar, ns_condemn_scroll_bars)
2882         (ns_redeem_scroll_bar, ns_judge_scroll_bars, ns_delete_terminal)
2883         (ns_create_terminal, ns_term_init, sendEvent)
2884         (applicationDidFinishLaunching, applicationDidBecomeActive)
2885         (timeout_handler, fd_handler, EmacsView_dealloc, changeFont)
2886         (acceptsFirstResponder, resetCursorRects, keyDown, mouseDown)
2887         (deltaIsZero, rightMouseDown, otherMouseDown, mouseUp)
2888         (rightMouseUp, otherMouseUp, scrollWheel, mouseMoved)
2889         (mouse_autoselect_window, in_window, mouseDragged)
2890         (rightMouseDragged, otherMouseDragged, windowShouldClose)
2891         (updateFrameSize, windowWillResize, windowDidResize)
2892         (windowDidBecomeKey, windowDidResignKey, windowWillMiniaturize)
2893         (initFrameFromEmacs, windowDidMove, windowDidDeminiaturize)
2894         (windowDidExpose, windowDidMiniaturize, windowWillEnterFullScreen)
2895         (windowDidEnterFullScreen, windowWillExitFullScreen)
2896         (windowDidExitFullScreen, toggleFullScreen, handleFS, setFSValue)
2897         (mouseEntered, mouseExited, menuDown, toolbarClicked, drawRect)
2898         (draggingEntered, performDragOperation, validRequestorForSendType)
2899         (setMiniwindowImage, constrainFrameRect, performZoom, zoom)
2900         (EmacsScroller_initFrame, EmacsScroller_setFrame)
2901         (EmacsScroller_dealloc, condemn, reprieve, judge)
2902         (resetCursorRects, setPosition, EmacsScroller_mouseDown)
2903         (EmacsScroller_mouseDragged, syms_of_nsterm): Use new trace system.
2905         * nsfns.m: Remove old NSTRACE macro
2906         * src/nsfns.m (x_set_icon_name, ns_set_name, x_explicitly_set_name)
2907         (x_implicitly_set_name, x_set_title, ns_set_name_as_filename)
2908         (ns_implicitly_set_icon_type, x_set_icon_type): Use new trace system.
2910         * nsimage.m: Remove old NSTRACE macro
2911         * src/nsimage.m (ns_image_from_XBM, ns_image_for_XPM)
2912         (ns_image_from_bitmap_file, ns_load_image): Use new trace system.
2914         * nsmenu.m: Remove old NSTRACE macro
2915         * src/nsmenu.m (ns_update_menubar, ns_menu_show, ns_popup_dialog):
2916         Use new trace system.
2918 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
2920         No need to use eval-and-compile
2922         * lisp/gnus/auth-source.el: Do require epg (when compiling) before
2923         autoload epg functions.
2925 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
2927         Fix auth-source-epa-make-gpg-token compilation (bug#21724)
2929         * lisp/gnus/auth-source.el: Add eval-and-compile to autoloads for
2930         epg-context-set-passphrase-callback, epg-decrypt-string, and
2931         epg-encrypt-string; require epg when compiling for the setf-method
2932         for epg-context-armor. (bug#21724)
2934 2015-10-22  Eli Zaretskii  <eliz@gnu.org>
2936         Include file cleanup for w32 files in src directory
2938         * src/w32xfns.c: Don't include keyboard.h, window.h, charset.h,
2939         fontset.h, blockinput.h.
2940         * src/w32uniscribe.c: Don't include dispextern.h, character.h,
2941         charset.h, fontset.h.
2942         * src/w32term.c: Don't include systty.h, systime.h, charset.h,
2943         character.h, ccl.h, dispextern.h, disptab.h, intervals.h,
2944         process.h, atimer.h, keymap.h, w32heap.h.  Include bitmap/gray.xbm
2945         in an ifdef-ed away block.
2946         Include fcntl.h for CYGWIN.
2947         (set_frame_param): Remove unused function.
2948         * src/w32select.c: Don't include charset.h and composite.h.
2949         (setup_config, Fw32_get_clipboard_data): Avoid compiler warnings
2950         due to pointer signedness mismatches.
2951         * src/w32reg.c (w32_get_string_resource): Avoid compiler warnings
2952         due to pointer signedness mismatches.
2953         * src/w32proc.c: Include unistd.h.  Don't include systime.h,
2954         process.h, dispextern.h.
2955         (sys_spawnve, Fw32_short_file_name, Fw32_long_file_name)
2956         (Fw32_application_type): Avoid compiler warnings due to pointer
2957         signedness mismatches.
2958         * src/w32menu.c: Don't include keymap.h, termhooks.h, window.h,
2959         character.h, charset.h, dispextern.h.
2960         (simple_dialog_show, add_menu_item): Avoid compiler warnings due
2961         to pointer signedness mismatches.
2962         * src/w32inevt.c: Don't include dispextern.h, window.h,
2963         termhooks.h, w32heap.h.
2964         * src/w32font.c: Don't include dispextern.h, character.h,
2965         charset.h, fontset.h, font.h.
2966         (intern_font_name, add_font_entity_to_list)
2967         (registry_to_w32_charset, w32_to_x_charset, fill_in_logfont)
2968         (list_all_matching_fonts): Avoid compiler warnings due to pointer
2969         signedness mismatches.
2970         * src/w32fns.c: Don't include character.h, intervals.h,
2971         dispextern.h, epaths.h, charset.h, ccl.h, fontset.h, systime.h,
2972         termhooks.h, w32heap.h, bitmap/gray.xbm, font.h, w32font.h.
2973         (w32_color_map_lookup, add_system_logical_colors_to_map)
2974         (x_decode_color, x_set_name, FPRINTF_WM_CHARS, Fxw_color_defined_p)
2975         (Fxw_color_values, x_display_info_for_name, Fset_message_beep)
2976         (x_create_tip_frame, Fx_file_dialog, Fsystem_move_file_to_trash)
2977         (w32_parse_hot_key, Ffile_system_info, w32_kbd_patch_key): Avoid
2978         compiler warnings, mainly due to pointer signedness mismatches.
2979         (unwind_create_frame_1): Remove unused function.
2980         * src/w32console.c: Don't include character.h, disptab.h, frame.h,
2981         window.h, termhooks.h, dispextern.h.
2982         (w32con_write_glyphs, w32con_write_glyphs_with_face): Fix pointer
2983         signedness mismatch.
2984         * src/w32.c: Include c-strcase.h and systty.h.  Don't include
2985         w32heap.h.
2987 2015-10-22  Tassilo Horn  <tsdh@gnu.org>
2989         Improve doc-view wrt. auto-revert-mode
2991         * lisp/doc-view.el (doc-view-revert-buffer): Don't revert when file
2992         is corrupted (bug#21729).
2993         (doc-view-mode): Set doc-view-revert-buffer as revert-buffer-function.
2995 2015-10-22  Oleh Krehel  <ohwoeowho@gmail.com>
2997         Describe dired-do-compress-to in the manual
2999         * etc/NEWS: Update.
3001         * lisp/dired-aux.el: Fix typo.
3003         * doc/emacs/dired.texi: Add entry.
3005 2015-10-22  Jürgen Hötzel  <juergen@archlinux.org>
3007         Further fix for proper locale handling in tramp-gvfs.el
3009         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
3010         Just suppress LC_MESSAGES locale category settings.
3012 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
3014         New lispref section “Security Considerations”
3016         This attempts to document some of the issues recently discussed
3017         on emacs-devel, and to indicate other such issues.  The section
3018         could be a lot longer.
3019         * doc/lispref/os.texi (Security Considerations):
3020         New node.
3021         * doc/lispref/elisp.texi (Top):
3022         * doc/lispref/processes.texi (Shell Arguments):
3023         * lisp/subr.el (shell-quote-argument):
3024         * src/callproc.c (syms_of_callproc):
3025         Reference it.
3027 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
3029         Merge from gnulib
3031         This incorporates:
3032         2015-10-18 stdalign: work around pre-4.9 GCC x86 bug
3033         2015-10-18 time_rz: avoid warning from bleeding-edge gcc's -Wnonnull
3034         * doc/misc/texinfo.tex, lib/stdalign.in.h, lib/time_rz.c:
3035         Copy from gnulib.
3037 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
3039         * lisp/gnus/mailcap.el (mailcap-mime-data): Remove fboundp checks.
3040         (mailcap-viewer-passes-test): Do it instead.  Thanks to Stefan Monnier.
3042 2015-10-21  Ken Brown  <kbrown@cornell.edu>
3044         Further include-file cleanup
3046         * src/sheap.c: Include stdlib.h.
3047         * src/unexcw.c: Include string.h.
3049 2015-10-21  Eli Zaretskii  <eliz@gnu.org>
3051         Fix logic in 'server-kill-emacs-query-function'
3053         * lisp/server.el (server-kill-emacs-query-function): Correct the
3054         logic that controls whether the user is asked for confirmation.
3055         (Bug#21723)
3057 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
3059         * lisp/isearch.el (isearch-search-fun-default): Simplify logic.
3060         (isearch--lax-regexp-function-p): New function.
3062 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
3064         * lisp/isearch.el: Support lax-whitespace in regexp-function searches.
3065         (isearch-search-fun-default): Let-bind `search-spaces-regexp'
3066         around `isearch-regexp-function'.
3068 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
3070         * lisp/isearch.el: Rename word search to regexp-function search.
3071         `isearch-word' went well beyond its original purpose, and the name
3072         no longer makes sense.  It is now called
3073         `isearch-regexp-function', and its value should always be a function
3074         that converts a string to a regexp (though setting it to t is still
3075         supported for now).
3076         (isearch-word): Make obsolete.
3077         (isearch-regexp-function): New variable.
3078         (isearch-mode, isearch-done, isearch--state, isearch--set-state)
3079         (with-isearch-suspended, isearch-toggle-regexp)
3080         (isearch-toggle-word, isearch-toggle-symbol)
3081         (isearch-toggle-character-fold, isearch-query-replace)
3082         (isearch-occur, isearch-highlight-regexp)
3083         (isearch-search-and-update, isearch-message-prefix)
3084         (isearch-search-fun-default, isearch-search)
3085         (isearch-lazy-highlight-new-loop, isearch-lazy-highlight-search):
3086         Use it.
3087         (isearch-lazy-highlight-regexp-function): New var.
3088         (isearch-lazy-highlight-word): Make obsolete.
3089         (isearch--describe-regexp-mode): New function.
3090         (isearch--describe-word-mode): Make obsolete.
3092         * lisp/info.el (Info-isearch-search):
3093         * lisp/replace.el (replace-search, replace-highlight):
3094         * lisp/obsolete/longlines.el (longlines-search-function):
3095         * lisp/hexl.el (hexl-isearch-search-function):
3096         * lisp/cedet/semantic/senator.el (senator-isearch-search-fun):
3097         Use the new var.
3099 2015-10-21  Oleh Krehel  <ohwoeowho@gmail.com>
3101         Add dired-do-compress-to command bound to "c"
3103         * lisp/dired-aux.el (dired-shell-command): Use the caller's
3104           `default-directory', return the result of `process-file'.
3105         (dired-compress-file-suffixes): Add comment on why "tar -zxf" isn't
3106         used by default.
3107         (dired-compress-files-alist): New defvar.
3108         (dired-do-compress-to): New command.
3110         * lisp/dired.el (dired-mode-map): Bind `dired-do-compress-to' to "c".
3111         (dired-do-compress-to): Add an autoload entry.
3113         * etc/NEWS: Add two entries.
3115 2015-10-21  Tassilo Horn  <tsdh@gnu.org>
3117         Make RefTeX work with LaTeX subfiles package
3119         * lisp/textmodes/reftex.el (reftex-TeX-master-file): Recognize subfiles
3120         document class argument as master file for referencing purposes.
3122 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
3124         * lisp/gnus/mailcap.el (mailcap-mailcap-entry-passes-test): Doc fix.
3126 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
3128         Include-file cleanup for src directory
3130         Omit ‘#include "foo.h"’ unless the file needs foo.h (Bug#21707).
3131         In a few cases, add ‘#include "foo.h"’ if the file needs foo.h
3132         but does not include it directly.  As a general rule, a source
3133         file should include foo.h if it needs the interfaces that foo.h
3134         defines.
3135         * src/alloc.c: Don’t include process.h.  Include dispextern.h,
3136         systime.h.
3137         * src/atimer.c: Don’t include blockinput.h.
3138         * src/buffer.c: Include coding.h, systime.h.  Don’t include
3139         keyboard.h, coding.h.
3140         * src/callint.c: Don’t include commands.h, keymap.h.
3141         * src/callproc.c: Don’t include character.h, ccl.h, composite.h,
3142         systty.h, termhooks.h.
3143         * src/casetab.c: Don’t include character.h.
3144         * src/category.c: Don’t include charset.h, keymap.h.
3145         * src/ccl.h: Don’t include character.h.
3146         * src/character.c: Don’t include charset.h.
3147         * src/charset.c: Don’t include disptab.h.
3148         * src/chartab.c: Don’t include ccl.h.
3149         * src/cm.c: Don’t include frame.h, termhooks.h.
3150         * src/cmds.c: Don’t include window.h, dispextern.h.
3151         * src/coding.c: Don’t include window.h, frame.h.
3152         * src/composite.c: Include composite.h.  Don’t include window.h,
3153         font.h.
3154         * src/data.c: Don’t include syssignal.h, termhooks.h, font.h.
3155         * src/dbusbind.c: Don’t include frame.h.
3156         * src/decompress.c: Don’t include character.h.
3157         * src/dired.c: Don’t include character.h, commands.h, charset.h.
3158         * src/dispnew.c: Don’t include character.h, indent.h, intervals.h,
3159         process.h, timespec.h.  Include systime.h.
3160         * src/doc.c: Include coding.h.  Don’t include keyboard.h.
3161         * src/editfns.c: Include composite.h.  Don’t include frame.h.
3162         * src/emacs.c: Include fcntl.h, coding.h.  Don’t include
3163         commands.h, systty.h..
3164         * src/fileio.c: Don’t include intervals.h, dispextern.h.
3165         Include composite.h.
3166         * src/filelock.c: Don’t include character.h, systime.h.
3167         * src/fns.c: Don’t include time.h, commands.h, keyboard.h,
3168         keymap.h, frame.h, blockinput.h, xterm.h.  Include composite.h.
3169         * src/font.c: Include termhooks.h.
3170         * src/font.h: Don’t include ccl.h, frame.h.  Add forward decls of
3171         struct composition_it, struct face, struct glyph_string.
3172         * src/fontset.c: Don’t include buffer.h, ccl.h, keyboard.h,
3173         intervals.h, window.h, termhooks.h.
3174         * src/frame.c: Don’t include character.h, commands.h, font.h.
3175         * src/frame.h: Don’t include dispextern.h.
3176         * src/fringe.c: Don’t include character.h.
3177         * src/ftcrfont.c: Don’t include dispextern.h, frame.h,
3178         character.h, charset.h, fontset.h.
3179         * src/ftfont.c: Don’t include frame.h, blockinput.h, coding.h,
3180         fontset.h.
3181         * src/ftxfont.c: Don’t include dispextern.h, character.h,
3182         charset.h, fontset.h.
3183         * src/gfilenotify.c: Don’t include frame.h, process.h.
3184         * src/gtkutil.c: Include dispextern.h, frame.h, systime.h.
3185         Don’t include syssignal.h, buffer.h, charset.h, font.h.
3186         * src/gtkutil.h: Don’t include frame.h.
3187         * src/image.c: Include fcntl.h and stdio.h instead of sysstdio.h.
3188         Don’t include character.h.
3189         * src/indent.c: Don’t include keyboard.h, termchar.h.
3190         * src/inotify.c: Don’t include character.h, frame.h.
3191         * src/insdel.c: Include composite.h.  Don’t include blockinput.h.
3192         * src/intervals.c: Don’t include character.h, keyboard.h.
3193         * src/intervals.h: Don’t include dispextern.h, composite.h.
3194         * src/keyboard.c: Don’t include sysstdio.h, disptab.h, puresize.h.
3195         Include coding.h.
3196         * src/keyboard.h: Don’t incldue systime.h.
3197         * src/keymap.c: Don’t include charset.h, frame.h.
3198         * src/lread.c: Include dispextern.h and systime.h.
3199         Don’t include frame.h.  Include systime.h.
3200         * src/macros.c: Don’t include commands.h, character.h, buffer.h.
3201         * src/menu.c: Include character.h, coding.h.  Don’t include
3202         dispextern.h.
3203         * src/menu.h: Don’t include systime.h.
3204         * src/minibuf.c: Don’t include commands.h, dispextern.h, syntax.h,
3205         intervals.h, termhooks.h.
3206         * src/print.c: Include coding.h.  Don’t include keyboard.h,
3207         window.h, dispextern.h, termchar.h, termhooks.h, font.h.
3208         Add forward decl of struct terminal.
3209         * src/process.c: Don’t include termhooks.h, commands.h,
3210         dispextern.h, composite.h.
3211         * src/region-cache.c: Don’t include character.h.
3212         * src/scroll.c: Don’t include keyboard.h, window.h.
3213         * src/search.c: Don’t include category.h, commands.h.
3214         * src/sound.c: Don’t include dispextern.h.
3215         * src/syntax.c: Don’t include command.h, keymap.h.
3216         * src/sysdep.c: Don’t include window.h, dispextern.h.
3217         * src/systime.h: Use ‘#ifdef emacs’, not ‘#ifdef EMACS_LISP_H’,
3218         * src/term.c: Don’t include systty.h, intervals.h, xterm.h.
3219         * src/terminal.c: Include character.h.
3220         Don’t include charset.h, coding.h.
3221         * src/textprop.c: Don’t include character.h.
3222         * src/undo.c: Don’t include character.h, commands.h, window.h.
3223         * src/unexsol.c: Don’t include character.h, charset.h.
3224         * src/widget.c: Include widget.h.  Don’t include keyboard.h,
3225         window.h, dispextern.h, blockinput.h, character.h, font.h.
3226         * src/widgetprv.h: Don’t include widget.h.
3227         * src/window.c: Don’t include character.h, menu.h, intervals.h.
3228         * src/xdisp.c: Include composite.h, systime.h.  Don’t include
3229         macros.h, process.h.
3230         * src/xfaces.c: Don’t include charset.h, keyboard.h, termhooks.h,
3231         intervals.h.
3232         * src/xfns.c: Don’t include menu.h, character.h, intervals.h,
3233         epaths.h, fontset.h, systime.h, atimer.h, termchar.h.
3234         * src/xfont.c: Don’t include dispextern.h, fontset.h, ccl.h.
3235         * src/xftfont.c: Don’t include dispextern.h, character.h, fontset.h.
3236         * src/xgselect.c: Don’t include timespec.h, frame.h.
3237         Include systime.h.
3238         * src/xgselect.h: Don’t include time.h.
3239         Use a forward decl to struct timespec instead.
3240         * src/xmenu.c: Don’t include keymap.h, character.h, charset.h,
3241         dispextern.h.  Include systime.h.
3242         * src/xml.c: Don’t include character.h.
3243         * src/xrdb.c [USE_MOTIF]: Don’t include keyboard.h.
3244         * src/xselect.c: Don’t include dispextern.h, character.h,
3245         buffer.h, process.h.
3246         * src/xsmfns.c: Don’t include systime.h, sysselect.h.
3247         * src/xterm.c: Don’t include syssignal.h, charset.h, disptab.h,
3248         intervals.h process.h, keymap.h, xgselect.h.  Include composite.h.
3250 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
3252         (/ N) now returns the reciprocal of N
3254         This is more compatible with Common Lisp and XEmacs (Bug#21690).  See:
3255         http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg01053.html
3256         * lisp/color.el (color-hue-to-rgb, color-hsl-to-rgb)
3257         (color-xyz-to-srgb, color-xyz-to-lab):
3258         * lisp/emacs-lisp/cl-extra.el (cl-float-limits):
3259         * lisp/net/shr-color.el (shr-color-hue-to-rgb)
3260         (shr-color-hsl-to-rgb-fractions):
3261         Exploit the change to simplify the code a bit.
3262         * lisp/emacs-lisp/bytecomp.el (byte-compile-quo):
3263         Don’t complain about single-argument calls to ‘/’.
3264         * src/data.c (arith_driver, float_arith_driver):
3265         Implement the change.
3267 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
3269         Call vc-dir-refresh after stash operations
3271         * lisp/vc/vc-git.el (vc-git-stash-apply-at-point)
3272         (vc-git-stash-pop-at-point): Call vc-dir-refresh (bug#13960).
3274         * lisp/vc/vc-dir.el (vc-dir-resynch-file): Expand FNAME as well,
3275         since it can be abbreviated (as returned by vc-find-root).
3277 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
3279         * lisp/vc/vc-svn.el:
3280         * lisp/vc/vc-mtn.el:
3281         * lisp/vc/vc-hg.el:
3282         * lisp/vc/vc-cvs.el:
3283         * lisp/vc/vc-git.el:
3284         * lisp/vc/vc-bzr.el: Don't declare vc-exec-after anymore.
3285         Its usages have been replaced with vc-run-delayed.
3287 2015-10-20  Dima Kogan  <dima@secretsauce.net>
3289         Fix memory leak in fontset handling
3291         * src/font.c (copy_font_spec): Make a deep copy of the input
3292         argument FONT.  (Bug#21651)
3294 2015-10-20  Michael Sperber  <mike@xemacs.org>
3296         * lisp/gnus/mailcap.el (mailcap-mime-data):
3297         Conditonalize `doc-view-mode', which does not exist on XEmacs.
3299 2015-10-20  Oleh Krehel  <ohwoeowho@gmail.com>
3301         Update the way directories are compressed
3303         * lisp/dired-aux.el (dired-compress-file-suffixes): Update the recipe
3304         for *.tar.gz decompression to use a pipe.
3305         Add an entry for the default directory compression (to *.tar.g).
3306         (dired-compress-file): Update.
3308         See https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg00949.html.
3310 2015-10-20  Michael Sperber  <mike@xemacs.org>
3312         Unbreak `group' option for `mail-sources'
3314         * nnml.el (nnml-retrieve-groups, nnml-request-scan):
3315         * nnmail.el (nnmail-get-new-mail-per-group)
3316         (nnmail-get-new-mail-1): Unbreak `group' option for `mail-sources'.
3318 2015-10-19  Nicolas Petton  <nicolas@petton.fr>
3320         New function seq-position
3322         * lisp/emacs-lisp/seq.el (seq-position): New function.
3323         * test/automated/seq-tests.el: New tests for seq-position.
3324         * doc/lispref/sequences.texi: Add documentation for `seq-position'.
3326 2015-10-19  Ken Brown  <kbrown@cornell.edu>
3328         Enable --with-wide-int build on 32-bit Cygwin
3330         * src/sheap.c (STATIC_HEAP_SIZE): Remove distinction between x86
3331         and x86_64 to enable --with-wide-int build on 32-bit Cygwin.
3333 2015-10-19  Glenn Morris  <rgm@gnu.org>
3335         * doc/emacs/ack.texi (Acknowledgments): Small, sad, update.
3337 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
3339         Resurrect image loading under auto-image-file-mode
3341         * src/image.c (x_find_image_fd): Handle the case of -2 returned by
3342         'openp' specially.  This special case was lost in the changes on
3343         2015-08-18.  (Bug#21685)
3345 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
3347         Fix return value of 'set-file-extended-attributes'
3349         * lisp/files.el (set-file-extended-attributes): Return non-nil
3350         when setting either ACLs or SELinux context succeeds.  Document
3351         the return value.  (Bug#21699)
3353         * doc/lispref/files.texi (Changing Files): Document the return
3354         value of set-file-extended-attributes.
3356 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
3358         Improve documentation of functions that change files
3360         * doc/lispref/files.texi (Changing Files): Document that these
3361         functions signal an error on failure.
3363 2015-10-18  Eli Zaretskii  <eliz@gnu.org>
3365         Fix doc string of 'shell-quote-argument'
3367         * lisp/subr.el (shell-quote-argument): Doc fix.  (Bug#21702)
3369 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
3371         Some minor Tramp changes
3373         * doc/misc/tramp.texi (Obtaining Tramp): Add http git cloning.
3375         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
3376         Expand `tramp-auto-save-directory'.
3378 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
3380         Minor edits in Tramp
3382         * lisp/net/tramp-adb.el (directory-listing-before-filename-regexp):
3383         Declare it.
3385         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
3386         Remove declaration.
3388 2015-10-17  Mark Oteiza  <mvoteiza@udel.edu>
3390         * lisp/emacs-lisp/eldoc.el: Add back-to-indentation to the command list.
3392 2015-10-17  Eli Zaretskii  <eliz@gnu.org>
3394         Avoid crashes when redisplayng a window changes faces or fonts
3396         * src/xdisp.c (redisplay_internal): If redisplaying the selected
3397         window or one of the frames turns on the frame's 'redisplay' flag,
3398         redisplay again.  (Bug#21428)
3400         * src/frame.c (x_set_font): Set the frame's 'fonts_changed' flag.
3402 2015-10-17  Michael Albinus  <michael.albinus@gmx.de>
3404         Solve timimg issues in file-notify-tests.el
3406         * test/automated/file-notify-tests.el (file-notify-test02-events):
3407         Rectify `attribute-change' tests.  There are timing issues with
3408         gfilenotify.  (Bug#21669)
3410 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
3412         Fix quoting of data within htmlfontify doc
3414         * doc/misc/htmlfontify.texi (Data Structures, Customization):
3415         Fix quoting of data structures.  A Lisp quote is needed only
3416         when data appears within Lisp code.
3418 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
3420         * lisp/emacs-lisp/package.el: Reload archive-contents if
3421         priorities change.
3422         (package--old-archive-priorities): New variable.
3423         (package-read-all-archive-contents, package-menu--refresh): Use it
3424         to decide when the `package-archive-contents' needs to be read
3425         again.
3427 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
3429         Make src headers idempotent and standalone
3431         Redo src/*.h so that each include file is idempotent (that is, can
3432         be included multiple times with the latter inclusions having no
3433         effect) and standalone (that is, can be included by itself,
3434         with no include file other than config.h needed as a prerequisite).
3435         This is standard practice in GNU programs nowadays.
3436         * lwlib/lwlib-widget.h, src/buffer.h, src/category.h, src/character.h:
3437         * src/charset.h, src/coding.h, src/commands.h, src/disptab.h:
3438         * src/fontset.h, src/gnutls.h, src/indent.h, src/keymap.h, src/macros.h:
3439         * src/regex.h [emacs]:
3440         * src/syntax.h, src/systty.h, src/termhooks.h:
3441         Include lisp.h, for Lisp_Object.
3442         * src/buffer.h, src/category.h, src/cm.h, src/commands.h, src/disptab.h:
3443         * src/indent.h, src/intervals.h, src/keyboard.h, src/macros.h:
3444         * src/process.h, src/puresize.h, src/region-cache.h, src/syntax.h:
3445         * src/syssignal.h, src/sysstdio.h, src/systty.h, src/termchar.h:
3446         * src/termopts.h, src/tparam.h, src/unexec.h:
3447         Protect against multiple inclusion.
3448         * src/buffer.h: Include character.h, for STRING_CHAR.
3449         * src/emacsgtkfixed.h (struct frame):
3450         * src/fontset.h (struct face):
3451         * src/region-cache.h (struct buffer):
3452         * src/termhooks.h (struct glyph):
3453         * src/xsettings.h (struct x_display_info):
3454         Add possibly-forward decl.
3455         * src/syntax.h: Include buffer.h, for BVAR.
3456         * src/sysselect.h: Include lisp.h, for eassume.
3457         * src/termchar.h: Include <stdio.h>, for FILE.
3458         * src/widget.h: Include <X11/IntrinsicP.h>, for Widget.
3459         * src/xsettings.h: Include <X11/Xlib.h>, for XEvent.
3461 2015-10-16  Jürgen Hötzel  <juergen@archlinux.org>
3463         Handle symlink targets containing spaces in tramp-gvfs.el
3465         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
3466         Handle symlink targets containing spaces.
3468 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
3470         * lisp/custom.el (custom-theme-load-path): Demote to defvar.
3472         `custom-theme-load-path' was a defcustom, but it shouldn't be for the
3473         same reason that `load-path' shouldn't.  Setting it via the customize
3474         interface is a trap for the user.
3476         Installed themes commonly add themselves to this variable, which means
3477         its value is not fit for being saved (it will permanently remember dirs
3478         that don't exist anymore).
3480         This is aggravated by the fact that Emacs always applies the `user'
3481         theme on top of any theme that's loaded, since this will apply the old
3482         variable value and remove any new directories that had been recently
3483         added by themes themselves.
3485         Not to mention, we already have `custom-theme-directory', which is safe
3486         to customize.
3488 2015-10-16  Stefan Monnier  <monnier@iro.umontreal.ca>
3490         * lisp/mpc.el: Rename the new toggling commands.
3491         (mpc-toggle-consume, mpc-toggle-repeat, mpc-toggle-single)
3492         (mpc-toggle-shuffle): Add "-toggle" in the name.
3494 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
3496         Improve the doc string of 'completion-boundaries'
3498         * lisp/minibuffer.el (completion-boundaries): Rename the argument
3499         TABLE to COLLECTION, for consistency with other high-level
3500         completion functions.  Document how COLLECTION is called if it
3501         is a function.  (Bug#21644)
3503 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
3505         * lisp/dired-aux.el (dired-shell-command): Fix compile warning.
3507 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
3509         Make dired-do-compress work for *.zip files
3511         * lisp/dired-aux.el (dired-check-process): Transform the top-level
3512           comment into a docstring.
3513         (dired-shell-command): New command.  This mirrors
3514         `dired-check-process', but is more user-friendly for passing
3515         arguments.
3516         (dired-compress-file-suffixes): Allow to specify the command switches
3517         along with input (%i) and output (%o) inside the PROGRAM part.
3518         Add an entry for *.zip files, and update the entry for *.tar.gz files
3519         to the new style.  Update the docstring.
3520         (dired-compress-file): When PROGRAM matches %i or %o, use the new
3521         logic.
3522         (dired-update-file-line): Avoid an error when at end of buffer.
3524         Fixes bug#21637.
3526 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
3528         Minor improvement in documentation of internals
3530         * doc/lispref/internals.texi (Writing Emacs Primitives): Document QUIT.
3532 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
3534         Improve documentation of COLLECTION in completion functions
3536         * doc/lispref/minibuf.texi (Minibuffer Completion): Add a
3537         cross-reference to "Programmed Completion".
3539         * src/minibuf.c (Fcompleting_read): Improve the doc string.
3540         (Bug#21644)
3542 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
3544         Add more release info to etc/HISTORY
3546         * etc/HISTORY: Add more release information about 19.x and 20.x
3547         versions.
3549 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
3551         New file etc/HISTORY
3553         * admin/FOR-RELEASE: Procedure for etc/HISTORY.
3554         * etc/HISTORY: New file.
3555         * etc/NEWS: Mention it.
3557 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
3559         js-mode: Don't misindent generator methods
3561         * lisp/progmodes/js.el (js--looking-at-operator-p): Distinguish
3562         generator methods from multiplication operator
3563         (https://github.com/mooz/js2-mode/issues/275).
3565 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
3567         Fix animation timeout delay calculation
3569         * lisp/image.el (image-animate-timeout):
3570         Don’t assume speed is floating-point.
3572 2015-10-15  Mark Oteiza  <mvoteiza@udel.edu>
3574         Add commands for controlling MPD modes
3576         * lisp/mpc.el (mpc-cmd-consume, mpc-cmd-random, mpc-cmd-repeat)
3577         (mpc-cmd-single): New functions.
3578         (mpc-consume, mpc-repeat, mpc-single, mpc-shuffle): New commands.
3579         (mpc-mode-menu): Add new commands as menu items.
3581 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
3583         Refer to `(elisp)Basic Completion' in completing-read docstring
3585         * src/minibuf.c (Fcompleting_read): Refer to `(elisp)Basic
3586         Completion' in the docstring (bug#21644).
3588 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
3590         * lisp/mpc.el (mpc-format): Always push form to pred
3592 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
3594         Spelling fixes
3596         * configure.ac (bitmapdir): Fix misspelling of bmd_acc.
3597         * test/automated/coding-tests.el (ert-test-coding-bogus-coding-systems):
3598         Fix misspelling of nonexistent file name.
3600 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
3602         * lisp/mpc.el (mpc-mode-menu, mpc-toggle-play): Fix docstrings
3604 2015-10-14  Michael Albinus  <michael.albinus@gmx.de>
3606         Some editing fixes in Tramp
3608         * lisp/net/tramp-gvfs.el:
3609         * doc/misc/tramp.texi: "customer option" -> "custom option".
3611         * lisp/net/tramp.el (tramp-completion-function-alist): Fix docstring.
3613 2015-10-14  Jürgen Hötzel  <juergen@archlinux.org>
3615         Use proper localization in tramp-gvfs.el
3617         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
3618         Suppress localized settings in order to proper parse gfvs output.
3620 2015-10-14  Warren Lynn  <wrn.lynn@gmail.com>  (tiny change)
3622         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band):
3623         Quote argument in proper order.  (Bug#21562)
3625 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
3627         Fix typos in docstrings
3629         * lisp/emacs-lisp/map.el:
3630         * lisp/emacs-lisp/seq.el: Fix typos in the docstrings of the pcase
3631           macros.
3633 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
3635         * lisp/mpc.el (mpc-volume-refresh): Check if buffer is live.
3637 2015-10-14  Oleh Krehel  <ohwoeowho@gmail.com>
3639         Make dired-jump work with tar-subfile-mode
3641         * lisp/dired-x.el (dired-jump): When in `tar-subfile-mode', instead of
3642           emitting an error, switch to `tar-superior-buffer'.
3644 2015-10-14  Juanma Barranquero  <lekktu@gmail.com>
3646         * .gitignore: Add build-aux/ar-lib.
3648 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
3650         Better docstrings in seq.el and map.el
3652         * lisp/emacs-lisp/map.el:
3653         * lisp/emacs-lisp/seq.el: Improve the docstring for the pcase patterns.
3655 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
3657         Merge from gnulib
3659         This incorporates:
3660         2015-10-13 binary-io, u64, unistd: port to strict C
3661         2015-09-26 c-ctype: do not worry about EBCDIC + char signed
3662         2015-09-25 c-ctype: port better to z/OS EBCDIC
3663         2015-09-25 gnulib-common.m4: fix gl_PROG_AR_RANLIB/AM_PROG_AR clash
3664         * doc/misc/texinfo.tex, lib/binary-io.c, lib/c-ctype.h, lib/u64.c:
3665         * lib/unistd.c, m4/gnulib-common.m4, m4/gnulib-comp.m4:
3666         Copy from gnulib.
3668 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
3670         Take XPNTR private
3672         * src/alloc.c (PURE_POINTER_P): Remove.
3673         All uses replaced with PURE_P.
3674         (XPNTR_OR_SYMBOL_OFFSET): New function.
3675         (XPNTR): Move here from lisp.h.
3676         Reimplement in terms of XPNTR_OR_SYMBOL_OFFSET.
3677         (mark_maybe_object, valid_lisp_object_p, survives_gc_p):
3678         Remove unnecessary cast.
3679         (purecopy): Use XPNTR_OR_SYMBOL_OFFSET instead of XPNTR,
3680         to avoid an unnecessary runtime test for symbols.
3681         * src/lisp.h (lisp_h_XPNTR, XPNTR): Remove, moving XPNTR to alloc.c.
3682         Only alloc.c needs XPNTR now.
3684 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
3686         Add MPC play/pause command
3688         * lisp/mpc.el (mpc-toggle-play): New command.
3689         (mpc-mode-map): Bind it to "s".
3690         (mpc-mode-menu): Add corresponding menu item.
3692 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
3694         Add bindings and menu items for prev and next tracks
3696         * lisp/mpc.el (mpc-mode-map): Bind ">" to mpc-next,
3697         "<" to mpc-prev.
3698         (mpc-mode-menu): Add corresponding menu items
3700 2015-10-13  Ken Raeburn  <raeburn@raeburn.org>
3702         Reduce face-related consing during frame creation.
3704         * faces.el (face--attributes-unspecified): Compute the "unspecified"
3705         attribute list once.
3706         (face-spec-reset-face): Use it instead of building the list.
3708 2015-10-13  Ken Raeburn  <raeburn@permabit.com>
3710         Do process ConfigureNotify events indicating size changes.
3712         * src/xterm.c (handle_one_xevent): If consecutive ConfigureNotify
3713         events don't have the same size, process each one.
3715 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
3717         Derive mpc-mode from special-mode
3719         lisp/mpc.el (mpc-mode-map): Make from sparse keymap.  Unbind g.
3720         (mpc-mode): Derive from special mode.
3721         (mpc-songs-mode-map): Don't set parent keymap.
3723 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
3725         Fix error messages for when covers are not found.
3727         The last change to mpc-format let the binding to file call
3728         mpc-file-local-copy with nil argument.  Instead, employ if-let here
3729         so nil bindings don't result in needless computation and errors.
3730         * lisp/mpc.el: Require 'subr-x at compile time.
3731         * lisp/mpc.el (mpc-format): Use if-let.
3733 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
3735         Make dired-do-compress work for *.tar.gz files
3737         * lisp/dired-aux.el (dired-compress-file-suffixes): Associate
3738           "tar -zxvf" to *.tar.gz; update docstring.
3740         (dired-compress-file): Allow to specify switches after the command in
3741         `dired-compress-file-suffixes'.
3743 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
3745         Make dired-do-compress work for directories
3747         * lisp/dired-aux.el (dired-compress-file): When FILE is a directory,
3748           instead of emitting an error, call "tar -czf FILE.tar.gz FILE".
3749         Also convert the top comment into a docstring.
3751 2015-10-13  Stefan Monnier  <monnier@iro.umontreal.ca>
3753         * lisp/mpc.el (mpc-songs-refresh): Don't side-effect `active'
3755         ... since it might come straight from the memoizing table.
3757 2015-10-13  Juanma Barranquero  <lekktu@gmail.com>
3759         * src/w32fns.c (x_change_tool_bar_height): Remove unused variable frame.
3761 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
3763         Use special-mode in eww list modes
3765         * lisp/net/eww.el (eww-bookmark-mode, eww-history-mode)
3766         (eww-buffers-mode): Derive from special-mode and remove redundant
3767         setting of buffer-read-only.
3768         (eww-mode-map): Remove redundant keymap parent setting.
3769         (eww-bookmark-mode-map, eww-history-mode-map, eww-buffers-mode-map):
3770         Remove redundant keymap suppressions and mappings.
3772 2015-10-13  Martin Rudalics  <rudalics@gmx.at>
3774         Allow setting frame pixel sizes from frame parameters (Bug#21415)
3776         Also fix some misfeatures in frame (re-)sizing code, add more
3777         debugging information and remove some dead code.
3779         * lisp/frame.el (frame-notice-user-settings, make-frame): Change
3780         parameter names when setting `frame-size-history'.
3781         (frame--size-history): New function.
3783         * src/frame.c (frame_inhibit_resize): If frame has not been made
3784         yet, return t if inhibit_horizontal_resize or
3785         inhibit_vertical_resize bit have been set.
3786         (adjust_frame_size): Simplify.
3787         (make_frame): Initialize inhibit_horizontal_resize,
3788         inhibit_vertical_resize, tool_bar_redisplayed, tool_bar_resized.
3789         (Fframe_after_make_frame): Reset inhibit_horizontal_resize and
3790         inhibit_vertical_resize slots.
3791         (x_set_frame_parameters): Handle `text-pixels' specification for
3792         width and height parameters.  Don't consider new_height or
3793         new_width changes.  Call adjust_frame_size instead of
3794         Fset_frame_size.
3795         (x_figure_window_size): Two new arguments x_width and y_width
3796         returning frame's figures width and height.  Calculate tool bar
3797         height before frame sizes so SET_FRAME_HEIGHT can pick it up.
3798         Handle `text-pixels' specification for width and height
3799         parameters.
3800         (Qtext_pixels, Qx_set_frame_parameters, Qset_frame_size)
3801         (Qx_set_window_size_1, Qx_set_window_size_2)
3802         (Qx_set_window_size_3, Qx_set_menu_bar_lines)
3803         (Qupdate_frame_menubar, Qfree_frame_menubar_1)
3804         (Qfree_frame_menubar_2): New symbols.
3805         * src/frame.h (structure frame): New booleans
3806         tool_bar_redisplayed, tool_bar_resized,
3807         inhibit_horizontal_resize, inhibit_vertical_resize.
3808         (x_figure_window_size): Update external declaration.
3809         * src/gtkutil.c (xg_frame_set_char_size): Set size hints before
3810         calling gtk_window_resize.
3811         (update_frame_tool_bar): Make inhibiting of frame resizing more
3812         discriminative.  Set tool_bar_resized bit.
3813         * src/nsfns.m (x_set_tool_bar_lines): Make inhibiting of frame
3814         resizing more discriminative.  Call adjust_frame_size instead of
3815         x_set_window_size.
3816         (Fx_create_frame): Handle x_width and x_height if
3817         set by x_figure_window_size.
3818         * src/nsterm.m (x_set_window_size): For GNUSTEP build don't
3819         subtract 3 from tool bar height.
3820         (x_set_window_size): Add frame_size_history_add call.
3821         (x_new_font): Call adjust_frame_size instead of
3822         x_set_window_size.
3823         * src/w32fns.c (x_change_tool_bar_height): Reset
3824         tool_bar_redisplayed and tool_bar_resized bits when adding tool
3825         bar.  Make inhibiting of frame resizing more discriminative.
3826         (w32_wnd_proc): Remove dead code in WM_WINDOWPOSCHANGING case.
3827         (Fx_create_frame): Handle x_width and x_height if set by
3828         x_figure_window_size.  Set size hints before adjusting frame size.
3829         (x_create_tip_frame): Adjust x_figure_window_size call.
3830         * src/w32term.c (x_set_window_size): Add frame_size_history_add
3831         call.
3832         * src/widget.c (set_frame_size): Remove dead code.  Add
3833         frame_size_history_add call.  When frame_resize_pixelwise is t
3834         use FRAME_PIXEL_WIDTH and FRAME_PIXEL_HEIGHT instead of
3835         pixel_width and pixel_height.
3836         (update_various_frame_slots): Remove dead code.
3837         (EmacsFrameResize): Add more information in
3838         frame_size_history_add call.
3839         (EmacsFrameQueryGeometry): Round only when frame_resize_pixelwise
3840         is not set.
3841         * src/xdisp.c (redisplay_tool_bar): Set tool_bar_redisplayed bits.
3842         * src/xfns.c (x_set_menu_bar_lines): Change argument name.
3843         (x_change_tool_bar_height): Reset tool_bar_redisplayed and
3844         tool_bar_resized bits when adding tool bar.  Make inhibiting of
3845         frame resizing more discriminative.
3846         (Fx_create_frame): Handle x_width and x_height if set by
3847         x_figure_window_size.  Set size hints before adjusting frame size.
3848         (x_create_tip_frame): Adjust x_figure_window_size call.
3849         * src/xmenu.c (update_frame_menubar): Don't handle Lucid specially.
3850         (set_frame_menubar): On Lucid never add core-border-width to
3851         avoid that adding XtNinternalBorderWidth adds it again.
3852         (free_frame_menubar): Handle frame_inhibit_resize true for Motif.
3853         * src/xterm.c (x_new_font): In non-toolkit case handle size
3854         change of menu bar.
3855         (x_set_window_size_1): Fix calls to frame_size_history_add.
3856         (x_wm_set_size_hint): Remove dead code.  Set
3857         size_hints.min_width and size_hints.min_height to base_width and
3858         base_height.
3860 2015-10-13  Michael Albinus  <michael.albinus@gmx.de>
3862         * test/automated/file-notify-tests.el (file-notify--test-timeout):
3863         Add docstring.  Increase to 10 seconds for remote
3864         directories.  (Bug#21669)
3866 2015-10-12  Paul Eggert  <eggert@cs.ucla.edu>
3868         Unmacroize ebrowse.c and etags.c a bit
3870         * lib-src/ebrowse.c (READ_CHUNK_SIZE): Now an enum constant.
3871         (streq, filename_eq, set_flag, has_flag): Now inline functions.
3872         (set_flag): First arg is now an address, not an lvalue.
3873         All callers changed.
3874         (filename_eq, set_flag, has_flag):
3875         Rename from FILENAME_EQ, SET_FLAG, HAS_FLAG.
3876         All callers changed.
3877         * lib-src/etags.c (streq, strcaseeq, strneq, strncaseeq):
3878         Now inline functions.  Remove asserts that are unnecessary these
3879         days (and in some cases were too-generous anyway).
3881 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
3883         Use highlight for current items
3885         * lisp/mpc.el (mpc-select-make-overlay, mpc-tagbrowser-all-select):
3886         Apply highlight face instead of region face.
3888 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
3890         Search for more cover image names in MPC
3892         * lisp/mpc.el (mpc-format): Also look for .folder.jpg or folder.jpg
3893         case insensitively
3895 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
3897         Remove or comment out unused variables
3899         * src/w32fns.c (x_set_mouse_color): Comment out variables cursor,
3900         nontext_cursor, mode_cursor, hand_cursor and count.
3901         (x_change_tool_bar_height): Remove variable old_text_height.
3902         (deliver_wm_chars): Remove variable strip_Alt.
3903         (Fw32_shell_execute): Remove variable document_a.
3904         (Fw32_frame_geometry): Remove variable fullboth.
3905         * src/w32term.c (w32_setup_relief_color): Comment out variable
3906         w32_display_info.
3907         (w32_horizontal_scroll_bar_handle_click): Remove variables start, end.
3908         (w32_read_socket): Comment out variables rows, columns.
3909         * src/w32uniscribe.c (uniscribe_check_otf_1): Remove variable rest.
3911 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
3913         * src/w32proc.c (sys_select): Fix bitwise test.
3915 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
3917         Minor typo corrections in doc strings
3919         * lisp/menu-bar.el (popup-menu, popup-menu-normalize-position):
3920         Doc fixes.
3922 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
3924         * nt/INSTALL: Recommend MSYS Automake/Autoconf from ezwinports.
3926 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
3928         Attempt to avoid crashes in plist-member
3930         * src/fns.c (Fplist_member): Don't call QUIT between a CONSP test
3931         and a call to XCDR.  (Bug#21655)
3933 2015-10-12  Mike FABIAN  <mfabian@redhat.com>
3935         * lisp/select.el (gui-get-primary-selection): In
3936         gui-get-primary-selection use gui--selection-value-internal (Bug#20906)
3938 2015-10-12  Tassilo Horn  <tsdh@gnu.org>
3940         Support RTF in doc-view
3942         * lisp/doc-view.el (doc-view-set-doc-type): Add entry for RTF extension.
3944 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
3946         * src/w32fns.c (get_wm_chars): Increment counter, not pointer.
3948 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
3950         Replace the usage of an obsolete function in auth-source.el
3952         * lisp/gnus/auth-source.el (auth-source-epa-make-gpg-token):
3953         Replace an usage of `epg-context-set-armor' with `setf'.
3955 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
3957         * lisp/gnus/auth-source.el: Use sharp-quoting with functions.
3959 2015-10-11  Jay Belanger  <jay.p.belanger@gmail.com>
3961         Have calc-yank recognize numbers in different bases.
3963         * lisp/calc/calc-yank.el (math-number-regexp): New function.
3964         (calc-yank): Use `math-number-regexp' to recognize numbers.
3966 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
3968         Handle an opaque-move X11 window manager operation more efficiently
3970         * src/xterm.c (handle_one_xevent): If a ConfigureNotify event is
3971         followed by more ConfigureNotify events for the same window, process
3972         only the last one.
3974 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
3976         Fix cursor setting for tip frame; re-enable cursor generation
3978         * src/xfns.c (x_create_tip_frame): Include the cursor in the window
3979         attributes sent when creating the new X window.  Don't skip setting
3980         the pointerColor parameter.
3982 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
3984         Rewrite x_set_mouse_color to sync less
3986         We can track serial numbers of X requests and correlate error events
3987         with the associated requests.  This way we can identify errors for
3988         specific calls without having to use XSync after every one.
3990         * src/xfns.c (enum mouse_cursor): New type.
3991         (struct mouse_cursor_types, struct mouse_cursor_data): New types.
3992         (mouse_cursor_types): New array listing the Lisp variables and default
3993         cursor appearances for each cursor type.
3994         (x_set_mouse_color_handler): New function; checks error event serial
3995         number against submitted requests.
3996         (x_set_mouse_color): Updated to use the new error handler callback,
3997         and to be more table-driven, to simplify repetitious code.
3999 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
4001         Add x_catch_errors_with_handler
4003         * src/xterm.c (struct x_error_message_stack): Add new fields for a
4004         callback function and associated data pointer.
4005         (x_error_catcher): If the callback function is set, call it after
4006         saving the error message string.
4007         (x_catch_errors_with_handler): Renamed from x_catch_errors but now
4008         accepts a callback function and data pointer.
4009         (x_catch_errors): Now a wrapper function.
4010         * src/xterm.h (x_special_error_handler): New typedef.
4011         (x_catch_errors_with_handler): Declare.
4013 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
4015         Introduce x_uncatch_errors_after_check to reduce XSync calls
4017         Both x_had_errors_p and x_check_errors call XSync, so if they're
4018         immediately followed by x_uncatch_errors, its XSync call will be
4019         redundant, resulting in a wasted round trip to the X server.
4021         * src/xterm.c (x_uncatch_errors_after_check): New routine; a copy of
4022         x_uncatch_errors without the XSync call.
4023         (XTmouse_position, x_wm_supports):
4024         * src/xfns.c (x_set_mouse_color):
4025         * src/xmenu.c (Fx_menu_bar_open_internal):
4026         * src/xselect.c (x_own_selection, x_get_foreign_selection):
4027         (Fx_get_atom_name): Call it instead of x_uncatch_errors.
4028         * src/xterm.h (x_uncatch_errors_after_check): Declare.
4030 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
4032         Document the optional prefix to `calc-yank'
4034         * doc/misc/calc.texi (Yanking into the Stack): Document the optional
4035         prefix to `calc-yank'.
4036         * lisp/calc/calc-yank.el (calc-yank): Ensure that things killed from
4037         the Calc buffer are yanked back unchanged.
4039 2015-10-10  Mark Oteiza  <mvoteiza@udel.edu>
4041         * lisp/calendar/calendar.el: Display buffer before executing body.
4043         In each use of this macro, the modeline is derived from a window width
4044         calculation, which will be wrong if (display-buffer) splits the window
4045         horizontally.
4047 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
4049         Use ‘echo’ safely with ‘\’ or leading ‘-’
4051         POSIX says that ‘echo FOO’ produces implementation-defined output
4052         if FOO contains leading ‘-’, or ‘\’ anywhere, so don’t assume GNU
4053         behavior in that case.
4054         * Makefile.in (removenullpaths): Remove.
4055         (epaths-force): Rewrite to avoid the need for ‘echo’.
4056         (install-etc): Be clearer about escaping the shell metacharacters
4057         ‘\’ and ‘$’.
4058         * Makefile.in (install-arch-indep, install-etcdoc):
4059         * admin/charsets/mapconv, admin/merge-gnulib, admin/merge-pkg-config:
4060         * admin/quick-install-emacs, build-aux/gitlog-to-emacslog:
4061         * configure.ac, lib-src/rcs2log, make-dist:
4062         * src/Makefile.in (lisp.mk):
4063         Don’t assume ‘echo’ outputs ‘\’ and leading ‘-’ unscathed.
4064         For example, use ‘printf '%s\n' "$foo"’ rather than ‘echo "$foo"’
4065         if $foo can contain arbitrary characters.
4066         * lisp/Makefile.in (TAGS): Use ‘ls’, not ‘echo’, to avoid ‘\’ issues.
4067         * doc/lispref/two-volume.make (vol1.pdf):
4068         * test/etags/make-src/Makefile (web ftp publish):
4069         Use ‘printf’ rather than ‘echo -e’.
4071 2015-10-10  Kaushal Modi  <kaushal.modi@gmail.com>
4073         Allow numbers with different radixes to be yanked.
4075         * lisp/calc/calc-yank.el (calc-yank): Allow radixes besides the
4076         default base 10.
4078 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
4080         Improve CHECK_IMPURE and PURE_P speedup
4082         * src/data.c (Faset): Use XVECTOR and XSTRING rather than XPNTR.
4084 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
4086         Use events instead of chars to keep track of steps.
4088         * lisp/calc/calc-prog.el (calc-kbd-loop): Use events instead of chars
4089         to keep track of steps.
4091 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
4093         Fix --enable-gcc-warnings problem with older GCC
4095         * src/puresize.h: Add INLINE_HEADER_BEGIN, INLINE_HEADER_END.
4096         This is for building with --enable-gcc-warnings with
4097         GCC 4.6 through 5.0.
4099 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
4101         Fix vertical-motion in truncated lines that end in a stretch
4103         * src/indent.c (Fvertical_motion): Expect overshoot when point is
4104         beyond window margin and lines are truncated, even if we have a
4105         stretch at point.  (Bug#21468)
4107 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
4109         Avoid link-time errors due to inline functions
4111         * src/emacs.c: Include puresize.h, to avoid link-time errors in
4112         unoptimized builds due to PURE_P and CHECK_IMPURE, which are now
4113         inline functions.
4115 2015-10-10  Andreas Schwab  <schwab@linux-m68k.org>
4117         * src/data.c (Faset): Fix last change.
4119 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
4121         CHECK_IMPURE and PURE_P speedup
4123         * src/intervals.c (create_root_interval):
4124         Do CHECK_IMPURE only for strings; not needed for buffers.
4125         Prefer ! STRINGP to BUFFERP, for a tad more speed.
4126         * src/puresize.h (CHECK_IMPURE, PURE_P):
4127         Now inline functions instead of macros.
4128         (PURE_P): Don’t use XPNTR; that is now the caller’s responsibility.
4129         All callers changed.
4130         (CHECK_IMPURE): New argument PTR, to save us the work of running XPNTR.
4131         All callers changed.
4133 2015-10-09  Noah Friedman  <friedman@splode.com>
4135         (tramp-open-connection-setup-interactive-shell): Send -onlcr as well.
4137 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
4139         * lisp/progmodes/cc-mode.el (c-after-font-lock-init): Only *move*
4141         our after-change-function, rather than re-adding it if it was removed.
4143 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
4145         * lisp/cedet/ede: Silence some compiler warnings
4147         * lisp/cedet/ede.el: Require cl-lib.  Silence some compiler warnings.
4148         (ede-menu-obj-of-class-p): Use cl-some rather than `eval'.
4149         (ede-apply-object-keymap, ede-reset-all-buffers)
4150         (ede-auto-add-to-target): Use dolist.
4151         (ede-new, ede-flush-deleted-projects, ede-global-list-sanity-check):
4152         Use field names rather than initarg names in `oref'.
4153         (ede-load-project-file): Remove unused var `file'.
4154         (ede-map-any-target-p): Use cl-some rather than ede-map-targets.
4155         (ede-set): Remove unused var `a'.
4157         * lisp/cedet/ede/emacs.el: Silence some compiler warnings.
4158         (ede-project-autoload): Avoid the old-style "name" argument.
4159         (ede-emacs-find-matching-target): Use field names rather than initarg
4160         names in `oref'.
4162         * lisp/cedet/ede/linux.el: Silence some compiler warnings.
4163         (ede-linux-load, ede-project-autoload): Avoid the old-style
4164         "name" argument.
4165         (ede-linux-find-matching-target): Use field names rather than initarg
4166         names in `oref'.
4168 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
4170         * lisp/textmodes/reftex.el: Silence byte-compiler warnings.
4172 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
4174         * lisp/progmodes/prolog.el (prolog-smie-rules): Try and avoid
4175         indenting too far after ":-".
4177 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
4179         Update case-table and categories of recently added characters
4181         * lisp/international/characters.el: Update information about Latin
4182         Extended-C, Latin Extended-D, Latin Extended-E, Cyrillic Extended,
4183         Georgian, Glagolitic, Deseret, Old Hungarian, and Warang Citi
4184         blocks.  (Byug#21654)
4186 2015-10-09  Martin Rudalics  <rudalics@gmx.at>
4188         * src/frame.c (adjust_frame_size): In minibuffer-only windows
4189         don't count minibuffer height twice.  (Bug#21643)
4191 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
4193         Avoid inflooping in font-lock
4195         * lisp/font-lock.el (font-lock-extend-region-wholelines): Bind
4196         inhibit-field-text-motion around the call to
4197         line-beginning-position, to avoid inflooping.  (Bug#21615)
4199 2015-10-09  Tassilo Horn  <tsdh@gnu.org>
4201         Refactor duplicated code; ensure default is in completions
4203         * lisp/textmodes/reftex-cite.el (reftex--query-search-regexps):
4204         New function.
4205         (reftex-extract-bib-entries): Use it.
4206         (reftex-extract-bib-entries-from-thebibliography): Use it.
4208 2015-10-09  Vincent Belaïche  <vincentb1@users.sourceforge.net>
4210         * doc/misc/autotype.texi (Skeletons as Abbrevs): "if" -> "ifst"
4211         in the example.
4213 2015-10-08  Stefan Monnier  <monnier@iro.umontreal.ca>
4215         * lisp/calc/calc.el: Silence byte-compiler warnings.
4216         (calc-scan-for-dels): Use ignore-errors.
4217         (calc-dispatch, calc-do-dispatch): Make unused arg optional.
4218         (calc-read-key-sequence): Remove unused var `prompt2'.
4219         (calc-kill-stack-buffer): Remove unused var `buflist'.
4220         (calc): Remove unused var `oldbuf'.
4221         (calc-refresh): Use inhibit-read-only.
4222         (calc-can-abbrev-vectors): Declare.
4223         (calc-record): Remove unused var `mainbuf'.
4224         (math-sub-bignum): Remove unused var `sum'.
4225         (math-svo-c, math-svo-wid, math-svo-off): Declare.
4227 2015-10-08  Daiki Ueno  <ueno@gnu.org>
4229         Use g_clear_error instead of g_error_free
4231         * src/image.c: Define g_clear_error instead of g_error_free.
4232         (init_svg_functions): Resolve symbol g_clear_error instead of
4233         g_error_free.
4234         (svg_load_image): Use g_clear_error instead of g_error_free, to
4235         suppress GLib warnings when ERR is not set.  See bug#21641.
4237 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
4239         * src/image.c (image_size_error): Simplify.
4241 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
4243         Fix problems caught with --enable-gcc-warnings
4245         * src/image.c (lookup_rgb_color):
4246         * src/xfns.c (x_defined_color):
4247         * src/xterm.c (x_parse_color):
4248         Remove unused locals.
4250 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
4252         * lisp/calc/calc.el (calc-digit-start-entry): Fix typo.
4254 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
4256         Format initial input uniformly
4258         * lisp/calc/calc.el (calc-digit-start-entry): New function.
4259         * lisp/calc/calc.el (calcDigit-start):
4260         * lisp/calc/calc-aent.el (calc-alg-digit-entry):
4261         Use `calc-digit-start-entry' to format input.
4263 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
4265         Disable non-working pointerColor setting for X tooltip frame
4267         It generates a bunch of server traffic, but there's some bug wherein
4268         the new mouse cursor settings don't seem to get used.  In most
4269         situations the cursor isn't likely to be seen anyway, so it's not
4270         urgent to fix.
4272         * src/xfns.c (x_create_tip_frame): Don't set pointerColor.
4274 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
4276         Reduce some unnecessary X calls
4278         * src/xfns.c (x_real_pos_and_offsets): Remove a redundant XGetGeometry
4279         call.  If border width is wanted, get it from the XGetGeometry call
4280         instead of calling XGetWindowAttributes on the same window.  Skip some
4281         X calls if we've already detected an error from the X server.
4282         * src/xterm.c (x_wm_supports): Delete x_sync before x_had_errors_p.
4283         (handle_one_xevent): Delete XSync call before x_uncatch_errors.
4285 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
4287         Reduce color allocation/query traffic in the TrueColor case
4289         When working with an X visual with TrueColor class, pixel values can
4290         be generated from the RGB values according to mask value provided by
4291         the server on connection.  Some of the image-handling code was already
4292         doing this.
4294         * src/xterm.h (x_make_truecolor_pixel): New function; code taken from
4295         lookup_rgb_color.
4296         (x_mutable_colormap): New function.
4297         * src/image.c (lookup_rgb_color): Move pixel composition code to
4298         x_make_truecolor_pixel.
4299         (x_kill_gs_process): Call x_mutable_colormap.
4300         * src/xfaces.c (x_free_colors, x_free_dpy_colors): Call
4301         x_mutable_colormap.
4302         * src/xftfont.c (xftfont_get_colors): Call x_query_colors.
4303         * src/xterm.c (x_query_colors): For a TrueColor display, decompose the
4304         pixel value into RGB values directly, and don't send a request to the
4305         server.
4306         (x_alloc_nearest_color): For a TrueColor display, construct the pixel
4307         value with x_make_truecolor_pixel.
4308         (x_copy_color): For an immutable color map, just return the provided
4309         pixel value.
4311 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
4313         Cache XParseColor results in the X display info structure
4315         With repeated lookups of foreground and background colors for multiple
4316         faces per frame, we issue a lot of redundant color name lookups to the
4317         X server, waiting every time for the response.  On a remote network
4318         with, say, 30ms round-trip time, this can add nearly a full second to
4319         creation of a new frame.
4321         * src/gtkutil.c (xg_check_special_colors): Call x_parse_color.
4322         * src/image.c (get_spec_bg_or_alpha_as_argb):
4323         (xpm_init_color_cache, xpm_lookup_color):
4324         * src/xfns.c (x_defined_color):
4325         * src/xterm.c (x_parse_color): New function; caches color names not
4326         starting with "#" in the display-info structure.
4327         (x_delete_display): Delete the cache content.
4328         * src/xterm.h (struct color_name_cache_entry): New type.
4329         (x_parse_color): Declare.
4330         (struct x_display_info): Add a new field for the cache.
4332 2015-10-07  Stefan Monnier  <monnier@iro.umontreal.ca>
4334         * src/syntax.c (syms_of_syntax): Make syntax-propertize--done local.
4336 2015-10-07  Eli Zaretskii  <eliz@gnu.org>
4338         Fix segfault in image_size_error
4340         * src/image.c (image_size_error): Pass a Lisp string to
4341         image_error, not a C string.  (Bug#21641)
4343 2015-10-07  Simen Heggestøyl  <simenheg@gmail.com>
4345         Highlight CSS variable definitions
4347         * lisp/textmodes/css-mode.el (css-nmstart-re): Tweak regexp to accept
4348         CSS variables.  (Bug#21638)
4350 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
4352         * test/automated/tabulated-list-test.el: New file.
4353         Test bug#21639 and some basic functionality.
4355 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
4357         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-sort):
4358         Check if column can be sorted before trying.  (Bug#21639)
4360 2015-10-07  Nicolas Richard  <youngfrog@members.fsf.org>
4362         Add test for `self-insert-command' (bug#21633)
4364         * test/automated/cmds-tests.el: New file.
4366 2015-10-07  Martin Rudalics  <rudalics@gmx.at>
4368         * src/window.c (resize_frame_windows): Don't set root window's
4369         top position when resizing horizontally.
4371 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
4373         * lisp/progmodes/prog-mode.el (prettify-symbols-alist):
4374         Document more possible values.
4376 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
4378         * lisp/textmodes/tex-mode.el: Use lexical-binding.
4380 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
4382         * lisp/indent.el (indent--default-inside-comment): New function.
4383         (indent-for-tab-command): Use it for `noindent' indentation.
4385 2015-10-06  Paul Eggert  <eggert@cs.ucla.edu>
4387         Fix bug in GC_CHECK_MARKED_OBJECTS check
4389         * src/alloc.c (mark_object): Fix bug in checking code.
4390         When GC_CHECK_MARKED_OBJECTS is defined, the bug caused
4391         CHECK_ALLOCATED_AND_LIVE_SYMBOL to repeatedly do the
4392         CHECK_ALLOCATED and CHECK_LIVE tests for the first symbol in each
4393         bucket.  The bug did not affect behavior either in the normal case
4394         where GC_CHECK_MARKED_OBJECTS is not defined, or where Emacs does
4395         not have an internal error that a properly-written
4396         CHECK_ALLOCATED_AND_LIVE_SYMBOL would detect.
4398 2015-10-06  Tassilo Horn  <tsdh@gnu.org>
4400         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
4401         Add prettified version for \\Bbb{Q}.
4403 2015-10-06  Artur Malabarba  <bruce.connor.am@gmail.com>
4405         * test/automated/package-test.el (package-test-install-single):
4406         Add a test for bug#21625.
4408 2015-10-06  Aaron Ecay  <aaronecay@gmail.com>
4410         * lisp/emacs-lisp/package.el (package-install): Fix error when pkg is
4411           not a package-desc object.  Also clarify documentation.  (Bug#21625)
4413 2015-10-06  Eli Zaretskii  <eliz@gnu.org>
4415         Fix display of characters adjacent to ZWJ and ZWNJ
4417         * src/bidi.c (bidi_resolve_neutral): Treat all Bn (a.k.a. "control")
4418         characters the same as directional formatting controls.
4419         (bidi_level_of_next_char): Include all Bn characters in rule L1,
4420         as mandated by the UBA.
4422 2015-10-06  Andreas Schwab  <schwab@suse.de>
4424         * src/cmds.c (Fself_insert_command): Don't use XFASTINT on a negative
4425         number.  (Bug#21633)
4427 2015-10-05  Xue Fuqiao  <xfq.free@gmail.com>
4429         * doc/lispref/objects.texi (Window Type): Add a cross reference.
4431         * src/buffer.c (syms_of_buffer): Typo fix.  (Bug#21622)
4433 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
4435         * lisp/language/misc-lang.el (composition-function-table):
4436         Fix entries for Arabic and Syriac.
4438 2015-10-05  Damien Cassou  <damien@cassou.me>
4440         Add first unit tests for auth-source.el
4442         * test/automated/auth-source-tests.el: New file.
4444 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
4446         Remove redundant redisplay code
4448         * src/xdisp.c (redisplay_internal, try_cursor_movement)
4449         (try_window_reusing_current_matrix, try_window_id): Remove
4450         redundant restrictions on redisplay optimizations based on the
4451         frame's 'redisplay' flag.  See
4452         http://osdir.com/ml/general/2015-10/msg02110.html for the relevant
4453         discussions.
4455 2015-10-04  Stefan Monnier  <monnier@iro.umontreal.ca>
4457         * src/xdisp.c (windows_or_buffers_changed): Improve docstring.
4459 2015-10-04  Xue Fuqiao  <xfq.free@gmail.com>
4461         Update tutorials/TUTORIAL.cn
4463         * etc/tutorials/TUTORIAL.cn: Improve translation.
4465 2015-10-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
4467         * src/macfont.m (macfont_encode_char, syms_of_macfont):
4468         Remove unused vars.
4470 2015-10-04  Stefan Merten  <stefan@merten-home.de>
4472         Pull in version numbers from rst.el upstream release.
4474         * lisp/textmodes/rst.el (rst-cvs-header, rst-svn-rev)
4475         (rst-svn-timestamp, rst-official-version)
4476         (rst-official-cvs-rev, rst-package-emacs-version-alist):
4477         Update version numbers.
4479 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
4481         * test/automated/coding-tests.el: New file.
4483 2015-10-04  Michael Albinus  <michael.albinus@gmx.de>
4485         Improve XEmacs compatibility of Tramp
4487         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
4488         Declare if it doesn't exist.
4489         (file-remote-p): Remove defalias, which was necessary for GNU Emacs 21.
4490         (redisplay): Make it an alias if it doesn't exist.
4492         * lisp/net/tramp.el (tramp-get-remote-tmpdir): Don't use
4493         `file-remote-p' (due to XEmacs compatibility).
4495         * lisp/net/trampver.el (locate-dominating-file)
4496         (tramp-compat-replace-regexp-in-string): Autoload.
4497         (tramp-repository-get-version): Do not dupe byte-compiler.
4499 2015-09-02  K. Handa  <handa@gnu.org>
4501         fix for the case that M17N_FLT_USE_NEW_FEATURE is not defined
4503         * src/ftfont.c (ftfont_drive_otf) [not M17N_FLT_USE_NEW_FEATURE]:
4504         Adjusted for the change of type of elements in the array
4505         MFLTGlyphString.glyphs.
4507 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
4508             Michael Heerdegen  <michael_heerdegen@web.de>
4510         shr: fix too long lines in rendered buffers (Bug#21012)
4512         * lisp/net/shr.el (shr-insert-document, shr-fill-text):
4513         Correct calculation of available width.
4514         (shr-find-fill-point): Don't overflow window edge if shr-kinsoku-shorten
4515         is nil.
4517 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
4519         Restore blank line before next section, erroneously erased
4520         in my previous commit
4522         * etc/compilation.txt (symbol ant): Add an additional trailing blank
4523         line to this section, so that there are two of them immediately before
4524         the next section.
4526 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
4528         Support MSW filename style for ant compilation error regexp
4530         * etc/compilation.txt (symbol ant):
4531         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
4532         Support MSW filename style.
4534 2015-10-03  Paul Eggert  <eggert@cs.ucla.edu>
4536         * nt/INSTALL: Minor spelling and quote fixes.
4538         * lisp/ibuffer.el: Fix docstring length (Bug#21541).
4540 2015-10-03  Simen Heggestøyl  <simenheg@gmail.com>
4542         Maintain ordering of JSON object keys by default
4544         * lisp/json.el (json-object-type): Mention order handling in doc-string.
4545         (json--plist-reverse): New utility function.
4546         (json-read-object): Maintain ordering for alists and plists.
4547         (json-pretty-print): Ensure that ordering is maintained.
4549         * test/automated/json-tests.el (test-json-plist-reverse): New test for
4550         `json--plist-reverse'.
4551         (json-read-simple-alist): Update test to accommodate for changes in
4552         `json-read-object'.
4554         * etc/NEWS: Document the new behavior of the pretty printing functions.
4556 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
4558         * src/coding.c (complement_process_encoding_system): Revert last change.
4560 2015-10-03  Ulf Jasper  <ulf.jasper@web.de>
4562         * admin/MAINTAINERS: Add entry for Ulf Jasper.
4564 2015-10-03  Xue Fuqiao  <xfq.free@gmail.com>
4566         Doc fix for `defmacro'
4568         * doc/lispref/objects.texi (Macro Type): `defmacro' is a macro now.
4570 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
4572         More validatation of coding systems
4574         * src/fileio.c (Finsert_file_contents): Remove redundant
4575         coding-system check.
4576         (choose_write_coding_system): Likewise.
4577         * src/coding.c (complement_process_encoding_system): Check argument
4578         for valid coding system.
4580 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
4582         Avoid crashes in coding_inherit_eol_type
4584         * src/coding.c (coding_inherit_eol_type): Check the validity of
4585         the arguments.  Suggested by Andreas Schwab <schwab@linux-m68k.org>.
4586         (Bug#21602)
4588 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
4590         More validatation of coding system in 'write-region'
4592         * src/coding.c (choose_write_coding_system): More validation of
4593         coding-system from various sources.  Suggested by Andreas Schwab
4594         <schwab@linux-m68k.org>.  (Bug#21602)
4596 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
4598         Avoid crashes due to invalid coding-system
4600         * src/fileio.c (choose_write_coding_system)
4601         (Finsert_file_contents): Check validity of coding-system-for-write
4602         and coding-system-for-read bound by the caller.  (Bug#21602)
4604 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
4606         Adapt to new prettify-symbols-unprettify-at-point default
4608         * etc/NEWS: Mention that unprettication of symbol at point is off
4609         by default.
4611 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
4613         Revert my two recent process.c changes
4615         Revert "Improve last commit to process.c" and "Remove callback-handled
4616         channels from Available set" because they did not fix bug#21313.
4618         This reverts commits bfa1aa8e2bdaf14adbbf1e9e824051d3f740694c and
4619         27f871907cc24f33a7d12ac3a4ab71a88f0bc554.
4621 2015-10-02  Markus Triska  <triska@metalevel.at>
4623         * lisp/progmodes/prolog.el: Update and extend operator table.
4624         (prolog-smie-grammar): Add multifile, public etc.
4626 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
4628         Allow autogen even when Git is not installed
4630         * autogen.sh: Test ‘git status’ before trying to use Git.
4632 2015-10-02  Stefan Monnier  <monnier@iro.umontreal.ca>
4634         * lisp/vc/vc-git.el (vc-git-region-history): Handle local changes.
4635         Adjust lto/lfrom when we have uncommitted changes.
4637 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
4639         Fix problems found by clang 3.5.0
4641         * src/cmds.c (Fdelete_char): Don’t assume XINT returns int.
4642         * src/font.c (font_parse_family_registry):
4643         Use &"str"[X] instead of "str"+X, to pacify clang -Wstring-plus-int.
4645 2015-10-02  Eli Zaretskii  <eliz@gnu.org>
4647         * nt/INSTALL: Update instructions for running autogen.sh.
4649         * nt/INSTALL: Point to ezwinports for libXpm binaries.
4651 2015-10-02  Daniel Colascione  <dancol@dancol.org>
4653         Fix winner in cl-lib not loaded case
4655         * lisp/winner.el (winner-change-fun): Don't use cl-lib functions
4656         without requiring CL
4658 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
4660         Fix a few problems with directed quotes
4662         This is in response to a problem report by Kaushal Modi in:
4663         http://bugs.gnu.org/21588#25
4664         * lisp/cedet/mode-local.el (describe-mode-local-overload):
4665         * lisp/emacs-lisp/bytecomp.el (byte-compile-fix-header):
4666         * lisp/info-xref.el (info-xref-check-all-custom):
4667         * lisp/mail/emacsbug.el (report-emacs-bug-hook):
4668         Prefer directed to undirected single quotes in diagnostics.
4670 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
4672         Revert "Attempt to fix slow redisplay caused by last changes"
4674         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
4675         (try_cursor_movement): Don't relax requirements for redisplay
4676         optimizations for the selected frame.  (Bug#21597)
4678         This reverts commit c4c1fb97727ff52bcfa83ad5ed94a64a93d12e59.
4680 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
4682         Fix slow redisplay when daemon frame exists
4684         * src/xdisp.c (redisplay_internal): Don't consider daemon frames
4685         when looking for frames that need to be redisplayed.  (Bug#21597)
4687 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
4689         Attempt to fix slow redisplay caused by last changes
4691         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
4692         (try_cursor_movement): Relax requirements for redisplay
4693         optimizations for the selected frame.  (Bug#21597)
4695 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
4697         * src/dired.c (Ffile_name_completion, Ffile_name_all_completions):
4698         Improve doc string.
4700 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
4702         * lisp/minibuffer.el (minibuffer-completion-help):
4703         Set default base-size, in case completion table does not set it.
4705 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
4707         Fix GUD display of GDB output with non-ASCII text
4709         * lisp/progmodes/gdb-mi.el (gdb-mi-decode-strings): New defcustom.
4710         (gdb-mi-decode): New function.
4711         (gud-gdbmi-marker-filter): If gdb-mi-decode-strings is non-nil,
4712         decode octal escapes in GDB output.  (Bug#21572)
4714 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
4716         * nt/INSTALL: Document where to find XPM support files.
4718 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
4720         Un- and re-prettification are not exclusive
4722         * lisp/progmodes/prog-mode.el (prettify-symbols--post-command-hook):
4723         Re-apply prettification to previous symbol also when unprettifying
4724         next one.
4726 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
4728         Don't unprettify symbol at point by default
4730         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
4731         Default to disabled (nil).
4733 2015-09-30  Artur Malabarba  <bruce.connor.am@gmail.com>
4735         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
4736         Support unprettifying when point is after a symbol.
4738         * etc/NEWS: Document `prettify-symbols-unprettify-at-point'.
4740 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
4742         Avoid assertion violations in push_prefix_prop
4744         * src/xdisp.c (push_prefix_prop): Avoid assertion violations when
4745         a line that has a line-prefix defined starts with an image.  (Bug#21428)
4747 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
4749         Disable some display optimizations when frames need redisplay
4751         These optimizations were previously disabled by the
4752         windows_or_buffers_changed flag, which now is not set
4753         when only some frames need to be redrawn.
4754         * src/xdisp.c (redisplay_internal): Redisplay any frame whose
4755         'redisplay' flag is set.
4756         (try_window_reusing_current_matrix, try_window_id)
4757         (try_cursor_movement): Disable these optimizations when the
4758         frame's 'redisplay' flag is set.
4760 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
4762         Don't modify buffer by unprettification
4764         * lisp/progmodes/prog-mode.el (prettify-symbols--compose-symbol):
4765         (prettify-symbols--post-command-hook, prettify-symbols-mode): Don't
4766         modify buffer when setting/removing custom prettify-symbols-start/end
4767         text properties.  Add them to font-lock-extra-managed-props, too.
4769 2015-09-30  Stefan Monnier  <monnier@iro.umontreal.ca>
4771         Try to avoid redisplaying all frames when creating a new one
4773         * src/xfns.c (x_set_menu_bar_lines, x_change_tool_bar_height):
4774         * src/xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
4775         (Finternal_set_lisp_face_attribute, update_face_from_frame_parameter):
4776         * src/frame.c (x_set_screen_gamma): Set the specific frame's
4777         `redisplay' bit rather than windows_or_buffers_changed.
4779         * src/window.c (apply_window_adjustment): Remove redundant setting of
4780         windows_or_buffers_changed.
4782         * src/xdisp.c (redisplay_internal): Set the specific frame's
4783         `redisplay' bit rather than update_mode_lines in response to
4784         cursor_type_changed.
4785         (syms_of_xdisp): Use hash-tables for redisplay_*_cause tables.
4786         (AINC): Adjust accordingly.
4788 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
4790         Implement unprettification of symbol at point
4792         * lisp/progmodes/prog-mode.el: Implement feature for unprettifying the
4793         symbol at point.
4794         (prettify-symbols--current-symbol-bounds): New variable.
4795         (prettify-symbols--post-command-hook): New function.
4796         (prettify-symbols-unprettify-at-point): New defcustom.
4797         (prettify-symbols-mode): Use it.
4798         (prettify-symbols--compose-symbol): Use them.
4800 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
4802         * src/macfont.m (mac_font_descriptor_supports_languages):
4803         Regard "zh" as synonym of "zh-Hans".
4805 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
4807         Work around crash when displaying etc/HELLO on OS X 10.11
4809         * src/macfont.m (mac_font_get_weight)
4810         (mac_font_descriptor_get_adjusted_weight): New functions.
4811         (macfont_store_descriptor_attributes): Adjust weight.
4813 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
4815         * src/macfont.m: Fix compilation with USE_CT_GLYPH_INFO.
4817 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
4819         * lisp/arc-mode.el (archive-rar-summarize): Better alignment
4820         of the columns.
4822 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
4824         Use unar and lsar to handle RAR archives in arc-mode
4826         * lisp/arc-mode.el (archive-rar-extract, archive-extract-by-file): Rely
4827         on unar and lsar instead of unrar-free for RAR archives (bug#17663).
4829 2015-09-30  Wieland Hoffmann  <themineo@gmail.com>  (tiny change)
4831         Clarify :create in auth-source's docs
4833         * lisp/gnus/auth-source.el (auth-source-search):
4834         Clarify :create's meaning.
4836 2015-09-30  Phil Sainty  <psainty@orcon.net.nz>
4838         Avoid empty -path arguments in rgrep
4840         * lisp/progmodes/grep.el (rgrep-default-command): Remove nil from
4841         the list produced according to grep-find-ignored-directories,
4842         before passing it to Find/Grep invocation.  (Bug#21548)
4844 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
4846         Clarify documentation of pos-visible-in-window-p
4848         * src/window.c (Fpos_visible_in_window_p): Clarify the meaning of
4849         t for POS.  See
4850         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg01040.html
4851         for the original report.
4853         * doc/lispref/windows.texi (Window Start and End): Clarify the
4854         meaning of t for the POSITION argument of pos-visible-in-window-p.
4856 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
4858         * lisp/progmodes/prolog.el: Fix various indentation cases.
4859         (prolog-operator-chars): New const (add \\).
4860         (prolog-smie-forward-token, prolog-smie-backward-token): Use it.
4861         (prolog-smie-rules): Add rules according to bug#21526.
4863 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
4865         * lisp/progmodes/sh-script.el: Old "dumb" continued line indent.
4866         (sh-indent-after-continuation): Add new value `always' (bug#17620)
4867         (sh-smie-sh-rules): Remove old handling of continued lines.
4868         (sh-smie--indent-continuation): New function.
4869         (sh-set-shell): Use it.
4871 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
4873         * lisp/progmodes/octave.el: Use grammar more; Handle enumeration fun.
4874         Remove redundant :group keyword args.
4875         (octave-begin-keywords, octave-else-keywords, octave-end-keywords):
4876         Remove variables.
4877         (octave-operator-table, octave-smie-bnf-table): Use let-when-compile to
4878         turn them into compile-time variables.
4879         Auto-generate the "foo ... end" rules from the "foo ... endfoo" rules.
4880         Add rules for break, continue, return, global, and persistent.
4881         Refine the rule for "until".
4882         (octave-smie--funcall-p, octave-smie--end-index-p)
4883         (octave-smie--in-parens-p): New functions.
4884         (octave-smie-backward-token, octave-smie-forward-token): Use them to
4885         distinguish the "enumeration" function and the "end" index from
4886         their corresponding keywords.
4887         (octave--block-offset-keywords): New constant.
4888         (octave-smie-rules): Use it.  Adjust rules for new global/persistent
4889         parsing.
4890         (octave-reserved-words): Redefine using octave-smie-grammar.
4891         (octave-font-lock-keywords): Use octave-smie--funcall-p and
4892         octave-smie--end-index-p.
4894 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
4896         * lisp/emacs-lisp/lisp-mode.el (let-when-compile): Work like let*.
4898 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
4900         * nt/INSTALL: Remove references to GTK site.
4901         That site no longer offers Windows downloads.
4903 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
4905         * nt/INSTALL: Add instructions for installing Git.
4907 2015-09-29  Katsumi Yamaoka  <yamaoka@jpl.org>
4909         * lisp/net/shr.el (shr-colorize-region): Allow 88-color tty to
4910         use colors.  Suggested by Eli Zaretskii.
4912 2015-09-28  Katsumi Yamaoka  <yamaoka@jpl.org>
4914         * lisp/net/shr.el (shr-colorize-region): Don't do it on a system
4915         not supporting 256 above colors (bug#21557).
4917 2015-09-28  Dmitry Gutov  <dgutov@yandex.ru>
4919         Revert "Don't rely on defaults in decoding UTF-8 encoded Lisp files"
4921         This reverts commit db828f62f6f17414fbbc3206dac123dc73dd6055.
4923 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
4925         Add documentation for seq.el
4927         * doc/lispref/sequences.texi: Add documentation regarding extending
4928         seq.el, as well as missing documentation for seq-elt, seq-length, seq-p,
4929         seq-do and seq-map.
4931 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
4933         Better documentation for seq-some
4935         * doc/lispref/sequences.texi:
4936         * lisp/emacs-lisp/seq.el: Update the documentation of seq-some to
4937         guarantee that the returned value is the first non-nil value that
4938         resulted from applying the predicate.
4940 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
4942         * lisp/arc-mode.el: Sharp-quote function arguments.
4944 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
4946         Avoid redisplay error in ediff-regions-wordwise
4948         * lisp/vc/ediff-util.el
4949         (ediff-clone-buffer-for-region-comparison): Make sure the mark is
4950         set before activating it.  (Bug#21567)
4952 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
4954         Another attempt to fix crashes due to prematurely freed faces
4956         * src/xdisp.c (redisplay_internal): Inhibit freeing of realized
4957         faces for as long as we might have desired matrices that reference
4958         those faces.  (Bug#21428)
4960 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
4962         Add auctex development list email address
4964 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
4966         * admin/MAINTAINERS: Add entries for AUCTeX team and myself.
4968 2015-09-28  Arash Esbati  <esbati@gmx.de>  (tiny change)
4970         Improve wrapfig package support and caption parsing
4972         * lisp/textmodes/reftex-vars.el (reftex-label-alist-builtin):
4973         Correct description string and add wraptable environment.
4974         (reftex-default-context-regexps): Improve caption regexp.
4976 2015-09-28  Anders Lindgren  <andlind@gmail.com>
4978         Respect value of frame_resize_pixelwise when handling fullscreen state
4980         * src/nsterm.m (handleFS): Respect frame_resize_pixelwise when
4981         setting size increments.
4983 2015-09-27  Michael Albinus  <michael.albinus@gmx.de>
4985         * src/gfilenotify.c (Fgfile_add_watch): Cleanup temporary variable.
4987 2015-09-27  Simen Heggestøyl  <simenheg@gmail.com>
4989         Add prettify-symbols-alist for js-mode
4991         * lisp/progmodes/js.el (js--prettify-symbols-alist): New defconst.
4992         (js-mode): Use it.
4994 2015-09-27  Eli Zaretskii  <eliz@gnu.org>
4996         * nt/subdirs.el: File deleted (no longer used).
4998 2015-09-26  Alan Mackenzie  <acm@muc.de>
5000         Fix follow-scroll-up/down, making them replacements for scroll-up/down
5002         1. Allow point to move between follow windows in scroll operations.
5003         2. Fix bug where `right-char' just before EOB caused spurious scrolling,
5004         when EOB was isolated in the last follow window.
5006         * lisp/follow.el (follow-fixed-window): New variable.
5007         (follow-get-scrolled-point): New function.
5008         (follow-scrol-up, follow-scroll-down): Add autoload cookies.
5009         Reformulate the code.  Put `scroll-command' properties on the functions.
5010         Correct minor errors in ...-down's doc string and code.
5011         (follow-calc-win-end): Amend incomplete doc string.  Use
5012         `pos-visible-in-window-p' to check whether EOB is in the window.
5013         (follow-estimate-first-window-start): Correct an off-by-1 error.
5014         (follow-adjust-window): Add handling for explicit scrolling operations.
5016 2015-09-26  Paul Eggert  <eggert@cs.ucla.edu>
5018         * admin/MAINTAINERS: Add self, plus list some more files
5019         sans maintaners.
5021 2015-09-26  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
5023         New DWIM commands for changing letter-case
5025         * lisp/simple.el (upcase-dwim, downcase-dwim, capitalize-dwim):
5026         New functions.  (Bug#21501)
5028 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
5030         * etc/PROBLEMS: Document problems with pasting on MS-Windows.
5032 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
5034         Make face realization be more frame-specific
5036         * src/frame.h (struct f): New flag face_change.
5037         * src/xfaces.c (Finternal_make_lisp_face)
5038         (Finternal_copy_lisp_face, Finternal_set_lisp_face_attribute)
5039         (update_face_from_frame_parameter): Set the face_change flag only
5040         for the frame whose faces are affected.
5041         * src/xdisp.c (init_iterator): If a frame's face_change flag is
5042         set, free faces only on that frame.
5043         (redisplay_internal): Disable "display optimization 1" if the
5044         frame's face_change flag is set.
5045         (redisplay_window): Don't allow skipping a window's redisplay if
5046         its frame's face_change flag is set.
5047         * src/frame.c (x_set_screen_gamma): Instead of calling
5048         Fclear_face_cache, call clear_face_cache and set
5049         windows_or_buffers_changed to a non-zero value.  This avoids
5050         setting the global face_change flag that triggers face realization
5051         on all frames and thorough redisplay of all of them.
5053         * lisp/term/tty-colors.el (tty-register-default-colors): Don't
5054         clear face cache if the selected frame is a GUI frame.
5056 2015-09-26  Tassilo Horn  <tsdh@gnu.org>
5058         Remove font-latex specific check
5060         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
5061         Use syntax-ppss data to identify verbatim contents.
5063 2015-09-25  Tassilo Horn  <tsdh@gnu.org>
5065         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
5066         Fix some false negatives.
5068 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
5070         Reorder Windows version in Emacs manifests
5072         * nt/emacs-x64.manifest:
5073         * nt/emacs-x86.manifest: Reorder Windows version from lowest to
5074         highest.
5076 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
5078         Update Emacs manifest files for Windows 10
5080         * nt/emacs-x86.manifest:
5081         * nt/emacs-x64.manifest: Declare compatibility with Windows 10.
5083 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
5085         Avoid non-ASCII decoding errors in C src files
5087         * src/nsterm.m:
5088         * src/lisp.h:
5089         * src/editfns.c:
5090         * src/doprnt.c: Add 'coding' cookies -- these files include
5091         Unicode characters and should be decoded as UTF-8.
5093 2015-09-25  Alan Mackenzie  <acm@muc.de>
5095         Resurrect edebug-set-initial-mode, repurposing it to set the global mode
5097         * lisp/emacs-lisp/edebug.el (edebug-initial-mode-alist): Uncomment, and
5098         amend to match current modes and functions.
5099         (edebug-set-initial-mode): Uncomment and change from setting a defun's
5100         `edebug-initial-mode''s property to setting the variable
5101         `edebug-initial-mode'.
5102         (top level): Create new binding C-x C-a C-m for
5103         `edebug-set-initial-mode'.
5105         * doc/lispref/edebug.texi (Edebug Execution Modes): Document
5106         `edebug-set-initial-mode' and its new key binding.
5107         (Edebug Options): Mention the new command in the pertinent place.
5109         * etc/NEWS: Write entry for this change.
5111 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
5113         Avoid non-ASCII decoding errors in Texinfo files
5115         * doc/misc/tramp.texi:
5116         * doc/lispref/strings.texi:
5117         * doc/lispref/positions.texi:
5118         * doc/lispref/help.texi:
5119         * doc/lispref/functions.texi:
5120         * doc/lispintro/emacs-lisp-intro.texi:
5121         * doc/emacs/text.texi:
5122         * doc/emacs/modes.texi:
5123         * doc/emacs/mini.texi:
5124         * doc/emacs/display.texi:
5125         * doc/emacs/custom.texi:
5126         * doc/emacs/basic.texi: Add 'coding' cookies -- these files use
5127         Unicode characters and should be decoded as UTF-8.
5128         * doc/lispref/frames.texi (Size Parameters): Don't use a non-ASCII
5129         apostrophe unnecessarily.
5131 2015-09-25  Paul Eggert  <eggert@cs.ucla.edu>
5133         Merge from gnulib
5135         This incorporates:
5136         2015-09-25 c-ctype: rewrite to use inline functions
5137         2015-09-24 maint: add coding cookies to non-ASCII sources
5138         2015-09-24 gitlog-to-changelog: trim only trailing whitespaces
5139         * build-aux/gitlog-to-changelog, doc/misc/texinfo.tex:
5140         * lib/acl-internal.c, lib/acl-internal.h, lib/c-ctype.c:
5141         * lib/c-ctype.h, lib/get-permissions.c, lib/qcopy-acl.c:
5142         * lib/set-permissions.c:
5143         Copy from gnulib.
5145 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
5147         Update publicsuffix.txt from upstream
5149         * etc/publicsuffix.txt: Update from
5150         https://publicsuffix.org/list/effective_tld_names.dat
5151         dated 2015-09-24 17:29:21 UTC.
5153 2015-09-24  Eli Zaretskii  <eliz@gnu.org>
5155         Prevent timers from messing up TTY menus
5157         * src/term.c (tty_menu_activate): Inhibit redisplay for as long as
5158         the TTY menu is open.  (Bug#21530)
5160 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
5162         No need to mention K&R C in c-mode intro
5164 2015-09-24  Stefan Monnier  <monnier@iro.umontreal.ca>
5166         Fix recent bootstrap problems
5168         * src/syntax.c (parse_sexp_propertize): Fix last fix.
5169         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): Fix paren typo.
5170         * lisp/emacs-lisp/lisp-mode.el: Require cl-lib for cl-progv.
5172 2015-09-24  Michael Albinus  <michael.albinus@gmx.de>
5174         * src/gfilenotify.c (Fgfile_add_watch): Decrease polling rate.
5176 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
5178         Properly quote nested xml comments (Bug#6267) (Bug#20001)
5180         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): New function.
5181         (nxml-mode): Set comment-quote-nested-function.
5183 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
5185         Allow major-modes full control over quoting nested comments
5187         * lisp/newcomment.el (comment-quote-nested-function): New variable.
5188         (comment-quote-nested-default): New function.
5189         (comment-quote-nested): Use `comment-quote-nested-function'.
5191 2015-09-23  Paul Eggert  <eggert@cs.ucla.edu>
5193         Prefer CALLN in a few more places
5195         * src/macfont.m (macfont_set_family_cache):
5196         * src/nsterm.m (append2):
5197         * src/xterm.c (x_cr_export_frames):
5198         Prefer CALLN to allocating the arg arrays by hand.
5200 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
5202         Adapt file-notify-test02-events test case
5204         * test/automated/file-notify-tests.el (file-notify-test02-events):
5205         Create a new watch for every test.
5207 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
5209         Continue gfilenotify.c implementation of missing parts
5211         * lisp/filenotify.el (file-notify-add-watch): Append `flags' to
5212         `gfile-add-watch' call.
5213         (file-notify-rm-watch): Modify `file-notify-descriptors' only
5214         after calling the low level functions.
5216         * src/gfilenotify.c (dir_monitor_callback): Check, whether
5217         event_type is expected.
5218         (Fgfile_add_watch): Allow also `change'and `attribute-change' for FLAGS.
5219         (Fgfile_rm_watch): Fix typo.
5220         (syms_of_gfilenotify): Declare Qchange and Qattribute_change.
5222 2015-09-23  Stefan Monnier  <monnier@iro.umontreal.ca>
5224         * src/syntax.c (parse_sexp_propertize): Handle spurious
5225         e_property_truncated flag.
5226         (update_syntax_table_forward): Remove invalid assertion.
5228 2015-09-23  Eli Zaretskii  <eliz@gnu.org>
5230         * src/xdisp.c (produce_stretch_glyph): Support ':relative-width'
5231         space display spec on text-mode terminals, by calling
5232         PRODUCE_GLYPHS instead of x_produce_glyphs.  Remove the
5233         HAVE_WINDOW_SYSTEM guards from the supporting code, as well as the
5234         test for a GUI frame.
5236 2015-09-23  Oleh Krehel  <ohwoeowho@gmail.com>
5238         Move let-when-compile to lisp-mode.el
5240         This fixes the bootstrapping problem of `let-when-compile' using
5241         `cl-progv' while being in subr.el (i.e. before cl stuff was loaded).
5243 2015-09-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
5245         * lisp/url/url-http.el (url-http-parse-headers): Do not
5246         automatically include Authorization header in redirect.
5247         (Bug#21350)
5249 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
5251         Clarify documentation of ':relative-width'
5253         * doc/lispref/display.texi (Specified Space): Document that
5254         ':relative-width' is only supported on GUI frames.
5256 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
5258         Fix 'current-column' in presence of :relative-width
5260         * src/indent.c (check_display_width): Support ':relative-width'
5261         in a display spec that specifies a stretch glyph.  (Bug#21533)
5263 2015-09-22  Ken Manheimer  <ken.manheimer@gmail.com>
5265         Reformat the pdbtrack remote-file fix ChangeLog.2 entry
5267         ... to conform better to CONTRIBUTE guidelines.
5269 2015-09-22  Stefan Monnier  <monnier@iro.umontreal.ca>
5271         * lisp/progmodes/prolog.el: Fix indentation of empty line
5273         * lisp/emacs-lisp/smie.el (smie-rules-function): Document new
5274         `empty-line-token' element.
5275         (smie-indent-empty-line): New function.
5276         (smie-indent-functions): Add it.
5278         * lisp/progmodes/prolog.el (prolog-smie-rules): Fix :list-intro
5279         behavior and use the new `empty-line-token' element (bug#21526).
5280         (prolog-mode-variables): Fix comment-start-skip setting to match
5281         comment-start.
5283         * test/indent/prolog.prolog: Add nested indentation tests.
5285         * lisp/newcomment.el (comment-normalize-vars): Fix default value of
5286         comment-start-skip not to misuse submatch 1.
5288 2015-09-22  Alan Mackenzie  <acm@muc.de>
5290         Make description of `edebug-initial-mode' user friendly
5292         Fixes bug#21365.
5294         * dec/lispref/edebug.texi (Edebug Execution Modes): Change the
5295         description of `edebug-initial-mode' from that of its implementation
5296         to that of its visual effect and use.  Move the paragraph higher up.
5298 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
5300         lisp/progmodes/gud.el (gud-format-command): Fix last commit
5302         * lisp/progmodes/gud.el (gud-format-command): Don't use Tramp internal
5303         functions 'tramp-file-name-localname' and 'tramp-dissect-file-name'.
5305 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
5307         Improve last commit to process.c
5309 2015-09-22  Michael Albinus  <michael.albinus@gmx.de>
5311         Implement gfile-valid-p
5313         * lisp/filenotify.el (file-notify-callback): Fix typo.
5314         (gfile-valid-p): Remove defalias.
5316         * src/gfilenotify.c (dir_monitor_callback): Cancel the monitor if
5317         the file or directory to be watched is deleted.
5318         (Fgfile_add_watch): Make watch_object a triple.
5319         (Fgfile_rm_watch): Check, whether watch is cancelled already.
5320         (Fgfile_valid_p): New defun.
5321         (syms_of_gfilenotify): Declare Sgfile_valid_p.
5323 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
5325         Remove callback-handled channels from Available set
5327         * src/process.c (wait_reading_process_output): Remove channel from
5328         Available set if it is handled by a callback, e.g., dbus or
5329         inotify (bug#21313).
5331 2015-09-21  Mark Oteiza  <mvoteiza@udel.edu>
5333         Use lunate epsilon for TeX \epsilon
5335         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
5336         Add \varepsilon using GREEK SMALL LETTER EPSILON, and change
5337         \epsilon to use GREEK LUNATE EPSILON SYMBOL
5339 2015-09-21  Stefan Monnier  <monnier@iro.umontreal.ca>
5341         * lisp/progmodes/prolog.el: Fix nested electric if-then-else
5343         * lisp/progmodes/prolog.el (prolog-find-unmatched-paren): Use innermost
5344         rather than outermost paren (bug#21526).
5346 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
5348         Improve git diff hunk headers for .el, .texi
5350         Problem reported by Alan Mackenzie in:
5351         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00826.html
5352         * .gitattributes (*.el, *.texi): New patterns.
5353         * autogen.sh: Configure diff.elisp.xfuncname and
5354         diff.texinfo.xfuncname if using Git.
5356 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
5358         Don't rely on defaults in decoding UTF-8 encoded Lisp files
5360         * lisp/replace.el:
5361         * lisp/textmodes/rst.el:
5362         * lisp/whitespace.el: Add an explicit UTF-8 encoding tag.
5364 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
5366         Clarify or replace a few \u escapes
5368         * doc/lispref/nonascii.texi (Character Properties)
5369         More-detailed commentary for \u escapes.
5370         * lisp/progmodes/python.el (python--prettify-symbols-alist):
5371         * lisp/replace.el (query-replace-from-to-separator):
5372         * lisp/textmodes/rst.el (rst-bullets, rst-re-alist-def)
5373         (rst-mode-syntax-table):
5374         * lisp/whitespace.el (whitespace-display-mappings):
5375         Prefer actual character to \u escape when this makes the code
5376         easier to follow in the usual case where Unicode chars can be
5377         displayed.
5379 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
5381         Pacify GCC -Wmaybe-uninitialized in xdisp.c
5383         * src/xdisp.c (face_before_or_after_it_pos): Use do-while rather
5384         than while loop to avoid GCC -Wmaybe-uninitialized diagnostic with
5385         charpos.  The loop should always execute at least once anyway.
5387 2015-09-21  Tassilo Horn  <tsdh@gnu.org>
5389         Signal error on invalid regexp
5391         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
5392         Signal an error when the user tries searching with a regexp
5393         matching the empty string.
5395 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
5397         Another fix of file-notify-tests for w32notify
5399         * test/automated/file-notify-tests.el (file-notify-test02-events):
5400         Further adaptation for w32notify: reduce the number of expected
5401         'changed' events.  (Bug#21435)
5403 2015-09-21  Michael Albinus  <michael.albinus@gmx.de>
5405         Adapt tests and manual for w32notify
5407         * doc/lispref/os.texi (File Notifications): w32notify does not
5408         send `attribute-changed' events.
5410         * test/automated/file-notify-tests.el (file-notify--test-with-events):
5411         Simplify parameters.  Adapt all callees.
5412         (file-notify-test02-events): w32notify does not send
5413         `attribute-changed' events.
5414         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
5415         Do not skip in case of w32notify.  Simply ignore this part of the test.
5417 2015-09-21  Dima Kogan  <dima@secretsauce.net>
5419         Fix setting breakpoints when remote-debugging
5421         * lisp/progmodes/gud.el (gud-format-command): Send localized file
5422         names to the debugger running on the remote.  (Bug#13304)
5424 2015-09-21  Nicolas Petton  <nicolas@petton.fr>
5426         Better docstring and parameter name for seq-find
5428         * lisp/emacs-lisp/seq.el (seq-find): Improve the docstring and rename
5429         the parameter `sentinel' to `default'.
5431         * doc/lispref/sequences.texi (Sequence Functions): Update the
5432           documentation for `seq-find' accordingly.
5434 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
5436         Avoid infinite recursion while displaying box face
5438         * src/xdisp.c (face_before_or_after_it_pos): Fix calculation of
5439         the previous string/buffer character position under bidi
5440         iteration.  (Bug#21428)
5442 2015-09-21  Anders Lindgren  <andlind@gmail.com>
5444         Keep upper edge unchanged when changing size of NS frame
5446         * src/nsterm.m (x_set_window_size): Keep upper frame edge unchanged
5447         (Bug#21415).
5449 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
5451         * lisp/progmodes/prolog.el: Improve handling of if/then/else.
5452         (prolog-smie-rules): Accommodate standard if/then/else special
5453         indentation.
5454         (prolog-mode): Add . to electric-indent-chars.
5455         (prolog-electric--if-then-else): Re-indent the line before adding space
5456         after the new char (bug#21526).
5458 2015-09-20  Mark Oteiza  <mvoteiza@udel.edu>
5460         Add prettify symbols to python-mode
5462         * lisp/progmodes/python.el (python-prettify-symbols-alist):
5463         New variable.
5464         (python-mode): Use it
5466 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
5468         * lisp/emacs-lisp/syntax.el (syntax-begin-function): Make obsolete.
5470 2015-09-20  Jostein Kjønigsen  <jostein@secure.kjonigsen.net>  (tiny change)
5472         (compilation-error-regexp-alist-alist): Tone down guile-file
5474         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
5475         Make guile-file a bit less enthusiastic (bug#21496).
5477 2015-09-20  Drew Csillag  <drew@thecsillags.com>
5479         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords):
5480         Fix m4_* highlighting.
5482         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords): Fix recognition
5483         of commands when they have a "m4_" prefix.
5485 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
5487         '.' -> `.' in doc string
5489         * lisp/emacs-lisp/timer.el (run-at-time): In doc string, quote
5490         individual chars with grave quotes instead of straight quotes, as
5491         this works better when they are translated to curved quotes.
5493 2015-09-20  Michael Albinus  <michael.albinus@gmx.de>
5495         Improve file notifications, especially for Tramp
5497         * doc/lispref/files.texi (Magic File Names):
5498         Mention `file-notify-valid-p'.
5500         * doc/lispref/os.texi (File Notifications):
5501         Describe `file-notify-valid-p'.
5503         * etc/NEWS: Add `file-notify-valid-p'.
5505         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch):
5506         Improve implementation.
5507         (tramp-gvfs-monitor-file-process-filter): Rename from
5508         `tramp-gvfs-file-gvfs-monitor-file-process-filter'.  Delete
5509         process if appropriate.
5511         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
5512         Improve implementation.
5513         (tramp-sh-gvfs-monitor-dir-process-filter): Rename from
5514         `tramp-sh-file-gvfs-monitor-dir-process-filter'.  Delete process
5515         if appropriate.
5516         (tramp-sh-inotifywait-process-filter): Rename from
5517         `tramp-sh-file-inotifywait-process-filter'.  Delete process if
5518         appropriate.
5520         * lisp/net/tramp.el (tramp-handle-file-notify-rm-watch):
5521         Use `delete-process'.
5522         (tramp-handle-file-notify-valid-p): Check also, that file or
5523         directory to be watched still exists.
5525         * test/automated/file-notify-tests.el (file-notify--test-timeout):
5526         New defun.  Use it at all places a timeout is needed.
5527         (file-notify--test-cleanup): Delete directories recursively.
5528         Cleanup also Tramp connections.
5529         (file-notify-test02-events): Add tests for `attribute-change'.
5530         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
5531         Add tests for `file-notify-rm-watch'.
5533 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
5535         Use %s to format strings instead of splicing them
5537         If FOO might contain quotes that are part of a file or variable
5538         name, the quotes should not be translated when showing FOO’s name
5539         in a diagnostic.  So, for example, (message (concat (FOO ": bar")))
5540         is not quite right, as it would translate FOO’s quotes.
5541         Change it to (message "%s: bar" FOO) instead.
5542         * lisp/allout.el (allout-process-exposed):
5543         * lisp/calc/calc-ext.el (calc-do-prefix-help):
5544         * lisp/calc/calc-store.el (calc-store-into):
5545         * lisp/calendar/todo-mode.el (todo-category-completions):
5546         * lisp/cedet/semantic/complete.el (semantic-completion-message):
5547         * lisp/org/ob-latex.el (convert-pdf):
5548         * lisp/org/org-crypt.el (org-crypt-check-auto-save):
5549         * lisp/org/ox-latex.el (org-latex-compile):
5550         * lisp/org/ox-man.el (org-man-compile):
5551         * lisp/org/ox-odt.el (org-odt--export-wrap):
5552         * lisp/org/ox-texinfo.el (org-texinfo-compile):
5553         * lisp/progmodes/ruby-mode.el (ruby-in-ppss-context-p):
5554         * lisp/progmodes/verilog-mode.el (verilog-batch-execute-func)
5555         (verilog-signals-combine-bus, verilog-read-defines)
5556         (verilog-getopt-file, verilog-expand-dirnames)
5557         (verilog-modi-lookup, verilog-modi-modport-lookup-one):
5558         * lisp/term/ns-win.el (ns-spi-service-call):
5559         Use %s to avoid translating quotes of file names etc. in diagnostics.
5561 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
5563         * lisp/progmodes/js.el (js--syntax-begin-function): Remove.
5564         (js-mode): Don't set syntax-begin-function.
5566 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
5568         * lisp/font-lock.el (font-lock-compile-keywords): Don't assume
5569         syntax-begin-function is a symbol.
5571 2015-09-20  Eli Zaretskii  <eliz@gnu.org>
5573         Improve documentation of 'run-at-time'
5574         * lisp/emacs-lisp/timer.el (run-at-time): Improve the doc string.
5575         In particular, don't refer to 'diary-entry-time', because it is
5576         unavailable until diary-lib is loaded.  Also, refer to
5577         'timer-duration-words', not 'timer-duration', as the latter's doc
5578         string says nothing about the accepted strings.
5580 2015-09-19  Jay Belanger  <jay.p.belanger@gmail.com>
5582         * lisp/calc/calc-ext.el (calc-do-prefix-help): Tidy up error message.
5584 2015-09-19  Ken Manheimer  <ken.manheimer@gmail.com>
5586         Repair pdbtrack remote file tracking
5587         * lisp/progmodes/python.el (python-pdbtrack-set-tracked-buffer):
5588         Rectify pdbtrack so it follows transitions from one remote source
5589         file to the next.
5591 2015-09-19  Artur Malabarba  <bruce.connor.am@gmail.com>
5593         * lisp/emacs-lisp/timer.el (run-at-time): Docstring formatting.
5595 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
5597         Adapt vc-src to the old-new vc-checkin API
5598         * lisp/vc/vc-src.el (vc-src-checkin): Accept and ignore an
5599         additional optional parameter.
5601 2015-09-19  Simen Heggestøyl  <simenheg@gmail.com>
5603         Add overflow module to CSS property list
5604         * lisp/textmodes/css-mode.el (css-property-ids): Add properties
5605         from CSS Overflow Module Level 3.
5607 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
5609         Fix documentation of "C-u C-x v v"
5610         * doc/emacs/maintaining.texi (Advanced C-x v v): Make the
5611         documentation of "C-u C-x v v" match what the code does.
5613         Resurrect the ability to specify a revision in vc-next-action
5614         * lisp/vc/vc-bzr.el (vc-bzr-checkin):
5615         * lisp/vc/vc-dav.el (vc-dav-checkin):
5616         * lisp/vc/vc-git.el (vc-git-checkin):
5617         * lisp/vc/vc-hg.el (vc-hg-checkin):
5618         * lisp/vc/vc-mtn.el (vc-mtn-checkin): Accept and silently ignore
5619         an additional optional argument, the revision to checkin.
5620         * lisp/vc/vc-sccs.el (vc-sccs-checkin):
5621         * lisp/vc/vc-cvs.el (vc-cvs-checkin):
5622         * lisp/vc/vc-rcs.el (vc-rcs-checkin): Allow to optionally specify
5623         a revision to checkin.
5624         * lisp/vc/vc.el (vc-next-action): Allow to optionally specify the
5625         revision when checking in files.
5626         See http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00688.html
5627         for the details.
5629 2015-09-18  Wilson Snyder  <wsnyder@wsnyder.org>
5631         * lisp/progmodes/verilog-mode.el (verilog-forward-sexp-function)
5632         (verilog-decls-princ, verilog-modport-princ)
5633         (verilog-modi-modport-lookup-one): Fix checkdoc warnings.
5635 2015-09-17  Jay Belanger  <jay.p.belanger@gmail.com>
5637         Fix the routine for help on Calc's prefixes
5638         * lisp/calc/calc-ext.el (calc-prefix-help-retry): New variable.
5639         (calc-do-prefix-help): Use `read-char' to determine the next Calc
5640         command.
5642 2015-09-17  Stefan Monnier  <monnier@iro.umontreal.ca>
5644         * lisp/font-lock.el (font-lock-beginning-of-syntax-function): Remove.
5645         (font-lock-fontify-block): Don't let-bind it.
5646         (font-lock-compile-keywords): Don't use it.
5647         (font-lock-set-defaults): Don't set it.  Allow the variable alist to
5648         start one slot earlier, instead.
5649         * lisp/emacs-lisp/syntax.el (font-lock-beginning-of-syntax-function):
5650         Don't declare.
5651         (syntax-ppss): Don't use it either.
5652         * lisp/font-core.el (font-lock-defaults): Remove SYNTAX-BEGIN
5653         from docstring.
5654         * doc/emacs/display.texi (Font Lock): Don't mention
5655         font-lock-beginning-of-syntax-function.
5656         * doc/lispref/modes.texi (Font Lock Basics): Update description of
5657         font-lock-defaults.
5658         (Syntactic Font Lock): Remove font-lock-beginning-of-syntax-function.
5659         * lisp/loadhist.el (unload-feature-special-hooks):
5660         Remove font-lock-beginning-of-syntax-function.
5661         * lisp/obsolete/lazy-lock.el (lazy-lock-fontify-region):
5662         * lisp/emacs-lisp/lisp.el (beginning-of-defun-raw): Don't let-bind
5663         font-lock-beginning-of-syntax-function.
5665 2015-09-17  Paul Eggert  <eggert@cs.ucla.edu>
5667         Backslash cleanup in Elisp source files
5668         This patch should not change behavior.  It typically omits backslashes
5669         where they are redundant (e.g., in the string literal "^\$").
5670         In a few places, insert backslashes where they make regular
5671         expressions clearer: e.g., replace "^\*" (equivalent to "^*") with
5672         "^\\*", which has the same effect as a regular expression.
5673         Also, use ‘\ %’ instead of ‘\%’ when avoiding confusion with SCCS IDs,
5674         and similarly use ‘\ $’ instead of ‘\$’ when avoiding confusion with
5675         RCS IDs, as that makes it clearer that the backslash is intended.
5677         Some more minor backslash fixes
5678         * test/automated/compile-tests.el (compile-tests--test-regexps-data):
5679         * test/automated/info-xref.el (info-xref-test-write-file):
5680         Double backslashes in strings.
5682         Fix several backslash typos in Elisp strings
5683         * lisp/calendar/todo-mode.el (todo-files, todo-rename-file)
5684         (todo-find-filtered-items-file, todo-reset-nondiary-marker)
5685         (todo-reset-done-string, todo-reset-comment-string)
5686         (todo-reset-highlight-item):
5687         * lisp/erc/erc-networks.el (erc-networks-alist):
5688         * lisp/gnus/gnus-art.el (gnus-button-handle-library):
5689         * lisp/gnus/gnus-group.el (gnus-read-ephemeral-gmane-group-url):
5690         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
5691         (nntp-telnet-shell-prompt):
5692         * lisp/gnus/spam-report.el (spam-report-gmane-regex):
5693         * lisp/image-dired.el (image-dired-rotate-original):
5694         (image-dired-get-exif-file-name):
5695         * lisp/international/latin1-disp.el (latin1-display-ucs-per-lynx):
5696         * lisp/mail/undigest.el (rmail-digest-parse-rfc1153strict):
5697         * lisp/mh-e/mh-letter.el (mh-file-is-vcard-p):
5698         * lisp/mh-e/mh-mime.el (mh-file-mime-type-substitutions):
5699         * lisp/net/shr-color.el (shr-color->hexadecimal):
5700         * lisp/org/org-bibtex.el (org-bibtex-fields):
5701         * lisp/org/org-docview.el (org-docview-export):
5702         * lisp/org/org-entities.el (org-entities):
5703         * lisp/org/ox-icalendar.el (org-icalendar-cleanup-string):
5704         * lisp/progmodes/cperl-mode.el (cperl-indent-exp):
5705         * lisp/progmodes/ebnf2ps.el (ebnf-file-suffix-regexp)
5706         (ebnf-style-database):
5707         * lisp/progmodes/idlw-help.el (idlwave-do-context-help1):
5708         * lisp/progmodes/ruby-mode.el (ruby-imenu-create-index-in-block):
5709         * lisp/progmodes/sql.el (sql-product-alist):
5710         * lisp/progmodes/verilog-mode.el (verilog-error-regexp-emacs-alist)
5711         (verilog-error-font-lock-keywords)
5712         (verilog-assignment-operator-re):
5713         * lisp/progmodes/vhdl-mode.el (vhdl-compiler-alist):
5714         * lisp/textmodes/reftex-parse.el (reftex-parse-from-file):
5715         * lisp/vc/add-log.el (change-log-version-number-regexp-list):
5716         Fix typo by replacing ‘\’ with ‘\\’ in a string literal.
5717         For example, to get the regular expression ‘\.’ use the string
5718         literal "\\.", not "\." (which is equivalent to ".").
5719         * lisp/emulation/viper-util.el (viper-glob-unix-files):
5720         Remove stray ‘\j’ from string.
5721         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
5722         (nntp-telnet-shell-prompt):
5723         Treat > like $ when matching a shell prompt.
5724         * lisp/progmodes/make-mode.el (makefile-browse):
5725         Properly quote a diagnostic.
5727         Fix minor quoting problems in diagnostics
5728         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
5729         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
5730         Follow text-quoting-style in diagnostic, and quote a file name.
5732 2015-09-17  Eli Zaretskii  <eliz@gnu.org>
5734         * doc/lispref/frames.texi (Cursor Parameters):
5735         Document 'x-stretch-cursor'.
5737 2015-09-16  Paul Eggert  <eggert@cs.ucla.edu>
5739         Omit unnecessary \ before paren in C docstrings
5740         Although \( is needed in docstrings in Elisp code, it is not needed in
5741         docstrings in C code, since C function definitiions do not start with
5742         a parenthesis.  The backslashes made the docstrings a bit harder to
5743         read and to format in columns.  Also, some C docstrings had ( in
5744         column 1 and this did not appear to be causing any problems.  So,
5745         simplify C docstrings by replacing \( with ( and \) with ).
5747         A few more minor quoting fixes in a script and a text file
5749         Minor quoting fixes in scripts and doc
5750         Prefer straight quotes in random script files, as they are not
5751         converted.  Prefer grave quotes in a couple of places in the manual
5752         that were missed earlier, as these quotes are converted.
5754         Minor backslash fixes in manuals and scripts
5755         * Makefile.in (install-arch-indep):
5756         * admin/charsets/compact.awk:
5757         * admin/charsets/gb180302.awk (gb_to_index):
5758         * admin/charsets/gb180304.awk (gb_to_index):
5759         Avoid undefined behavior in Awk regular expression backslashes.
5760         * doc/misc/efaq.texi (Matching parentheses):
5761         Omit unnecessary backslashes.
5762         * doc/misc/gnus-faq.texi (FAQ 5-8):
5763         Avoid undefined behavior in suggested sed backslash usage.
5765         Add -Wswitch to --enable-gcc-warnings
5766         Make --enable-gcc-warnings a bit pickier, by also using -Wswitch.
5767         * configure.ac (WERROR_CFLAGS): Don’t add -Wno-switch.
5768         * lib-src/etags.c (main, consider_token, C_entries):
5769         * src/coding.c (encode_invocation_designation):
5770         * src/data.c (Ftype_of):
5771         * src/eval.c (Fdefvaralias, default_toplevel_binding)
5772         (Fbacktrace__locals, mark_specpdl):
5773         * src/lisp.h (record_xmalloc):
5774         * src/syntax.c (scan_lists, scan_sexps_forward):
5775         * src/window.c (window_relative_x_coord):
5776         * src/xdisp.c (push_it, pop_it):
5777         * src/xterm.c (xg_scroll_callback, x_check_fullscreen):
5778         Error out or do nothing (as appropriate) if a switch statement
5779         with an enum value does not cover all of the enum.
5780         * src/dispextern.h (struct iterator_stack_entry.u.comp):
5781         Remove unused member discovered by using -Wswitch.
5782         * src/lisp.h (record_xmalloc): Add a ‘+ 0’ to pacify -Wswitch.
5783         * src/vm-limit.c (check_memory_limits):
5784         Simplify warning-diagnostic computation by using a table.
5786         etags ‘fatal’ function is now printf-like
5787         * lib-src/etags.c (fatal): Now printf-like.  All callers changed.
5788         Also, now static; not clear why it needed to be extern.
5789         (verror): New function, with most of the old contents of ‘error’.
5790         (fatal, error): Use it.
5792 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
5794         More adaptations in file-notify-tests.el
5795         * test/automated/file-notify-tests.el
5796         (file-notify-test05-dir-validity): Skip for w32notify in
5797         batch-mode.  (Bug#21432)
5799 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
5801         Adapt test in file-notify-tests.el
5802         * test/automated/file-notify-tests.el
5803         (file-notify-test04-file-validity): Skip for w32notify in
5804         batch-mode.  Add test lost last commit.
5806 2015-09-16  Dima Kogan  <dima@secretsauce.net>
5808         winner no longer holds on to dead frames
5809         * lisp/winner.el (winner-change-fun): Cull dead frames.
5810         This prevents a potentially massive memory leak.  See:
5811         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00619.html
5813 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
5815         Use common report_file_notify_error function
5816         * src/fileio.c (report_file_notify_error): New function.
5817         * src/inotify.c (report_inotify_error): Remove function.
5818         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
5819         (Finotify_rm_watch): Use report_file_notify_error.
5820         * src/lisp.h (report_file_notify_error): Declare external function.
5821         * src/w32notify.c (report_w32notify_error): Remove function.
5822         (Fw32notify_add_watch, Fw32notify_rm_watch):
5823         Use report_file_notify_error.
5825 2015-09-16  Jay Belanger  <jay.p.belanger@gmail.com>
5827         Fix documentation.
5828         * doc/misc/calc.texi (Single-Variable Statistics): Fix the wording of
5829         the documentation of the root mean square.
5831 2015-09-16  Martin Rudalics  <rudalics@gmx.at>
5833         Remove tool_bar_redisplayed_once and associated code.
5834         * src/frame.h (tool_bar_redisplayed_once): Remove slot.
5835         * src/frame.c (make_frame, x_set_font): Remove initialization of
5836         f->tool_bar_redisplayed_once.
5837         * src/w32fns.c (x_change_tool_bar_height):
5838         * src/xfns.c (x_change_tool_bar_height): Don't check for
5839         f->tool_bar_redisplayed_once.
5840         * src/xdisp.c (redisplay_internal): Remove handling of
5841         f->tool_bar_redisplayed_once.
5843 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
5845         Restore some of the quoting in the manuals
5846         * doc/lispref/windows.texi (Coordinates and Windows)
5847         (Coordinates and Windows):
5848         * doc/lispref/variables.texi (Lexical Binding)
5849         (File Local Variables):
5850         * doc/lispref/text.texi (Format Properties):
5851         * doc/lispref/symbols.texi (Symbol Components):
5852         * doc/lispref/strings.texi (Creating Strings):
5853         * doc/lispref/sequences.texi (Sequence Functions):
5854         * doc/lispref/searching.texi (Regexp Special, Regexp Search)
5855         (Search and Replace):
5856         * doc/lispref/processes.texi (Bindat Spec):
5857         * doc/lispref/os.texi (Idle Timers):
5858         * doc/lispref/objects.texi (Basic Char Syntax):
5859         * doc/lispref/numbers.texi (Float Basics, Random Numbers):
5860         * doc/lispref/nonascii.texi (Character Properties):
5861         * doc/lispref/modes.texi (Major Mode Conventions, Mode Hooks)
5862         (Mode Line Variables):
5863         * doc/lispref/minibuf.texi (Text from Minibuffer):
5864         * doc/lispref/loading.texi (Autoload):
5865         * doc/lispref/keymaps.texi (Controlling Active Maps):
5866         * doc/lispref/frames.texi (Frame Layout, Size and Position)
5867         (Size Parameters, Implied Frame Resizing):
5868         * doc/lispref/files.texi (Changing Files, Magic File Names):
5869         * doc/lispref/eval.texi (Self-Evaluating Forms):
5870         * doc/lispref/display.texi (Progress, Abstract Display)
5871         (Abstract Display Example, Bidirectional Display):
5872         * doc/lispref/commands.texi (Event Mod):
5873         * doc/emacs/windows.texi (Displaying Buffers):
5874         * doc/emacs/trouble.texi (Bug Criteria, Checklist):
5875         * doc/emacs/text.texi (Enriched Text):
5876         * doc/emacs/programs.texi (MixedCase Words):
5877         * doc/emacs/picture-xtra.texi (Insert in Picture)
5878         (Tabs in Picture):
5879         * doc/emacs/misc.texi (Emacs Server, Printing):
5880         * doc/emacs/mini.texi (Minibuffer History):
5881         * doc/emacs/maintaining.texi (Old Revisions, VC Change Log)
5882         (Pulling / Pushing):
5883         * doc/emacs/killing.texi (Yanking, Cut and Paste, Clipboard):
5884         * doc/emacs/help.texi (Help, Help Echo):
5885         * doc/emacs/glossary.texi (Glossary):
5886         * doc/emacs/frames.texi (Mouse Commands, Creating Frames)
5887         (Frame Commands):
5888         * doc/emacs/files.texi (Reverting, Saving, Directories):
5889         * doc/emacs/entering.texi (Exiting):
5890         * doc/emacs/emacs.texi (Top):
5891         * doc/emacs/cmdargs.texi (Window Size X, Icons X):
5892         * doc/emacs/anti.texi (Antinews): Restore quoting of text where
5893         appropriate or replace quoting with @dfn.
5894         * doc/misc/ediff.texi (Window and Frame Configuration):
5895         * doc/lispref/processes.texi (Network Feature Testing):
5896         * doc/lispref/display.texi (Display Margins): Quote the phrase
5897         after "a.k.a." where appropriate.
5899 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
5901         Clarify reftex-extra-bindings docs
5902         * lisp/textmodes/reftex-vars.el (reftex-extra-bindings):
5903         * doc/misc/reftex.texi (Key Bindings): Document that the variable
5904         only has an effect at load-time.
5906 2015-09-16  Daniel McClanahan  <danieldmcclanahan@gmail.com>  (tiny change)
5908         * lisp/emacs-lisp/lisp-mode.el (lisp--el-match-keyword): Fix
5909         search argument.  (Bug#21492) (Bug#21493)
5911 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
5913         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
5914         Add pretty symbols for \qquad and \varrho.
5916 2015-09-15  Jay Belanger  <jay.p.belanger@gmail.com>
5918         Add new functions for the root mean square of a (Calc) vector
5919         * lisp/calc/calc-stats.el (calcFunc-rms, calc-vector-rms):
5920         New functions.
5921         * lisp/calc/calc-ext.el (calc-init-extensions): Add keybinding for
5922         `calc-vector-rms', add autoloads for `calc-vector-rms' and
5923         `calcFunc-rms'.
5924         * lisp/calc/calc-map.el (calc-u-oper-keys): Add entry for
5925         `calcFunc-rms'.
5926         * lisp/calc/calc-menu.el (calc-vectors-menu): Add entry for
5927         `calc-vector-rms'.
5928         * doc/misc/calc.texi (Single-Variable Statistics): Document the rms
5929         command.
5931 2015-09-15  Stephen Leake  <stephen_leake@stephe-leake.org>
5933         Add monotone EDE generic project
5934         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
5935         Add monotone generic project.
5937         Revert premature commit
5938         * doc/lispref/files.texi: Revert premature commit of change to
5939         file-name-all-completions.
5941         Fix a bug in elisp--xref-find-definitions related to cl-generic defaults
5942         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions): Fix bug
5943         with cl-generic defaults.
5944         (elisp--xref-find-references): Add doc string.
5945         * test/automated/elisp-mode-tests.el (xref-elisp-generic-*): Improve
5946         tests to find bug.
5948         Fix bugs in eieio-oref-default related to class symbols
5949         * lisp/emacs-lisp/eieio-core.el (class-p): Handle symbol properly.
5950         (eieio-oref-default): Handle class properly.
5952 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
5954         Quote “fullboth” when defining it
5955         * doc/lispref/frames.texi (Size Parameters): Use @dfn for “fullboth”
5956         and rewrite the containing paragraph, which was awkward.  (Bug#21472).
5958 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
5960         Minor doc fix in emacs/ack.texi
5961         * doc/emacs/ack.texi (Acknowledgments): Fix an xref missing the
5962         first argument.
5964 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
5966         Adapt tests in auto-revert-tests.el
5967         * test/automated/auto-revert-tests.el (auto-revert--timeout):
5968         Make it a defconst.
5969         (auto-revert--wait-for-revert): New defun.
5970         (auto-revert-test00-auto-revert-mode)
5971         (auto-revert-test01-auto-revert-tail-mode)
5972         (auto-revert-test02-auto-revert-mode-dired): Use it.
5974 2015-09-15  Stefan Monnier  <monnier@iro.umontreal.ca>
5976         * lisp/emacs-lisp/lisp-mode.el (lisp-mode-symbol-regexp): New const.
5977         Use it everywhere "\\(\\sw\\|\\s_\\|\\\\.\\)+" was used.
5978         (cl-lib-fdefs): Add defgeneric.
5979         (cl-kw): Add all elements of eieio-kw and cl-lib-kw.
5980         (eieio-kw, cl-lib-kw, el-kw): Remove.
5982 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
5984         Quote less in manuals
5985         The manuals often used quotes ``...'' when it is better to use @dfn or
5986         @code or capitalized words or no quoting at all.  For example, there is
5987         no need for the `` and '' in “if a variable has one effect for
5988         @code{nil} values and another effect for ``non-@code{nil}'' values”.
5989         Reword the Emacs, Lisp intro, and Lisp reference manuals to eliminate
5990         unnecessary quoting like this, and to use @dfn etc. instead when called
5991         for (Bug#21472).
5993 2015-09-15  Mark Oteiza  <mvoteiza@udel.edu>
5995         * lisp/custom.el (load-theme): Only compute hash when needed.
5997 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
5999         Pacify --enable-gcc-warnings
6000         * src/inotify.c (report_inotify_error): Declare it _Noreturn.
6002 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
6004         Improve error reports in inotify.c
6005         * src/inotify.c (report_inotify_error): New function.  Clone of
6006         report_w32notify_error.
6007         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
6008         (Finotify_rm_watch): Use it.
6010 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
6012         Fix the file-notify tests for watch validation on w32
6013         * test/automated/file-notify-tests.el
6014         (file-notify-test04-file-validity): Move the directory deletion
6015         out of the file-notify--test-with-events macro.
6016         (file-notify-test04-file-validity)
6017         (file-notify-test05-dir-validity): Enlarge the timeout of
6018         read-event to 0.5, as 0.1 is borderline on w32.  (Bug#21432)
6020 2015-09-15  Tassilo Horn  <tsdh@gnu.org>
6022         Use OPEN BOX instead of space for \quad.
6023         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist): Use OPEN BOX
6024         character for \quad instead of a space.
6026 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
6028         Add missing *.pbm images
6029         * etc/images/connect.pbm: New file.
6030         * etc/images/custom/down-pushed.pbm: New file.
6031         * etc/images/custom/down.pbm: New file.
6032         * etc/images/custom/right-pushed.pbm: New file.
6033         * etc/images/custom/right.pbm: New file.
6034         * etc/images/describe.pbm: New file.
6035         * etc/images/disconnect.pbm: New file.
6036         * etc/images/ezimage/bits.pbm: New file.
6037         * etc/images/ezimage/bitsbang.pbm: New file.
6038         * etc/images/ezimage/box-minus.pbm: New file.
6039         * etc/images/ezimage/box-plus.pbm: New file.
6040         * etc/images/ezimage/box.pbm: New file.
6041         * etc/images/ezimage/checkmark.pbm: New file.
6042         * etc/images/ezimage/dir-minus.pbm: New file.
6043         * etc/images/ezimage/dir-plus.pbm: New file.
6044         * etc/images/ezimage/dir.pbm: New file.
6045         * etc/images/ezimage/doc-minus.pbm: New file.
6046         * etc/images/ezimage/doc-plus.pbm: New file.
6047         * etc/images/ezimage/doc.pbm: New file.
6048         * etc/images/ezimage/info.pbm: New file.
6049         * etc/images/ezimage/key.pbm: New file.
6050         * etc/images/ezimage/label.pbm: New file.
6051         * etc/images/ezimage/lock.pbm: New file.
6052         * etc/images/ezimage/mail.pbm: New file.
6053         * etc/images/ezimage/page-minus.pbm: New file.
6054         * etc/images/ezimage/page-plus.pbm: New file.
6055         * etc/images/ezimage/page.pbm: New file.
6056         * etc/images/ezimage/tag-gt.pbm: New file.
6057         * etc/images/ezimage/tag-minus.pbm: New file.
6058         * etc/images/ezimage/tag-plus.pbm: New file.
6059         * etc/images/ezimage/tag-type.pbm: New file.
6060         * etc/images/ezimage/tag-v.pbm: New file.
6061         * etc/images/ezimage/tag.pbm: New file.
6062         * etc/images/ezimage/unlock.pbm: New file.
6063         * etc/images/gnus/important.pbm: New file.
6064         * etc/images/gnus/mail-send.pbm: New file.
6065         * etc/images/gnus/receipt.pbm: New file.
6066         * etc/images/gnus/toggle-subscription.pbm: New file.
6067         * etc/images/gnus/unimportant.pbm: New file.
6068         * etc/images/gud/all.pbm: New file.
6069         * etc/images/gud/rcont.pbm: New file.
6070         * etc/images/gud/recstart.pbm: New file.
6071         * etc/images/gud/recstop.pbm: New file.
6072         * etc/images/gud/rfinish.pbm: New file.
6073         * etc/images/gud/rnext.pbm: New file.
6074         * etc/images/gud/rnexti.pbm: New file.
6075         * etc/images/gud/rstep.pbm: New file.
6076         * etc/images/gud/rstepi.pbm: New file.
6077         * etc/images/gud/thread.pbm: New file.
6078         * etc/images/lock-broken.pbm: New file.
6079         * etc/images/lock-ok.pbm: New file.
6080         * etc/images/lock.pbm: New file.
6081         * etc/images/mail/copy.pbm: New file.
6082         * etc/images/mail/forward.pbm: New file.
6083         * etc/images/mail/not-spam.pbm: New file.
6084         * etc/images/mail/outbox.pbm: New file.
6085         * etc/images/mail/preview.pbm: New file.
6086         * etc/images/mail/save-draft.pbm: New file.
6087         * etc/images/mh-logo.pbm: New file.
6088         * etc/images/mpc/add.pbm: New file.
6089         * etc/images/mpc/ffwd.pbm: New file.
6090         * etc/images/mpc/next.pbm: New file.
6091         * etc/images/mpc/pause.pbm: New file.
6092         * etc/images/mpc/play.pbm: New file.
6093         * etc/images/mpc/prev.pbm: New file.
6094         * etc/images/mpc/rewind.pbm: New file.
6095         * etc/images/mpc/stop.pbm: New file.
6096         * etc/images/redo.pbm: New file.
6097         * etc/images/smilies/braindamaged.pbm: New file.
6098         * etc/images/smilies/cry.pbm: New file.
6099         * etc/images/smilies/dead.pbm: New file.
6100         * etc/images/smilies/evil.pbm: New file.
6101         * etc/images/smilies/forced.pbm: New file.
6102         * etc/images/smilies/grin.pbm: New file.
6103         * etc/images/smilies/indifferent.pbm: New file.
6104         * etc/images/sort-ascending.pbm: New file.
6105         * etc/images/sort-column-ascending.pbm: New file.
6106         * etc/images/sort-criteria.pbm: New file.
6107         * etc/images/sort-descending.pbm: New file.
6108         * etc/images/sort-row-ascending.pbm: New file.
6109         * etc/images/unchecked.pbm: New file.
6110         * etc/images/zoom-in.pbm: New file.
6111         * etc/images/README: Update instructions for PBM files.
6113         Add separator.pbm tool-bar image
6114         * etc/images/separator.pbm: New file.  Having it avoids the side
6115         effect of changing the tool-bar height when the default font's size
6116         changes and XPM image support is not available, due to the SPC
6117         characters that are left in the Lisp string used to display the tool
6118         bar, because there are no images to display instead of those SPC
6119         characters.
6121         Make show-paren-match face visible on mono-color displays
6122         * lisp/faces.el (show-paren-match): Use the underline face for
6123         mono-color displays.  (Bug#21481)
6125 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
6127         Don’t double-encode non-ASCII mail clipboard
6128         * lisp/mail/mailclient.el (mailclient-send-it):
6129         Also fix the case when mailclient-place-body-on-clipboard-flag
6130         is non-nil.  Problem reported by Eli Zaretskii (Bug#21471#37).
6132 2015-09-14  Michael Albinus  <michael.albinus@gmx.de>
6134         Adapt file-notify-tests.el test cases
6135         * lisp/filenotify.el (file-notify-rm-watch): Ignore `file-notify-error'.
6136         * src/inotify.c (Finotify_valid_p): Adapt docstring.
6137         * test/automated/file-notify-tests.el
6138         (file-notify-test03-autorevert)
6139         (file-notify-test04-file-validity)
6140         (file-notify-test04-file-validity-remote)
6141         (file-notify-test05-dir-validity)
6142         (file-notify-test05-dir-validity-remote): Adapt docstring.
6143         (file-notify-test04-file-validity): Let events arrive before
6144         calling final `file-notify-valid-p'.  Do not ignore errors.
6145         (file-notify-test05-dir-validity): Do not manipulate
6146         `temporary-file-directory', it isn't necessary.  Let events arrive
6147         before calling final `file-notify-valid-p'.  Do not ignore errors.
6149 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
6151         Don’t double-encode non-ASCII for mail client
6152         * lisp/mail/mailclient.el (mailclient-encode-string-as-url):
6153         Use RFC 6068’s list of unreserved characters.
6154         (mailclient-send-it): When encoding the body as a URL,
6155         first decode it as per Content-Type: and Content-Transfer-Encoding:,
6156         as URLs must use percent-encoded UTF-8 (Bug#21471).
6157         * doc/misc/url.texi (mailto): Update RFC number.
6159 2015-09-14  Stefan Monnier  <monnier@iro.umontreal.ca>
6161         * lisp/progmodes/cc-langs.el (c-make-init-lang-vars-fun): Use dolist.
6163 2015-09-14  Alan Mackenzie  <acm@muc.de>
6165         Replace `cadar' with `cadr/car', since `cadar' is problematic on Emacs
6166         (c-make-init-lang-vars-fun): Replace two occurrences of `cadar' with
6167         `cadr/car'.
6169 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
6171         Clarify documentation of char-table extra slots
6172         * doc/lispref/sequences.texi (Char-Tables): Clarify that extra
6173         slot numbers are zero-based.  (Bug#21467)
6175 2015-09-14  Alan Mackenzie  <acm@muc.de>
6177         Elisp mode: Make font-lock and imenu handle escaped characters in symbols
6178         Fixes bug#21449.
6179         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression)
6180         (lisp--el-match-keyword, lisp-el-font-lock-keywords-1)
6181         (lisp-cl-font-lock-keywords-1, lisp-el-font-lock-keywords-2)
6182         (lisp-cl-font-lock-keywords-2, lisp-string-in-doc-position-p):
6183         Insert "\\|\\\\." into regexps which match symbols.
6185 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
6187         Improve the doc string of w32notify-valid-p
6188         * src/w32notify.c (Fw32notify_valid_p): Mention in the doc string
6189         that removing a watch makes its object invalid.
6191 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
6193         Fix tests for file-notify-valid-p
6194         * test/automated/file-notify-tests.el (file-notify--test-cleanup):
6195         Use delete-directory to delete file-notify--test-tmpfile if it is
6196         a directory.  Likewise for file-notify--test-tmpfile1.
6197         (file-notify-test04-file-validity)
6198         (file-notify-test05-dir-validity): Delete the parent directory of
6199         the test.  Ignore errors when cleaning up after the test.
6201 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
6203         Report file-notify-error in w32notify.c
6204         * src/w32notify.c (report_w32notify_error): New function.
6205         (Fw32notify_add_watch, Fw32notify_rm_watch): Use it to report
6206         errors, instead of calling report_file_error.  (Bug#21432)
6208         Implement w32notify-valid-p
6209         * src/w32notify.c (Fw32notify_valid_p): New function.  (Bug#21432)
6210         * lisp/filenotify.el (w32notify-valid-p): No longer an alias for
6211         'identity'.
6213 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
6215         Test file-notify-valid-p
6216         * test/automated/file-notify-tests.el
6217         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
6218         New tests.
6220 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
6222         Fix markup in ELisp manual
6223         * doc/lispref/frames.texi (Font and Color Parameters): Fix markup
6224         of the 'alpha' parameter value.  (Bug#21470)
6226 2015-09-13  Michael Albinus  <michael.albinus@gmx.de>
6228         Introduce `file-notify-valid-p'
6229         * lisp/filenotify.el (file-notify-valid-p): New defun.
6230         (gfile-valid-p, w32notify-valid-p): Make them an alias to `identity'.
6231         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist)
6232         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist)
6233         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist)
6234         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
6235         <file-notify-valid-p>: Add handler.
6236         * lisp/net/tramp.el (tramp-file-name-for-operation):
6237         Add `file-notify-valid-p'.
6238         (tramp-handle-file-notify-valid-p): New defun.
6239         * src/inotify.c (Finotify_valid_p): New defun.
6240         (syms_of_inotify): Declare Sinotify_valid_p.
6242 2015-09-13  Paul Eggert  <eggert@cs.ucla.edu>
6244         Port Unicode char detection to FreeBSD+svgalib
6245         Problem reported by Ashish SHUKLA in:
6246         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00531.html
6247         * configure.ac: Check for struct unipair.unicode instead of for
6248         <linux/kd.h>, since that’s more specific to what the code
6249         actually needs.
6250         * src/terminal.c: Use HAVE_STRUCT_UNIPAIR_UNICODE, not HAVE_LINUX_KD_H.
6252         * src/indent.c (Fvertical_motion): Simplify bugfix (Bug#21468).
6254 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
6256         Fix vertical cursor motion across overlay strings with newlines
6257         * src/indent.c (Fvertical_motion): Don't leave point in the middle
6258         of an overlay string with newlines, as that will position the
6259         cursor after the string at whatever column is there.  (Bug#21468)
6261 2015-09-12  Michael Albinus  <michael.albinus@gmx.de>
6263         Fix tests in file-notify-tests.el
6264         * test/automated/file-notify-tests.el: Remove Tramp declarations.
6265         (file-notify-test00-availability): Print remote command w/o Tramp
6266         internal functions.
6267         (file-notify-test02-events, file-notify-test02-events-remote):
6268         Adapt docstring.
6269         (file-notify-test03-autorevert): Use `format-message' when
6270         inspecting *Messages* buffer.
6272 2015-09-12  Stefan Monnier  <monnier@iro.umontreal.ca>
6274         Bind inhibit-modification-hooks rather than a/b-c-f
6275         * lisp/wid-edit.el (widget-editable-list-insert-before)
6276         (widget-editable-list-delete-at):
6277         * lisp/progmodes/cperl-mode.el (cperl-find-pods-heres)
6278         (cperl-font-lock-unfontify-region-function):
6279         * lisp/progmodes/antlr-mode.el (save-buffer-state-x):
6280         * lisp/obsolete/longlines.el (longlines-mode):
6281         * lisp/obsolete/fast-lock.el (save-buffer-state):
6282         * lisp/mouse.el (mouse-save-then-kill-delete-region):
6283         * lisp/gnus/message.el (message-hide-headers):
6284         * lisp/eshell/esh-mode.el (eshell-send-input, eshell-output-filter):
6285         * lisp/ibuffer.el (ibuffer-update-title-and-summary)
6286         (ibuffer-redisplay-engine): Bind inhibit-modification-hooks to t rather
6287         than after/before-change-functions to nil.
6289 2015-09-11  Stefan Monnier  <monnier@iro.umontreal.ca>
6291         (jit-lock-deferred-fontify): Pay attention to skipped redisplays
6292         * lisp/jit-lock.el (jit-lock-deferred-fontify): Make sure we refresh
6293         the buffers, even if the forced redisplay is interrupted.
6295         * lisp/emacs-lisp/eieio-core.el (class-p): Accept class objects
6297         Merge syntax-propertize--done and parse-sexp-propertize-done
6298         * lisp/emacs-lisp/syntax.el (syntax-propertize--done): Remove.
6299         (syntax-propertize): Set syntax-propertize--done even if
6300         syntax-propertize-function is nil.  Avoid recursive invocations.
6301         (syntax-propertize-chunks): New var.
6302         (internal--syntax-propertize): Use it.  Rename from syntax--jit-propertize.
6303         Simplify.
6304         (parse-sexp-propertize-function): Don't set any more.
6305         * src/syntax.c (SETUP_SYNTAX_TABLE): Call parse_sexp_propertize as needed.
6306         (parse_sexp_propertize): Don't assume charpos is not yet propertized.
6307         Call Qinternal__syntax_propertize instead of
6308         Vparse_sexp_propertize_function.  Truncate e_property if needed.
6309         (update_syntax_table_forward): Streamline.
6310         (syms_of_syntax): Define Qinternal__syntax_propertize.
6311         (syntax_propertize__done): Rename from parse_sexp_propertize_done.
6313 2015-09-11  Paul Eggert  <eggert@cs.ucla.edu>
6315         Prefer straight quoting in some text files
6316         Mostly this just changes ` to ' in static text.  Some exceptions:
6317         * INSTALL.REPO: Use curved quotes, as the diagnostic in question
6318         typically does that now.
6319         * admin/quick-install-emacs (TRY, top level):
6320         Use straight quoting in diagnostics.
6321         * src/README: Fix working-directory confusion.
6323         * CONTRIBUTE: Move send-email here from git-workflow.
6325 2015-09-11  Michael Albinus  <michael.albinus@gmx.de>
6327         Improve file notifications in Tramp
6328         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
6329         Set proper events to watch for.
6330         (tramp-sh-file-gvfs-monitor-dir-process-filter): Report only
6331         watched events.
6333 2015-09-11  Eli Zaretskii  <eliz@gnu.org>
6335         Fix NS build with --enable-checking='glyphs'
6336         * src/nsfns.m (unwind_create_frame): Make the preprocessor
6337         conditionals for referencing 'dpyinfo' consistent throughout the
6338         function.  (Bug#21426)
6340 2015-09-10  Nicolas Petton  <nicolas@petton.fr>
6342         Add seq-find
6343         This function is similar to `seq-some' but returns the found element.
6344         In the cases where nil can be the found element, a sentinel optional
6345         argument can be provided to avoid ambiguities.
6346         * lisp/emacs-lisp/seq.el (seq-find): New function.
6347         * test/automated/seq-tests.el (test-seq-find): Add tests for `seq-find'.
6348         * doc/lispref/sequences.texi (Sequence Functions): Add documentation for
6349         seq-find.
6351 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
6353         Document file-notify--test-with-events.
6354         * test/automated/file-notify-tests.el (file-notify--test-with-events):
6355         Add docstring.
6357 2015-09-10  Michael Albinus  <michael.albinus@gmx.de>
6359         Report used native library in file-notify-tests.el
6360         * test/automated/file-notify-tests.el
6361         (tramp-get-remote-gvfs-monitor-dir)
6362         (tramp-get-remote-inotifywait): Declare them.
6363         (file-notify-test00-availability): Print used native library.
6365 2015-09-10  Mark Oteiza  <mvoteiza@udel.edu>
6367         * lisp/mpc.el (mpc--proc-connect): Use file-name-absolute-p.
6368         (mpc-file-local-copy): Check for absolute path.  Check more config
6369         locations.
6371 2015-09-10  Eli Zaretskii  <eliz@gnu.org>
6373         Improve documentation of categories
6374         * doc/lispref/syntax.texi (Categories): Clarify the example of
6375         using define-category and modify-category-entry.  (Bug#21448)
6377 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
6379         Revert some stray curved quotes I missed earlier
6380         Problem reported by David Kastrup in:
6381         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00440.html
6382         * lisp/international/mule-cmds.el (leim-list-header):
6383         Use format-message with an ASCII-only format.
6385         Prefer NUMBERP to spelling it out
6386         * src/editfns.c (styled_format):
6387         * src/frame.h (NUMVAL):
6388         * src/image.c (parse_image_spec):
6389         * src/lisp.h (CHECK_NUMBER_OR_FLOAT)
6390         (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER):
6391         * src/process.c (Fsignal_process):
6392         * src/xdisp.c (calc_pixel_width_or_height, on_hot_spot_p):
6393         * src/xfaces.c (check_lface_attrs):
6394         * src/xselect.c (x_fill_property_data, x_send_client_event):
6395         Use NUMBERP rather than INTEGERP || FLOATP.
6397 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
6399         Improve file-notify-tests
6400         * test/automated/file-notify-tests.el: Use lexical-binding.
6401         (file-notify--test-cleanup): New function.
6402         (file-notify-test00-availability, file-notify-test01-add-watch)
6403         (file-notify-test02-events, file-notify-test03-autorevert): Use it.
6404         (file-notify--test-with-events): New macro.
6405         (file-notify-test02-events): Use it.
6407 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
6409         Add patch-sending instructions to git-workflow
6410         From a suggestion by Mitchel Humpherys in:
6411         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00421.html
6412         * admin/notes/git-workflow (Sending patches): New section.
6414         Port to GIFLIB 5.0.6 and later
6415         Problem reported by Mitchel Humpherys in:
6416         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00420.html
6417         * src/image.c (HAVE_GIFERRORSTRING) [HAVE_GIF]: New macro.
6418         (GifErrorString, init_gif_functions) [HAVE_GIF && WINDOWSNT]:
6419         (gif_load) [HAVE_GIF]: Use it.
6421 2015-09-10  Glenn Morris  <rgm@gnu.org>
6423         * lisp/cedet/ede/auto.el (ede-project-autoload): Doc fix.
6425 2015-09-09  Glenn Morris  <rgm@gnu.org>
6427         * test/automated/file-notify-tests.el (file-notify-test02-events):
6428         Fix recent change.
6430 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
6432         Refix movemail GCC pacification
6433         Problem reported by Ken Brown in:
6434         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00406.html
6435         * lib-src/movemail.c (main): Fix previous change.
6437 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
6439         * lisp/calendar/time-date.el (time-to-seconds, time-less-p):
6440         Mark unused vars with underscore.
6442         * src/syntax.c (SETUP_SYNTAX_TABLE): Move truncation...
6443         (parse_sexp_propertize): ...from here.
6445         * lisp/filenotify.el: Use lexical-binding
6446         (file-notify-add-watch): Avoid add-to-list.
6448 2015-09-09  Tassilo Horn  <tsdh@gnu.org>
6450         Start checking event types in file-notify tests
6451         * test/automated/file-notify-tests.el (file-notify--test-events):
6452         New variable.
6453         (file-notify--test-event-handler): Append received event to
6454         file-notify--test-events for later analysis.
6455         (file-notify-test02-events): Assert that the expected notifications have
6456         arrived in the expected order.
6458 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
6460         Merge from gnulib and texinfo
6461         This incorporates:
6462         2015-08-03 Improve port of stdalign to C++11
6463         * lib/stdalign.in.h: Copy from gnulib.
6464         * doc/misc/texinfo.tex: Copy from texinfo.
6466 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
6468         Make syntax.c call syntax-propertize on demand
6469         * lisp/emacs-lisp/syntax.el (syntax--jit-propertize): New function.
6470         (parse-sexp-propertize-function): Use it.
6471         (syntax-propertize): Disable parse-sexp-propertize-function.
6472         * src/syntax.c (parse_sexp_propertize, update_syntax_table_forward):
6473         New functions.
6474         (syms_of_syntax): New vars `parse-sexp-propertize-done' and
6475         `parse-sexp-propertize-function'.
6476         * src/syntax.h (struct gl_state_s): Add `e_property_truncated' field.
6477         (UPDATE_SYNTAX_TABLE_FORWARD): Use update_syntax_table_forward.
6478         (SETUP_BUFFER_SYNTAX_TABLE): Set e_property_truncated.
6479         * lisp/progmodes/elisp-mode.el (elisp-byte-code-syntax-propertize):
6480         Don't assume `point' is set.
6482 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
6484         Fix indentation of an @example in ELisp manual
6485         * doc/lispref/syntax.texi (Categories): Untabify the example.
6486         (Bug#21448)
6488 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
6490         Define internal-char-font even if --without-x
6491         The function is used now even in non-graphical environments.
6492         Problem reported by Glenn Morris in:
6493         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00401.html
6494         * src/font.c (Finternal_char_font): Move here ...
6495         * src/fontset.c (Finternal_char_font): ... from here.
6497 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
6499         * lisp/emacs-lisp/cl-generic.el (cl-generic-generalizers):
6500         Remove warning.
6502 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
6504         Fix display of complex local data types in GDB-MI
6505         * lisp/progmodes/gdb-mi.el (gdb-locals-handler-custom): If a
6506         variable has no value, display "<complex data type>" as a
6507         placeholder, instead of a confusing "nil".  (Bug#21438)
6509 2015-09-09  Oleh Krehel  <ohwoeowho@gmail.com>
6511         Remove redundant redefinition of seq-drop-while from seq.el
6512         * lisp/emacs-lisp/seq.el (seq-drop-while): Define only once.
6514 2015-09-09  Phil Sainty  <psainty@orcon.net.nz>
6516         * lisp/emacs-lisp/package.el (package--ensure-init-file):
6517         More robust check for `package-initialize' calls in init file.
6518         This function accepts an optional argument, but calls passing
6519         an argument would not have been detected.
6521 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
6523         Port movemail to RHEL 6 with --enable-gcc-warnings
6524         * lib-src/movemail.c (main): Declare local only if needed.
6526         Port recent Linux console changes to RHEL 6
6527         * src/terminal.c [HAVE_LINUX_KD_H]: Include <sys/ioctl.h>.
6529         Improvements for curved quotes on Linux consule
6530         This should help Emacs work better out-of-the-box on Linux consoles,
6531         which have only limited support for displaying Unicode characters.
6532         Also, undo the recent change that caused text-quoting-style to
6533         affect quote display on terminals, so that the two features are
6534         independent.  See Alan Mackenzie in:
6535         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00244.html
6536         Finally, add a style parameter to startup--setup-quote-display,
6537         so that this function can also be invoked after startup, with
6538         different styles depending on user preference at the time.
6539         * configure.ac: Check for linux/kd.h header.
6540         * doc/emacs/display.texi (Text Display): Document quote display.
6541         * doc/lispref/display.texi (Active Display Table):
6542         * etc/NEWS:
6543         * lisp/startup.el (startup--setup-quote-display, command-line):
6544         text-quoting-style no longer affects quote display.
6545         * doc/lispref/frames.texi (Terminal Parameters): Fix typo.
6546         * lisp/international/mule-util.el (char-displayable-p):
6547         * lisp/startup.el (startup--setup-quote-display):
6548         On a text terminal supporting glyph codes, use the reported
6549         glyph codes instead of the terminal coding system, as this
6550         is more accurate on the Linux console.
6551         * lisp/startup.el (startup--setup-quote-display):
6552         New optional arg STYLE.
6553         * src/fontset.c (Finternal_char_font):
6554         Report glyph codes for a text terminal, if they are available.
6555         Currently this is supported only for the Linux console.
6556         * src/termhooks.h (struct terminal): New member glyph-code-table.
6557         * src/terminal.c [HAVE_LINUX_KD_H]: Include <errno.h>, <linux/kd.h>.
6558         (calculate_glyph_code_table) [HAVE_LINUX_KD_H]: New function.
6559         (terminal_glyph_code): New function.
6561 2015-09-08  Juri Linkov  <juri@linkov.net>
6563         * lisp/info.el (Info-fontify-node): Don't stop at the non-title
6564         underline.  (Bug#21433)
6566 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
6568         * lisp/calendar/time-date.el (with-decoded-time-value): Fix debug spec.
6570 2015-09-08  Tassilo Horn  <tsdh@gnu.org>
6572         Fix double-reporting of rename events with inotify
6573         * lisp/filenotify.el (file-notify-callback): Fix double-reporting
6574         of rename events with inotify (bug#21435).
6576 2015-09-08  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
6578         * lisp/play/tetris.el (tetris-move-down): New command (bug#21360).
6579         (tetris-mode-map): Use it.
6581 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
6583         Remove a few simple cases of global redisplay
6584         * src/dispnew.c (redraw_frame): Don't redisplay all frames.
6585         * src/xdisp.c (echo_area_display): Set the frame's `redisplay' bit
6586         rather than returning a "resized_p" boolean.
6587         (redisplay_internal): Adjust call accordingly.
6588         * src/xfaces.c (free_realized_faces): Don't redisplay all frames.
6589         (free_all_realized_faces): Set windows_or_buffers_changed so as to ease
6590         tracking of this undesirable situation.
6592         * src/process.c (status_notify): Avoid global redisplay (bug#11822)
6593         * src/process.c (status_notify): Only set the update_mode_line on the
6594         relevant buffers rather than setting it globally.
6596 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
6598         * lisp/electric.el (electric-quote-post-self-insert-function):
6599         Don't use syntax-ppss if comment-use-syntax is nil (e.g. message-mode).
6600         (electric-quote-mode): Activate everywhere in message-mode.
6602 2015-09-07  Paul Eggert  <eggert@cs.ucla.edu>
6604         Go back to grave quoting in source-code docstrings etc.
6605         This reverts almost all my recent changes to use curved quotes
6606         in docstrings and/or strings used for error diagnostics.
6607         There are a few exceptions, e.g., Bahá’í proper names.
6608         * admin/unidata/unidata-gen.el (unidata-gen-table):
6609         * lisp/abbrev.el (expand-region-abbrevs):
6610         * lisp/align.el (align-region):
6611         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet)
6612         (outlineify-sticky):
6613         * lisp/apropos.el (apropos-library):
6614         * lisp/bookmark.el (bookmark-default-annotation-text):
6615         * lisp/button.el (button-category-symbol, button-put)
6616         (make-text-button):
6617         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
6618         * lisp/calc/calc-embed.el (calc-do-embedded):
6619         * lisp/calc/calc-ext.el (calc-user-function-list):
6620         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
6621         * lisp/calc/calc-help.el (calc-describe-key)
6622         (calc-describe-thing, calc-full-help):
6623         * lisp/calc/calc-lang.el (calc-c-language)
6624         (math-parse-fortran-vector-end, math-parse-tex-sum)
6625         (math-parse-eqn-matrix, math-parse-eqn-prime)
6626         (calc-yacas-language, calc-maxima-language, calc-giac-language)
6627         (math-read-giac-subscr, math-read-math-subscr)
6628         (math-read-big-rec, math-read-big-balance):
6629         * lisp/calc/calc-misc.el (calc-help, report-calc-bug):
6630         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
6631         (calc-auto-recompute):
6632         * lisp/calc/calc-prog.el (calc-fix-token-name)
6633         (calc-read-parse-table-part, calc-user-define-invocation)
6634         (math-do-arg-check):
6635         * lisp/calc/calc-store.el (calc-edit-variable):
6636         * lisp/calc/calc-units.el (math-build-units-table-buffer):
6637         * lisp/calc/calc-vec.el (math-read-brackets):
6638         * lisp/calc/calc-yank.el (calc-edit-mode):
6639         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
6640         * lisp/calendar/appt.el (appt-display-message):
6641         * lisp/calendar/diary-lib.el (diary-check-diary-file)
6642         (diary-mail-entries, diary-from-outlook):
6643         * lisp/calendar/icalendar.el (icalendar-export-region)
6644         (icalendar--convert-float-to-ical)
6645         (icalendar--convert-date-to-ical)
6646         (icalendar--convert-ical-to-diary)
6647         (icalendar--convert-recurring-to-diary)
6648         (icalendar--add-diary-entry):
6649         * lisp/calendar/time-date.el (format-seconds):
6650         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
6651         (timeclock-make-hours-explicit, timeclock-log-data):
6652         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
6653         (todo-item-mark, todo-check-format)
6654         (todo-insert-item--next-param, todo-edit-item--next-key)
6655         (todo-mode):
6656         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
6657         * lisp/cedet/mode-local.el (describe-mode-local-overload)
6658         (mode-local-print-binding, mode-local-describe-bindings-2):
6659         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
6660         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
6661         * lisp/cus-start.el (standard):
6662         * lisp/cus-theme.el (describe-theme-1):
6663         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
6664         (custom--sort-vars-1, load-theme):
6665         * lisp/descr-text.el (describe-text-properties-1, describe-char):
6666         * lisp/dired-x.el (dired-do-run-mail):
6667         * lisp/dired.el (dired-log):
6668         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
6669         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
6670         (ad-disable-advice, ad-remove-advice, ad-set-argument)
6671         (ad-set-arguments, ad--defalias-fset, ad-activate)
6672         (ad-deactivate):
6673         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
6674         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
6675         (byte-optimize-while, byte-optimize-apply):
6676         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
6677         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
6678         (byte-compile-log-file, byte-compile-format-warn)
6679         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
6680         (byte-compile-cl-warn)
6681         (byte-compile-warn-about-unresolved-functions)
6682         (byte-compile-file, byte-compile--declare-var)
6683         (byte-compile-file-form-defmumble, byte-compile-form)
6684         (byte-compile-normal-call, byte-compile-check-variable)
6685         (byte-compile-variable-ref, byte-compile-variable-set)
6686         (byte-compile-subr-wrong-args, byte-compile-setq-default)
6687         (byte-compile-negation-optimizer)
6688         (byte-compile-condition-case--old)
6689         (byte-compile-condition-case--new, byte-compile-save-excursion)
6690         (byte-compile-defvar, byte-compile-autoload)
6691         (byte-compile-lambda-form)
6692         (byte-compile-make-variable-buffer-local, display-call-tree)
6693         (batch-byte-compile):
6694         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use):
6695         * lisp/emacs-lisp/chart.el (chart-space-usage):
6696         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
6697         (check-declare-warn, check-declare-file)
6698         (check-declare-directory):
6699         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
6700         (checkdoc-message-text-engine):
6701         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer)
6702         (cl--describe-class):
6703         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
6704         (cl--generic-describe, cl-generic-generalizers):
6705         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
6706         (cl-symbol-macrolet):
6707         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
6708         * lisp/emacs-lisp/copyright.el (copyright)
6709         (copyright-update-directory):
6710         * lisp/emacs-lisp/edebug.el (edebug-read-list):
6711         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
6712         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
6713         (eieio-oref):
6714         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
6715         * lisp/emacs-lisp/eieio-speedbar.el:
6716         (eieio-speedbar-child-make-tag-lines)
6717         (eieio-speedbar-child-description):
6718         * lisp/emacs-lisp/eieio.el (defclass, change-class):
6719         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
6720         (elint-init-form, elint-check-defalias-form)
6721         (elint-check-let-form):
6722         * lisp/emacs-lisp/ert.el (ert-get-test, ert-results-mode-menu)
6723         (ert-results-pop-to-backtrace-for-test-at-point)
6724         (ert-results-pop-to-messages-for-test-at-point)
6725         (ert-results-pop-to-should-forms-for-test-at-point)
6726         (ert-describe-test):
6727         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
6728         (find-function-library):
6729         * lisp/emacs-lisp/generator.el (iter-yield):
6730         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
6731         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
6732         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
6733         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
6734         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
6735         (advice--make, define-advice):
6736         * lisp/emacs-lisp/package-x.el (package-upload-file):
6737         * lisp/emacs-lisp/package.el (package-version-join)
6738         (package-disabled-p, package-activate-1, package-activate)
6739         (package--download-one-archive)
6740         (package--download-and-read-archives)
6741         (package-compute-transaction, package-install-from-archive)
6742         (package-install, package-install-selected-packages)
6743         (package-delete, package-autoremove, describe-package-1)
6744         (package-install-button-action, package-delete-button-action)
6745         (package-menu-hide-package, package-menu--list-to-prompt)
6746         (package-menu--perform-transaction)
6747         (package-menu--find-and-notify-upgrades):
6748         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
6749         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
6750         * lisp/emacs-lisp/ring.el (ring-previous, ring-next):
6751         * lisp/emacs-lisp/rx.el (rx-check, rx-anything)
6752         (rx-check-any-string, rx-check-any, rx-check-not, rx-=)
6753         (rx-repeat, rx-check-backref, rx-syntax, rx-check-category)
6754         (rx-form):
6755         * lisp/emacs-lisp/smie.el (smie-config-save):
6756         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
6757         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
6758         * lisp/emacs-lisp/testcover.el (testcover-1value):
6759         * lisp/emacs-lisp/timer.el (timer-event-handler):
6760         * lisp/emulation/viper-cmd.el (viper-toggle-parse-sexp-ignore-comments)
6761         (viper-toggle-search-style, viper-kill-buffer)
6762         (viper-brac-function):
6763         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
6764         * lisp/env.el (setenv):
6765         * lisp/erc/erc-button.el (erc-nick-popup):
6766         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login, english):
6767         * lisp/eshell/em-dirs.el (eshell/cd):
6768         * lisp/eshell/em-glob.el (eshell-glob-regexp)
6769         (eshell-glob-entries):
6770         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
6771         * lisp/eshell/esh-opt.el (eshell-show-usage):
6772         * lisp/facemenu.el (facemenu-add-new-face)
6773         (facemenu-add-new-color):
6774         * lisp/faces.el (read-face-name, read-face-font, describe-face)
6775         (x-resolve-font-name):
6776         * lisp/files-x.el (modify-file-local-variable):
6777         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
6778         (set-auto-mode, hack-one-local-variable--obsolete)
6779         (dir-locals-set-directory-class, write-file, basic-save-buffer)
6780         (delete-directory, copy-directory, recover-session)
6781         (recover-session-finish, insert-directory)
6782         (file-modes-char-to-who, file-modes-symbolic-to-number)
6783         (move-file-to-trash):
6784         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer):
6785         * lisp/find-cmd.el (find-generic, find-to-string):
6786         * lisp/finder.el (finder-commentary):
6787         * lisp/font-lock.el (font-lock-fontify-buffer):
6788         * lisp/format.el (format-write-file, format-find-file)
6789         (format-insert-file):
6790         * lisp/frame.el (get-device-terminal, select-frame-by-name):
6791         * lisp/fringe.el (fringe--check-style):
6792         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
6793         * lisp/help-fns.el (help-fns--key-bindings)
6794         (help-fns--compiler-macro, help-fns--parent-mode)
6795         (help-fns--obsolete, help-fns--interactive-only)
6796         (describe-function-1, describe-variable):
6797         * lisp/help.el (describe-mode)
6798         (describe-minor-mode-from-indicator):
6799         * lisp/image.el (image-type):
6800         * lisp/international/ccl.el (ccl-dump):
6801         * lisp/international/fontset.el (x-must-resolve-font-name):
6802         * lisp/international/mule-cmds.el (prefer-coding-system)
6803         (select-safe-coding-system-interactively)
6804         (select-safe-coding-system, activate-input-method)
6805         (toggle-input-method, describe-current-input-method)
6806         (describe-language-environment):
6807         * lisp/international/mule-conf.el (code-offset):
6808         * lisp/international/mule-diag.el (describe-character-set)
6809         (list-input-methods-1):
6810         * lisp/mail/feedmail.el (feedmail-run-the-queue):
6811         * lisp/mouse.el (minor-mode-menu-from-indicator):
6812         * lisp/mpc.el (mpc-playlist-rename):
6813         * lisp/msb.el (msb--choose-menu):
6814         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
6815         * lisp/net/imap.el (imap-interactive-login):
6816         * lisp/net/mairix.el (mairix-widget-create-query):
6817         * lisp/net/newst-backend.el (newsticker--sentinel-work):
6818         * lisp/net/newst-treeview.el (newsticker--treeview-load):
6819         * lisp/net/rlogin.el (rlogin):
6820         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
6821         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
6822         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
6823         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
6824         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
6825         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
6826         (org-babel-goto-named-result):
6827         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
6828         * lisp/org/ob-ref.el (org-babel-ref-resolve):
6829         * lisp/org/org-agenda.el (org-agenda-prepare):
6830         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
6831         (org-clock-resolve):
6832         * lisp/org/org-ctags.el (org-ctags-ask-rebuild-tags-file-then-find-tag):
6833         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
6834         * lisp/org/org-habit.el (org-habit-parse-todo):
6835         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
6836         (org-mouse-context-menu):
6837         * lisp/org/org-table.el (org-table-edit-formulas):
6838         * lisp/org/ox.el (org-export-async-start):
6839         * lisp/proced.el (proced-log):
6840         * lisp/progmodes/ada-mode.el (ada-get-indent-case)
6841         (ada-check-matching-start, ada-goto-matching-start):
6842         * lisp/progmodes/ada-prj.el (ada-prj-display-page):
6843         * lisp/progmodes/ada-xref.el (ada-find-executable):
6844         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
6845         * lisp/progmodes/etags.el (etags-tags-apropos-additional):
6846         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
6847         (flymake-start-syntax-check-process):
6848         * lisp/progmodes/python.el (python-shell-get-process-or-error)
6849         (python-define-auxiliary-skeleton):
6850         * lisp/progmodes/sql.el (sql-comint):
6851         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
6852         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate):
6853         * lisp/recentf.el (recentf-open-files):
6854         * lisp/replace.el (query-replace-read-from)
6855         (occur-after-change-function, occur-1):
6856         * lisp/scroll-bar.el (scroll-bar-columns):
6857         * lisp/server.el (server-get-auth-key):
6858         * lisp/simple.el (execute-extended-command)
6859         (undo-outer-limit-truncate, list-processes--refresh)
6860         (compose-mail, set-variable, choose-completion-string)
6861         (define-alternatives):
6862         * lisp/startup.el (site-run-file, tty-handle-args, command-line)
6863         (command-line-1):
6864         * lisp/subr.el (noreturn, define-error, add-to-list)
6865         (read-char-choice, version-to-list):
6866         * lisp/term/common-win.el (x-handle-xrm-switch)
6867         (x-handle-name-switch, x-handle-args):
6868         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
6869         * lisp/textmodes/reftex-ref.el (reftex-label):
6870         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
6871         * lisp/textmodes/two-column.el (2C-split):
6872         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
6873         (tutorial--find-changed-keys):
6874         * lisp/type-break.el (type-break-noninteractive-query):
6875         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
6876         (wdired-do-perm-changes):
6877         * lisp/whitespace.el (whitespace-report-region):
6878         Prefer grave quoting in source-code strings used to generate help
6879         and diagnostics.
6880         * lisp/faces.el (face-documentation):
6881         No need to convert quotes, since the result is a docstring.
6882         * lisp/info.el (Info-virtual-index-find-node)
6883         (Info-virtual-index, info-apropos):
6884         Simplify by generating only curved quotes, since info files are
6885         typically that ways nowadays anyway.
6886         * lisp/international/mule-diag.el (list-input-methods):
6887         Don’t assume text quoting style is curved.
6888         * lisp/org/org-bibtex.el (org-bibtex-fields):
6889         Revert my recent changes, going back to the old quoting style.
6891 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
6893         * lisp/emacs-lisp/package.el: Reduce autoloading before compiling.
6894         (package--autoloads-file-name)
6895         (package--activate-autoloads-and-load-path): New function.
6896         (package-activate-1): Delegate autoloading and load-path
6897         configuration to `package--activate-autoloads-and-load-path'.
6898         (package--compile): Before compilation, call
6899         `package--activate-autoloads-and-load-path' instead of
6900         `package-activate-1'.
6902 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
6904         * src/keyboard.c (read_key_sequence): Complete last fix (bug#21403).
6906 2015-09-07  Eli Zaretskii  <eliz@gnu.org>
6908         Fix deletion of symlinks to directories on MS-Windows
6909         * src/w32.c (sys_unlink): If 'unlink' fails, and the argument is a
6910         symlink to a directory, try again with 'rmdir'.
6911         (is_symlink): If the argument is a symlink to a directory, set a
6912         bit in the return value to indicate that fact.
6914 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
6916         * lisp/emacs-lisp/package.el (package-initialize): Set enable-at-startup
6917         When `package-initialize' is called as part of loading the init file,
6918         the user probably doesn't want it to be called again afterwards.
6919         In this situation, `package-initialize' now sets
6920         `package-enable-at-startup' to nil to prevent that.  The user can have
6921         the old behavior by setting this variable to t after the call to
6922         `package-initialize'.  (Bug#21423)
6923         * doc/emacs/package.texi (Package Installation): Document it.
6924         * doc/lispref/package.texi (Packaging Basics): Document it.
6925         * etc/NEWS: Document it.
6927 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
6929         Bump version of ntlm.el to 2.00
6930         * lisp/net/ntlm.el: Bump version to 2.00.  New maintainer.
6931         Add comm keyword.
6933 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
6935         * doc/misc/gnus.texi (Mail Source Specifiers):
6936         Allow :mailbox to be a list.
6938 2015-09-06  Dmitry Gutov  <dgutov@yandex.ru>
6940         * lisp/progmodes/etags.el (etags-tags-completion-table):
6941         Allow even one non-regular character before the implicit tag name.
6942         Reported at http://emacs.stackexchange.com/questions/15269/.
6944 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
6946         Add support for NTLMv2 authentication
6947         * lisp/net/ntlm.el (ntlm): New customization group.
6948         (ntlm-compatibility-level): New defcustom.
6949         (ntlm-compute-timestamp): New function.
6950         (ntlm-generate-nonce): Likewise.
6951         (ntlm-build-auth-response): Add support for NTLMv2 authentication.
6953 2015-09-06  Artur Malabarba  <bruce.connor.am@gmail.com>
6955         * lisp/emacs-lisp/package.el: Rename custom faces.
6956         All of the recently introduced faces, like `package-name-face', have
6957         been renamed to no end in `-face' to comply with the convention
6958         described in (info "(elisp) Defining Faces").
6959         (package-name, package-description)
6960         (package-status-built-in, package-status-external)
6961         (package-status-available, package-status-new)
6962         (package-status-held, package-status-disabled)
6963         (package-status-installed, package-status-dependency)
6964         (package-status-unsigned, package-status-incompat)
6965         (package-status-avail-obso): New faces.
6966         (package-menu--print-info-simple): Use them.
6968 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
6970         mail-source.el: Make the imap mail-source's :mailbox handle a list
6971         * lisp/gnus/mail-source.el (mail-source-fetch-imap):
6972         Allow :mailbox to be  a list.
6974 2015-09-06  Eric Abrahamsen  <eric@ericabrahamsen.net>
6976         nnimap.el: Handle nil arg to nnimap-request-group
6977         * lisp/gnus/nnimap.el (nnimap-request-group): Handle nil "info" arg.
6978         This arg isn't always passed in, check it's not nil before making it
6979         into a list.  The active arg will also be nil if the group is new,
6980         check for that.
6982 2015-09-06  Michael Albinus  <michael.albinus@gmx.de>
6984         File notifications: Support renaming over directory boundaries
6985         * lisp/filenotify.el (file-notify-handle-event):
6986         (file-notify--pending-event): Adapt docstring.
6987         (file-notify--descriptor, file-notify-callback): Reimplement in
6988         order to support renaming over directory boundaries.
6989         (file-notify-add-watch): Adapt `file-notify--descriptor' call.
6990         * doc/lispref/os.texi (File Notifications): Remove limitation of
6991         file renaming to the same directory.
6993 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
6995         Spelling fix (Bug#21420)
6997 2015-09-05  Nicolas Petton  <nicolas@petton.fr>
6999         Improve the semantic of map-some
7000         Update map-some to return the returned by the predicate, similar to
7001         seq-some.
7002         * lisp/emacs-lisp/map.el (map-some): Update the function to return the
7003           return value of the predicate.
7004         * test/automated/map-tests.el (test-map-some): Update the test to check
7005           for non-nil values only.
7007         Rename map-contains-key-p and map-some-p
7008         Remove the "-p" suffix from both function names.
7009         * lisp/emacs-lisp/map.el (map-contains-key, map-some):
7010           Rename the functions.
7011         * test/automated/map-tests.el (test-map-contains-key, test-map-some):
7012           Update both test functions.
7014         Improve the semantic of seq-some
7015         Update seq-some to return non-nil if the predicate returns non-nil for
7016         any element of the seq, in which case the returned value is the one
7017         returned by the predicate.
7018         * lisp/emacs-lisp/seq.el (seq-some): Update the function and its
7019           docstring.
7020         * test/automated/seq-tests.el (test-seq-some): Add a regression test.
7021         * doc/lispref/sequences.texi (Sequence Functions): Update the
7022           documentation for seq-some.
7024         Rename seq-some-p to seq-some and seq-contains-p to seq-contains
7025         * lisp/emacs-lisp/seq.el (seq-some, seq-contains): Rename the functions
7026           without the "-p" prefix.
7027         * test/automated/seq-tests.el (test-seq-some, test-seq-contains): Update
7028           the tests accordingly.
7029         * doc/lispref/sequences.texi (Sequence Functions): Update the
7030           documentation for seq.el.
7032 2015-09-05  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
7034         text-quoting-style for usage of fn names with ‘’
7035         * lisp/help.el (help--docstring-quote): Don’t assume
7036         text-quoting-style is ‘curve’ when generating usage strings for
7037         functions whose names contain curved quotes.
7039 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
7041         Fix fix for describe-function keybinding confusion
7042         This fixes a bug introduced by the previous patch.
7043         * lisp/help-fns.el (help-fns--signature):
7044         Last arg of help-fns--signature is now a buffer, or nil if a
7045         raw signature is wanted.  All callers changed.
7046         (describe-function-1): Use this to do the right thing with signatures.
7048 2015-09-05  Johan Bockgård  <bojohan@gnu.org>
7050         * doc/lispref/frames.texi (Mouse Tracking): Fix typo.
7052         Use PAT rather than UPAT in pcase macros
7053         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
7054         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>: Use PAT rather
7055           than UPAT.
7057 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
7059         Fix describe-function keybinding confusion
7060         * lisp/help-fns.el (describe-function-1): Compute signature
7061         in the original buffer, not in standard-output, so that
7062         substitute-command-keys uses the proper keybindings.
7063         This fixes Bug#21412, introduced in commit
7064         2015-06-11T10:23:46-0700!eggert@cs.ucla.edu.
7066 2015-09-05  Xue Fuqiao  <xfq.free@gmail.com>
7068         * doc/emacs/programs.texi (Program Modes): Remove an index entry.
7070 2015-09-05  Robert Pluim  <rpluim@gmail.com>  (tiny change)
7072         Avoid read error messages from 'inotify'
7073         * src/process.c (wait_reading_process_output): Add a
7074         'tls_available' set and manipulate it instead of 'Available' when
7075         checking TLS inputs.  Assign the value to 'Available' only if we
7076         find any TLS data waiting to be read.  This avoids error messages
7077         from 'inotify' that tries to read data it shouldn't.  (Bug#21337)
7079 2015-09-05  Eli Zaretskii  <eliz@gnu.org>
7081         Avoid errors in thing-at-point with 2nd argument non-nil
7082         * lisp/thingatpt.el (thing-at-point): Only call 'length' on
7083         sequences.  (Bug#21391)
7085 2015-09-05  Philip  <pipcet@gmail.com>  (tiny change)
7087         Fix segfaults due to using a stale face ID
7088         * src/xdisp.c (forget_escape_and_glyphless_faces): New function.
7089         (display_echo_area_1, redisplay_internal): Call it to avoid
7090         reusing stale face IDs for 'escape-glyph' and 'glyphless-char'
7091         faces, which could case a segfault if the frame's face cache was
7092         freed since the last redisplay.  (Bug#21394)
7093         * src/xfaces.c (free_realized_faces):
7094         Call forget_escape_and_glyphless_faces.
7095         * src/dispextern.h (forget_escape_and_glyphless_faces): Add prototype.
7097 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
7099         Fix minor problems with " in manual
7101 2015-09-04  Michael Albinus  <michael.albinus@gmx.de>
7103         * doc/misc/tramp.texi (Frequently Asked Questions): New item for ad-hoc
7104         multi-hop files.
7106 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
7108         Support automated ‘make check’ in non-C locale
7109         This lets the builder optionally test Emacs behavior in other locales.
7110         The C locale is still the default for tests.
7111         * test/automated/Makefile.in (TEST_LOCALE): New macro.
7112         (emacs): Use it.
7113         * test/automated/flymake-tests.el (flymake-tests--current-face):
7114         Use C locale for subprocesses so that tests behave as expected.
7115         * test/automated/python-tests.el:
7116         (python-shell-prompt-validate-regexps-1)
7117         (python-shell-prompt-validate-regexps-2)
7118         (python-shell-prompt-validate-regexps-3)
7119         (python-shell-prompt-validate-regexps-4)
7120         (python-shell-prompt-validate-regexps-5)
7121         (python-shell-prompt-validate-regexps-6)
7122         (python-shell-prompt-set-calculated-regexps-1):
7123         Adjust expected output to match locale.
7124         * test/automated/tildify-tests.el (tildify-test--test)
7125         (tildify-space-test--test, tildify-space-undo-test--test):
7126         This test assumes UTF-8 encoding.
7128 2015-09-03  Paul Eggert  <eggert@cs.ucla.edu>
7130         Fix some more docstring etc. quoting problems
7131         Mostly these fixes prevent the transliteration of apostrophes
7132         that should stay apostrophes.  Also, prefer curved quotes in
7133         Bahá’í proper names, as that’s the preferred Bahá’í style and
7134         these names are chock-full of non-ASCII characters anyway.
7135         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-autoload)
7136         (eieio-defclass-internal):
7137         * lisp/emacs-lisp/eieio.el (defclass):
7138         * lisp/hi-lock.el (hi-lock-mode):
7139         Don’t transliterate Lisp apostrophes when generating a
7140         doc string or diagnostic.
7141         * lisp/international/mule-diag.el (list-coding-systems-1):
7142         * lisp/international/ogonek.el (ogonek-jak, ogonek-how):
7143         * lisp/mail/sendmail.el (sendmail-query-user-about-smtp):
7144         * lisp/vc/ediff-mult.el (ediff-redraw-registry-buffer):
7145         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
7146         Substitute quotes before putting them in the help buffer.
7148 2015-09-03  Stefan Monnier  <monnier@iro.umontreal.ca>
7150         Re-add the notion of echo_prompt lost in the translation
7151         * src/keyboard.h (struct kboard): Replace echo_after_prompt with new
7152         echo_prompt which contains the actual string.  Update all uses.
7153         * src/keyboard.c (kset_echo_prompt): New function.
7154         (echo_update): Add echo_prompt at the very beginning.
7155         (read_char): Remove workaround for bug#19875, not needed any more.
7156         (read_key_sequence): Set echo_prompt rather than echo_string
7157         (bug#21403).
7158         (mark_kboards): Mark echo_prompt.
7160         Fix disassembly of non-compiled lexical functions (bug#21377)
7161         * lisp/emacs-lisp/bytecomp.el (byte-compile): Handle `closure' arg.
7162         * lisp/emacs-lisp/disass.el: Use lexical-binding.
7163         (disassemble): Recognize `closure's as well.
7164         (disassemble-internal): Use indirect-function and
7165         help-function-arglist, and accept `closure's.
7166         (disassemble-internal): Use interactive-form.
7167         (disassemble-1): Use functionp.
7169         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
7170         Don't compose inside verbatim blocks!
7172 2015-09-03  Mark Oteiza  <mvoteiza@udel.edu>
7174         * lisp/thingatpt.el (thing-at-point-uri-schemes): Add "man:"
7175         (bug#19441).
7177         * lisp/mpc.el (mpc--proc-connect): Handle unix sockets (bug#19394).
7179 2015-09-03  Dmitry Gutov  <dgutov@yandex.ru>
7181         vc-git-mode-line-string: Explicitly re-apply the face
7182         * lisp/vc/vc-git.el (vc-git-mode-line-string): Explicitly re-apply
7183         the face (bug#21404).
7185 2015-09-02  Paul Eggert  <eggert@cs.ucla.edu>
7187         Treat initial-scratch-message as a doc string
7188         * doc/emacs/building.texi (Lisp Interaction):
7189         * doc/lispref/os.texi (Startup Summary):
7190         * etc/NEWS: Document this.
7191         * lisp/startup.el (initial-scratch-message):
7192         Look up find-file’s key rather than hardcoding it.
7193         (command-line-1): Substitute the doc string.
7194         This also substitutes the quotes, which will help test display
7195         quoting at startup.
7197         Fix describe-char bug with glyphs on terminals
7198         * lisp/descr-text.el (describe-char): Terminals can have glyphs in
7199         buffers too, so don’t treat them differently from graphic displays.
7200         Without this fix, describe-char would throw an error on a terminal
7201         if given a glyph with a non-default face.
7203         Follow text-quoting-style in display table init
7204         This attempts to fix a problem reported by Alan Mackenzie in:
7205         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00112.html
7206         * doc/lispref/display.texi (Active Display Table):
7207         Mention how text-quoting-style affects it.
7208         * doc/lispref/help.texi (Keys in Documentation):
7209         Say how to set text-quoting-style in ~/.emacs.
7210         * etc/NEWS: Document the change.
7211         * lisp/startup.el (startup--setup-quote-display):
7212         Follow user preference if text-quoting-style is set.
7213         (command-line): Setup quote display again if user expresses
7214         a preference in .emacs.
7216 2015-09-02  K. Handa  <handa@gnu.org>
7218         Fix typo
7219         * src/ftfont.c (ftfont_drive_otf): otf_positioning_type_components_mask
7220         -> OTF_positioning_type_components_mask.
7222         Fix previous change
7223         * src/ftfont.c (ftfont_drive_otf): Remember some bits of
7224         OTF_Glyph->positioning_type in MFLTGlyphFT->libotf_positioning_type.
7226 2015-09-01  David Caldwell  <david@porkrind.org>  (tiny change)
7228         * lisp/vc/vc-hooks.el (vc-refresh-state): New command.
7229         Rename from vc-find-file-hook and make interactive.
7230         (vc-find-file-hook): Redefine as obsolete alias.
7232 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
7234         Escape ` and ' in doc
7235         Escape apostrophes and grave accents in docstrings if they are
7236         are supposed to stand for themselves and are not quotes.  Remove
7237         apostrophes from docstring examples like ‘'(calendar-nth-named-day
7238         -1 0 10 year)’ that confuse source code with data.  Do some other
7239         minor docstring fixups as well, e.g., insert a missing close quote.
7241 2015-09-01  Stefan Monnier  <monnier@iro.umontreal.ca>
7243         Generalize the prefix-command machinery of C-u
7244         * lisp/simple.el (prefix-command-echo-keystrokes-functions)
7245         (prefix-command-preserve-state-hook): New hooks.
7246         (internal-echo-keystrokes-prefix): New function.
7247         (prefix-command--needs-update, prefix-command--last-echo): New vars.
7248         (prefix-command-update, prefix-command-preserve): New functions.
7249         (reset-this-command-lengths): New compatibility definition.
7250         (universal-argument--mode): Call prefix-command-update.
7251         (universal-argument, universal-argument-more, negative-argument)
7252         (digit-argument): Call prefix-command-preserve-state.
7253         * src/keyboard.c: Call internal-echo-keystrokes-prefix to build
7254         the "prefix argument" to echo.
7255         (this_command_key_count_reset, before_command_key_count)
7256         (before_command_echo_length): Delete variables.
7257         (echo_add_key): Always add a space.
7258         (echo_char): Remove.
7259         (echo_dash): Don't give up when this_command_key_count is 0, since that
7260         is now the case after a prefix command.
7261         (echo_update): New function, extracted from echo_now.
7262         (echo_now): Use it.
7263         (add_command_key, read_char, record_menu_key): Remove old disabled code.
7264         (command_loop_1): Don't refrain from pushing an undo boundary when
7265         prefix-arg is set.  Remove other prefix-arg special case, now handled
7266         directly in the prefix commands instead.  But call echo_now if there's
7267         a prefix state to echo.
7268         (read_char, record_menu_key): Use echo_update instead of echo_char.
7269         (read_key_sequence): Use echo_now rather than echo_dash/echo_char.
7270         (Freset_this_command_lengths): Delete function.
7271         (syms_of_keyboard): Define Qinternal_echo_keystrokes_prefix.
7272         (syms_of_keyboard): Don't defsubr Sreset_this_command_lengths.
7273         * lisp/simple.el: Use those new hooks for C-u.
7274         (universal-argument--description): New function.
7275         (prefix-command-echo-keystrokes-functions): Use it.
7276         (universal-argument--preserve): New function.
7277         (prefix-command-preserve-state-hook): Use it.
7278         (command-execute): Call prefix-command-update if needed.
7279         * lisp/kmacro.el (kmacro-step-edit-prefix-commands)
7280         (kmacro-step-edit-prefix-index): Delete variables.
7281         (kmacro-step-edit-query, kmacro-step-edit-insert): Remove ad-hoc
7282         support for prefix arg commands.
7283         (kmacro-step-edit-macro): Don't bind kmacro-step-edit-prefix-index.
7284         * lisp/emulation/cua-base.el (cua--prefix-override-replay)
7285         (cua--shift-control-prefix): Use prefix-command-preserve-state.
7286         Remove now unused arg `arg'.
7287         (cua--prefix-override-handler, cua--prefix-repeat-handler)
7288         (cua--shift-control-c-prefix, cua--shift-control-x-prefix):
7289         Update accordingly.
7290         (cua--prefix-override-timeout): Don't call reset-this-command-lengths
7291         any more.
7292         (cua--keep-active, cua-exchange-point-and-mark): Don't set mark-active
7293         if the mark is not set.
7295 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
7297         Rework quoting in Emacs Lisp Introduction
7298         * doc/lispintro/emacs-lisp-intro.texi (Sample let Expression)
7299         (if in more detail, type-of-animal in detail, else): Rework the
7300         early example to use " rather than ' so that we don’t burden
7301         complete novices with the low-priority detail of text quoting style.
7302         (Complete zap-to-char, kill-region, Complete copy-region-as-kill)
7303         (kill-new function, kill-ring-yank-pointer)
7304         (Complete forward-sentence, Loading Files)
7305         (Code for current-kill, Code for current-kill, yank):
7306         Resurrect the Emacs 22 versions of the code, which uses grave
7307         quoting style in doc strings.
7308         (Complete zap-to-char): Mention how quoting works in doc strings.
7310         Setup quote display only if interactive
7311         * lisp/startup.el (command-line):
7312         Skip call to startup--setup-quote-display if noninteractive.
7313         Without this change, python-shell-prompt-validate-regexps-1
7314         fails in test/automated/python-tests.el when run in an
7315         en_US.utf8 locale on Fedora.
7317 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
7319         Use defalias at the top level
7320         * lisp/gnus/gnus-util.el (gnus-format-message):
7321         * lisp/net/tls.el (tls-format-message): Use defalias at the top level
7322         so as to make eval-and-compile unnecessary.  Thanks to Stefan Monnier.
7324 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
7326         terminal-init-w32console mimicks command-line
7327         Problem reported by Eli Zaretskii.
7328         * lisp/startup.el (startup--setup-quote-display):
7329         New function, refactored from a part of ‘command-line’.
7330         (command-line): Use it.
7331         * lisp/term/w32console.el (terminal-init-w32console):
7332         Use it, so that this function stays consistent with ‘command-line’.
7334         Display replacement quotes with shadow glyphs
7335         * lisp/startup.el (command-line): When displaying ASCII
7336         replacements for curved quotes, use a shadow glyph instead of a
7337         regular one, to avoid ambiguity.
7339 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
7341         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Mask "Password:".
7343 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
7345         Docstring fixes re quotes in C code
7346         Fix some docstring quoting problems, mostly by escaping apostrophe.
7348 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
7350         Some Tramp password fixes
7351         * lisp/net/tramp.el (tramp-clear-passwd): Clear also the passwords
7352         of the hops.
7353         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Move "-p" "Password:"
7354         at the beginning of the command.  Otherwise, it could be
7355         interpreted as password prompt if the remote host echoes the
7356         command.
7357         (tramp-remote-coding-commands): Add "openssl enc -base64".
7359 2015-09-01  Dmitry Gutov  <dgutov@yandex.ru>
7361         Make vc-git-working-revision always return the commit hash
7362         * lisp/vc/vc-git.el (vc-git-working-revision):
7363         Return the commit hash (bug#21383).
7364         (vc-git--symbolic-ref): New function, extracted from above.
7365         (vc-git-mode-line-string): Use it.
7367 2015-09-01  K. Handa  <handa@gnu.org>
7369         Use the new type MFLTGlyphFT for MFLTGlyphString.glyphs
7370         * src/ftfont.c (MFLTGlyphFT): New type.
7371         (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_drive_otf)
7372         (ftfont_shape_by_flt): Make MFLTGlyphFT the actual type of
7373         elements in the array MFLTGlyphString.glyphs.
7375 2015-09-01  Stephen Leake  <stephen_leake@stephe-leake.org>
7377         Improve comments in elisp-mode.el, elisp-mode-tests.el
7378         * lisp/progmodes/elisp-mode.el: Clean up FIXMEs, comments.
7380         Delete Emacs 25 test in mode-local.el
7381         * lisp/cedet/mode-local.el (describe-mode-local-overload):
7382         Fix missed an edit in previous commit.
7384         Show all known mode-local overrides in *Help*
7385         * lisp/cedet/mode-local.el (describe-mode-local-overload):
7386         Assume Emacs 25. Add all known mode-local overrides.
7388 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
7390         * lisp/gnus/gnus-sum.el (gnus-summary-search-article):
7391         Ensure that the article where the search word is found is displayed
7392         and pointed to in the summary buffer.
7394 2015-08-31  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
7396         * lisp/newcomment.el (comment-dwim): Use `use-region-p'.
7397         When the region is active, but is empty (length 0), act as though
7398         the region was not active; that is, put a comment at the end of
7399         the line.  (Bug#21119)
7401 2015-08-31  Katsumi Yamaoka  <yamaoka@jpl.org>
7403         Port tls.el to older Emacs
7404         * lisp/net/tls.el (tls-format-message):
7405         Alias to format-message, or format if not available.
7406         (open-tls-stream): Use it.
7408 2015-08-31  Rüdiger Sonderfeld  <ruediger@c-plusplus.net>
7410         hideif.el: Recognize .h++ as C++ header
7411         * lisp/progmodes/hideif.el (hide-ifdef-header-regexp): Add .h++.
7413         isearch: Document character folding mode
7414         * lisp/isearch.el (isearch-forward):
7415         Mention `isearch-toggle-character-fold' in doc string.
7417 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
7419         Quoting fixes in ERC and Eshell
7420         * lisp/erc/erc-autoaway.el (erc-autoaway-set-away):
7421         * lisp/erc/erc-backend.el (define-erc-response-handler):
7422         * lisp/erc/erc-fill.el (erc-fill-static-center):
7423         * lisp/eshell/em-dirs.el (eshell-save-some-last-dir):
7424         * lisp/eshell/em-glob.el (eshell-glob-entries):
7425         * lisp/eshell/em-hist.el (eshell-save-some-history):
7426         * lisp/eshell/em-unix.el (eshell-remove-entries, eshell/rm)
7427         (eshell-shuffle-files):
7428         * lisp/eshell/esh-cmd.el (eshell-do-eval):
7429         * lisp/eshell/esh-proc.el (eshell-process-interact)
7430         (eshell-query-kill-processes):
7431         Respect ‘text-quoting-style’ in diagnostics and doc strings.
7433         Quoting fixes in Gnus
7434         * lisp/gnus/gnus-agent.el:
7435         (gnus-agent-possibly-synchronize-flags-server):
7436         * lisp/gnus/gnus-art.el (gnus-article-browse-delete-temp-files):
7437         * lisp/gnus/gnus-eform.el (gnus-edit-form):
7438         * lisp/gnus/gnus-group.el (gnus-group-edit-group)
7439         (gnus-group-nnimap-edit-acl):
7440         * lisp/gnus/gnus-topic.el (gnus-topic-edit-parameters):
7441         * lisp/gnus/mail-source.el (mail-source-delete-old-incoming):
7442         * lisp/gnus/message.el (message-strip-subject-encoded-words)
7443         (message-check-recipients, message-send-form-letter):
7444         * lisp/gnus/mm-decode.el (mm-display-part):
7445         * lisp/gnus/mm-uu.el (mm-uu-pgp-signed-extract-1):
7446         * lisp/gnus/mml-smime.el (mml-smime-get-dns-cert)
7447         (mml-smime-get-ldap-cert):
7448         * lisp/gnus/spam-report.el (spam-report-process-queue):
7449         Respect ‘text-quoting-style’ in diagnostics.
7450         * lisp/gnus/gnus-art.el (article-display-face)
7451         * lisp/gnus/gnus-fun.el (gnus-display-x-face-in-from):
7452         Use straight quoting in email.
7453         * lisp/gnus/rfc2231.el (rfc2231-decode-encoded-string):
7454         Escape apostrophes in doc strings.
7456         Quoting fixes in lisp mail, mh-e, net, url
7457         * lisp/mail/emacsbug.el (report-emacs-bug)
7458         (report-emacs-bug-hook): Use straight quotes in outgoing email,
7459         * lisp/mail/feedmail.el (feedmail-message-action-help-blat):
7460         * lisp/mail/rmail.el (rmail-unknown-mail-followup-to):
7461         * lisp/mail/rmailout.el (rmail-output-read-file-name):
7462         * lisp/net/imap.el (imap-interactive-login):
7463         * lisp/net/tls.el (open-tls-stream):
7464         * lisp/url/url-auth.el (url-register-auth-scheme):
7465         Respect ‘text-quoting-style’ in diagnostics.
7466         * lisp/mh-e/mh-e.el (mh-sortm-args):
7467         Quote docstring example using text quotes, not as a Lisp quote.
7469 2015-08-31  Stephen Leake  <stephen_leake@stephe-leake.org>
7471         Fix some byte-compiler warnings in EDE
7472         This fixes a bug that caused ede-generic-new-autoloader to overwrite the
7473         existing autoloader list, rather than add to it.
7474         * lisp/cedet/ede/auto.el (ede-project-class-files): Delete obsolete name
7475         argument to eieio class constructor.
7476         (ede-show-supported-projects): New.
7477         (ede-add-project-autoload): Replace obsolete `eieio-object-name-string'
7478         with (oref ... name).
7479         (ede-auto-load-project): Use slot name, not initarg key.
7480         * lisp/cedet/ede/generic.el (ede-generic-load)
7481         (ede-generic-find-matching-target): Use slot name, not initarg key.
7482         (ede-find-target): Use oref-default on class name.
7483         (ede-generic-new-autoloader): Delete obsolete name argument to eieio
7484         class constructor.
7485         (ede-enable-generic-projects): Make project type names unique.
7487 2015-08-31  Eli Zaretskii  <eliz@gnu.org>
7489         Fix directory accessibility tests for w32 network volumes
7490         * src/w32.c (faccessat): Don't fail with network volumes without a
7491         share.
7492         (w32_accessible_directory_p): Handle network volumes without a
7493         share.
7495         Fix handling long file names in readdir on MS-Windows
7496         * src/w32.c (sys_readdir): Append "\*" to the directory after
7497         converting it to UTF-16/ANSI, not before, to avoid overflowing the
7498         260-character limit on file names in filename_to_utf16/ansi.
7500         Make file-accessible-directory-p reliable on MS-Windows
7501         * src/w32.c (w32_accessible_directory_p): New function.
7502         * src/w32.h (w32_accessible_directory_p): Add prototype.
7503         * src/fileio.c (file_accessible_directory_p) [WINDOWSNT]: Call
7504         w32_accessible_directory_p to test a directory for accessibility
7505         by the current user.  (Bug#21346)
7506         (Ffile_accessible_directory_p): Remove the w32 specific caveat
7507         from the doc string.
7509 2015-08-31  Martin Rudalics  <rudalics@gmx.at>
7511         Don't call do_pending_window_change in signal handlers (Bug#21380)
7512         * src/gtkutil.c (xg_frame_resized):
7513         * src/xterm.c (x_set_window_size):
7514         * src/w32term.c (x_set_window_size): Don't call
7515         do_pending_window_change.
7517 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
7519         Quoting fixes in lisp/org
7520         * lisp/org/org-agenda.el (org-search-view, org-todo-list)
7521         (org-tags-view):
7522         * lisp/org/org-capture.el (org-capture-mode)
7523         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
7524         (org-ctags-ask-append-topic):
7525         * lisp/org/org.el (org-time-string-to-time)
7526         (org-time-string-to-absolute):
7527         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
7528         (org-ctags-ask-append-topic):
7529         * lisp/org/org.el (org-time-string-to-time)
7530         (org-time-string-to-absolute):
7531         Respect ‘text-quoting-style’ in diagnostics.
7532         * lisp/org/org-agenda.el (org-agenda-custom-commands)
7533         (org-agenda-dim-blocked-tasks): Plural of TODO is TODOs, not TODO’s.
7534         * lisp/org/org-capture.el (org-capture-fill-template):
7535         Avoid contraction in output file that might be ASCII.
7536         * lisp/org/org-compat.el (format-message):
7537         Define if not already defined, for backward compatibility.
7538         * lisp/org/org-src.el (org-edit-src-save):
7539         * lisp/org/org.el (org-cycle, org-ctrl-c-ctrl-c):
7540         Escape apostrophes in diagnostics.
7542         Treat “instead” strings as docstrings
7543         * lisp/emacs-lisp/bytecomp.el (byte-compile-form):
7544         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
7545         Substitute quotes in instead strings.
7547 2015-08-31  Nicolas Petton  <nicolas@petton.fr>
7549         Better documentation of seq-let
7550         * doc/lispref/sequences.texi (Sequence Functions): Rephrase the
7551         documentation of seq-let.
7553 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
7555         * lisp/international/ccl.el: Fix quoting.
7557         Quoting fixes in lisp/international and lisp/leim
7558         * lisp/international/ccl.el (ccl-dump, ccl-dump-call):
7559         * lisp/international/ja-dic-utl.el (skkdic-lookup-key):
7560         * lisp/international/mule-cmds.el:
7561         (select-safe-coding-system-interactively, leim-list-file-name):
7562         * lisp/international/quail.el (quail-use-package, quail-help):
7563         * lisp/international/titdic-cnv.el (tit-process-header)
7564         (miscdic-convert):
7565         Respect text quoting style in doc strings and diagnostics.
7566         * lisp/international/quail.el (lisp/international/quail.el):
7567         * lisp/leim/quail/ethiopic.el ("ethiopic"):
7568         Escape apostrophes in doc strings.
7570         Make ‘text-quoting-style’ a plain defvar
7571         It doesn’t need customization, as it’s likely useful only by experts.
7572         Suggested by Stefan Monnier in:
7573         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg01020.html
7574         * lisp/cus-start.el: Remove doc.c section for builtin customized vars.
7576         Quoting fixes in lisp/textmodes
7577         * lisp/textmodes/bibtex.el (bibtex-validate)
7578         (bibtex-validate-globally, bibtex-search-entries):
7579         * lisp/textmodes/ispell.el (ispell-command-loop):
7580         * lisp/textmodes/page-ext.el (search-pages, pages-directory):
7581         * lisp/textmodes/texinfmt.el (texinfmt-version)
7582         (texinfo-format-region, texinfo-format-buffer-1):
7583         * lisp/textmodes/two-column.el (2C-split):
7584         Respect text quoting style in doc strings and diagnostics.
7585         * lisp/textmodes/conf-mode.el (conf-mode-map, conf-quote-normal):
7586         * lisp/textmodes/sgml-mode.el (sgml-specials, sgml-mode):
7587         Escape apostrophes in doc strings.
7589         Documentation fixes re quotes
7590         Prefer curved quotes in examples if users will typically see
7591         curved quotes when the examples run.
7592         Mention format-message when appropriate.
7593         Don’t use @code in examples.
7594         Quote an apostrophe with @kbd.
7596         Quoting fixes in lisp/progmodes
7597         * lisp/progmodes/cc-engine.el (c-bos-report-error):
7598         * lisp/progmodes/cpp.el (cpp-edit-reset):
7599         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
7600         * lisp/progmodes/etags.el (etags-tags-apropos-additional)
7601         (etags-tags-apropos, list-tags, tags-apropos):
7602         * lisp/progmodes/executable.el (executable-set-magic):
7603         * lisp/progmodes/octave.el (octave-sync-function-file-names)
7604         (octave-help, octave-find-definition-default-filename)
7605         (octave-find-definition):
7606         Respect text quoting style in doc strings and diagnostics.
7607         * lisp/progmodes/cc-langs.el (c-populate-syntax-table):
7608         * lisp/progmodes/verilog-mode.el (verilog-auto-reset-widths):
7609         * lisp/progmodes/vhdl-mode.el (vhdl-electric-quote):
7610         Escape apostrophes in doc strings.
7611         * lisp/progmodes/cmacexp.el (c-macro-expansion):
7612         Use straight quoting in ASCII comment.
7613         * lisp/progmodes/idlwave.el (idlwave-auto-fill-split-string)
7614         (idlwave-pad-keyword):
7615         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate)
7616         (vhdl-electric-open-bracket, vhdl-electric-close-bracket):
7617         (vhdl-electric-semicolon, vhdl-electric-comma)
7618         (vhdl-electric-period, vhdl-electric-equal):
7619         Use directed quotes in diagnostics and doc strings.
7621 2015-08-30  Xue Fuqiao  <xfq.free@gmail.com>
7623         Minor documentation and NEWS tweak
7624         * doc/lispintro/emacs-lisp-intro.texi (fwd-para let):
7625         Add an index entry.
7626         * etc/NEWS: Fix a typo in character-fold-to-regexp.
7628 2015-08-30  Michael Albinus  <michael.albinus@gmx.de>
7630         * lisp/net/tramp-sh.el (tramp-convert-file-attributes):
7631         Revert patch from 2015-08-24.  Tramp shall behave like for local files.
7632         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
7633         Adapt test.
7635 2015-08-30  Paul Eggert  <eggert@cs.ucla.edu>
7637         Text quoting fixes in cedet, emulation, emacs-lisp
7638         * lisp/cedet/ede.el (ede-check-project-directory):
7639         * lisp/cedet/semantic/analyze/debug.el
7640         (semantic-analyzer-debug-insert-include-summary):
7641         * lisp/cedet/semantic/bovine/c.el (semantic-c-describe-environment):
7642         * lisp/cedet/semantic/decorate/include.el
7643         (semantic-decoration-unknown-include-describe)
7644         (semantic-decoration-all-include-summary):
7645         * lisp/cedet/semantic/ia.el (semantic-ia-fast-jump):
7646         * lisp/emulation/edt.el (edt-load-keys):
7647         * lisp/emulation/viper-cmd.el
7648         (viper-display-current-destructive-command)
7649         (viper-query-replace, viper-brac-function):
7650         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-compile):
7651         * lisp/emulation/viper-macs.el (viper-unrecord-kbd-macro):
7652         Respect text quoting style in doc string or diagnostic.
7653         * lisp/cedet/mode-local.el (describe-mode-local-overload):
7654         Use format-message to avoid overtranslating quotes.
7655         * lisp/emacs-lisp/checkdoc.el (checkdoc-in-sample-code-p):
7656         Escape an apostrophe in a docstring.
7657         * lisp/emacs-lisp/warnings.el (lwarn): Fix doc string.
7659 2015-08-29  Daniel Colascione  <dancol@dancol.org>
7661         Fix which-func for curly quotes: look for symbol, not message
7662         * lisp/progmodes/which-func.el (which-func-ff-hook): Look for new
7663         imenu-unavailable error symbol instead of trying to match message
7664         exactly.
7665         * lisp/imenu.el (imenu-unavailable): New error.
7666         (imenu-unavailable-error): New function.
7668 2015-08-29  Eli Zaretskii  <eliz@gnu.org>
7670         Fix Python tests on MS-Windows
7671         * test/automated/python-tests.el
7672         (python-shell-calculate-command-1): Run python-shell-interpreter
7673         through shell-quote-argument before comparing with what
7674         python-shell-calculate-command returns.
7675         (python-shell-calculate-pythonpath-1)
7676         (python-shell-calculate-pythonpath-2)
7677         (python-shell-calculate-process-environment-2): Use path-separator
7678         instead of a literal ':'.
7679         (python-shell-calculate-exec-path-2)
7680         (python-shell-calculate-exec-path-3)
7681         (python-shell-calculate-exec-path-4)
7682         (python-shell-with-environment-1)
7683         (python-shell-with-environment-2): Run "/env/bin" through
7684         expand-file-name before comparing with exec-path.  (Bug#21375)
7686 2015-08-29  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
7688         Use Core Text types/functions/variables/enumerators directly
7689         * src/macfont.h (FontDescriptorRef, FontRef, FontSymbolicTraits)
7690         (CharacterCollection): Remove typedefs.  All uses replaced with
7691         definitions.
7692         (MAC_FONT_NAME_ATTRIBUTE, MAC_FONT_FAMILY_NAME_ATTRIBUTE)
7693         (MAC_FONT_TRAITS_ATTRIBUTE, MAC_FONT_SIZE_ATTRIBUTE)
7694         (MAC_FONT_CASCADE_LIST_ATTRIBUTE)
7695         (MAC_FONT_CHARACTER_SET_ATTRIBUTE, MAC_FONT_LANGUAGES_ATTRIBUTE)
7696         (MAC_FONT_FORMAT_ATTRIBUTE, MAC_FONT_SYMBOLIC_TRAIT)
7697         (MAC_FONT_WEIGHT_TRAIT, MAC_FONT_WIDTH_TRAIT)
7698         (MAC_FONT_SLANT_TRAIT): Remove macros.  All uses replaced with
7699         definitions.
7700         (MAC_FONT_TRAIT_ITALIC, MAC_FONT_TRAIT_BOLD)
7701         (MAC_FONT_TRAIT_MONO_SPACE, MAC_FONT_TRAIT_COLOR_GLYPHS)
7702         (MAC_FONT_FORMAT_BITMAP)
7703         (MAC_CHARACTER_COLLECTION_IDENTITY_MAPPING)
7704         (MAC_CHARACTER_COLLECTION_ADOBE_JAPAN1): Remove enumerators.
7705         All uses replaced with definitions.
7706         (kCTFontTraitItalic, kCTFontTraitBold, kCTFontTraitMonoSpace)
7707         (kCTFontTraitColorGlyphs, kCTCharacterCollectionIdentityMapping)
7708         (kCTCharacterCollectionAdobeJapan1 kCTFontOrientationDefault):
7709         Add compatibility enumerators for older versions.
7710         (mac_font_descriptor_create_with_attributes)
7711         (mac_font_descriptor_create_matching_font_descriptors)
7712         (mac_font_descriptor_create_matching_font_descriptor)
7713         (mac_font_descriptor_copy_attribute)
7714         (mac_font_descriptor_supports_languages)
7715         (mac_font_create_with_name, mac_font_get_size)
7716         (mac_font_copy_family_name, mac_font_copy_character_set)
7717         (mac_font_get_glyphs_for_characters, mac_font_get_ascent)
7718         (mac_font_get_descent, mac_font_get_leading)
7719         (mac_font_get_underline_position)
7720         (mac_font_get_underline_thickness, mac_font_copy_graphics_font)
7721         (mac_font_copy_non_synthetic_table): Remove macros.  All uses
7722         replaced with definitions.
7723         (mac_font_create_preferred_family_for_attributes)
7724         (mac_font_get_advance_width_for_glyph)
7725         (mac_font_get_bounding_rect_for_glyph)
7726         (mac_font_create_available_families, mac_font_shape):
7727         Remove macros for renamed functions.
7728         (mac_nsctfont_copy_font_descriptor): Remove unused macro.
7729         * src/macterm.m (mac_font_descriptor_supports_languages):
7730         Rename from mac_ctfont_descriptor_supports_languages.
7731         (mac_font_create_preferred_family_for_attributes): Rename from
7732         mac_ctfont_create_preferred_family_for_attributes.
7733         (mac_font_get_advance_width_for_glyph): Rename from
7734         mac_ctfont_get_advance_width_for_glyph.
7735         Use kCTFontOrientationDefault also for older versions.
7736         (mac_font_get_bounding_rect_for_glyph): Rename from
7737         mac_ctfont_get_bounding_rect_for_glyph.
7738         Use kCTFontOrientationDefault also for older versions.
7739         (mac_font_create_available_families): Rename from
7740         mac_ctfont_create_available_families.
7741         (mac_font_equal_in_postscript_name): Rename from
7742         mac_ctfont_equal_in_postscript_name.  All uses changed.
7743         (mac_font_create_line_with_string_and_font): Rename from
7744         mac_ctfont_create_line_with_string_and_font.  All uses changed.
7745         (mac_font_shape): Rename from mac_ctfont_shape.
7746         (mac_font_family_compare): Remove unused declaration.
7748 2015-08-29  Paul Eggert  <eggert@cs.ucla.edu>
7750         Fix minor text quoting in calc, calendar, vc
7751         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
7752         * lisp/calc/calc-help.el (calc-j-prefix-help):
7753         * lisp/calc/calc-misc.el (calc-help):
7754         * lisp/calc/calc.el (calc-algebraic-mode, calc-mode):
7755         Escape an apostrophe in a docstring.
7756         * lisp/calc/calc-forms.el (calc-hms-notation):
7757         * lisp/calc/calc-mode.el (calc-display-raw, calc-algebraic-mode):
7758         Escape an apostrophe in a diagnostic.
7759         * lisp/calc/calc-misc.el (calc-help):
7760         * lisp/calendar/diary-lib.el (diary-include-files):
7761         * lisp/calendar/todo-mode.el (todo-prefix, todo-item-mark):
7762         * lisp/vc/diff-mode.el (diff-delete-trailing-whitespace):
7763         * lisp/vc/ediff-diff.el (ediff-same-contents):
7764         * lisp/vc/ediff-merg.el (ediff-re-merge):
7765         * lisp/vc/ediff-ptch.el (ediff-patch-file-internal):
7766         * lisp/vc/ediff-util.el (ediff-test-save-region)
7767         (ediff-status-info):
7768         * lisp/vc/ediff.el (ediff-merge-revisions)
7769         (ediff-merge-revisions-with-ancestor):
7770         * lisp/vc/pcvs.el (cvs-mode-checkout, cvs-vc-command-advice):
7771         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
7772         Respect text quoting style in doc string or diagnostic.
7773         * lisp/calc/calc-prog.el (calc-kbd-push, calc-kbd-pop):
7774         * lisp/vc/add-log.el (change-log-goto-source):
7775         Avoid double-formatting.
7776         * lisp/vc/ediff-init.el (format-message):
7777         New backward-compatibility alias.
7779 2015-08-28  Paul Eggert  <eggert@cs.ucla.edu>
7781         Fix minor text quoting problems in lisp top level
7782         * lisp/apropos.el (apropos-describe-plist):
7783         * lisp/cus-theme.el (customize-themes):
7784         * lisp/dired.el (dired-log):
7785         * lisp/help-fns.el (describe-variable):
7786         * lisp/hexl.el (hexl-insert-multibyte-char):
7787         * lisp/info.el (Info-finder-find-node):
7788         * lisp/json.el (json-read-string):
7789         * lisp/novice.el (disabled-command-function)
7790         (disabled-command-function):
7791         * lisp/startup.el (normal-mouse-startup-screen):
7792         * lisp/woman.el (WoMan-log, WoMan-warn):
7793         Respect text quoting style in doc string or diagnostic.
7794         * lisp/replace.el (replace-character-fold):
7795         * src/syntax.c (Fmodify_syntax_entry):
7796         Escape an apostrophe in a docstring.
7797         * lisp/tempo.el (tempo-define-template):
7798         Remove confusing apostrophe from docstring.
7799         * lisp/whitespace.el (whitespace-mark-x):
7800         Use directed quotes in docstring.
7802 2015-08-28  Simen Heggestøyl  <simenheg@gmail.com>
7804         Fix indentation rule in css-mode
7805         * lisp/textmodes/css-mode.el (css-smie-rules): Fix indentation of
7806         brackets in presence of pseudo-selectors.  (Bug#21328)
7808 2015-08-28  Eli Zaretskii  <eliz@gnu.org>
7810         Fix a bug in recording a macro while flyspell-mode is active
7811         * lisp/subr.el (sit-for): Don't call read-event when recording a
7812         macro.  (Bug#21329)
7814 2015-08-27  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
7816         Tweak startup screen quoting
7817         * lisp/startup.el (normal-splash-screen): Use standard
7818         "M-" abbrevation rather than a confusingly-different one.
7819         (normal-no-mouse-startup-screen): Follow ‘text-quoting-style’.
7821 2015-08-27  Paul Eggert  <eggert@cs.ucla.edu>
7823         Add test case for ‘format’ bug and refactor
7824         * src/editfns.c (styled_format): Refactor internally, mostly by
7825         moving declarations closer to uses.  This should not affect behavior.
7826         * test/automated/textprop-tests.el (textprop-tests-format): New test.
7828         Fix ‘format’ bug with property offsets
7829         * src/editfns.c (styled_format): Fix recently-introduced ‘format’
7830         bug in calculating string property offsets (Bug#21351).
7832         Use straight quotes in lib-src diagnostics
7833         These auxiliary programs can’t use Emacs’s text-quoting-style,
7834         and it’s too much trouble to redo that mechanism by hand.
7835         So just use straight quotes for now.
7836         * lib-src/ebrowse.c (main):
7837         * lib-src/emacsclient.c (decode_options, main):
7838         * lib-src/etags.c (Ada_help, default_C_help, Cplusplus_help)
7839         (Forth_help, HTML_help, Lisp_help, Makefile_help, Objc_help)
7840         (Perl_help, PHP_help, Python_help, Scheme_help, TeX_help, auto_help)
7841         (none_help, print_language_names, print_help, add_regex)
7842         (suggest_asking_for_help):
7843         * lib-src/make-docfile.c (write_c_args, scan_c_stream):
7844         Use straight quotes in diagnostics.
7846         ‘text-quoting-style’ fixes for admin
7847         * admin/admin.el (cusver-scan, cusver-check):
7848         * admin/authors.el (authors-canonical-file-name):
7849         * admin/bzrmerge.el (bzrmerge-missing):
7850         Respect ‘text-quoting-style’ in diagnostics.
7852 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
7854         Assume GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS
7855         This removes the need for GCPRO1 etc.  Suggested by Stefan Monnier in:
7856         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00918.html
7857         * doc/lispref/internals.texi (Writing Emacs Primitives):
7858         * etc/NEWS:
7859         Document the change.
7860         * src/alloc.c (gcprolist, dump_zombies, MAX_ZOMBIES, zombies)
7861         (nzombies, ngcs, avg_zombies, max_live, max_zombies, avg_live)
7862         (Fgc_status, check_gcpros, relocatable_string_data_p, gc-precise):
7863         * src/bytecode.c (mark_byte_stack) [BYTE_MARK_STACK]:
7864         * src/eval.c (gcpro_level) [DEBUG_GCPRO]:
7865         * src/lisp.h (struct handler.gcpro, struct gcpro, GC_MARK_STACK)
7866         (GC_USE_GCPROS_AS_BEFORE, GC_MAKE_GCPROS_NOOPS)
7867         (GC_MARK_STACK_CHECK_GCPROS, GC_USE_GCPROS_CHECK_ZOMBIES)
7868         (BYTE_MARK_STACK, GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5, GCPRO6)
7869         (GCPRO7, UNGCPRO, RETURN_UNGCPRO):
7870         Remove.  All uses removed.  The code now assumes
7871         GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS.
7872         * src/bytecode.c (relocate_byte_stack):
7873         Rename from unmark_byte_stack, since it now only relocates.
7874         All callers changed.
7875         * src/frame.c (make_frame): Add an IF_LINT to pacify GCC 5.2
7876         with GCPROs removed.
7877         * src/systime.h: Use EMACS_LISP_H as the canary instead of GCPRO1.
7878         * test/automated/finalizer-tests.el (finalizer-basic)
7879         (finalizer-circular-reference, finalizer-cross-reference)
7880         (finalizer-error):
7881         * test/automated/generator-tests.el (cps-test-iter-close-finalizer):
7882         Remove tests, as they depend on gc-precise.
7884 2015-08-26  Nicolas Petton  <nicolas@petton.fr>
7886         Improve seq-concatenate for new sequence types
7887         Use the new `seq-into-sequence' in seqs passed to `seq-concatenate' to
7888         ensure that concatenation happens on sequences only.  This makes it
7889         possible to use `seq-concatenate' for new types of seqs.
7890         * lisp/emacs-lisp/seq.el (seq-into-sequence, seq-concatenate):
7891         New function used in `seq-concatenate'.
7892         * test/automated/seq-tests.el (test-seq-into-sequence): New unit test
7893         for seq-into-sequence.
7895 2015-08-26  Stephen Leake  <stephen_leake@stephe-leake.org>
7897         Add mode local overrides to xref-find-definitions
7898         * lisp/cedet/mode-local.el (xref-mode-local--override-present)
7899         (xref-mode-local-overload): New; add mode local overrides to
7900         xref-find-definitions.
7901         * test/automated/elisp-mode-tests.el: Add mode local override tests.
7902         (xref-elisp-test-run): Handle indented defuns.
7903         (xref-elisp-generic-*): Improve doc strings.
7904         * lisp/progmodes/elisp-mode.el (elisp-xref-find-def-functions): New.
7905         (elisp--xref-find-definitions): Use it.
7907         Add mode local overrides to describe-function
7908         * lisp/cedet/mode-local.el (describe-mode-local-overload):
7909         New; add mode local overrides to describe-function.
7910         * etc/NEWS: Document change.
7912 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
7914         Prefer straight quoting in some etc text files
7915         These files are plain text and might be used by non-Emacs apps.
7916         They’re mostly ASCII, so just use straight quotes.
7918         Fix quoting in ‘message_with_string’
7919         * src/nsfont.m (nsfont_open): Use directed quotes in format; they
7920         should work now.
7921         * src/xdisp.c (message_to_stderr): New function, refactored from
7922         part of ‘message3_nolog’.
7923         (message3_nolog): Use it.
7924         (message_with_string): Use it.  Don’t mishandle NUL bytes when
7925         noninteractive.  Prefer AUTO_STRING when it’s most likely faster.
7926         Use ‘format-message’, not ‘format’, so that quotes are translated.
7928 2015-08-26  Eli Zaretskii  <eliz@gnu.org>
7930         Mention false positives of file-accessible-directory on w32
7931         * src/fileio.c (Ffile_accessible_directory_p): Doc fix.
7932         (Bug#21346)
7934 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
7936         Treat error strings as help
7937         * src/print.c (print_error_message): Translate quotes and command
7938         keys in errmsg so that users see, e.g., "Symbol’s value as
7939         variable is void: foo" when text-quoting-style is curved.
7941 2015-08-26  Michael Albinus  <michael.albinus@gmx.de>
7943         * lisp/net/tramp-cache.el (top): Use `message', not `format-message'.
7945 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
7947         Top-level elisp files respect ‘text-quoting-style’
7948         In top-level elisp files, use format-message in diagnostic formats,
7949         so that they follow user preference as per ‘text-quoting-style’
7950         rather than being hard-coded to quote `like this'.
7951         * lisp/allout.el (allout-get-configvar-values):
7952         * lisp/apropos.el (apropos-symbols-internal):
7953         * lisp/dired-aux.el (dired-do-shell-command, dired-create-files)
7954         (dired-do-create-files-regexp, dired-create-files-non-directory):
7955         * lisp/dired-x.el (dired-do-run-mail):
7956         * lisp/dired.el (dired-log, dired-dnd-handle-local-file):
7957         * lisp/disp-table.el (standard-display-european):
7958         * lisp/find-dired.el (find-dired):
7959         * lisp/forms.el (forms-mode):
7960         * lisp/ido.el (ido-buffer-internal):
7961         * lisp/info.el (Info-index-next):
7962         * lisp/outline.el (outline-invent-heading):
7963         * lisp/printing.el (pr-ps-outfile-preprint, pr-i-ps-send):
7964         * lisp/proced.el (proced-log):
7965         * lisp/ps-print.el (ps-print-preprint, ps-get-size):
7966         * lisp/recentf.el (recentf-open-files, recentf-save-list):
7967         * lisp/savehist.el (savehist-save):
7968         * lisp/server.el (server-ensure-safe-dir):
7969         * lisp/ses.el (ses-rename-cell):
7970         * lisp/simple.el (list-processes--refresh):
7971         * lisp/startup.el (command-line):
7972         * lisp/strokes.el (strokes-unset-last-stroke)
7973         (strokes-execute-stroke):
7974         Use format-message so that quotes are restyled.
7975         * lisp/cus-edit.el (custom-raised-buttons, customize-browse):
7976         Don’t quote ‘raised’.
7977         * lisp/descr-text.el (describe-char):
7978         * lisp/dirtrack.el (dirtrack-debug-message):
7979         * lisp/hexl.el (hexl-insert-multibyte-char):
7980         Apply substitute-command-keys to help string.
7981         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
7982         (wdired-do-perm-changes):
7983         Let dired-log do the formatting.
7985 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
7987         Go back to grave quoting in Tramp
7988         * lisp/net/tramp-adb.el:
7989         * lisp/net/tramp-cache.el:
7990         * lisp/net/tramp-compat.el:
7991         * lisp/net/tramp-gvfs.el:
7992         * lisp/net/tramp-gw.el:
7993         * lisp/net/tramp-sh.el:
7994         * lisp/net/tramp-smb.el:
7995         * lisp/net/tramp.el:
7996         Stick with grave quoting in diagnostics strings.  This is more
7997         portable to older Emacs, desirable for Tramp.
7998         * lisp/net/tramp-cache.el: Use ‘format-message’, not ‘format’,
7999         for diagnostic that needs requoting.
8000         * lisp/net/tramp-compat.el (format-message):
8001         Fall back on simple ‘format’, since that’s good enough now.
8003         Go back to grave quoting in Gnus
8004         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
8005         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
8006         (gnus-agent-fetch-headers):
8007         * lisp/gnus/gnus-int.el (gnus-start-news-server):
8008         * lisp/gnus/gnus-registry.el:
8009         (gnus-registry--split-fancy-with-parent-internal)
8010         (gnus-registry-post-process-groups):
8011         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
8012         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
8013         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
8014         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
8015         * lisp/gnus/spam.el (spam-check-blackholes):
8016         Stick with grave quoting in diagnostics strings.  This is more
8017         portable to older Emacs, desirable for Gnus.
8019         Fix customization of text-quoting-style
8020         * lisp/cus-edit.el (custom-guess-type, custom-variable-documentation):
8021         * lisp/wid-edit.el (widget-docstring):
8022         Get raw docstring here since it’s cooked later and should not be
8023         cooked twice.
8024         * lisp/cus-edit.el (custom-group-value-create):
8025         Cook the docstring before inserting it.
8026         * lisp/cus-start.el (text-quoting-style): Quote the customization
8027         docstrings according to the new rules.  Give curved examples.
8029         format-message now curves ` and '
8030         That way, the caller doesn’t have to use curved quotes to
8031         get diagnostics that match the text-quoting-style preferences.
8032         Suggested by Dmitry Gutov in:
8033         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00893.html
8034         This means we no longer need %qs, so remove that format.
8035         While we’re at it, fix an unlikely bug and lessen the pressure
8036         on the garbage collector by processing the string once rather
8037         than twice in the usual case.
8038         * doc/lispref/strings.texi (Formatting Strings):
8039         * etc/NEWS: Document this.
8040         * lisp/subr.el (format-message): Remove; now done in C.
8041         * src/callint.c (Fcall_interactively):
8042         * src/editfns.c (Fmessage, Fmessage_box):
8043         Use Fformat_message instead of Finternal__text_restyle
8044         followed by Fformat.
8045         * src/doc.c (LSQM, RSQM): Remove; all uses changed to use
8046         uLSQM and uRSQM.
8047         (Fsubstitute_command_keys): Prefer AUTO_STRING to build_string
8048         when pure ASCII now suffices.  Fix unlikely bug when parsing
8049         unibyte string containing non-ASCII bytes.  Use inline code
8050         rather than memcpy, as it’s a tiny number of bytes.
8051         (Finternal__text_restyle): Remove; no longer used.
8052         (syms_of_doc): Don’t declare it.
8053         * src/editfns.c (Fformat): Rewrite in terms of new function
8054         ‘styled_format’.
8055         (Fformat_message): New function, moved here from subr.el.
8056         (styled_format): New function, with the old guts of Fformat,
8057         except it now optionally transliterates quotes, and it transliterates
8058         traditional grave accent and apostrophe quoting as well.
8059         Remove recently-added q flag; no longer needed or used.
8060         (syms_of_editfns): Define format-message.
8061         * src/lisp.h (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
8062         Remove; no longer need to be global symbols.
8063         * src/xdisp.c (vadd_to_log): Use Fformat_message, not Fformat,
8064         so that callers can use `%s'.
8065         * src/image.c (image_size_error, xbm_load_image, xbm_load)
8066         (xpm_load, pbm_load, png_load_body, jpeg_load_body, tiff_load)
8067         (gif_load, imagemagick_load_image, imagemagick_load, svg_load)
8068         (svg_load_image, gs_load, x_kill_gs_process):
8069         * src/lread.c (load_warn_old_style_backquotes):
8070         * src/xfaces.c (load_pixmap):
8071         * src/xselect.c (x_clipboard_manager_error_1):
8072         Use `%s' instead of %qs in formats.
8074 2015-08-25  Eli Zaretskii  <eliz@gnu.org>
8076         Minor fixes in doc/emacs/search.texi
8077         * doc/emacs/search.texi (Basic Isearch): Fix a typo.
8078         (Special Isearch): Use @w{} to generate several consecutive spaces
8079         with Texinfo 6.  (Bug#21345)
8081 2015-08-25  Michael Albinus  <michael.albinus@gmx.de>
8083         * lisp/net/tramp-sh.el (tramp-awk-encode, tramp-awk-decode)
8084         (tramp-awk-coding-test): New defconsts.
8085         (tramp-remote-coding-commands): Use them.
8086         (tramp-find-inline-encoding): Check for Perl only if necessary.
8088 2015-08-25  Xue Fuqiao  <xfq.free@gmail.com>
8090         * doc/lispintro/emacs-lisp-intro.texi (Run a Program): Add some
8091         index entries for the special form `quote'.
8093 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
8095         Spelling fixes
8097         Gnus format-message typo fix
8098         * lisp/gnus/gnus-util.el (gnus-format-message):
8099         Fix typo when running in older Emacs.
8101         Prefer directed to neutral quotes in docstings and diagnostics.
8102         In docstrings, escape apostrophes that would otherwise be translated
8103         to curved quotes using the newer, simpler rules.
8104         * admin/unidata/unidata-gen.el (unidata-gen-table):
8105         * lisp/align.el (align-region):
8106         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet):
8107         * lisp/bookmark.el (bookmark-default-annotation-text):
8108         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
8109         * lisp/calc/calc-lang.el (math-read-giac-subscr)
8110         (math-read-math-subscr):
8111         * lisp/calc/calc-misc.el (report-calc-bug):
8112         * lisp/calc/calc-prog.el (calc-fix-token-name)
8113         (calc-read-parse-table-part):
8114         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
8115         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
8116         * lisp/dabbrev.el (dabbrev-expand):
8117         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
8118         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
8119         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
8120         * lisp/emulation/viper-cmd.el (viper-toggle-search-style):
8121         * lisp/erc/erc-button.el (erc-nick-popup):
8122         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login):
8123         * lisp/eshell/em-dirs.el (eshell/cd):
8124         * lisp/eshell/em-glob.el (eshell-glob-regexp):
8125         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
8126         * lisp/eshell/esh-arg.el (eshell-parse-arguments):
8127         * lisp/eshell/esh-opt.el (eshell-show-usage):
8128         * lisp/files-x.el (modify-file-local-variable):
8129         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer)
8130         (filesets-update-pre010505):
8131         * lisp/find-cmd.el (find-generic, find-to-string):
8132         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
8133         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
8134         (gnus-agent-fetch-headers):
8135         * lisp/gnus/gnus-int.el (gnus-start-news-server):
8136         * lisp/gnus/gnus-registry.el:
8137         (gnus-registry--split-fancy-with-parent-internal):
8138         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
8139         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
8140         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
8141         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
8142         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
8143         * lisp/gnus/spam.el (spam-check-blackholes):
8144         * lisp/mail/feedmail.el (feedmail-run-the-queue):
8145         * lisp/mpc.el (mpc-playlist-rename):
8146         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
8147         * lisp/net/mairix.el (mairix-widget-create-query):
8148         * lisp/net/tramp-cache.el:
8149         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
8150         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
8151         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
8152         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
8153         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
8154         (org-babel-goto-named-result):
8155         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
8156         * lisp/org/ob-ref.el (org-babel-ref-resolve):
8157         * lisp/org/org-agenda.el (org-agenda-prepare):
8158         * lisp/org/org-bibtex.el (org-bibtex-fields):
8159         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
8160         (org-clock-resolve):
8161         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
8162         * lisp/org/org-habit.el (org-habit-parse-todo):
8163         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
8164         (org-mouse-context-menu):
8165         * lisp/org/org-table.el (org-table-edit-formulas):
8166         * lisp/org/ox.el (org-export-async-start):
8167         * lisp/play/dunnet.el (dun-score, dun-help, dun-endgame-question)
8168         (dun-rooms, dun-endgame-questions):
8169         * lisp/progmodes/ada-mode.el (ada-goto-matching-start):
8170         * lisp/progmodes/ada-xref.el (ada-find-executable):
8171         * lisp/progmodes/antlr-mode.el (antlr-options-alists):
8172         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
8173         (flymake-start-syntax-check-process):
8174         * lisp/progmodes/python.el (python-define-auxiliary-skeleton):
8175         * lisp/progmodes/sql.el (sql-comint):
8176         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
8177         * lisp/server.el (server-get-auth-key):
8178         * lisp/subr.el (version-to-list):
8179         * lisp/textmodes/reftex-ref.el (reftex-label):
8180         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
8181         * lisp/vc/ediff-diff.el (ediff-same-contents):
8182         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
8183         * test/automated/tramp-tests.el (tramp-test33-asynchronous-requests):
8184         Use directed rather than neutral quotes in diagnostics.
8186         Treat ' like ’ even when not matching `
8187         This is simpler and easier to explain, and should encourage better
8188         typography.  Do this in Electric Quote mode and when translating
8189         quotes in docstrings.  Inspired by a suggestion by Dmitry Gutov in:
8190         https://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00806.html
8191         * doc/emacs/text.texi (Quotation Marks):
8192         * doc/lispref/help.texi (Keys in Documentation):
8193         * etc/NEWS:
8194         Document this.
8195         * lisp/electric.el (electric-quote-post-self-insert-function):
8196         * src/doc.c (Fsubstitute_command_keys):
8197         Always treat ' like ’ even when not matched by an open quote.
8199 2015-08-25  Glenn Morris  <rgm@gnu.org>
8201         * doc/emacs/cal-xtra.texi (Holiday Customizing): Fix typo in example.
8202         * lisp/calendar/holidays.el (calendar-holidays): Fix doc typo.
8204 2015-08-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
8206         * src/macfont.m (macfont_create_family_with_symbol):
8207         Accept localized names.
8209 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
8211         Tramp diagnostics as per ‘text-quoting-style’
8212         * lisp/net/tramp-adb.el (tramp-adb-handle-file-truename)
8213         (tramp-adb-get-ls-command, tramp-adb-handle-make-directory)
8214         (tramp-adb-handle-delete-directory)
8215         (tramp-adb-handle-delete-file)
8216         (tramp-adb-handle-file-local-copy)
8217         (tramp-adb-handle-write-region, tramp-adb-handle-copy-file)
8218         (tramp-adb-send-command-and-check, tramp-adb-wait-for-output)
8219         (tramp-adb-maybe-open-connection):
8220         * lisp/net/tramp-cache.el:
8221         * lisp/net/tramp-compat.el (tramp-compat-temporary-file-directory)
8222         (tramp-compat-octal-to-decimal)
8223         (tramp-compat-coding-system-change-eol-conversion):
8224         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler)
8225         (tramp-gvfs-do-copy-or-rename-file)
8226         (tramp-gvfs-handle-delete-directory)
8227         (tramp-gvfs-handle-delete-file)
8228         (tramp-gvfs-handle-expand-file-name)
8229         (tramp-gvfs-handle-file-local-copy)
8230         (tramp-gvfs-handle-file-notify-add-watch)
8231         (tramp-gvfs-handle-make-directory)
8232         (tramp-gvfs-handle-write-region, tramp-gvfs-url-file-name):
8233         * lisp/net/tramp-gw.el (tramp-gw-gw-proc-sentinel)
8234         (tramp-gw-aux-proc-sentinel, tramp-gw-open-connection):
8235         * lisp/net/tramp-sh.el (tramp-sh-handle-file-truename)
8236         (tramp-sh-handle-set-visited-file-modtime)
8237         (tramp-sh-handle-set-file-modes)
8238         (tramp-sh-handle-file-name-all-completions)
8239         (tramp-sh-handle-add-name-to-file, tramp-do-copy-or-rename-file)
8240         (tramp-do-copy-or-rename-file-directly)
8241         (tramp-do-copy-or-rename-file-out-of-band)
8242         (tramp-sh-handle-make-directory)
8243         (tramp-sh-handle-delete-directory, tramp-sh-handle-delete-file)
8244         (tramp-sh-handle-insert-directory, tramp-process-sentinel)
8245         (tramp-sh-handle-start-file-process)
8246         (tramp-sh-handle-file-local-copy)
8247         (tramp-sh-handle-write-region, tramp-sh-handle-vc-registered)
8248         (tramp-sh-handle-file-notify-add-watch, tramp-maybe-send-script)
8249         (tramp-find-file-exists-command, tramp-open-shell)
8250         (tramp-find-shell)
8251         (tramp-open-connection-setup-interactive-shell)
8252         (tramp-find-inline-encoding, tramp-find-inline-compress)
8253         (tramp-compute-multi-hops, tramp-maybe-open-connection)
8254         (tramp-wait-for-output, tramp-send-command-and-check)
8255         (tramp-send-command-and-read, tramp-get-remote-path)
8256         (tramp-get-ls-command, tramp-get-ls-command-with-dired)
8257         (tramp-get-ls-command-with-quoting-style)
8258         (tramp-get-test-command, tramp-get-remote-ln)
8259         (tramp-get-remote-perl, tramp-get-remote-stat)
8260         (tramp-get-remote-readlink, tramp-get-remote-trash)
8261         (tramp-get-remote-touch, tramp-get-remote-gvfs-monitor-dir)
8262         (tramp-get-remote-inotifywait, tramp-get-remote-id)
8263         (tramp-get-remote-python):
8264         * lisp/net/tramp-smb.el (tramp-smb-errors)
8265         (tramp-smb-handle-add-name-to-file, tramp-smb-handle-copy-file)
8266         (tramp-smb-handle-delete-directory)
8267         (tramp-smb-handle-delete-file)
8268         (tramp-smb-handle-file-local-copy)
8269         (tramp-smb-handle-make-directory)
8270         (tramp-smb-handle-make-directory-internal)
8271         (tramp-smb-handle-make-symbolic-link)
8272         (tramp-smb-handle-rename-file, tramp-smb-handle-set-file-acl)
8273         (tramp-smb-handle-set-file-modes)
8274         (tramp-smb-handle-write-region, tramp-smb-get-file-entries):
8275         * lisp/net/tramp.el (tramp-debug-message, tramp-error)
8276         (tramp-process-actions):
8277         Generate diagnostics according to ‘text-quoting-style’, by
8278         using curved quotes in format strings and ‘format-message’
8279         when appropriate.
8280         * lisp/net/tramp-compat.el (format-message):
8281         Define a replacement, if it’s an older version of Emacs
8282         that doesn’t have it already.
8284         * etc/NEWS: Clarify text-quoting-style and electric-quote-mode.
8286 2015-08-24  Xue Fuqiao  <xfq.free@gmail.com>
8288         Fix documentation for `save-excursion'
8289         * doc/lispref/positions.texi (Excursions):
8290         * doc/lispintro/emacs-lisp-intro.texi (save-excursion)
8291         (Template for save-excursion, Point and mark): `save-excursion'
8292         does not save&restore the mark any more.
8294 2015-08-24  Michael Albinus  <michael.albinus@gmx.de>
8296         * lisp/net/tramp-sh.el (tramp-stat-marker, tramp-stat-quoted-marker):
8297         New defconsts.
8298         (tramp-do-file-attributes-with-stat)
8299         (tramp-do-directory-files-and-attributes-with-stat): Use them.
8300         (tramp-convert-file-attributes): Remove double slashes in symlinks.
8301         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
8302         Handle symlinks with "//" in the file name.
8304         Revert fbb5531fa11d13854b274d28ccd329c9b6652cfc for tramp.el.
8306 2015-08-24  Nicolas Petton  <nicolas@petton.fr>
8308         Fix cl-subseq and cl-concatenate
8309         * lisp/emacs-lisp/cl-extra.el (cl-subseq, cl-concatenate): Do not use
8310         seq functions.
8311         * lisp/emacs-lisp/seq.el (seq-concatenate): Call cl-concatenate in
8312         seq-concatenate.
8314 2015-08-24  Pip Cet  <pipcet@gmail.com>  (tiny change)
8316         Fix full-screen code when there is no window manager (Bug#21317)
8317         * src/xterm.h (x_wm_supports): Declare external.
8318         * src/xterm.c (wm_suppports): Rename to `x_wm_supports', export.
8319         (do_ewmh_fullscreen, x_ewmh_activate_frame): Adjust for rename.
8320         (x_check_fullscreen): Call `x_wm_set_size_hint', restore
8321         `fullscreen' frame parameter.
8322         * src/gtkutil.c (x_wm_set_size_hint): Set size hints when running
8323         without a window manager.
8325 2015-08-24  Glenn Morris  <rgm@gnu.org>
8327         * lisp/version.el (emacs-version): No longer include build host.
8328         * doc/lispref/intro.texi (Version Info): Update example.
8330 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
8332         * doc/lispref/elisp.texi: Fix typo in previous change.
8334         More-conservative ‘format’ quote restyling
8335         Instead of restyling curved quotes for every call to ‘format’,
8336         create a new function ‘format-message’ that does the restyling,
8337         and using the new function instead of ‘format’ only in contexts
8338         where this seems appropriate.
8339         Problem reported by Dmitry Gutov and Andreas Schwab in:
8340         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00826.html
8341         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00827.html
8342         * doc/lispref/commands.texi (Using Interactive):
8343         * doc/lispref/control.texi (Signaling Errors, Signaling Errors):
8344         * doc/lispref/display.texi (Displaying Messages, Progress):
8345         * doc/lispref/elisp.texi:
8346         * doc/lispref/help.texi (Keys in Documentation):
8347         * doc/lispref/minibuf.texi (Minibuffer Misc):
8348         * doc/lispref/strings.texi (Formatting Strings):
8349         * etc/NEWS:
8350         Document the changes.
8351         * lisp/abbrev.el (expand-region-abbrevs):
8352         * lisp/apropos.el (apropos-library):
8353         * lisp/calc/calc-ext.el (calc-record-message)
8354         (calc-user-function-list):
8355         * lisp/calc/calc-help.el (calc-describe-key, calc-full-help):
8356         * lisp/calc/calc-lang.el (math-read-big-balance):
8357         * lisp/calc/calc-store.el (calc-edit-variable):
8358         * lisp/calc/calc-units.el (math-build-units-table-buffer):
8359         * lisp/calc/calc-yank.el (calc-edit-mode):
8360         * lisp/calendar/icalendar.el (icalendar-export-region)
8361         (icalendar--add-diary-entry):
8362         * lisp/cedet/mode-local.el (mode-local-print-binding)
8363         (mode-local-describe-bindings-2):
8364         * lisp/cedet/semantic/complete.el (semantic-completion-message):
8365         * lisp/cedet/semantic/edit.el (semantic-parse-changes-failed):
8366         * lisp/cedet/semantic/wisent/comp.el (wisent-log):
8367         * lisp/cedet/srecode/insert.el (srecode-insert-show-error-report):
8368         * lisp/descr-text.el (describe-text-properties-1, describe-char):
8369         * lisp/dframe.el (dframe-message):
8370         * lisp/dired-aux.el (dired-query):
8371         * lisp/emacs-lisp/byte-opt.el (byte-compile-log-lap-1):
8372         * lisp/emacs-lisp/bytecomp.el (byte-compile-log)
8373         (byte-compile-log-file, byte-compile-warn, byte-compile-form):
8374         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
8375         (cconv-analyze-form):
8376         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
8377         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
8378         * lisp/emacs-lisp/cl-macs.el (cl-symbol-macrolet):
8379         * lisp/emacs-lisp/edebug.el (edebug-format):
8380         * lisp/emacs-lisp/eieio-core.el (eieio-oref):
8381         * lisp/emacs-lisp/eldoc.el (eldoc-minibuffer-message)
8382         (eldoc-message):
8383         * lisp/emacs-lisp/elint.el (elint-file, elint-log):
8384         * lisp/emacs-lisp/find-func.el (find-function-library):
8385         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
8386         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
8387         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
8388         * lisp/emacs-lisp/package.el (package-compute-transaction)
8389         (package-install-button-action, package-delete-button-action)
8390         (package-menu--list-to-prompt):
8391         * lisp/emacs-lisp/timer.el (timer-event-handler):
8392         * lisp/emacs-lisp/warnings.el (lwarn, warn):
8393         * lisp/emulation/viper-cmd.el:
8394         (viper-toggle-parse-sexp-ignore-comments)
8395         (viper-kill-buffer, viper-brac-function):
8396         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
8397         * lisp/facemenu.el (facemenu-add-new-face):
8398         * lisp/faces.el (face-documentation, read-face-name)
8399         (face-read-string, read-face-font, describe-face):
8400         * lisp/files.el (find-alternate-file, hack-local-variables)
8401         (hack-one-local-variable--obsolete, write-file)
8402         (basic-save-buffer, delete-directory):
8403         * lisp/format.el (format-write-file, format-find-file)
8404         (format-insert-file):
8405         * lisp/help-fns.el (help-fns--key-bindings)
8406         (help-fns--compiler-macro, help-fns--obsolete)
8407         (help-fns--interactive-only, describe-function-1)
8408         (describe-variable):
8409         * lisp/help.el (describe-mode):
8410         * lisp/info-xref.el (info-xref-output):
8411         * lisp/info.el (Info-virtual-index-find-node)
8412         (Info-virtual-index, info-apropos):
8413         * lisp/international/kkc.el (kkc-error):
8414         * lisp/international/mule-cmds.el:
8415         (select-safe-coding-system-interactively)
8416         (select-safe-coding-system, describe-input-method):
8417         * lisp/international/mule-conf.el (code-offset):
8418         * lisp/international/mule-diag.el (describe-character-set)
8419         (list-input-methods-1):
8420         * lisp/international/quail.el (quail-error):
8421         * lisp/minibuffer.el (minibuffer-message):
8422         * lisp/mpc.el (mpc--debug):
8423         * lisp/msb.el (msb--choose-menu):
8424         * lisp/net/ange-ftp.el (ange-ftp-message):
8425         * lisp/net/gnutls.el (gnutls-message-maybe):
8426         * lisp/net/newst-backend.el (newsticker--sentinel-work):
8427         * lisp/net/newst-treeview.el (newsticker--treeview-load):
8428         * lisp/net/nsm.el (nsm-query-user):
8429         * lisp/net/rlogin.el (rlogin):
8430         * lisp/net/soap-client.el (soap-warning):
8431         * lisp/net/tramp.el (tramp-debug-message):
8432         * lisp/nxml/nxml-outln.el (nxml-report-outline-error):
8433         * lisp/nxml/nxml-parse.el (nxml-parse-error):
8434         * lisp/nxml/rng-cmpct.el (rng-c-error):
8435         * lisp/nxml/rng-match.el (rng-compile-error):
8436         * lisp/nxml/rng-uri.el (rng-uri-error):
8437         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
8438         * lisp/org/org-ctags.el:
8439         (org-ctags-ask-rebuild-tags-file-then-find-tag):
8440         * lisp/proced.el (proced-log):
8441         * lisp/progmodes/ebnf2ps.el (ebnf-log):
8442         * lisp/progmodes/flymake.el (flymake-log):
8443         * lisp/progmodes/vhdl-mode.el (vhdl-warning-when-idle):
8444         * lisp/replace.el (occur-1):
8445         * lisp/simple.el (execute-extended-command)
8446         (undo-outer-limit-truncate, define-alternatives):
8447         * lisp/startup.el (command-line):
8448         * lisp/subr.el (error, user-error, add-to-list):
8449         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
8450         (tutorial--find-changed-keys):
8451         * src/callint.c (Fcall_interactively):
8452         * src/editfns.c (Fmessage, Fmessage_box):
8453         Restyle the quotes of format strings intended for use as a
8454         diagnostic, when restyling seems appropriate.
8455         * lisp/subr.el (format-message): New function.
8456         * src/doc.c (Finternal__text_restyle): New function.
8457         (syms_of_doc): Define it.
8459 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
8461         * etc/NEWS: The new ‘q’ flag is not an incompatible change.
8463 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
8465         python.el: Fix python-shell-buffer-substring on indented code
8466         (Bug#21086)
8467         * lisp/progmodes/python.el (python-shell-buffer-substring):
8468         Respect current line indentation when calculating string.
8469         * test/automated/python-tests.el
8470         (python-shell-buffer-substring-10)
8471         (python-shell-buffer-substring-11)
8472         (python-shell-buffer-substring-12): New tests.
8474 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
8476         Fix minor glitches from ‘format’ reversion
8477         * doc/lispref/strings.texi (Formatting Strings):
8478         After reversion, ‘text-quoting-style’ is documented in ‘Keys in
8479         Documentation’, not below.
8480         * src/syntax.c (Finternal_describe_syntax_value):
8481         Prefer AUTO_STRING to build_string where either will do, as
8482         AUTO_STRING is a bit faster.
8484 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
8486         python.el: Defer shell setup code until first interactive prompt
8487         * lisp/progmodes/python.el
8488         (python-shell-comint-watch-for-first-prompt-output-filter):
8489         New function.
8490         (inferior-python-mode): Use it.
8491         (python-shell-first-prompt-hook): New hook.
8492         (python-shell-send-setup-code)
8493         (python-shell-completion-native-turn-on-maybe-with-msg): Attach to
8494         this hook instead of inferior-python-hook.
8496 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
8498         Remove the calls to `seq-into` from `seq-concatenate`
8499         Since most new types of seq would have to be defined as sequences (cons
8500         cells or CL structs, mostly), there is no need to convert the seqs to
8501         sequences (which can be a fairly expensive operation).
8502         * lisp/emacs-lisp/seq.el (seq-concatenate): Do not ensure that seqs are
8503         sequences.
8505 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
8507         python.el: Fix completion for pdb interactions
8508         * lisp/progmodes/python.el (python-shell-completion-setup-code):
8509         Simplify.  Toggle print_mode for native wrapped completer.
8510         (python-shell-completion-native-setup): Ensure process buffer.
8511         Add print_mode attribute to completer wrapper to toggle returning
8512         or printing candidates.
8513         (python-shell-completion-native-get-completions): Cleanup.
8514         (python-shell-completion-get-completions): Cleanup.
8515         (python-shell-completion-at-point): Perform prompt checks.
8516         Force fallback completion in pdb interactions.
8518 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
8520         Make seq.el more extensible by using cl-defmethod
8521         * lisp/emacs-lisp/seq.el: Define seq.el functions using cl-defmethod to
8522         make it easier to extend seq.el with new "seq types".
8523         * test/automated/seq-tests.el (test-setf-seq-elt): New test.
8524         * lisp/emacs-lisp/cl-extra.el (cl-subseq): Move back the definition of
8525         subseq in cl-extra.el, and use it in seq.el.
8527 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
8529         python.el: Fix prompt detection with user overridden interpreter
8530         * lisp/progmodes/python.el (python-shell-prompt-detect):
8531         Honor buffer local python-shell-interpreter and
8532         python-shell-interpreter-interactive-arg.
8534 2015-08-23  Eli Zaretskii  <eliz@gnu.org>
8536         Support exec-directory with non-ASCII characters on Windows
8537         * src/w32proc.c (sys_spawnve): Make sure exec-directory is encoded
8538         in the system's ANSI codepage, when it is used for invoking
8539         cmdproxy.
8541 2015-08-23  Andreas Schwab  <schwab@linux-m68k.org>
8543         Revert "Extend ‘format’ to translate curved quotes"
8544         This reverts commit 244c801689d2f7a80480d83cd7d092d4762ebe08.
8546         Revert "Prefer ‘format’ to ‘substitute-command-keys’"
8547         This reverts commit 6af5aad26411ffe21c3fe4bc5438347110910111.
8549 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
8551         * doc/lispintro/emacs-lisp-intro.texi (Switching Buffers):
8552         Clarify "invisible window".
8554 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
8556         * doc/emacs/modes.texi (Choosing Modes): Minor doc fix for
8557         magic-fallback-mode-alist.
8559 2015-08-22  Fabián Ezequiel Gallina  <fgallina@gnu.org>
8561         python.el: fallback completion, ffap and eldoc setup enhancements
8562         Setup codes are now sent continuously so that the current frame is
8563         always taken into account.  This allows working within debuggers
8564         and always keeping a fresh version of setup codes that will return
8565         proper results.
8566         * lisp/progmodes/python.el (python-shell-setup-codes): Cleanup.
8567         (python-shell-send-setup-code): Send code only when
8568         python-shell-setup-codes is non-nil.
8569         (python-shell-completion-string-code): Cleanup trailing newline.
8570         (python-shell-completion-get-completions): Always use
8571         python-shell-completion-setup-code.
8572         (python-ffap-setup-code): Work with any object, not only modules.
8573         (python-ffap-string-code): Cleanup trailing newline.
8574         (python-ffap-module-path): Always use python-ffap-setup-code.
8575         (python-eldoc-string-code): Cleanup trailing newline.
8576         (python-eldoc--get-doc-at-point): Always use
8577         python-eldoc-setup-code.  Return non-nil only if docstring is
8578         found.
8580         python.el: Increase native completion robustness
8581         * lisp/progmodes/python.el (python-shell-completion-native-setup):
8582         Make completer print real candidates and just return dummy ones to
8583         avoid input modification.
8584         (python-shell-completion-native-get-completions): Set
8585         comint-redirect-insert-matching-regexp to non-nil and make
8586         comint-redirect-finished-regexp match the last dummy candidate.
8587         Use python-shell-accept-process-output to wait for the full list
8588         of candidates.
8590 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
8592         Fix invocation of programs via cmdproxy.exe
8593         * src/w32proc.c (sys_spawnve): Use exec-directory, not
8594         invocation-directory, for finding cmdproxy.exe.  When Emacs is
8595         run from the source tree, look for cmdproxy.exe in the same source
8596         tree.  (Bug#21323)
8598 2015-08-22  Simen Heggestøyl  <simenheg@gmail.com>
8600         Handle comments inside unquoted URIs in css-mode
8601         * lisp/textmodes/css-mode.el (css--uri-re): New defconst.
8602         (css-syntax-propertize-function): New defconst.
8603         (css--font-lock-keywords): Handle parens around unquoted URIs.
8604         (css-mode): Set `syntax-propertize-function'.
8606 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
8608         Support invocation of Hunspell with multiple dictionaries
8609         * lisp/textmodes/ispell.el (ispell-parse-hunspell-affix-file):
8610         Support lists of dictionaries of the form "DICT1,DICT2,...".
8611         (ispell-hunspell-add-multi-dic): New command.  (Bug#20495)
8613         Minor formatting changes in ispell.el
8614         * lisp/textmodes/ispell.el (ispell-create-debug-buffer)
8615         (ispell-print-if-debug, ispell-aspell-find-dictionary)
8616         (ispell-aspell-add-aliases, ispell-hunspell-dict-paths-alist)
8617         (ispell-hunspell-dictionary-alist)
8618         (ispell-hunspell-fill-dictionary-entry)
8619         (ispell-find-hunspell-dictionaries, ispell-send-replacement)
8620         (ispell-buffer-with-debug, ispell-complete-word)
8621         (ispell-current-dictionary, ispell-current-personal-dictionary)
8622         (ispell-accept-output, ispell-minor-mode)
8623         (ispell-personal-dictionary, ispell-dictionary-alist)
8624         (ispell-really-aspell, ispell-really-hunspell)
8625         (ispell-encoding8-command, ispell-aspell-supports-utf8)
8626         (ispell-aspell-dictionary-alist, ispell-set-spellchecker-params):
8627         Fix whitespace, inconsistent capitalization, and arguments in doc
8628         strings.
8630 2015-08-22  Martin Rudalics  <rudalics@gmx.at>
8632         * lisp/window.el (adjust-window-trailing-edge): Fix bug where this
8633         function refused to resize a size-preserved window.
8635 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
8637         * doc/lispref/windows.texi (Selecting Windows): Improve
8638         documentation and indexing of 'window-use-time'.
8640 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
8642         * lisp/progmodes/cc-vars.el, lisp/progmodes/cc-styles.el:
8643         * lisp/progmodes/cc-mode.el, lisp/progmodes/cc-menus.el:
8644         * lisp/progmodes/cc-langs.el, lisp/progmodes/cc-guess.el:
8645         * lisp/progmodes/cc-fonts.el, lisp/progmodes/cc-engine.el:
8646         * lisp/progmodes/cc-defs.el, lisp/progmodes/cc-cmds.el:
8647         * lisp/progmodes/cc-bytecomp.el, lisp/progmodes/cc-awk.el:
8648         * lisp/progmodes/cc-align.el, lisp/net/soap-client.el:
8649         Fix up commenting style.
8651 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
8653         text-quoting-style in emacs-lisp diagnostics
8654         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
8655         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
8656         (ad-disable-advice, ad-remove-advice, ad-set-argument)
8657         (ad-set-arguments):
8658         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
8659         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
8660         (byte-optimize-while, byte-optimize-apply):
8661         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
8662         (byte-compile-log-file, byte-compile-format-warn)
8663         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
8664         (byte-compile-cl-warn)
8665         (byte-compile-warn-about-unresolved-functions)
8666         (byte-compile-file, byte-compile-fix-header)
8667         (byte-compile--declare-var, byte-compile-file-form-defmumble)
8668         (byte-compile-form, byte-compile-normal-call)
8669         (byte-compile-variable-ref, byte-compile-variable-set)
8670         (byte-compile-subr-wrong-args, byte-compile-setq-default)
8671         (byte-compile-negation-optimizer)
8672         (byte-compile-condition-case--old)
8673         (byte-compile-condition-case--new, byte-compile-save-excursion)
8674         (byte-compile-defvar, byte-compile-autoload)
8675         (byte-compile-lambda-form)
8676         (byte-compile-make-variable-buffer-local, display-call-tree)
8677         (batch-byte-compile):
8678         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
8679         (cconv-analyze-form):
8680         * lisp/emacs-lisp/chart.el (chart-space-usage):
8681         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
8682         (check-declare-warn, check-declare-file)
8683         (check-declare-directory):
8684         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
8685         (checkdoc-message-text-engine):
8686         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer):
8687         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
8688         (cl-symbol-macrolet):
8689         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
8690         * lisp/emacs-lisp/copyright.el (copyright)
8691         (copyright-update-directory):
8692         * lisp/emacs-lisp/edebug.el (edebug-read-list):
8693         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
8694         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
8695         (eieio-oref, eieio-oset-default):
8696         * lisp/emacs-lisp/eieio-speedbar.el:
8697         (eieio-speedbar-child-make-tag-lines)
8698         (eieio-speedbar-child-description):
8699         * lisp/emacs-lisp/eieio.el (defclass, change-class):
8700         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
8701         (elint-init-form, elint-check-defalias-form)
8702         (elint-check-let-form):
8703         * lisp/emacs-lisp/ert.el (ert-get-test):
8704         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
8705         (find-function-library):
8706         * lisp/emacs-lisp/generator.el (iter-yield):
8707         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
8708         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
8709         * lisp/emacs-lisp/package-x.el (package-upload-file):
8710         * lisp/emacs-lisp/package.el (package-version-join)
8711         (package-disabled-p, package-activate-1, package-activate)
8712         (package--download-one-archive)
8713         (package--download-and-read-archives)
8714         (package-compute-transaction, package-install-from-archive)
8715         (package-install, package-install-selected-packages)
8716         (package-delete, package-autoremove)
8717         (package-install-button-action, package-delete-button-action)
8718         (package-menu-hide-package, package-menu--list-to-prompt)
8719         (package-menu--perform-transaction)
8720         (package-menu--find-and-notify-upgrades):
8721         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
8722         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
8723         * lisp/emacs-lisp/ring.el (ring-next, ring-previous):
8724         * lisp/emacs-lisp/rx.el (rx-check, rx-anything):
8725         * lisp/emacs-lisp/smie.el (smie-config-save):
8726         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
8727         * lisp/emacs-lisp/testcover.el (testcover-1value):
8728         Use curved quotes in diagnostic format strings.
8730 2015-08-21  Fabián Ezequiel Gallina  <fgallina@gnu.org>
8732         python.el: Ensure remote process-environment on non-interactive processes
8733         * lisp/progmodes/python.el
8734         (python-shell-tramp-refresh-process-environment): New function.
8735         (python-shell-with-environment): Use it.
8736         * test/automated/python-tests.el (python-shell-with-environment-2):
8737         Update.
8739         python.el: Enhancements to process environment setup.
8740         * lisp/progmodes/python.el (python-shell-process-environment)
8741         (python-shell-extra-pythonpaths, python-shell-exec-path)
8742         (python-shell-virtualenv-root): Update docstring.  Remove :safe.
8743         (python-shell-setup-codes): Remove :safe.
8744         (python-shell-remote-exec-path): New defcustom.
8745         (python-shell--add-to-path-with-priority): New macro.
8746         (python-shell-calculate-pythonpath): Give priority to
8747         python-shell-extra-pythonpaths.  Update docstring.
8748         (python-shell-calculate-process-environment): Give priority to
8749         python-shell-process-environment.  Update docstring.
8750         (python-shell-calculate-exec-path): Give priority to
8751         python-shell-exec-path and calculated virtualenv bin directory.
8752         Update docstring.
8753         (python-shell-tramp-refresh-remote-path): New function.
8754         (python-shell-with-environment): Use it when working remotely and
8755         do not modify tramp-remote-path.  Allow nesting.
8756         (python-shell-calculate-command): Remove useless
8757         python-shell-with-environment call.
8758         * test/automated/python-tests.el (python-shell-calculate-pythonpath-1)
8759         (python-shell-calculate-pythonpath-2)
8760         (python-shell-calculate-process-environment-6)
8761         (python-shell-calculate-process-environment-7)
8762         (python-shell-calculate-process-environment-8)
8763         (python-shell-calculate-exec-path-3)
8764         (python-shell-calculate-exec-path-4)
8765         (python-shell-calculate-exec-path-5)
8766         (python-shell-calculate-exec-path-6)
8767         (python-shell-with-environment-3): New tests.
8768         (python-shell-calculate-process-environment-2)
8769         (python-shell-calculate-process-environment-3)
8770         (python-shell-calculate-process-environment-4)
8771         (python-shell-calculate-process-environment-5)
8772         (python-shell-calculate-exec-path-1)
8773         (python-shell-calculate-exec-path-2)
8774         (python-shell-with-environment-1)
8775         (python-shell-with-environment-2): Update and simplify.
8777 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
8779         Avoid hard-coding "M-x command" in docstrings
8780         * lisp/calendar/todo-mode.el (todo-mode):
8781         * lisp/desktop.el (desktop-save-mode):
8782         * lisp/edmacro.el (edit-kbd-macro):
8783         * lisp/emacs-lisp/package.el (package-menu-execute):
8784         * lisp/emulation/viper-cmd.el (viper-ask-level):
8785         * lisp/emulation/viper-init.el (viper-expert-level):
8786         * lisp/filesets.el (filesets-add-buffer):
8787         * lisp/follow.el (follow-mode):
8788         * lisp/gnus/auth-source.el (auth-sources):
8789         * lisp/international/ogonek.el (ogonek-informacja)
8790         (ogonek-information):
8791         * lisp/net/tramp.el (tramp-process-actions):
8792         * lisp/org/org-gnus.el (org-gnus-no-new-news):
8793         * lisp/org/org.el (org-ellipsis):
8794         * lisp/progmodes/python.el (python-shell-get-process-or-error):
8795         * lisp/progmodes/vhdl-mode.el (vhdl-mode):
8796         * lisp/server.el (server-start):
8797         * lisp/type-break.el (type-break-noninteractive-query):
8798         * lisp/userlock.el (ask-user-about-supersession-help):
8799         * lisp/whitespace.el (whitespace-report-region):
8800         Prefer (substitute-command-keys "`\\[foo-command]'")
8801         to "`M-x foo-command'" in docstrings and the like.
8803 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
8805         Use add-function for prettify-symbols-compose-predicate
8806         * lisp/textmodes/tex-mode.el (tex-common-initialization): Set
8807         prettify-symbols-compose-predicate in terms of add-function.
8808         * etc/NEWS: Mention prettify-symbols-compose-predicate and
8809         prettify-symbols-mode support in tex-mode.
8811 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
8813         * lisp/emacs-lisp/smie.el (smie-indent-current-column): New fun.
8814         (smie-indent-exps, smie-indent-keyword): Use it.
8815         * test/indent/css-mode.css: Test alignment with leading comment.
8817 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
8819         Respect text-quoting-style in (*Finder*) menus
8820         * lisp/info.el (info--prettify-description):
8821         Treat description as a docstring, so that it's requoted as
8822         per text-quoting-style.
8824 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
8826         Document `window-use-time' in Elisp manual
8827         * doc/lispref/windows.texi (Selecting Windows): Document
8828         `window-use-time'.
8830 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
8832         * src/w32uniscribe.c (_WIN32_WINNT): Define to 0x0600.
8833         This is a cleaner fix for Bug#21260 than the previous change.
8835 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
8837         Respect text-quoting-style in calc
8838         In calc, tespect text-quoting-style preference in diagnostic
8839         formats and fix a few similar problems in docstrings.
8840         * lisp/calc/calc-aent.el (math-read-factor):
8841         * lisp/calc/calc-embed.el (calc-do-embedded):
8842         * lisp/calc/calc-ext.el (calc-user-function-list)
8843         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
8844         * lisp/calc/calc-help.el (calc-describe-key)
8845         (calc-describe-thing):
8846         * lisp/calc/calc-lang.el (calc-c-language)
8847         (math-parse-fortran-vector-end, math-parse-tex-sum)
8848         (math-parse-eqn-matrix, math-parse-eqn-prime)
8849         (calc-yacas-language, calc-maxima-language, calc-giac-language)
8850         (math-read-big-rec, math-read-big-balance):
8851         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
8852         (calc-auto-recompute):
8853         * lisp/calc/calc-prog.el (calc-user-define-invocation)
8854         (math-do-arg-check):
8855         * lisp/calc/calc-store.el (calc-edit-variable):
8856         * lisp/calc/calc-units.el (math-build-units-table-buffer):
8857         * lisp/calc/calc-vec.el (math-read-brackets):
8858         * lisp/calc/calc-yank.el (calc-edit-mode):
8859         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
8860         Use curved quotes in diagnostic format strings.
8861         * lisp/calc/calc-help.el (calc-describe-thing):
8862         Format docstrings with substitute-command-keys.
8863         * lisp/calc/calc-help.el (calc-j-prefix-help):
8864         * lisp/calc/calc-misc.el (calc-help):
8865         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
8866         Escape a docstring "`".
8868 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
8870         Fix documentation of 'menu-set-font' and 'set-frame-font'
8871         * lisp/menu-bar.el (menu-set-font): Doc fix.  (Bug#21303)
8872         * doc/lispref/frames.texi (Frame Font): Document that
8873         set-frame-font with the last argument 't' will also make the font
8874         the default for the future GUI frames.
8876         Document '--create-frame' option to emacsclient
8877         * doc/emacs/misc.texi (emacsclient Options): Document the
8878         '--create-frame' option.  (Bug#21308)
8880 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
8882         * lisp/progmodes/js.el (js-mode): Don't eagerly syntax propertize.
8884 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
8886         Document 'get-mru-window' in the ELisp manual
8887         * doc/lispref/windows.texi (Cyclic Window Ordering): Document
8888         'get-mru-window'.  (Bug#21306)
8890         Clarify documentation of 'get-buffer-window-list'
8891         * doc/lispref/windows.texi (Buffers and Windows): Mention that the
8892         current window, if relevant, will be the first in the list
8893         returned by 'get-buffer-window-list'.
8894         * lisp/window.el (get-buffer-window-list): Doc fix.  (Bug#21305)
8896 2015-08-21  Vasilij Schneidermann  <v.schneidermann@gmail.com>
8898         In `ielm' use `pop-to-buffer-same-window' (Bug#20848)
8899         * lisp/ielm.el (ielm): Use `pop-to-buffer-same-window' instead of
8900         `switch-to-buffer'.
8902 2015-08-21  Kaushal Modi  <kaushal.modi@gmail.com>  (tiny change)
8904         In woman.el use `display-buffer' instead of `switch-to-buffer' (Bug#21047)
8905         * lisp/woman.el (woman-really-find-file, WoMan-find-buffer): Use
8906         `display-buffer' instead of `switch-to-buffer'.
8908 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
8910         Follow user preference in calendar diagnostics
8911         Respect text-quoting-style preference in diagnostic formats by
8912         using curved quotes (which are translated as per text-quoting-style)
8913         instead of grave accent and apostrophe (which are not).
8914         * lisp/calendar/appt.el (appt-display-message):
8915         * lisp/calendar/diary-lib.el (diary-check-diary-file)
8916         (diary-mail-entries, diary-from-outlook):
8917         * lisp/calendar/icalendar.el (icalendar-export-region)
8918         (icalendar--convert-float-to-ical)
8919         (icalendar--convert-date-to-ical)
8920         (icalendar--convert-ical-to-diary)
8921         (icalendar--convert-recurring-to-diary)
8922         (icalendar--add-diary-entry):
8923         * lisp/calendar/time-date.el (format-seconds):
8924         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
8925         (timeclock-make-hours-explicit):
8926         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
8927         (todo-item-mark, todo-check-format)
8928         (todo-insert-item--next-param, todo-edit-item--next-key)
8929         (todo-mode):
8930         Use curved quotes in diagnostic format strings.
8931         * lisp/calendar/icalendar.el (icalendar-import-format-sample):
8932         * test/automated/icalendar-tests.el (icalendar--import-format-sample):
8933         Just use straight quoting for simple test case.
8935 2015-08-21  Michael Albinus  <michael.albinus@gmx.de>
8937         * src/gfilenotify.c (Fgfile_add_watch):
8938         Handle errors from g_file_monitor.
8940 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
8942         In frames.texi use "minibuffer-less frame" instead of "non-minibuffer frame"
8943         * doc/lispref/frames.texi (Frame Layout): Use "minibuffer-less
8944         frame" instead of "non-minibuffer frame".
8946         Fix frame geometry related text
8947         * doc/lispref/frames.texi (Frame Layout):
8948         Rename `x-frame-geometry' to `frame-geometry'.
8949         * doc/lispref/frames.texi (Mouse Position):
8950         * doc/lispref/windows.texi (Coordinates and Windows):
8951         Use `set-mouse-absolute-pixel-position' instead of
8952         `x-set-mouse-absolute-pixel-position'.
8954         Sanitize frame geometry related functions
8955         * src/nsfns.m (Fx_frame_geometry): Rename to Fns_frame_geometry.
8956         (Fx_frame_edges): Rename to Fns_frame_edges.
8957         * src/w32fns.c (Fx_frame_geometry): Rename to Fw32_frame_geometry.
8958         (Fx_frame_edges): Rename to Fw32_frame_edges.
8959         (Fx_mouse_absolute_pixel_position): Rename to
8960         Fw32_mouse_absolute_pixel_position.
8961         (Fx_set_mouse_absolute_pixel_position): Rename to
8962         Fw32_set_mouse_absolute_pixel_position.
8963         * lisp/frame.el (x-frame-geometry, w32-frame-geometry)
8964         (ns-frame-geometry, x-frame-edges, w32-frame-edges)
8965         (ns-frame-edges, w32-mouse-absolute-pixel-position)
8966         (x-mouse-absolute-pixel-position)
8967         (w32-set-mouse-absolute-pixel-position)
8968         (x-set-mouse-absolute-pixel-position): Declare.
8969         (frame-geometry, mouse-absolute-pixel-position)
8970         (set-mouse-absolute-pixel-position): New functions.
8971         (frame-edges): Rewrite in terms of x-/w32-/ns-frame-edges.
8973 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
8975         Fix MinGW64 build broken by latest w32uniscribe.c changes
8976         * src/w32uniscribe.c (UNISCRIBE_OPENTYPE): Define to 0x0100, for
8977         MinGW64.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
8978         (Bug#21260)
8980 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
8982         Add TeX defaults for prettify-symbol-mode
8983         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
8984         Rename from tex-prettify-symbols-alist.
8985         (tex--prettify-symbols-compose-p): New function.
8986         (tex-common-initialization): Use them as prettify-symbols-alist
8987         and prettify-symbols-compose-predicate.
8989         Generalize prettify-symbols to arbitrary modes
8990         * lisp/progmodes/prog-mode.el
8991         (prettify-symbols-default-compose-p): New function.
8992         (prettify-symbols-compose-predicate): New variable.
8993         (prettify-symbols--compose-symbol): Use it.
8995 2015-08-20  Paul Eggert  <eggert@cs.ucla.edu>
8997         Don't quote symbols 'like-this' in docstrings etc.
8998         * admin/unidata/uvs.el (uvs-insert-fields-as-bytes):
8999         * lisp/allout-widgets.el (allout-widgets-count-buttons-in-region):
9000         * lisp/allout.el (allout-add-resumptions, allout-mode):
9001         * lisp/calculator.el (calculator-operators):
9002         * lisp/cedet/data-debug.el (dd-propertize):
9003         * lisp/cedet/ede/proj-prog.el (ede-proj-target-makefile-program):
9004         * lisp/cedet/semantic/analyze/debug.el:
9005         (semantic-analyzer-debug-global-miss-text):
9006         * lisp/cedet/semantic/lex-spp.el:
9007         (semantic-lex-spp-replace-or-symbol-or-keyword):
9008         * lisp/cedet/semantic/symref.el:
9009         (semantic-symref-cleanup-recent-buffers-fcn):
9010         * lisp/cedet/semantic/tag.el (semantic-tag-class):
9011         * lisp/cedet/srecode/el.el (srecode-semantic-handle-:el-custom):
9012         * lisp/gnus/nnmairix.el (nnmairix-propagate-marks-upon-close):
9013         * lisp/gnus/pop3.el (pop3-authentication-scheme):
9014         * lisp/help-fns.el (describe-function-orig-buffer):
9015         * lisp/imenu.el (imenu--history-list):
9016         * lisp/mail/feedmail.el (feedmail-confirm-outgoing)
9017         (feedmail-display-full-frame, feedmail-deduce-bcc-where)
9018         (feedmail-queue-default-file-slug)
9019         (feedmail-queue-buffer-file-name):
9020         * lisp/net/mairix.el (mairix-searches-mode-map):
9021         * lisp/net/newst-backend.el (newsticker-retrieval-method)
9022         (newsticker-auto-mark-filter-list):
9023         * lisp/obsolete/vi.el (vi-mode):
9024         * lisp/progmodes/cc-engine.el (c-literal-type):
9025         * lisp/progmodes/cpp.el (cpp-face):
9026         * lisp/progmodes/ebrowse.el (ebrowse-electric-list-looper):
9027         * lisp/progmodes/elisp-mode.el (elisp--xref-make-xref):
9028         * lisp/progmodes/pascal.el (pascal-auto-lineup):
9029         * lisp/progmodes/prog-mode.el (prog-widen):
9030         * lisp/progmodes/verilog-mode.el (verilog-regexp-words)
9031         (verilog-auto-lineup, verilog-auto-reset-widths)
9032         (verilog-auto-arg-format, verilog-auto-inst-template-numbers):
9033         * lisp/textmodes/flyspell.el (flyspell-maybe-correct-transposition)
9034         (flyspell-maybe-correct-doubling):
9035         * lisp/textmodes/table.el (table-justify, table-justify-cell)
9036         (table-justify-row, table-justify-column, table-insert-sequence)
9037         (table--justify-cell-contents):
9038         * lisp/url/url-auth.el (url-get-authentication):
9039         * lisp/window.el (display-buffer-record-window):
9040         * lisp/xml.el (xml-parse-file, xml-parse-region):
9041         * src/gfilenotify.c (Fgfile_add_watch):
9042         Don't quote symbols with apostrophes in doc strings.
9043         Use asymmetric quotes instead.
9044         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
9045         Likewise for symbol in diagnostic.
9046         * lisp/image.el (image-extension-data):
9047         * lisp/register.el (frame-configuration-to-register):
9048         * src/buffer.c (syms_of_buffer):
9049         Remove bogus apostrophes after symbols.
9050         * lisp/thumbs.el (thumbs-conversion-program):
9051         Quote Lisp string values using double-quotes, not apostrophes.
9053 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
9055         Describe frame geometry and related functions in Elisp manual
9056         * doc/lispref/display.texi (Size of Displayed Text, Line Height)
9057         (Showing Images): Update references.
9058         * doc/lispref/elisp.texi (Top): Update node listing.
9059         * doc/lispref/frames.texi (Frame Geometry): New node.
9060         Move `Size and Position' section here.
9061         (Size Parameters): Update references.
9062         (Mouse Position): Update references and nomenclature.
9063         Describe new functions `x-mouse-absolute-pixel-position' and
9064         `x-set-mouse-absolute-pixel-position'.
9065         * doc/lispref/windows.texi (Window Sizes): Update references.
9066         (Resizing Windows): Update references.  Move description of
9067         `fit-frame-to-buffer' here.
9068         (Coordinates and Windows): Update nomenclature and references.
9069         Describe new arguments of `window-edges'.  Comment out
9070         descriptions of `window-left-column', `window-top-line',
9071         `window-pixel-left' and `window-pixel-top'.  Describe
9072         `window-absolute-pixel-position'.
9074 2015-08-20  Alan Mackenzie  <acm@muc.de>
9076         Handling of `c-parse-state'.  Fix low level bug.
9077         * lisp/progmodes/cc-engine.el (c-remove-stale-state-cache-backwards):
9078         Add "CASE 3.5" to handle `cache-pos' being only slightly before `here'.
9080 2015-08-20  Andreas Politz  <politza@hochschule-trier.de>
9082         * lisp/wid-edit.el (widget-color--choose-action): Quit *Color*
9083         window instead of deleting it.
9085 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
9087         In w32fns.c's Fx_frame_geometry rewrite check whether frame has a titlebar
9088         * src/w32fns.c (Fx_frame_geometry): Use title_bar.rgstate[0] to
9089         determine whether frame has a titlebar.
9090         Suggested by Eli Zaretskii <eliz@gnu.org>
9092 2015-08-20  Tassilo Horn  <tsdh@gnu.org>
9094         Add a prettify-symbols-alist for (La)TeX
9095         * lisp/textmodes/tex-mode.el (tex-prettify-symbols-alist):
9096         New variable holding an alist suitable as prettify-symbols-alist in
9097         (La)TeX modes.
9099 2015-08-19  Alan Mackenzie  <acm@muc.de>
9101         Make electric-pair-mode, delete-selection-mode and CC Mode cooperate.
9102         Fixes debbugs#21275.
9103         In Emacs >= 25, let electric-pair-mode take precedence over
9104         delete-selection-mode.
9105         * lisp/delsel.el (delete-selection-uses-region-p): New function,
9106         previously a lambda expression in a property value for
9107         `self-insert-command'.
9108         (top-level): Set the `delete-selection' property of
9109         `self-insert-command' to `delete-selection-uses-region-p'.
9110         * lisp/progmodes/cc-cmds.el (top-level): Give the `delete-selection'
9111         property for c-electric-\(brace\|paren\) the value
9112         `delete-selection-uses-region-p' when the latter function exists.
9114 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
9116         Fix key binding quoting in tutorial *Help*
9117         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
9118         When generating help for custom key bindings, use the user-preferred
9119         quoting style rather than hardcoding the grave style.
9121 2015-08-19  Eli Zaretskii  <eliz@gnu.org>
9123         Improve and future-proof OTF fonts support in w32uniscribe.c
9124         * src/w32uniscribe.c (uniscribe_otf_capability): Add commentary
9125         about the expected results and why the new Uniscribe APIs are not
9126         used in this function.
9127         (ScriptGetFontScriptTags_Proc, ScriptGetFontLanguageTags_Proc)
9128         (ScriptGetFontFeatureTags_Proc): New function typedefs.
9129         (uniscribe_new_apis): New static variable.
9130         (uniscribe_check_features): New function, implements OTF features
9131         verification while correctly accounting for features in the list
9132         after the nil member, if any.
9133         (uniscribe_check_otf_1): New function, retrieves the features
9134         supported by the font for the requested script and language using
9135         the Uniscribe APIs available from Windows Vista onwards.
9136         (uniscribe_check_otf): If the new Uniscribe APIs are available,
9137         use them in preference to reading the font data directly.  Call
9138         uniscribe_check_features to verify that the requested features are
9139         supported, replacing the original incomplete code.
9140         (syms_of_w32uniscribe): Initialize function pointers for the new
9141         Uniscribe APIs.  (Bug#21260)
9142         (otf_features): Scan the script, langsys, and feature arrays back
9143         to front, so that the result we return has them in alphabetical
9144         order, like ftfont.c does.
9145         * src/w32fns.c (syms_of_w32fns) <w32-disable-new-uniscribe-apis>:
9146         New variable for debugging w32uniscribe.c code.
9148 2015-08-19  Artur Malabarba  <bruce.connor.am@gmail.com>
9150         * lisp/isearch.el (isearch-search-fun-default): Revert a5bdb87
9151         Remove usage of `isearch-lax-whitespace' inside the `iearch-word'
9152         clause of `isearch-search-fun-default'.  That lax variable does not
9153         refer to lax-whitespacing.  Related to (bug#21777).
9154         This reverts commit a5bdb872edb9f031fe041faf9a8c0be432e5f64c.
9155         * lisp/character-fold.el (character-fold-search): Set to nil.
9156         Default to nil for now, until someone implements proper
9157         lax-whitespacing with char-fold searching.
9159 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
9161         Fix doc-string of `help-mode-finish'.
9162         * lisp/help-mode.el (help-mode-finish): Fix doc-string.
9164         In nsimage.m include coding.h (Bug#21292)
9165         * src/nsimage.m (top-level): Include coding.h (Bug#21292).
9167         Move window edge functions to Elisp.
9168         * src/window.c (Fwindow_edges, Fwindow_pixel_edges)
9169         (Fwindow_absolute_pixel_edges, Fwindow_inside_edges)
9170         (Fwindow_inside_pixel_edges, Fwindow_inside_absolute_pixel_edges):
9171         Move to window.el.
9172         (calc_absolute_offset): Remove.
9173         * lisp/frame.el (frame-edges): New function.
9174         * lisp/window.el (window-edges, window-pixel-edges)
9175         (window-absolute-pixel-edges): Move here from window.c.
9176         (window-body-edges, window-body-pixel-edges)
9177         (window-absolute-body-pixel-edges): Move here from window.c and
9178         rename "inside" to "body".  Keep old names as aliases.
9179         (window-absolute-pixel-position): New function.
9181 2015-08-19  Katsumi Yamaoka  <yamaoka@jpl.org>
9183         [Gnus]: Use overlay functions directly
9184         * lisp/gnus/gnus-art.el (gnus-mime-inline-part, gnus-mm-display-part)
9185         (gnus-insert-mime-button, gnus-mime-buttonize-attachments-in-header)
9186         (gnus-article-highlight-signature, gnus-article-extend-url-button)
9187         (gnus-article-add-button, gnus-insert-prev-page-button)
9188         (gnus-insert-next-page-button, gnus-insert-mime-security-button):
9189         * lisp/gnus/gnus-cite.el (gnus-cite-delete-overlays)
9190         (gnus-cite-add-face):
9191         * lisp/gnus/gnus-html.el (gnus-html-wash-tags):
9192         * lisp/gnus/gnus-salt.el (gnus-tree-read-summary-keys)
9193         (gnus-tree-recenter, gnus-highlight-selected-tree):
9194         * lisp/gnus/gnus-sum.el (gnus-summary-show-all-threads)
9195         (gnus-summary-show-thread, gnus-summary-hide-thread)
9196         (gnus-highlight-selected-summary):
9197         * lisp/gnus/gnus-util.el (gnus-put-overlay-excluding-newlines):
9198         * lisp/gnus/message.el (message-fix-before-sending)
9199         (message-toggle-image-thumbnails):
9200         * lisp/gnus/mm-decode.el (mm-convert-shr-links):
9201         * lisp/gnus/sieve.el (sieve-highlight, sieve-insert-scripts):
9202         Use overlay functions directly instead of using gnus-overlay-*,
9203         message-overlay-*, and sieve-overlay-*.
9204         * lisp/gnus/gnus-sum.el (gnus-remove-overlays):
9205         * lisp/gnus/gnus.el (gnus-make-overlay, gnus-copy-overlay)
9206         (gnus-delete-overlay, gnus-overlay-get, gnus-overlay-put)
9207         (gnus-move-overlay, gnus-overlay-buffer, gnus-overlay-start)
9208         (gnus-overlay-end, gnus-overlays-at, gnus-overlays-in):
9209         * lisp/gnus/message.el (message-delete-overlay, message-make-overlay)
9210         (message-overlay-get, message-overlay-put, message-overlays-in):
9211         * lisp/gnus/sieve.el (sieve-make-overlay, sieve-overlay-put)
9212         (sieve-overlays-at): Remove.
9214 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
9216         In w32fns.c condition TITLEBAR_INFO declaration on WINDOWS version
9217         * src/w32fns.c (TITLEBAR_INFO): Make it a typedef so MinGW64
9218         builds can use the declaration from the system headers.
9219         (GetTitleBarInfo_Proc, Fx_frame_geometry): Adapt to new
9220         definition of TITLEBAR_INFO.
9221         Suggested by Eli Zaretskii  <eliz@gnu.org>
9223 2015-08-19  Glenn Morris  <rgm@gnu.org>
9225         * lisp/gnus/nnmaildir.el (nnmaildir-flag-mark-mapping): Add "P".
9227 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
9229         Use new q ‘format’ flag when fixing quotes in C
9230         * src/image.c (image_size_error): New function.  All uses of
9231         image_error with "Invalid image size ..."  changed to use it.
9232         * src/image.c (image_size_error, xbm_load_image, xbm_load)
9233         (xpm_load, xpm_load_image, xpm_load, pbm_load, png_load_body)
9234         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
9235         (imagemagick_load, svg_load, svg_load_image, gs_load)
9236         (x_kill_gs_process):
9237         * src/lread.c (load_warn_old_style_backquotes):
9238         * src/xfaces.c (load_pixmap):
9239         * src/xselect.c (x_clipboard_manager_error_1):
9240         Use %qs, not uLSQM and uRSQM.
9241         * src/syntax.c (Finternal_describe_syntax_value):
9242         Prefer Fsubstitute_command_keys to Fformat, as this lets
9243         us use AUTO_STRING.
9244         * src/xdisp.c (vadd_to_log): Use AUTO_STRING on the format argument,
9245         as it's now guaranteed to be ASCII.
9246         * src/xselect.c (x_clipboard_manager_error_2):
9247         Avoid grave accent in low-level stderr diagnostic.
9249 2015-08-19  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
9251         New q flag for ‘format’
9252         * doc/lispref/processes.texi (Sentinels):
9253         Don't hardwire grave quoting style in example.
9254         * doc/lispref/strings.texi (Formatting Strings):
9255         * etc/NEWS:
9256         Document new q flag.
9257         * src/editfns.c (Fformat): Implement it.
9259 2015-08-18  Daiki Ueno  <ueno@gnu.org>
9261         pinentry.el: Add debugging support
9262         * lisp/net/pinentry.el (pinentry-debug): New variable.
9263         (pinentry-debug-buffer): New variable.
9264         (pinentry--process-filter): Send input to the debug buffer, if
9265         `pinentry-debug' is set.
9267         pinentry.el: Improve multiline prompt
9268         * lisp/net/pinentry.el (pinentry--prompt): Simplify the interface.
9269         (pinentry--process-filter): Use `pinentry--prompt' for CONFIRM
9270         command.
9272 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
9274         Fix multibyte confusion in diagnostics
9275         * src/print.c (print_error_message):
9276         Don't assume that the caller's name is unibyte.
9277         * src/xdisp.c (vadd_to_log):
9278         Don't assume that the formatted diagnostic is unibyte.
9280         Fix file name encodings in diagnostics
9281         Also, close some minor races when opening image files, by opening
9282         them once instead of multiple times.
9283         * src/gtkutil.c (xg_get_image_for_pixmap):
9284         * src/image.c (xpm_load, tiff_load, gif_load, imagemagick_load)
9285         (svg_load):
9286         * src/nsimage.m (allocInitFromFile:):
9287         * src/xfns.c (xg_set_icon):
9288         Encode file name, since x_find_image_file no longer does that.
9289         * src/image.c (x_find_image_fd): New function.
9290         (x_find_image_file): Use it.  Do not encode resulting file name,
9291         since callers sometimes need it decoded.
9292         (slurp_file): File arg is now a fd, not a file name.
9293         All callers changed.  This saves us having to open the file twice.
9294         (xbm_load, xpm_load, pbm_load, png_load_body, jpeg_load_body)
9295         (svg_load):
9296         Use x_find_image_fd and fdopen to save a file-open.
9297         Report file name that failed.
9298         * src/lread.c (openp): If PREDICATE is t, open the file in binary mode.
9300 2015-08-18  Dmitry Gutov  <dgutov@yandex.ru>
9302         Allow blink-matching-paren to jump off screen
9303         * doc/emacs/programs.texi (Matching): Mention the
9304         `blink-matching-paren' value `jump-offscreen'.
9305         * lisp/simple.el (blink-matching-paren): New possible value.
9306         (blink-matching-paren-on-screen): Clarify the docstring.
9307         (blink-matching-open): Handle `jump-offscreen' (bug#21286).
9309         Refine the previous change
9310         * lisp/simple.el (blink-matching-open): Use minibuffer-message
9311         outside of save-excursion (bug#21286).
9313 2015-08-18  Martin Rudalics  <rudalics@gmx.at>
9315         Rewrite and add frame geometry related functions.
9316         * src/frame.c (Fframe_position): New function.
9317         (Fset_frame_position): Rename parameters and rewrite doc-string.
9318         (syms_of_frame): Remove Qframe_position, Qframe_outer_size,
9319         Qtitle_height and Qframe_inner_size.  Add Qouter_edges,
9320         Qouter_position, Qouter_size, Qnative_edges, Qinner_edges,
9321         Qtitle_bar_size.
9322         * src/nsfns.m (frame_geometry): New function.
9323         (Fx_frame_geometry): Call frame_geometry.
9324         (Fx_frame_edges): New function.
9325         * src/w32fns.c (C_CHILDREN_TITLEBAR, TITLEBAR_INFO)
9326         (GetTitleBarInfo_Proc): Define these so we can use the
9327         GetTitleBarInfo API.
9328         (Fw32_frame_menu_bar_size, Fw32_frame_rect): Remove.
9329         (Fx_frame_geometry): Rewrite.
9330         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
9331         (Fx_set_mouse_absolute_pixel_position): New functions.
9332         * src/xfns.c (frame_geometry): New function.
9333         (Fx_frame_geometry): Call frame_geometry.
9334         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
9335         (Fx_set_mouse_absolute_pixel_position): New functions.
9337 2015-08-18  Michael Albinus  <michael.albinus@gmx.de>
9339         Improve Tramp's compatibility
9340         * lisp/net/tramp.el (tramp-get-method-parameter):
9341         * lisp/net/tramp-adb.el (tramp-adb-parse-device-names)
9342         (tramp-adb-get-device):
9343         * lisp/net/trampver.el (tramp-repository-get-version):
9344         Use `tramp-compat-replace-regexp-in-string'.
9346 2015-08-18  Pierre Téchoueyres  <pierre.techoueyres@free.fr>  (tiny change)
9348         * lisp/net/tramp-cmds.el (tramp-reporter-dump-variable):
9349         Encode/decode string.
9351 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
9353         Clarify what happens to match data on failure
9354         Problem reported by Ernesto Alfonso (Bug#21279).
9355         * doc/lispref/searching.texi (Regexp Search, Simple Match Data):
9356         Document more carefully what happens to match data after a failed
9357         search.
9358         * src/search.c (Fmatch_beginning, Fmatch_end): Document that
9359         the return value is undefined if the last search failed.
9360         (Fmatch_data): Simplify doc string line 1.
9362 2015-08-18  Daiki Ueno  <ueno@gnu.org>
9364         Revert "pinentry.el: Support external passphrase cache"
9365         This reverts commit e086e55a664ec27fbca7b3231c4b32cb78a89337.
9366         pinentry.el shouldn't directly interact with the secrets service,
9367         but ask the caller to cache the passphrase.
9369 2015-08-17  Xue Fuqiao  <xfq.free@gmail.com>
9371         * doc/emacs/sending.texi (Mail Misc): Fix two index entries for
9372         Message mode hooks.
9374 2015-08-17  Daiki Ueno  <ueno@gnu.org>
9376         epg.el: Make gpgconf output parsing future proof
9377         * lisp/epg.el (epg--start): Count the number of fields in "gpgconf
9378         --list-options" output.
9380         pinentry.el: Support external passphrase cache
9381         * lisp/net/pinentry.el (pinentry-use-secrets): New user option.
9382         (pinentry--allow-external-password-cache): New local variable.
9383         (pinentry--key-info): New local variable.
9384         (secrets-enabled, secrets-search-items, secrets-get-secret):
9385         Declare.
9386         (pinentry--send-passphrase): New function, split from
9387         `pinentry--process-filter'.
9388         (pinentry--process-filter): Use secrets.el to retrieve passphrase
9389         from login keyring.
9391         pinentry.el: Popup window for multiline prompt
9392         * lisp/net/pinentry.el (pinentry): New custom group.
9393         (pinentry-popup-prompt-window): New user option.
9394         (pinentry-prompt-window-height): New user option.
9395         (pinentry--prompt-buffer): New variable.
9396         (pinentry-prompt-mode-map): New variable.
9397         (pinentry-prompt-mode): New function.
9398         (pinentry--prompt): New function.
9399         (pinentry--process-filter): Use `pinentry--prompt' instead of
9400         `read-passwd' and `y-or-n-p'.
9402 2015-08-17  Katsumi Yamaoka  <yamaoka@jpl.org>
9404         message.el: Silent the byte compiler
9405         * lisp/gnus/message.el (message-overlay-put, message-make-overlay)
9406         (message-kill-all-overlays, message-overlays-in, message-overlay-get)
9407         (message-delete-overlay, message-window-inside-pixel-edges):
9408         Declare before using.
9410         * lisp/gnus/message.el (message-overlay-get, message-overlays-in)
9411         (message-window-inside-pixel-edges): XEmacs compatible functions.
9413 2015-08-17  Lars Magne Ingebrigtsen  <larsi@gnus.org>
9415         * lisp/gnus/message.el (message-toggle-image-thumbnails): New command.
9417 2015-08-17  Noah Friedman  <friedman@splode.com>
9419         * lisp/simple.el (blink-matching-open): Restore point before
9420         calling minibuffer-message.
9422 2015-08-17  Ronnie Schnell  <ronnie@driver-aces.com>
9424         * lisp/play/dunnet.el: Update version number in header (now
9425         matches help).
9427 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
9429         Curved quotes in --batch diagnostics in non-UTF-8
9430         When run with --batch, check that curved quotes are compatible with
9431         the system locale before outputting them in diagnostics.
9432         Problem reported by Eli Zaretskii in:
9433         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00594.html
9434         * lisp/startup.el (command-line): Set internal--text-quoting-flag
9435         after the standard display table is initialized.
9436         * src/doc.c (default_to_grave_quoting_style): New function.
9437         (text_quoting_style): Use it.
9438         (text_quoting_flag): New static var, visible to Lisp as
9439         internal--text-quoting-flag.
9440         * src/emacs.c: Include <wchar.h> if available.
9441         (using_utf8): New function.
9442         (main): Use it to initialize text_quoting_flag.
9443         * src/regex.h (btowc) [WIDE_CHAR_SUPPORT && emacs]:
9444         Don't define, as it's not needed and it clashes with wchar.h.
9446 2015-08-17  Glenn Morris  <rgm@gnu.org>
9448         * doc/misc/tramp.texi (Configuration): Reword to avoid warning
9449         from makeinfo about spurious "Note:" cross-reference, and for grammar.
9451 2015-08-17  Ilya Zakharevich  <ilya@math.berkeley.edu>
9453         Minor change in variable initialization on MS-Windows
9454         * src/w32fns.c <after_dead_key>: Initialize to -1.
9455         (deliver_wm_chars): If after_deadkey is zero, don't set after_dead
9456         non-zero.
9458         Fix a bug with LWindow key remapping on MS-Windows
9459         * src/w32fns.c (deliver_wm_chars): Fix a typo.  (Bug#21276)
9461 2015-08-17  Eli Zaretskii  <eliz@gnu.org>
9463         Improve fontset support for latest OTF script tags
9464         * lisp/international/fontset.el (otf-script-alist): Add some
9465         missing script tags.
9466         (setup-default-fontset): Include settings for v2 versions of the
9467         script tags used by some modern OTF/TTF fonts.
9469 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
9471         Spelling fixes
9473 2015-08-16  Paul Eggert  <eggert@cs.ucla.edu>
9475         Use curved quotes in core elisp diagnostics
9476         In the core elisp files, use curved quotes in diagnostic formats,
9477         so that they follow user preference as per ‘text-quoting-style’
9478         rather than being hard-coded to quote `like this'.
9479         * lisp/abbrev.el (expand-region-abbrevs):
9480         * lisp/button.el (button-category-symbol, button-put)
9481         (make-text-button):
9482         * lisp/cus-start.el:
9483         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
9484         (custom--sort-vars-1, load-theme):
9485         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
9486         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
9487         (cl-generic-generalizers):
9488         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
9489         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
9490         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
9491         (advice--make, define-advice):
9492         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
9493         * lisp/emacs-lisp/timer.el (timer-event-handler):
9494         * lisp/env.el (setenv):
9495         * lisp/facemenu.el (facemenu-add-new-face)
9496         (facemenu-add-new-color):
9497         * lisp/faces.el (face-documentation, read-face-name)
9498         (face-read-string, read-face-font, face-spec-set-match-display)
9499         (read-color, x-resolve-font-name):
9500         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
9501         (set-auto-mode, hack-local-variables)
9502         (hack-one-local-variable--obsolete)
9503         (dir-locals-set-directory-class, write-file)
9504         (basic-save-buffer, delete-directory, copy-directory)
9505         (recover-session, recover-session-finish, insert-directory)
9506         (file-modes-char-to-who, file-modes-symbolic-to-number)
9507         (move-file-to-trash):
9508         * lisp/font-lock.el (font-lock-fontify-buffer):
9509         * lisp/format.el (format-write-file, format-find-file)
9510         (format-insert-file):
9511         * lisp/frame.el (get-device-terminal, select-frame-by-name):
9512         * lisp/fringe.el (fringe--check-style):
9513         * lisp/help.el (describe-minor-mode-from-indicator):
9514         * lisp/image.el (image-type):
9515         * lisp/international/fontset.el (x-must-resolve-font-name):
9516         * lisp/international/mule-cmds.el (prefer-coding-system)
9517         (select-safe-coding-system-interactively)
9518         (select-safe-coding-system, activate-input-method)
9519         (toggle-input-method, describe-current-input-method):
9520         * lisp/international/mule-conf.el (code-offset):
9521         * lisp/mouse.el (minor-mode-menu-from-indicator):
9522         * lisp/replace.el (query-replace-read-from)
9523         (occur-after-change-function, occur-1):
9524         * lisp/scroll-bar.el (scroll-bar-columns):
9525         * lisp/simple.el (execute-extended-command)
9526         (undo-outer-limit-truncate, compose-mail, set-variable)
9527         (choose-completion-string, define-alternatives):
9528         * lisp/startup.el (site-run-file, tty-handle-args)
9529         (command-line, command-line-1):
9530         * lisp/subr.el (noreturn, define-error, add-to-list)
9531         (read-char-choice):
9532         * lisp/term/common-win.el (x-handle-xrm-switch)
9533         (x-handle-name-switch, x-handle-args):
9534         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
9535         Use curved quotes in diagnostics.
9536         * lisp/international/mule.el (find-auto-coding):
9537         Use " to quote in a diagnostic, to be consistent with the rest of
9538         this file.
9540         Convert lisp/term/x-win.el to UTF-8
9541         * lisp/term/x-win.el: Convert to UTF-8.  This doesn't affect
9542         runtime behavior, and the file is multilingual so compile-time
9543         appearance shouldn't be an issue.
9544         * admin/notes/unicode: Document this.
9546 2015-08-16  Wilson Snyder  <wsnyder@wsnyder.org>
9548         Update verilog-mode.el to 2015-05-14-6232468-vpo-GNU.
9549         * lisp/progmodes/verilog-mode.el: Fix some non-automated indent
9550         issues and comments, bug#943.
9551         (verilog-type-font-keywords): Cycle delay operators like ##1 and
9552         ##[0:$] are now highlighted in their entirety similarly to the #
9553         delay-control operator.  Likewise, the followed-by operators #-#
9554         and #=# are no longer partially highlighed.
9555         (verilog-backward-syntactic-ws-quick)
9556         (verilog-skip-backward-comments): Minor performance improvements
9557         to buffer traversal functions for reduced latency.
9558         (verilog-calc-1, verilog-in-deferred-immediate-final-p): When the
9559         keyword 'final' follows 'assert/assume/cover', then it is part of
9560         a deferred immediate assertion item and should not be treated as a
9561         final construct for indentation.  Reported by Yuri Sugihara.
9562         (verilog-do-indent): Virtual task/function/class definition lines
9563         should not be considered as declarations.  Reported by Enzo Chi.
9564         (verilog-do-indent): Do not falsely indent to '=' of
9565         property/sequence operators on subsequent lines of a multi-line
9566         statement.
9567         (verilog-assignment-operator-re): Fix '!==' operator and add
9568         support for '<->', ':/', '#-#', and '#=#' operators.
9569         (verilog-calculate-indent, verilog-label-be): Enable
9570         case-sensitive regular expression parsing when looking for
9571         keywords.
9572         (verilog-calc-1): Detect 'pure virtual method' declarations which
9573         exist in abstract classes.  Reported by Enzo Chi and Kaushal Modi.
9574         (verilog-backward-ws&directives): When moving back to the start of
9575         a line and the preceeding line ended with an escaped-newline, then
9576         jump up one line.  This properly consumes a multi-line
9577         pre-processor directive.  Reported by Kaushal Modi.
9578         (verilog-dpi-import-export-re, verilog-extended-complete-re)
9579         (verilog-calc-1): Teach verilog-mode to properly indent after a
9580         DPI import/export statement that resides outside of a module.
9581         Reported by Kaushal Modi.
9582         (verilog-extended-complete-re): Update regexp to match both
9583         "DPI-C" and "DPI".  Reported by Kaushal Modi.
9585 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
9587         substitute-command-keys a few more doc strings
9588         * lisp/allout.el (outlineify-sticky):
9589         * lisp/files.el (hack-one-local-variable--obsolete):
9590         * lisp/help-fns.el (help-fns--obsolete, describe-variable):
9591         Use substitute-command-keys on some doc strings so that
9592         they don't use hard-coded key bindings or quoting styles.
9594         Fix quoting in Fformat calls
9595         * src/image.c (xbm_read_bitmap_data, xbm_load_image, xbm_load)
9596         (xpm_load, xpm_load_image, pbm_load, png_load_body)
9597         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
9598         (imagemagick_load, svg_load, svg_load_image, gs_load)
9599         (x_kill_gs_process):
9600         * src/lread.c (load_warn_old_style_backquotes):
9601         * src/xfaces.c (load_pixmap):
9602         * src/xselect.c (x_clipboard_manager_error_1):
9603         Quote diagnostics according to user preference when calling
9604         Fformat or its derivatives.
9606 2015-08-15  Glenn Morris  <rgm@gnu.org>
9608         * admin/admin.el (set-version, set-copyright): Remove deleted files.
9610 2015-08-15  Stephen Leake  <stephen_leake@stephe-leake.org>
9612         Allow describe-function helpers to access buffer-local values
9613         This will be used by cedet/mode-local.el `describe-mode-local-override'
9614         on `help-fns-describe-function-functions' in upstream CEDET.
9615         * lisp/help-fns.el (describe-function-orig-buffer): New, let-bound in
9616         `describe-function'.
9617         (describe-function): Bind it, save it on the help xref stack.
9619         Handle pulse-background being nil
9620         * lisp/cedet/pulse.el (pulse-lighten-highlight): Inherit
9621         pulse-background, handle it being nil.
9623 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
9625         Fix "\`" confusion in Lisp strings
9626         * admin/authors.el (authors-canonical-author-name):
9627         Fix typo by using "\\`" not "\`" in string RE.
9628         * lisp/obsolete/complete.el (PC-complete-as-file-name):
9629         * lisp/obsolete/vi.el (vi-backward-blank-delimited-word):
9630         * lisp/progmodes/verilog-mode.el (verilog-mode-map):
9631         Use plain "`", not the equivalent-but-confusing "\`", in strings.
9632         * lisp/textmodes/texinfmt.el: Fix comment likewise.
9634 2015-08-15  Dani Moncayo  <dmoncayo@gmail.com>
9636         * nt/zipdist.bat: Remove -- no longer used.
9638 2015-08-15  Jürgen Hötzel  <juergen@archlinux.org>
9640         * lisp/net/tramp-sh.el (tramp-remote-selinux-p): Use "selinuxenabled"
9641         rather than "getenforce".
9642         (tramp-sh-handle-set-file-selinux-context): Do not
9643         cache SELinux context if not all context components are given.
9645 2015-08-15  Eli Zaretskii  <eliz@gnu.org>
9647         Add doc strings to 2 help-mode.el functions
9648         * lisp/help-mode.el (help-mode-setup, help-mode-finish): Add doc
9649         strings.  (Bug#21263)
9651         Remove files used by the old MS-Windows specific build procedure
9652         * admin/unidata/makefile.w32-in:
9653         * doc/emacs/makefile.w32-in:
9654         * doc/lispintro/makefile.w32-in:
9655         * doc/lispref/makefile.w32-in:
9656         * doc/misc/makefile.w32-in:
9657         * leim/makefile.w32-in:
9658         * lib-src/makefile.w32-in:
9659         * lib/makefile.w32-in:
9660         * lisp/makefile.w32-in:
9661         * nt/INSTALL.OLD:
9662         * nt/config.nt:
9663         * nt/emacs-src.tags:
9664         * nt/envadd.bat:
9665         * nt/gmake.defs:
9666         * nt/makefile.w32-in:
9667         * nt/multi-install-info.bat:
9668         * nt/nmake.defs:
9669         * nt/paths.h:
9670         * src/makefile.w32-in: Files deleted.
9671         * nt/configure.bat: Remove everything except the blurb about the
9672         new build procedure.
9673         * make-dist: Remove references to makefile.w32-in in various
9674         directories, and to files in nt/ that were deleted.
9675         * etc/NEWS: Mention the fact that the files were dropped.
9677 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
9679         * doc/emacs/mule.texi (Charsets): Give fuller title for ISO-IR.
9680         (Bug#21248)
9682 2015-08-14  Paul Eggert  <eggert@cs.ucla.edu>
9684         Default to inotify instead of gfile
9685         * configure.ac (with_file_notification): Fix typo that
9686         prevented suppression of file notification if HAVE_NS.
9687         (NOTIFY_OBJ): Prefer inotify to gfile if both exist and
9688         with_file_notification is 'yes' (Bug#21241).
9689         * etc/NEWS: Mention this.
9691         Fix broken URLs for ISO-IR
9692         * doc/emacs/mule.texi (Charsets):
9693         * lisp/international/mule-conf.el:
9694         Fix broken URL (Bug#21248).
9696         Low-level diagnostics now use ‘text-quoting-style’
9697         * src/doprnt.c (doprnt):
9698         Format ` and ' as per ‘text-quoting-style’.
9699         * src/xdisp.c (vmessage, message): Mention that the format should
9700         not contain ` or '.
9702         Prefer ‘format’ to ‘substitute-command-keys’
9703         * src/character.h (uLSQM, uRSQM): Move here ...
9704         * src/doc.c (uLSQM, uRSQM): ... from here.
9705         * src/doc.c (Fsubstitute_command_keys):
9706         * src/syntax.c (Finternal_describe_syntax_value):
9707         * lisp/cedet/mode-local.el (mode-local-print-binding)
9708         (mode-local-describe-bindings-2):
9709         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
9710         * lisp/cus-theme.el (describe-theme-1):
9711         * lisp/descr-text.el (describe-text-properties-1, describe-char):
9712         * lisp/emacs-lisp/cl-extra.el (cl--describe-class):
9713         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
9714         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
9715         * lisp/emacs-lisp/package.el (describe-package-1):
9716         * lisp/faces.el (describe-face):
9717         * lisp/help-fns.el (help-fns--key-bindings)
9718         (help-fns--compiler-macro, help-fns--parent-mode)
9719         (help-fns--obsolete, help-fns--interactive-only)
9720         (describe-function-1, describe-variable):
9721         * lisp/help.el (describe-mode):
9722         Prefer ‘format’ to ‘substitute-command-keys’ when either will do
9723         to implement quoting style.  This generally makes the code simpler.
9725         Extend ‘format’ to translate curved quotes
9726         This is a followup to the recent doc string change, and deals with
9727         diagnostics and the like.  This patch is more conservative than
9728         the doc string change, in that the behavior of ‘format’ changes
9729         only if its first arg contains curved quotes and the user prefers
9730         straight or grave quotes.  (Come to think of it, perhaps we should
9731         be similarly conservative with doc strings too, but that can wait.)
9732         The upside of this conservatism is that existing usage is almost
9733         surely unaffected.  The downside is that we'll eventually have to
9734         change Emacs's format strings to use curved quotes in places where
9735         the user might want curved quotes, but that's a simple and
9736         mechanical translation that I'm willing to do later.  (Bug#21222)
9737         * doc/lispref/help.texi (Keys in Documentation):
9738         Move description of text-quoting-style from here ...
9739         * doc/lispref/strings.texi (Formatting Strings):
9740         ... to here, and describe new behavior of ‘format’.
9741         * etc/NEWS: Describe new behavior.
9742         * lisp/calc/calc-help.el (calc-describe-thing):
9743         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
9744         * lisp/info.el (Info-find-index-name):
9745         Use ‘concat’ rather than ‘format’ to avoid misinterpretation
9746         of recently-added curved quotes.
9747         * src/doc.c (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
9748         Move from here ...
9749         * src/lisp.h: ... to here.
9750         * src/doc.c (text_quoting_style): New function.
9751         (Fsubstitute_command_keys): Use it.
9752         * src/editfns.c (Fformat): Implement new behavior.
9753         * src/lisp.h (enum text_quoting_style): New enum.
9755 2015-08-14  Stefan Monnier  <monnier@iro.umontreal.ca>
9757         * src/keyboard.c: Use false/true instead of 0/1 for booleans.
9758         * src/keyboard.h (struct kboard): Mark kbd_queue_has_data as boolean.
9760 2015-08-14  Michael Albinus  <michael.albinus@gmx.de>
9762         * lisp/net/tramp-sh.el (tramp-sh-handle-file-acl): Do not redirect
9763         stderr to /dev/null, this is done in `tramp-send-command-and-check'.
9765 2015-08-14  Jürgen Hötzel  <juergen@archlinux.org>
9767         Flush file properties in Tramp
9768         * lisp/net/tramp-sh.el (tramp-sh-handle-set-file-modes)
9769         (tramp-sh-handle-set-file-times):
9770         * lisp/net/tramp-adb.el (tramp-adb-handle-set-file-modes)
9771         (tramp-adb-handle-set-file-times): Flush the file properties of
9772         the directory.
9774 2015-08-14  Ronnie Schnell  <ronnie@driver-aces.com>
9776         * doc/emacs/misc.text (Amusements): Fixed typo.
9778 2015-08-14  Eli Zaretskii  <eliz@gnu.org>
9780         Don't miss warnings about removing string text properties while dumping
9781         * src/alloc.c (purecopy): Warn about removing a string's text
9782         properties even when the same string was already pure-copied
9783         earlier.
9784         * lisp/progmodes/elisp-mode.el (elisp--xref-format)
9785         (elisp--xref-format-extra): Fix the commentary.
9787 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
9789         * lisp/progmodes/sh-script.el (sh-mode): Handle .cshrc (bug#21049).
9791 2015-08-13  Magnus Henoch  <magnus.henoch@gmail.com>
9793         * lisp/progmodes/compile.el: Use lexical-binding.
9794         (compilation-move-to-column): Assume 8-wide TABs (bug#21038).
9796 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
9798         (uniquify-ask-about-buffer-names-p): Remove, unused (bug#21037)
9799         * lisp/uniquify.el: Remove redundant `:group's.
9801 2015-08-13  Jürgen Hötzel  <juergen@archlinux.org>
9803         * lisp/net/tramp-adb.el
9804         (tramp-adb-handle-directory-files-and-attributes): Make a copy of
9805         result to prevent modification of the tramp-cache by side effects.
9806         Use the correct cache key.
9808 2015-08-13  Paul Eggert  <eggert@cs.ucla.edu>
9810         Make add_to_log varargs
9811         * src/alloc.c (run_finalizer_handler):
9812         * src/charset.c (load_charset_map_from_vector):
9813         * src/nsimage.m (ns_load_image):
9814         * src/xfaces.c (load_pixmap, load_color2):
9815         Simplify, now that add_to_log has a variable number of args.
9816         * src/image.c (image_error): Take a variable number of args.
9817         Callers simplified.
9818         * src/lisp.h (add_to_log, vadd_to_log): Adjust to new APIs.
9819         * src/xdisp.c (format_nargs, vadd_to_log): New functions.
9820         (add_to_log): Make varargs, and reimplement in terms of vadd_to_log.
9821         * src/xfaces.c (merge_face_ref): Fix typo that omitted color name.
9823         Optional args for holiday-greek-orthodox-easter
9824         * etc/NEWS: Document this.
9825         * lisp/calendar/holidays.el (holiday-greek-orthodox-easter):
9826         Add optional args N and STRING, mimicking the API and code of
9827         ‘holiday-easter-etc’.  From suggestion by Foivos S. Zakkak (Bug#21256).
9829 2015-08-13  Stephen Leake  <stephen_leake@stephe-leake.org>
9831         xref-find-definitions: Exclude more generic function items.
9832         * lisp/emacs-lisp/cl-generic.el (cl--generic-search-method):
9833         Add doc string.
9834         (cl--generic-find-defgeneric-regexp): New.
9835         (find-function-regexp-alist): Add it.
9836         * lisp/emacs-lisp/find-func.el (find-feature-regexp): Move here from
9837         elisp-mode.el, change to search for ";;; Code:"
9838         (find-alias-regexp): Move here from elisp-mode.el, cleaned up.
9839         (find-function-regexp-alist): Add them.
9840         * lisp/progmodes/elisp-mode.el:
9841         (elisp--xref-format, elisp--xref-format-extra): Change back to
9842         defvar due to bug#21237.
9843         (elisp--xref-find-definitions): Exclude co-located default methods for
9844         generic functions.  Also exclude implicitly declared defgeneric.
9845         (elisp--xref-find-definitions): Handle C source properly.  Exclude minor
9846         mode variables defined by 'define-minor-mode'.
9847         * test/automated/elisp-mode-tests.el: Declare generic functions, add
9848         tests for them.
9849         (xref-elisp-test-run): Fix bug.
9850         (emacs-test-dir): Improve initial value.
9851         (find-defs-defun-defvar-el): Don't expect defvar.
9852         (find-defs-feature-el): Match change to find-feature-regexp.
9854 2015-08-13  Eli Zaretskii  <eliz@gnu.org>
9856         Improve warning about purecopy of strings with properties
9857         * src/alloc.c (purecopy): Show the offending string with the
9858         warning about removing its text properties.
9860 2015-08-12  Alan Mackenzie  <acm@muc.de>
9862         Introduce new macros to cover Emacs's new names in cl-lib.el
9863         This also eliminates `mapcan' warnings in XEmacs.
9864         * lisp/progmodes/cc-defs.el (c--mapcan-status): New variable to
9865         characterise [X]Emacs versions.
9866         (top-level): Require either 'cl or 'cl-lib, depending on
9867         c--mapcan-status.
9868         Change this back to cc-external-require from an eval-when-compile
9869         require.
9870         (c--mapcan, c--set-difference, c--intersection, c--macroexpand-all)
9871         (c--delete-duplicates): New macros which expand into either old or new
9872         names.
9873         (c-make-keywords-re, c-lang-defconst, c-lang-const): Use the new macros
9874         rather than the old names.
9875         * lisp/progmodes/cc-engine.el (c-declare-lang-variables): Use c--mapcan
9876         rather than mapcan.
9877         * lisp/progmodes/cc-fonts.el (c-compose-keywords-list): Use c--mapcan.
9878         * lisp/progmodes/cc-langs.el (top-level): Require either 'cl or 'cl-lib,
9879         depending on c--mapcan-status.
9880         (c-filter-ops, c-all-op-syntax-tokens, c-assignment-op-regexp)
9881         (c-type-start-kwds, c-prefix-spec-kwds, c-specifier-key)
9882         (c-not-decl-init-keywords, c-not-primitive-type-keywords)
9883         (c-paren-any-kwds, c-<>-sexp-kwds, c-block-stmt-kwds, c-expr-kwds)
9884         (c-decl-block-key, c-keywords, c-keywords-obarray)
9885         (c-regular-keywords-regexp, c-primary-expr-regexp)
9886         (c-primary-expr-regexp, c-block-prefix-disallowed-chars)
9887         (c-known-type-key, c-nonlabel-token-key)
9888         (c-make-init-lang-vars-fun): Use the new macros rather than the old
9889         names.
9891 2015-08-12  Oleh Krehel  <ohwoeowho@gmail.com>
9893         loadhist.el (read-feature): Conform to completing-read
9894         * lisp/loadhist.el (read-feature): According to `completing-read'
9895         documentation, if collection is a list, then it must be a list of
9896         strings, not a list of symbols like before.
9898 2015-08-12  David Kastrup  <dak@gnu.org>
9900         Deal gracefully with up-events (Bug#19746)
9901         * src/keyboard.c (apply_modifiers_uncached, parse_solitary_modifier)
9902         (parse_modifiers_uncached): React gracefully to "up-" modifiers:
9903         those may easily be injected by user-level Lisp code.
9904         (read_key_sequence): Discard unbound up-events like unbound
9905         down-events: they are even more likely only relevant for special
9906         purposes.
9907         While Emacs will not produce up-events on its own currently (those are
9908         converted to drag or click events before being converted to
9909         Lisp-readable structures), the input queue can be made to contain them
9910         by synthesizing events to `unread-command-events'.  Emacs should deal
9911         consistently with such events.
9913 2015-08-12  Eli Zaretskii  <eliz@gnu.org>
9915         Fix display of thin lines whose newline has line-height property of t
9916         * src/xdisp.c (append_space_for_newline): Don't try to fix ascent
9917         and descent values of non-empty glyph rows, since they could have
9918         forced low values deliberately.  (Bug#21243)
9920 2015-08-12  Richard Stallman  <rms@gnu.org>
9922         Offer to combine multiple To or CC fields.
9923         * lisp/mail/sendmail.el (mail-combine-fields): New function.
9924         (mail-send): Call 'mail-combine-fields'.
9926         Don't decrypt encrypted files.
9927         * lisp/mail/mail-utils.el (mail-file-babyl-p): Bind epa-inhibit to t.
9929         Handle encrypted mbox files.
9930         * lisp/mail/rmailout.el (rmail-output-as-mbox): Decrypt and reencrypt
9931         the mbox file if necessary.
9933         Re-enable mime processing after decryption.  Add 'decrypt' keyword.
9934         * lisp/mail/rmail.el (rmail-epa-decrypt-1): New subroutine.
9935         (rmail-epa-decrypt): rmail-epa-decrypt-1 broken out.
9936         In a mime message, reenable Mime and show the parts that
9937         were shown before.
9938         Add keyword "decrypt" if anything decrypted.
9940         epa-inhibit inhibits auto-recognition of .gpg files
9941         * lisp/epa-file.el (epa-inhibit): New variable.
9942         (epa-file-handler): Check epa-inhibit.
9944 2015-08-12  Artur Malabarba  <bruce.connor.am@gmail.com>
9946         * lisp/emacs-lisp/lisp-mnt.el (lm-header): Add save-excursion.
9948 2015-08-11  Fabián Ezequiel Gallina  <fgallina@gnu.org>
9950         Respect python.el imenu when semantic-mode is off
9951         Fixes bug#21220
9952         * lisp/cedet/semantic/wisent/python.el: Do not force
9953         wisent-python-default-setup on python-mode-hook.
9955 2015-08-11  Paul Eggert  <eggert@cs.ucla.edu>
9957         Give names to Unicode code points in C code
9958         * src/character.h (NO_BREAK_SPACE, SOFT_HYPHEN)
9959         (ZERO_WIDTH_NON_JOINER, ZERO_WIDTH_JOINER, HYPHEN)
9960         (NON_BREAKING_HYPHEN, LEFT_SINGLE_QUOTATION_MARK)
9961         (RIGHT_SINGLE_QUOTATION_MARK, PARAGRAPH_SEPARATOR)
9962         (LEFT_POINTING_ANGLE_BRACKET, RIGHT_POINTING_ANGLE_BRACKET)
9963         (LEFT_ANGLE_BRACKET, RIGHT_ANGLE_BRACKET)
9964         (OBJECT_REPLACEMENT_CHARACTER):
9965         New named constants for Unicode code points.
9966         * src/bidi.c (bidi_fetch_char, CANONICAL_EQU):
9967         * src/composite.c (char_composable_p):
9968         * src/lread.c (readevalloop, read1):
9969         * src/xdisp.c (get_next_display_element):
9970         Use them.
9971         * src/doc.c (LEFT_SINGLE_QUOTATION_POINT):
9972         Remove; now in character.h.
9974 2015-08-11  Stephen Leake  <stephen_leake@stephe-leake.org>
9976         elisp--xref-find-definitions handle cl-defstuct default constructor
9977         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Add FIXME.
9978         (elisp--xref-format-extra): Rename from elisp--xref-format-cl-defmethod.
9979         (elisp--xref-find-definitions): Handle cl-defstuct default constructor.
9980         * test/automated/elisp-mode-tests.el (xref-elisp-test-run): Split out
9981         from xref-elisp-test for ease of debugging.
9982         (xref-elisp-deftest): Rename from xref-elisp-test.
9983         (find-defs-constructor): New test.
9984         (find-defs-defgeneric-el): Match batch test config.
9985         (compile): Required for find-defs compilation-minor-mode test.
9986         (find-defs-defvar-el): Match code change.
9987         (find-defs-face-el): Match code change.
9988         * lisp/progmodes/xref.el (xref-find-function, xref-find-definitions):
9989         Improve doc string.
9991 2015-08-11  Stefan Monnier  <monnier@iro.umontreal.ca>
9993         * lisp/replace.el (perform-replace): Document `replacements'.
9994         (perform-replace): Move the description of the format of `replacements'
9995         from the body's comment to the doc string.
9997 2015-08-11  Jürgen Hötzel  <juergen@archlinux.org>
9999         * lisp/net/tramp-adb.el (tramp-adb-prompt): Match leading escape
10000         sequence.  Recent adb version send initial escape sequences, even
10001         when terminal type is set to TERM=dumb.
10003 2015-08-10  Stephen Leake  <stephen_leake@stephe-leake.org>
10005         Rewrite elisp--xref-find-definitions to handle many more cases; add tests
10006         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
10007         Function deleted.
10008         (elisp--xref-format-cl-defmethod): New defconst.
10009         (find-feature-regexp, find-alias-regexp): New defcustoms.
10010         (elisp--xref-make-xref): New function.
10011         (elisp--xref-find-definitions): Rewrite using the above, handle many
10012         more cases.  Always output all available definitions.
10013         (xref-location-marker): No need for special cases.
10014         * test/automated/elisp-mode-tests.el: Add more tests of
10015         elisp--xref-find-definitions, improve current tests.
10017 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
10019         Fix recording of events pushed onto unread-command-events
10020         * src/keyboard.c (read_char): Make sure events read from
10021         unread-command-events and unread-post-input-method-events are
10022         always recorded by record_char.  Reported by David Kastrup
10023         <dak@gnu.org>, see
10024         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00193.html.
10026 2015-08-10  Samer Masterson  <samer@samertm.com>
10028         Set file buffer as current for "--file"
10029         * lisp/startup.el (command-line-1): Set file buffer as current before
10030         it is displayed so it can be used with options like "--eval".
10031         (Bug#21095)
10033 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
10035         Avoid setting LC_NUMERIC on MS-Windows to anything but "C"
10036         * src/emacs.c (synchronize_locale) [WINDOWSNT]: Call fixup_locale
10037         after setting LC_ALL to the desired locale, to avoid affecting how
10038         numbers are read and printed.  (Bug#21223)
10040 2015-08-10  Alan Mackenzie  <acm@muc.de>
10042         Fix "Invalid search bound (wrong side of point)" in fontification
10043         * lisp/progmodes/cc-fonts.el (c-font-lock-declarators): After skipping
10044         an initialization expression, check point is not beyond the
10045         fontification limit.
10047 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
10049         Fix DPI calculation when Xft/DPI is default
10050         * src/xsettings.c (parse_settings): Don't use Xft/DPI default
10051         value of -1, which evaluates to 2**32 - 1 (Bug#21152).
10052         Remove unnecessary cast while we're in the neighborhood.
10054 2015-08-09  Dmitry Gutov  <dgutov@yandex.ru>
10056         Add project-vc-search-path and project-vc-ignores
10057         * lisp/progmodes/project.el (project-vc): New group.
10058         (project-vc-search-path, project-vc-ignores): New variables.
10059         (project--value-in-dir): Utility function.
10060         (project-search-path, project-ignores): Use them.
10061         * lisp/progmodes/xref.el (xref--rgrep-command): Only replace `./'
10062         at bos.  Don't add extra `/'.  Don't prepend with `*' if replaced.
10064 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
10066         Fix some minor quoting issues with grave accent
10067         * src/dispnew.c (add_window_display_history) [GLYPH_DEBUG]:
10068         Remove redundant quotes.
10069         * src/doc.c (uLSQM, uRSQM): New macros.
10070         * src/doc.c (Fsubstitute_command_keys):
10071         * src/syntax.c (Finternal_describe_syntax_value): Follow the user
10072         preference for quotes rather than hardcoding the ‘grave’ style.
10073         * src/regex.c (PUSH_FAILURE_POINT, POP_FAILURE_POINT)
10074         (re_match_2_internal) [DEBUG]: In debugging output, quote C
10075         strings with "...", not `...'.
10077         ChangeLog.2 ignores remote-tracking merges
10078         * build-aux/gitlog-to-emacslog: Ignore commit logs matching
10079         "Merge remote-tracking branch '.*'" too.  See Eli Zaretskii in:
10080         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00384.html
10082 2015-08-09  Nicolas Richard  <youngfrog@members.fsf.org>
10084         Use kpsewhich in ffap-latex-mode, if available
10085         * lisp/ffap.el (ffap-latex-guess-rules): New variable.
10086         (ffap-latex-mode): Use kpsewhich if available.
10088         ffap: disallow braces in filenames for tex modes
10089         * lisp/ffap.el (ffap-string-at-point-mode-alist): Don't allow
10090         braces in tex-related modes.
10092         Remove useless backslashes from ffap-string-at-point-mode-alist
10093         * lisp/ffap.el (ffap-string-at-point-mode-alist): Remove useless and
10094         misleading backslashes from default value.
10096         Augment docstring of ffap-string-at-point-mode-alist
10097         * lisp/ffap.el (ffap-string-at-point-mode-alist): Describe how BEG
10098         and END are handled.
10100 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
10102         * lisp/org/org-src.el (org-edit-src-code)
10103         (org-edit-fixed-width-region):
10104         * lisp/simple.el (completion-setup-function):
10105         Remove calls to substitute-command-keys that always just return
10106         their argument.
10108 2015-08-09  Daiki Ueno  <ueno@gnu.org>
10110         * lisp/epa.el (epa-exit-buffer-function): Set to `quit-window'.
10111         (Bug#21210)
10113 2015-08-09  Ivan Kanis  <ivan@kanis.fr>
10115         Fix link to source code in help window
10116         * lisp/help-fns.el (find-lisp-object-file-name): Remove code that
10117         will never work due to Glenn Morris change a6d63d9 on Apr 20 2013
10118         'No longer include timestamp in header of .elc files'.  Add code
10119         that will return .el source file in load-path.
10121 2015-08-09  Artur Malabarba  <bruce.connor.am@gmail.com>
10123         * lisp/isearch.el (isearch-search-fun-default): (Bug#21164)
10124         Respect `isearch-lax-whitespace' when searching through
10125         `isearch-word'.
10127 2015-08-08  Stefan Monnier  <monnier@iro.umontreal.ca>
10129         * test/automated/ert-tests.el (ert-test-deftest): Add FIXME.
10131         * org.el: Fix up some lexical scoping warnings, and use dolist
10132         * lisp/org/org.el (org-set-regexps-and-options-for-tags, org-goto-map)
10133         (org-set-regexps-and-options, org-assign-fast-keys)
10134         (org-contextualize-keys, org-contextualize-validate-key)
10135         (org-notes-order-reversed-p, org-local-logging, org-map-entries)
10136         (org-find-olp, org-find-exact-heading-in-directory)
10137         (org-cycle-agenda-files, org-release-buffers, org-fill-template)
10138         (org-agenda-prepare-buffers, org-occur-in-agenda-files)
10139         (org-replace-escapes): Use dolist.
10140         (org-mode): Optimize away XEmacs-only code.
10141         (org-refile-get-targets): Remove unused var `f'.
10142         (org-fast-todo-selection): Remove unused var `e'.
10143         (org-make-tags-matcher): Use dolist.  Remove unused var `term'.
10144         (org-fast-tag-selection): Use dolist.  Remove unused var `e'.
10145         (org-format-latex): Use dolist.  Remove unused var `e'.
10146         (org-toggle-heading): Access vars lexically rather than dynamically.
10147         (org-backward-sentence, org-forward-sentence, org-meta-return)
10148         (org-kill-line): Mark arg as unused.
10149         (org-submit-bug-report): Silence compiler warning.
10150         (org-occur-in-agenda-files): Don't use add-to-list on local vars.
10151         (org-get-cursor-date): Remove unused var `tm'.
10152         (org-comment-or-uncomment-region): Use standard name `_'.
10153         (reftex-docstruct-symbol, reftex-cite-format): Declare to
10154         silence byte-compiler.
10155         (org-reftex-citation): Add `org--' prefix to dynamically scoped
10156         `rds' var.
10158 2015-08-08  Paul Eggert  <eggert@cs.ucla.edu>
10160         Electric quote if coding is undecided or no conv
10161         * lisp/electric.el (electric--insertable-p): Also say that a
10162         string is insertable if the buffer file coding system is undecided
10163         or uses no conversion, as curved quotes will work in either case.
10165         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Simplify configuration.
10167 2015-08-08  Eli Zaretskii  <eliz@gnu.org>
10169         Fix overlay string display regressions introduced in Emacs 24.5
10170         * src/xdisp.c (pop_it): Reset the flag to ignore overlays at this
10171         buffer position, if we move the iterator to a new position as
10172         result of jumping over text covered by a "replacing" display
10173         property.
10174         * test/redisplay-testsuite.el (test-redisplay-4): Add 2 new tests.
10176         Support recovery from C stack overflow on MS-Windows
10177         * src/w32fns.c (w32_reset_stack_overflow_guard)
10178         (stack_overflow_handler): New functions for handling C stack
10179         overflow exceptions.
10180         (my_exception_handler): Handle EXCEPTION_STACK_OVERFLOW exceptions
10181         specially, and zero out except_addr if we do.
10182         (globals_of_w32fns): Initialize dwMainThreadId in non-interactive
10183         mode.
10184         * src/sysdep.c [HAVE_STACK_OVERFLOW_HANDLING]: Add !WINDOWSNT to
10185         the condition, as HAVE_STACK_OVERFLOW_HANDLING is now defined for
10186         the MinGW build, but the code guarded by that is for Posix hosts.
10187         * src/keyboard.c (command_loop) [WINDOWSNT]:
10188         Call w32_reset_stack_overflow_guard.
10189         * nt/inc/ms-w32.h (sigjmp_buf): New typedef.
10190         (sigsetjmp): New macro.
10191         (w32_reset_stack_overflow_guard): Declare the prototype.
10192         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Set to 1 for MinGW.
10194 2015-08-07  Phillip Lord  <phillip.lord@newcastle.ac.uk>
10196         Improve error signalling for seq-subseq
10197         * lisp/seq.el (seq-subseq): The existing behavior is to error
10198         when indexes are too large, but to silently ignore numbers which
10199         are too negative for lists.  String and vector handling errors in
10200         both cases.  This has been regularized.  Error signaling behavior
10201         has been explicitly added to the doc string.
10203         * lisp/cl-extra.el (cl-subseq): Defers to (seq-subseq) and is
10204         therefore also impacted by this change.  Update the doc string
10205         to reflect this.
10207         * test/automated/seq-tests.el (test-seq-subseq): Tests have been
10208         added for these exceptional cases, as well as one non exceptional
10209         base case.
10211 2015-08-07  Jürgen Hötzel  <juergen@archlinux.org>
10213         Improve error checking in tramp-adb.el
10214         * lisp/net/tramp-adb.el (tramp-adb-ls-output-name-less-p):
10215         Improve error checking.  "ls -l" on Android in Enforcing mode can
10216         print "lstat './FILENAME failed: Permission denied".
10218 2015-08-07  Stefan Monnier  <monnier@iro.umontreal.ca>
10220         * lisp/emacs-lisp/cl-generic.el (cl--generic-struct-tag): Don't burp on
10221         non-struct vectors.
10223 2015-08-07  Stephen Leake  <stephen_leake@stephe-leake.org>
10225         Fix typo in lisp/window.el, more `display-buffer-use-some-frame'
10226         * lisp/window.el: Fix typo that broke build.
10227         (display-buffer--action-function-custom-type):
10228         Add `display-buffer-use-some-frame'.
10229         (display-buffer): Add `display-buffer-use-some-frame' to doc string.
10231         Add support for 'inhibit-same-window in 'display-buffer-use-some-frame'
10232         * lisp/window.el (display-buffer-use-some-frame): Add support for
10233         'inhibit-same-window in alist.
10234         * doc/windows.texi (display-buffer-use-some-frame): Doc support for
10235         'inhibit-same-window in alist.
10237 2015-08-07  Eli Zaretskii  <eliz@gnu.org>
10239         Avoid infinite loop in display of invisible text in strings
10240         * src/xdisp.c (handle_invisible_prop): If the next change of
10241         invisibility spec does not mean the beginning of a visible text,
10242         update the string position from which to start the search for the
10243         next invisibility change.  This avoids an infinite loop when we
10244         have more than one invisibility spec that are made inactive by
10245         buffer-invisibility-spec.  Simplify code.  (Bug#21200)
10246         * test/redisplay-testsuite.el (test-redisplay-4): Add a test case
10247         for the situation that caused bug #21200.
10249 2015-08-06  Artur Malabarba  <bruce.connor.am@gmail.com>
10251         * lisp/emacs-lisp/package.el: Simplify describe-package-1
10252         (package-help-section-name-face): New face.
10253         (package--print-help-section): New function.
10254         (describe-package-1): Refactor section printing.
10255         (package-make-button): Use face instead of font-lock-face, which
10256         doesn't work on buttons.
10258         * lisp/emacs-lisp/package.el: Define custom faces
10259         (package-name-face, package-description-face)
10260         (package-status-built-in-face, package-status-external-face)
10261         (package-status-available-face, package-status-new-face)
10262         (package-status-held-face, package-status-disabled-face)
10263         (package-status-installed-face, package-status-dependency-face)
10264         (package-status-unsigned-face, package-status-incompat-face)
10265         (package-status-avail-obso-face): New faces.
10266         (package-menu--print-info-simple): Use them.
10268 2015-08-05  Paul Eggert  <eggert@cs.ucla.edu>
10270         Fix some confusion with ‘format’
10271         * lisp/allout-widgets.el (allout-widgets-before-change-handler)
10272         (allout-graphics-modification-handler):
10273         Protect arbitrary string in a format context with "%s" format.
10274         * lisp/avoid.el:
10275         * lisp/cedet/semantic/bovine/scm.el: Fix comment.
10276         * lisp/calendar/icalendar.el (icalendar--convert-sexp-to-ical):
10277         * lisp/erc/erc-button.el (erc-button-beats-to-time):
10278         * lisp/gnus/message.el (message-send-form-letter):
10279         * lisp/org/ob-core.el (org-babel-check-evaluate)
10280         (org-babel-confirm-evaluate):
10281         * lisp/org/ob-fortran.el (org-babel-fortran-var-to-fortran):
10282         * lisp/org/ox-latex.el (org-latex-compile):
10283         * lisp/org/ox-man.el (org-man-compile):
10284         * lisp/org/ox-odt.el (org-odt-template):
10285         * lisp/org/ox-texinfo.el (org-texinfo-compile):
10286         * lisp/progmodes/prolog.el (prolog-help-info)
10287         (prolog-view-predspec):
10288         * lisp/progmodes/ruby-mode.el (ruby-parse-partial):
10289         * lisp/progmodes/verilog-mode.el (verilog-showscopes):
10290         * lisp/textmodes/rst.el (rst-replace-lines):
10291         Change (message (format ...)) to (message ...), and likewise
10292         for ‘error’.  This lessens the probability of confusion when the
10293         output of ‘format’ contains ‘%’.
10295 2015-08-05  Artur Malabarba  <bruce.connor.am@gmail.com>
10297         * lisp/replace.el (replace-character-fold): Default to nil.
10299         * lisp/character-fold.el: Fix lax whitespace.
10300         (character-fold-table): Don't make space match other whitespace chars.
10301         (character-fold-to-regexp): Simplify lax behavior.
10303 2015-08-05  Dmitry Gutov  <dgutov@yandex.ru>
10305         Preserve window point in xref-find-definitions-other-window
10306         Fix the problem reported by Ingo Logmar in
10307         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00152.html
10308         * lisp/progmodes/xref.el (xref--goto-char): Extract from
10309         xref--goto-location.
10310         (xref--pop-to-location): Use it.  Replace xref--goto-location with
10311         a direct xref-location-marker call.
10312         (xref--show-location): Likewise.
10313         (xref--display-position): Use xref--goto-char.
10315         * lisp/progmodes/project.el: Add a paragraph to the front matter.
10317 2015-08-04  David Kastrup  <dak@gnu.org>
10319         * lisp/vc/emerge.el (emerge-show-file-name):
10320         * lisp/progmodes/vhdl-mode.el (vhdl-electric-dash)
10321         (vhdl-comment-insert, vhdl-hooked-abbrev):
10322         * lisp/progmodes/octave.el (inferior-octave-dynamic-list-input-ring):
10323         * lisp/progmodes/fortran.el (fortran-window-create-momentarily):
10324         * lisp/progmodes/ebrowse.el (ebrowse-hack-electric-buffer-menu):
10325         * lisp/progmodes/cperl-mode.el (cperl-putback-char):
10326         * lisp/obsolete/vip.el (vip-escape-to-emacs)
10327         (vip-prefix-arg-value, vip-prefix-arg-com):
10328         * lisp/obsolete/terminal.el (te-escape-extended-command-unread):
10329         * lisp/leim/quail/tibetan.el (quail-tibetan-update-translation)
10330         (quail-tibkey-update-translation):
10331         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
10332         * lisp/leim/quail/lao.el (quail-lao-update-translation):
10333         * lisp/leim/quail/japanese.el (quail-japanese-update-translation)
10334         (quail-japanese-self-insert-and-switch-to-alpha):
10335         * lisp/leim/quail/hangul.el (hangul2-input-method)
10336         (hangul3-input-method, hangul390-input-method):
10337         * lisp/language/hanja-util.el (hangul-to-hanja-char):
10338         * lisp/international/robin.el (robin-input-method):
10339         * lisp/international/quail.el (quail-start-translation)
10340         (quail-start-conversion):
10341         * lisp/gnus/gnus-art.el (gnus-article-describe-key)
10342         (gnus-article-describe-key-briefly):
10343         * lisp/eshell/em-hist.el (eshell-list-history):
10344         * lisp/term.el (term-dynamic-list-input-ring)
10345         (term-dynamic-list-completions):
10346         * lisp/subr.el (momentary-string-display):
10347         * lisp/simple.el (read-quoted-char):
10348         * lisp/pcomplete.el (pcomplete-show-completions):
10349         * lisp/kmacro.el (kmacro-repeat-on-last-key):
10350         * lisp/info.el (Info-summary):
10351         * lisp/ehelp.el (electric-help-command-loop):
10352         * lisp/ebuff-menu.el (electric-buffer-list)
10353         (Electric-buffer-menu-exit):
10354         * lisp/double.el (double-translate-key):
10355         * lisp/comint.el (comint-dynamic-list-input-ring)
10356         (comint-dynamic-list-completions): Do not overwrite preexisting
10357         contents of `unread-command-events' when putting new events into it.
10359 2015-08-04  Daniel Colascione  <dancol@dancol.org>
10361         Improve ansi-color filtering of unrecognized escape sequences
10362         * lisp/ansi-color.el (ansi-color-drop-regexp): Recognize mode-setting
10363         escape sequences.
10364         (ansi-color-filter-apply, ansi-color-apply): Filter out
10365         unrecognized escape sequences.
10367 2015-08-04  Artur Malabarba  <bruce.connor.am@gmail.com>
10369         * lisp/emacs-lisp/package.el (package-menu-mode-map): Convert menu
10370         definitions to `easy-menu-define', improve a couple to account for
10371         async, and add a couple of new commands.
10373 2015-08-03  Jürgen Hötzel  <juergen@archlinux.org>
10375         * lisp/net/tramp-cache.el (tramp-set-file-property): Fix code typo.
10377 2015-08-03  Ingo Lohmar  <i.lohmar@gmail.com>
10379         Add new 'calendar-weekend-days' option
10380         Make the days receiving the 'calendar-weekend-header' face freely
10381         customizable, as they differ by region/culture.
10382         * doc/emacs/calendar.texi (Move to Beginning or End): Document the
10383         new variable.
10384         * lisp/calendar/calendar.el (calendar-generate-month): New variable
10385         calendar-weekend-days to customize day header fontification.
10387 2015-08-03  Paul Eggert  <eggert@cs.ucla.edu>
10389         Redo text-quoting-style variable
10390         Rename help-quote-translation to text-quoting-style,
10391         and use symbols rather than characters as values.
10392         This follows suggestions along these lines by Alan Mackenzie in:
10393         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00343.html
10394         and by Drew Adams in:
10395         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00048.html
10396         * doc/lispref/help.texi (Keys in Documentation)
10397         * etc/NEWS:
10398         * lisp/cus-start.el (standard):
10399         * src/doc.c (Fsubstitute_command_keys, syms_of_doc):
10400         Document and/or implement the new behavior instead of the old.
10401         (syms_of_doc): New symbols 'grave' and 'straight'.
10403 2015-08-03  Nikolaus Rath  <Nikolaus@rath.org>
10405         nnimap.el: Use IMAP MOVE extension if available
10406         * lisp/gnus/nnimap.el (nnimap-request-move-article)
10407         (nnimap-process-expiry-targets, nnimap-split-incoming-mail):
10408         Use MOVE extension if available.
10410         nnimap.el: Explicitly ask for server capabilities
10411         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Don't assume full
10412         capabilities will be returned in the login-result.
10414 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
10416         Treat help strings like other doc strings
10417         * doc/lispref/text.texi (Special Properties), etc/NEWS: Document this.
10418         * lisp/epa.el (epa--select-keys): Remove no-longer-needed calls to
10419         substitute-command-keys.
10420         * src/keyboard.c (show_help_echo, parse_menu_item): Call
10421         substitute-command-keys on the help string before displaying it.
10423         Also mention "curly quotes"
10424         See Drew Adams's email in:
10425         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00040.html
10426         * doc/lispref/help.texi (Keys in Documentation):
10427         Add index entry "curly quotes".
10428         * etc/NEWS: Use the phrase "curly quotes" too.
10430         ede-proj-target-makefile docstring tweaks
10431         * lisp/cedet/ede/proj.el (ede-proj-target-makefile):
10432         Consistently use "all:" to describe the all: target,
10433         replacing three different and confusingly-quoted usages.
10435 2015-08-02  Evgeny Fraimovitch  <johnlen7@gmail.com>  (tiny change)
10437         Don't abort emacsclientw when -a was specified
10438         * lib-src/emacsclient.c (set_tcp_socket) [WINDOWSNT]: Don't error
10439         out if we are in emacsclientw and -a was specified.
10441 2015-08-02  Eli Zaretskii  <eliz@gnu.org>
10443         Fix handling of 1st keystroke on MS-Windows
10444         * src/w32fns.c (globals_of_w32fns): Initialize after_deadkey to -1.
10445         This is needed to correctly handle the session's first keystroke,
10446         if it has any modifiers.  (Bug#19994)
10448 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
10450         Substitute some customization etc. doc strings
10451         These changes apply substitute-command-keys to some
10452         doc strings that were going through untranslated
10453         when creating customization or other widgets.
10454         * lisp/cus-edit.el (custom-group-value-create):
10455         * lisp/wid-edit.el (widget-default-create):
10456         (widget-push-button-value-create):
10457         Treat the widget tag as a doc string.
10458         * lisp/emacs-lisp/cl-extra.el (cl--describe-class-slot):
10459         Treat the :documentation value as a doc string.
10460         * lisp/wid-edit.el (widget-choose):
10461         Treat the choice names as doc strings.
10462         (widget-default-create): Treat the :doc value as a doc string.
10463         (widget-toggle-value-create): Treat the :on and :off values
10464         as doc strings.
10465         (widget-documentation-string-value-create):
10466         Substitute the doc string.
10468 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
10470         Add a second argument to project-ignores
10471         * lisp/progmodes/project.el (project-ignores): Add a second
10472         argument DIR.
10473         * lisp/progmodes/project.el (project-ignores): Only include the VC
10474         ignores if DIR is the VC root.
10475         * lisp/progmodes/xref.el (xref-find-regexp): Update accordingly.
10477 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
10479         Prevent incorrect display when 'line-spacing' variable is set
10480         * src/xdisp.c (try_window_id): Give up this optimization if the
10481         buffer has its 'line-spacing' variable set non-nil.
10483 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
10485         Don't pass NOVISIT to find-file
10486         * lisp/progmodes/etags.el (next-file):
10487         Don't pass NOVISIT to find-file (bug#21175).
10489         Ignore buffer restriction for tags-loop-eval
10490         * lisp/progmodes/etags.el (tags-loop-continue): Ignore buffer
10491         restriction (bug#21167).
10493 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
10495         Fix a thinko in 'ffap-gopher-at-point'
10496         * lisp/ffap.el (ffap-gopher-at-point): Fix last change.  (Bug#21168)
10498         Honor 'line-spacing' for empty lines
10499         * src/xdisp.c (append_space_for_newline): Honor 'line-height'
10500         property and 'line-spacing' frame parameter or variable or
10501         property for empty lines, by doing the same processing as in
10502         x_produce_glyph for newline characters.  (Bug#21165)
10504 2015-08-01  Paul Eggert  <eggert@cs.ucla.edu>
10506         Simplify by assuming C99 integer division
10507         * src/floatfns.c (ceiling2, floor2, truncate2):
10508         Assume C99 (i.e., Fortran) semantics for integer division.
10509         This simplifies the code.
10511 2015-07-31  Paul Eggert  <eggert@cs.ucla.edu>
10513         Don't overflow if computing approximate percentage
10514         * lisp/align.el (align-region):
10515         * lisp/cedet/semantic.el (semantic-repeat-parse-whole-stream):
10516         * lisp/cedet/semantic/wisent.el (wisent-parse-region):
10517         * lisp/cus-edit.el (custom-buffer-create-internal):
10518         * lisp/emacs-lisp/checkdoc.el (checkdoc-interactive-ispell-loop)
10519         (checkdoc-message-interactive-ispell-loop, checkdoc-next-error)
10520         (checkdoc-next-message-error):
10521         * lisp/emacs-lisp/eieio-opt.el (eieio-display-method-list):
10522         * lisp/epa.el (epa-progress-callback-function):
10523         * lisp/erc/erc-dcc.el (erc-dcc-do-LIST-command):
10524         * lisp/ffap.el (ffap-menu-rescan):
10525         * lisp/gnus/nnbabyl.el (nnbabyl-retrieve-headers):
10526         * lisp/gnus/nndiary.el (nndiary-retrieve-headers):
10527         * lisp/gnus/nneething.el (nneething-retrieve-headers):
10528         * lisp/gnus/nnmbox.el (nnmbox-retrieve-headers):
10529         * lisp/gnus/nnmh.el (nnmh-retrieve-headers):
10530         * lisp/gnus/nnml.el (nnml-retrieve-headers):
10531         * lisp/gnus/nnspool.el (nnspool-retrieve-headers):
10532         * lisp/gnus/nntp.el (nntp-retrieve-headers)
10533         (nntp-retrieve-articles):
10534         * lisp/imenu.el (imenu--relative-position):
10535         * lisp/international/ja-dic-cnv.el (skkdic-collect-okuri-nasi)
10536         (skkdic-convert-okuri-nasi):
10537         * lisp/net/ange-ftp.el (ange-ftp-process-handle-hash):
10538         * lisp/nxml/rng-valid.el (rng-compute-mode-line-string):
10539         * lisp/org/org-list.el (org-update-checkbox-count):
10540         * lisp/org/org.el (org-table-map-tables)
10541         (org-update-parent-todo-statistics):
10542         * lisp/play/decipher.el (decipher-insert-frequency-counts)
10543         (decipher-analyze-buffer):
10544         * lisp/profiler.el (profiler-format-percent):
10545         * lisp/progmodes/cc-cmds.el (c-progress-update):
10546         * lisp/progmodes/cpp.el (cpp-highlight-buffer):
10547         * lisp/progmodes/idlwave.el (idlwave-convert-xml-system-routine-info)
10548         (idlwave-list-load-path-shadows):
10549         * lisp/progmodes/opascal.el (opascal-step-progress):
10550         * lisp/progmodes/vhdl-mode.el (vhdl-update-progress-info)
10551         (vhdl-scan-directory-contents):
10552         * lisp/textmodes/bibtex.el (bibtex-progress-message):
10553         * lisp/textmodes/flyspell.el (flyspell-small-region)
10554         (flyspell-external-point-words):
10555         * lisp/textmodes/table.el (table-recognize):
10556         Prefer (floor (* 100.0 NUMERATOR) DENOMINATOR) when calculating
10557         progress-report percentages and the like.  This avoids problems
10558         if (* 100 NUMERATOR) would overflow.
10559         * lisp/gnus/gnus-registry.el (gnus-registry-import-eld):
10560         * lisp/gnus/registry.el (registry-reindex):
10561         Use (* 100.0 ...) rather than (* 100 ...) to avoid int overflow issues.
10562         * lisp/descr-text.el (describe-char):
10563         * lisp/org/org-colview.el (org-nofm-to-completion):
10564         * lisp/ps-print.el (ps-plot):
10565         * lisp/simple.el (what-cursor-position):
10566         Prefer (round (* 100.0 NUMERATOR) DENOMINATOR) to a
10567         more-complicated and less-accurate approximation.
10569         Fix some int overflows in profiler.c
10570         * src/profiler.c (make_log): Make args EMACS_INT, not int,
10571         to avoid unwanted behavior on 'int' overflow.
10572         (make_log, evict_lower_half, record_backtrace):
10573         Use ptrdiff_t, not int, for object indexes.
10575         Port to pedantic memcpy
10576         * src/keyboard.c (menu_bar_items, tool_bar_items):
10577         * src/xrdb.c (magic_db):
10578         Port to pedantic memcpy implementations that reject memcpy (0, 0, 0).
10580         Merge from gnulib
10581         This incorporates:
10582         2015-07-29 time_rz: port to pedantic memcpy
10583         * lib/time_rz.c: Copy from gnulib.
10585 2015-07-31  Artur Malabarba  <bruce.connor.am@gmail.com>
10587         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
10588         When updating the very last entry, tabulated-list-print would
10589         erase it and then try to look at the next one (which obviously
10590         isn't there).
10592 2015-07-31  Eli Zaretskii  <eliz@gnu.org>
10594         Allow to use the old key processing code on MS-Windows
10595         * src/w32fns.c (syms_of_w32fns) <w32-use-fallback-wm-chars-method>:
10596         New variable.
10597         (w32_wnd_proc): Use it to invoke the old code that processed
10598         character keys, as fallback, when this variable is non-nil.
10599         Fix typos in comments.  (Bug#19994)
10601 2015-07-31  Ilya Zakharevich  <ilya@math.berkeley.edu>
10603         Improve handling of Unicode keyboard input on MS-Windows
10604         * src/w32fns.c (get_wm_chars, deliver_wm_chars): New functions.
10605         (FPRINTF_WM_CHARS) [DEBUG_WM_CHARS]: New macro for debugging.
10606         (w32_wnd_proc): Call deliver_wm_chars to process non-special keys
10607         upon receiving WM_KEYDOWN or WM_SYSKEYDOWN messages.  If that is
10608         successful, don't call TranslateMessage.  (Bug#19994)
10610 2015-07-30  Dmitry Gutov  <dgutov@yandex.ru>
10612         Fix default-directory in changeset diffs after vc-print-log
10613         * lisp/vc/log-view.el (log-view-diff-common): Move the
10614         revision-granularity check back into log-view-diff-changeset.
10615         (log-view-diff-changeset): Bind default-directory to the current
10616         VC root.
10618         Rename project-directories to project-roots
10619         * lisp/progmodes/project.el (project-search-path-function)
10620         (project-search-path): Update the docstring.
10621         (project-directories): Rename to `project-roots', update all
10622         callers and implementations accordingly.
10623         (project-root): Remove.
10624         * lisp/progmodes/xref.el (xref-find-regexp): Use * instead of *.*
10625         as the default file mask.
10627 2015-07-30  Eli Zaretskii  <eliz@gnu.org>
10629         Support long URLs in w32-shell-execute
10630         * src/w32fns.c (Fw32_shell_execute): Don't use filename_to_utf16
10631         and filename_to_ansi to convert the DOCUMENT argument, as it could
10632         be a URL that is not limited to MAX_PATH characters.  Instead, use
10633         MultiByteToWideChar directly, and allocate heap storage as
10634         required to accommodate the converted string.  Likewise with
10635         non-Unicode operation.  Ensure OPERATION is null-terminated, even
10636         if it is longer than 32K bytes.  (Bug#21158)
10638 2015-07-30  Stephen Leake  <stephen_leake@stephe-leake.org>
10640         * lisp/vc/vc-mtn.el (vc-mtn-find-revision): Handle null rev.
10642 2015-07-29  Stephen Leake  <stephen_leake@stephe-leake.org>
10644         Add docs for display-buffer action display-buffer-use-some-frame
10645         * lisp/window.el (display-buffer-use-some-frame): Improve doc string.
10646         * doc/lispref/windows.texi (Display Action Functions):
10647         Add display-buffer-use-some-frame.
10648         * etc/NEWS: Mention display-buffer-use-some-frame.
10650         Add display-buffer action display-buffer-use-some-frame
10651         * lisp/window.el (display-buffer-use-some-frame): New.
10653         Handle vc-mtn error more gently
10654         * lisp/vc/vc-mtn.el (vc-mtn-mode-line-string): Return "" when
10655         branch is nil.
10657 2015-07-29  Michael Albinus  <michael.albinus@gmx.de>
10659         Fix Tramp problems with multihops, and nc
10660         * lisp/net/tramp-cache.el (tramp-get-file-property)
10661         (tramp-set-file-property, tramp-flush-file-property)
10662         (tramp-get-connection-property, tramp-set-connection-property)
10663         (tramp-flush-connection-property): Remove hop from vector.
10664         * lisp/net/tramp-gw.el (tramp-gw-process-filter): Ignore errors.
10665         * lisp/net/tramp-sh.el (tramp-methods) <nc>: Separate STDERR.
10666         (tramp-do-copy-or-rename-file-out-of-band): Increase timeout of
10667         netstat to 60".
10668         (tramp-sh-handle-start-file-process): Do not show hops in prompt.
10669         * lisp/net/tramp.el (tramp-handle-file-name-as-directory)
10670         (tramp-handle-file-name-directory, tramp-handle-file-remote-p):
10671         Keep hop in result.
10672         * test/automated/tramp-tests.el (tramp-test02-file-name-dissect):
10673         Add hop tests.
10675 2015-07-29  Eli Zaretskii  <eliz@gnu.org>
10677         Resurrect highlighting of repeated words by Flyspell Mode
10678         * lisp/textmodes/flyspell.el (flyspell-word): Leave some non-word
10679         characters between point and the doublon candidate, so that
10680         flyspell-word-search-backward finds it.  (Bug#21157)
10682         Fix redisplay of large images on expose events
10683         * src/xdisp.c (expose_window, expose_area): Avoid comparisons
10684         between signed negative values and unsigned values.  This
10685         prevented redisplay on expose events when the window showed a very
10686         large image.
10688 2015-07-29  Paul Eggert  <eggert@cs.ucla.edu>
10690         Remove unnecessary stack overflow dependency
10691         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING):
10692         Don't worry about $ac_cv_header_sys_resource_h and
10693         $ac_cv_func_getrlimit, as they're no longer needed for this.
10694         Problem reported by Eli Zaretskii in:
10695         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00443.html
10697 2015-07-28  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
10699         Pacify compilation -Wincompatible-pointer-types warnings
10700         * src/w32proc.c (Fw32_get_codepage_charset): Avoid compilation
10701         warning.
10702         (CompareStringW_Proc): New typedef.
10703         (w32_compare_strings): Use it, to pacify compiler warnings under
10704         "-Wincompatible-pointer-types".
10705         * src/w32fns.c (GetDiskFreeSpaceExW_Proc)
10706         (GetDiskFreeSpaceExA_Proc): New typedefs.
10707         (Ffile_system_info): Use them, to pacify compiler warnings under
10708         "-Wincompatible-pointer-types".
10710 2015-07-28  Paul Eggert  <eggert@cs.ucla.edu>
10712         Fix subscript error in calculate_direct_scrolling
10713         Use slightly-longer cost vectors.  Without this change,
10714         calculate_direct_scrolling can have a subscript violation when
10715         FRAME_LINES (frame) <= delta.
10716         * src/scroll.c (calculate_scrolling, calculate_direct_scrolling)
10717         (line_ins_del, do_line_insertion_deletion_costs):
10718         Allocate and use slightly-larger cost vectors, ones based on
10719         FRAME_TOTAL_LINES instead of FRAME_LINES.
10721         Fix uninitalized value in encode_coding_object
10722         * src/coding.c (encode_coding_object): Also initialize
10723         coding->src_pos and coding->src_pos_byte when NILP (src_object).
10724         This avoids later use of uninitialized storage.
10726 2015-07-27  Xue Fuqiao  <xfq.free@gmail.com>
10728         * doc/lispref/variables.texi (Variable Aliases): Typo fix.
10729         (Bug#21141)
10731 2015-07-27  Paul Eggert  <eggert@cs.ucla.edu>
10733         Merge from gnulib
10734         This incorporates:
10735         2015-07-27 time_rz: port better to MinGW
10736         2015-07-27 time: port __need_time_t to MinGW
10737         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
10738         * lib/strftime.c, lib/time.in.h, lib/time_rz.c: Copy from gnulib.
10739         * lib/time-internal.h: New file, from gnulib.
10741 2015-07-27  Eli Zaretskii  <eliz@gnu.org>
10743         Handle NULL pointers in w32heap.c allocation routines
10744         * src/w32heap.c (FREEABLE_P): Consider a NULL pointer "not
10745         freeable".
10746         (realloc_after_dump, realloc_before_dump, free_before_dump):
10747         Handle NULL pointers gracefully, as Emacs now seems to expect that.
10749         Fix Cairo build without PNG
10750         * src/image.c: Define PNG function when USE_CAIRO is defined, even
10751         if HAVE_PNG is not.  (Bug#21133)
10753         MS-Windows follow-up for recent TZ-related changes
10754         * nt/mingw-cfg.site (ac_cv_header_pthread_h)
10755         (gl_cv_sys_struct_timespec_in_pthread_h): Force to "no", to avoid
10756         picking up 'struct timespec' from pthread.h, if it is installed on
10757         the user's system.  We want either the definitions from MinGW
10758         system headers, if available, or the Gnulib replacements if not.
10759         * nt/inc/ms-w32.h <struct timespec>: Don't define, as we now use
10760         lib/time.h.
10761         * lib/time.in.h: Don't let __need_* symbols affect what happens on
10762         MinGW.  These symbols are defined by MinGW system headers, but we
10763         don't want that to affect whether Gnulib portions of the header
10764         are or aren't used.
10766 2015-07-26  Paul Eggert  <eggert@cs.ucla.edu>
10768         * src/ftfont.c (ftfont_close): Add comment re Bug#20890.
10770         New optional ZONE arg for format-time-string etc.
10771         This simplifies time conversions in other time zones.
10772         It also prevents display-time-world tampering with TZ (Bug#21020).
10773         * admin/admin.el (add-release-logs):
10774         Use improved add-log-time-format API.
10775         * admin/merge-gnulib (GNULIB_MODULES): Add time_rz, timegm.
10776         (GNULIB_TOOL_FLAGS): Avoid flexmember, setenv, unsetenv.
10777         * configure.ac (tzalloc): Remove test for this, since
10778         Emacs no longer uses HAVE_TZALLOC directly.
10779         * doc/lispref/os.texi (Time of Day, Time Conversion)
10780         (Time Parsing):
10781         * etc/NEWS: Document the new behavior.
10782         Merge from gnulib, incorporating:
10783         2015-07-25 strftime: fix newly-introduced bug on Solaris
10784         2015-07-23 fprintftime, strftime: use timezone_t args
10785         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
10786         * lib/strftime.c, lib/strftime.h, lib/time.in.h, m4/sys_time_h.m4:
10787         * m4/time_h.m4:
10788         Update from gnulib.
10789         * lib/time_rz.c, lib/timegm.c, m4/time_rz.m4, m4/timegm.m4:
10790         New files from gnulib.
10791         * lisp/time-stamp.el (time-stamp-string):
10792         * lisp/time.el (display-time-world-list)
10793         (display-time-world-display):
10794         Use new API, with time zone arg.
10795         * lisp/time.el (display-time-world-display):
10796         Fix race when current-time advances while we're running.
10797         * lisp/vc/add-log.el (add-log-iso8601-time-zone)
10798         (add-log-iso8601-time-string): Accept optional time zone arg.
10799         * lisp/vc/add-log.el (add-change-log-entry):
10800         * lisp/vc/log-edit.el (log-edit-changelog-ours-p): Use new arg.
10801         * nt/gnulib.mk: Propagate lib/gnulib.mk changes here.
10802         Add rules for the time module, since they're now needed
10803         for tzalloc etc.
10804         * src/conf_post.h (getenv_TZ, setenv_TZ): New macros.
10805         (emacs_getenv_TZ, emacs_setenv_TZ): New decls.
10806         * src/editfns.c: Include errno.h.
10807         (set_time_zone_rule): Omit unnecessary forward decl.
10808         (initial_tz): Remove, replacing with ...
10809         (local_tz, wall_clock_tz, utc_tz): New static vars and constants.
10810         (tzeqlen): New constant; prefer it to (sizeof "TZ=" - 1).
10811         (emacs_localtime_rz, emacs_mktime_z, xtzalloc, xtzfree)
10812         (tzlookup): New static functions.
10813         (init_editfns): New arg DUMPING.  All uses changed.
10814         (init_editfns): Omit most initialization if dumping, not if
10815         !initialized.  Initialize wall_clock_tz and local_tz.
10816         (emacs_nmemftime, format_time_string): Time zone argument can now
10817         be any time zone, not just a boolean for UTC or local time.  All
10818         callers changed.
10819         (Fformat_time_string, Fencode_time, Fcurrent_time_string)
10820         (Fcurrent_time_zone): New optional arg ZONE.
10821         (Fdecode_time, Fset_time_zone_rule): ZONE arg can now also take
10822         the same form as with the other new additions.
10823         (decode_time_zone): Remove; no longer needed.
10824         (tzvalbuf): Now file-scope.
10825         (emacs_getenv_TZ, emacs_setenv_TZ): New functions.
10826         (syms_of_editfns): Define Qwall.
10827         * src/editfns.c (mktime_z) [!HAVE_TZALLOC]:
10828         * src/systime.h (mktime_z, timezone_t, tzalloc, tzfree)
10829         [!HAVE_TZALLOC]:
10830         Remove; now supplied by gnulib.
10831         * src/emacs.c (main):
10832         * src/lisp.h (init_editfns): Adjust to init_editfns API change.
10834 2015-07-26  Shigeru Fukaya  <shigeru.fukaya@gmail.com>
10836         Fix infinite loop in delete-consecutive-dups
10837         * lisp/subr.el (delete-consecutive-dups): Work even if the last
10838         element is nil (Bug#20588).  Avoid rescan of a circular list in
10839         deletion of last element.
10841 2015-07-26  Martin Rudalics  <rudalics@gmx.at>
10843         Have `x-frame-geometry' return nil for terminal and initial
10844         frames (Bug#21132)
10845         * src/nsfns.m (Fx_frame_geometry):
10846         * src/xfns.c (Fx_frame_geometry): Return nil for initial and
10847         terminal frames.
10848         * src/w32fns.c (Fw32_frame_menu_bar_size, Fw32_frame_rect)
10849         (Fx_frame_geometry): Return nil for terminal frames
10851 2015-07-26  HOSOYA Kei  <hosoyakei.free@gmail.com>  (tiny change)
10853         * etc/tutorials/TUTORIAL.ja: Improve translation.
10855 2015-07-25  Eli Zaretskii  <eliz@gnu.org>
10857         Avoid crashes when w32 GUI functions are called in -batch
10858         * src/w32fns.c (Fx_frame_geometry, Fw32_frame_rect)
10859         (Fw32_frame_menu_bar_size, Fw32_send_sys_command): Don't call
10860         FRAME_W32_WINDOW for initial frame.  (Bug#21132)
10862         Fix flyspell-check-previous-highlighted-word
10863         * lisp/textmodes/flyspell.el
10864         (flyspell-check-previous-highlighted-word): Really accept a
10865         numeric argument, as the doc string describes.  Fix an off-by-one
10866         error in looking up overlays, so invocation with point immediately
10867         after a word would check that word.  Clarify the doc string as
10868         Suggested by N. Jackson <nljlistbox2@gmail.com>.  (Bug#21129)
10870 2015-07-24  Michael Albinus  <michael.albinus@gmx.de>
10872         Minor cleanup in tramp-tests.el
10873         * test/automated/tramp-tests.el (tramp-test31-*, tramp-test32-*):
10874         Implement using the documented interface
10875         `tramp-connection-properties', rather than with internal functions.
10877 2015-07-24  Harald Hanche-Olsen  <hanche@math.ntnu.no>  (tiny change)
10879         Pass lambdas to `skeleton-read'
10880         * lisp/skeleton.el (skeleton-read): Allow PROMPT to be a function.
10881         * lisp/textmodes/sgml-mode.el (sgml-attributes, sgml-value): Pass
10882         lambdas to `skeleton-read' (bug#20386).
10884 2015-07-24  Eli Zaretskii  <eliz@gnu.org>
10886         * INSTALL (DETAILED BUILDING AND INSTALLATION):
10887         Mention --without-imagemagick.
10889         Don't require GUI frames and mouse for Flyspell menus
10890         * lisp/textmodes/flyspell.el (flyspell-correct-word-before-point)
10891         (flyspell-emacs-popup): Require neither a GUI frame nor mouse
10892         support, since pop-up menus work with text terminals and can be
10893         controlled via the keyboard.
10895         Improve documentation of Flyspell commands
10896         * doc/emacs/fixit.texi (Spelling): Mention Flyspell commands that
10897         can be invoked via the keyboard.  Mention those commands by name
10898         and add them to the fn index.  (Bug#21125)
10900 2015-07-23  Michael Albinus  <michael.albinus@gmx.de>
10902         Fix some Tramp problems with HP-UX
10903         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
10904         Add "tab0" to stty call.
10905         * test/automated/tramp-tests.el (tramp-persistency-file-name):
10906         Set to nil.
10907         (tramp--test-hpux-p): New defun.
10908         (tramp--test-utf8): Use it.
10910 2015-07-22  Glenn Morris  <rgm@gnu.org>
10912         * build-aux/update-subdirs: Put "no-update-autoloads: t" in output.
10914 2015-07-22  Eli Zaretskii  <eliz@gnu.org>
10916         Fix point positioning in ffap-next-guess
10917         * lisp/ffap.el (ffap-url-at-point): Set ffap-string-at-point-region,
10918         as our callers expect.  This was clobbered as part of fixing
10919         bug#5673.  (Bug#21107)
10920         (ffap-gopher-at-point): Set ffap-string-at-point-region.
10922 2015-07-22  Martin Rudalics  <rudalics@gmx.at>
10924         * lisp/window.el (even-window-sizes): Fix customization type.
10926         Optionally even widths of `display-buffer' windows.  (Bug#21100)
10927         * lisp/window.el (quit-restore-window): Restore width if
10928         requested.
10929         (display-buffer-record-window): Record width when window is
10930         reused and horizontally combined.
10931         (even-window-sizes): New option to allow evening window widths.
10932         (even-window-heights): Defalias to `even-window-sizes'.
10933         (window--even-window-heights): Rename to
10934         `window--even-window-sizes'.  Handle side-by-side windows.
10935         (display-buffer-use-some-window): Call `window--even-window-sizes'
10936         instead of `window--even-window-heights'.
10937         * lisp/help.el (resize-temp-buffer-window): Fix indentation.
10938         * doc/lispref/windows.texi (Choosing Window Options): Describe
10939         `even-window-sizes'.
10940         (Coordinates and Windows): Fix typo.
10942 2015-07-22  Stephen Leake  <stephen_leake@stephe-leake.org>
10944         Add file name to autoload error messages
10945         * lisp/emacs-lisp/autoload.el (autoload-save-buffers):
10946         Add condition-case to add file name to error message.
10948 2015-07-22  Michael Albinus  <michael.albinus@gmx.de>
10950         * lisp/net/tramp-sh.el (tramp-ssh-controlmaster-options):
10951         Use 0.0.0.1 as test host.
10953 2015-07-21  Stefan Monnier  <monnier@iro.umontreal.ca>
10955         (advice--called-interactively-skip): Fix inf-loop (bug#21083)
10956         * lisp/emacs-lisp/nadvice.el (advice--called-interactively-skip):
10957         Fix inf-loop (bug#21083).
10959 2015-07-21  Glenn Morris  <rgm@gnu.org>
10961         * test/automated/package-test.el (package-test-signed):
10962         Update for recent changes.
10964         * test/automated/elisp-mode-tests.el
10965         (elisp-xref-finds-both-function-and-variable)
10966         (elisp-xref-finds-only-function-for-minor-mode):
10967         Update for recent xref name changes.
10969 2015-07-21  Dmitry Gutov  <dgutov@yandex.ru>
10971         Make eldoc timer non-repeatable
10972         * lisp/emacs-lisp/eldoc.el (eldoc-schedule-timer): Make the timer
10973         non-repeatable.  Since it's on post-command hook, that just wasted
10974         CPU cycles.
10976 2015-07-21  Michael Albinus  <michael.albinus@gmx.de>
10978         Mention `tramp-connection-properties' in NEWS
10980         Sync with Tramp repository
10981         * doc/misc/tramp.texi (Configuration): Note, that Tramp must be
10982         required prior changing its configuration.
10983         (Connection caching, Predefined connection information)
10984         (Remote shell setup): Fix typos.
10985         (Predefined connection information): Describe, how to overwrite
10986         parameters of `tramp-methods'.
10987         (Remote programs, Remote processes, Traces and Profiles):
10988         Simplify example.
10989         (Remote programs): Remove superfluous comment.
10990         * doc/misc/trampver.texi: Update release number.
10991         * lisp/net/tramp-cache.el (tramp-connection-properties):
10992         Adapt docstring.
10993         * lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file): New defun.
10994         (tramp-gvfs-handle-copy-file, tramp-gvfs-handle-rename-file): Use it.
10995         (tramp-gvfs-handle-make-directory): Reimplement PARENTS handling,
10996         "gvfs-mkdir -p ..." does not work robust.
10997         (tramp-gvfs-maybe-open-connection):
10998         Adapt `tramp-get-method-parameter' call.
10999         * lisp/net/tramp-sh.el (tramp-methods):
11000         Add `tramp-remote-shell-login' parameter where it fits.
11001         (tramp-get-remote-path): Use it.
11002         (tramp-make-copy-program-file-name): Fix quoting for "psftp" method.
11003         (all): Adapt `tramp-get-method-parameter' calls.
11004         * lisp/net/tramp.el (tramp-methods): Adapt docstring.
11005         (tramp-get-method-parameter): Replace argument METHOD by VEC.
11006         Check also for hits in `tramp-connection-properties'.  Adapt docstring.
11007         (tramp-get-remote-tmpdir): Cache only the local name of tmpdir.
11008         (all): Adapt `tramp-get-method-parameter' calls.
11009         * lisp/net/trampver.el Update release number.
11010         * test/automated/tramp-tests.el (tramp--instrument-test-case):
11011         Add "^make-symbolic-link not supported$" to `debug-ignored-errors'.
11012         (tramp-test13-make-directory, tramp--test-adb-p)
11013         (tramp--test-smb-or-windows-nt-p): Simplify.
11014         (tramp--test-ftp-p, tramp--test-gvfs-p): New defuns.
11015         (tramp--test-special-characters): Fix docstring.  Add gvfs and
11016         ftp tests.
11017         (tramp--test-utf8): Fix docstring.
11019 2015-07-20  Dmitry Gutov  <dgutov@yandex.ru>
11021         Add new xref-query-replace command
11022         * lisp/progmodes/xref.el (xref--match-buffer-bounds):
11023         New function, extracted from xref-pulse-momentarily.
11024         (xref-query-replace): New command.
11025         (xref--query-replace-1): New helper function.
11026         (xref--xref-buffer-mode-map): Add `r' binding.
11028 2015-07-20  Paul Eggert  <eggert@cs.ucla.edu>
11030         Simplify icalendar decoding of Z dates
11031         * lisp/calendar/icalendar.el (icalendar--decode-isodatetime):
11032         Simplify calculation of time strings with trailing "Z".
11034 2015-07-19  Dmitry Gutov  <dgutov@yandex.ru>
11036         Do not corrupt grep-find-ignored-files
11037         * lisp/progmodes/project.el (project-ignores): Change the order of
11038         the arguments to nconc, in order not to corrupt grep-find-ignored-files.
11040         Add xref-match-item, and use it
11041         * lisp/progmodes/xref.el (xref-match-bounds): New generic function.
11042         (xref-file-location): Add reader for the column slot.
11043         (xref-match-item): New class.
11044         (xref-match-bounds): A method implementation for it.
11045         (xref-make-match): New constructor function.
11046         (xref--current-item): New private variable.
11047         (xref-pulse-momentarily): Use it.
11048         (xref--pop-to-location): Change the first argument to an xref
11049         item, instead of location, bind xref--current-item.
11050         Update all callers.
11051         (xref-next-line, xref-prev-line, xref--next-error-function)
11052         (xref--mouse-2): Look for the property `xref-item',
11053         instead of `xref-location'.
11054         (xref--item-at-point): Likewise.  This function replaces
11055         `xref-location-at-point'.  Update all callers.
11056         (xref--insert-xrefs): Add the `xref-item' text property, instead
11057         of `xref-location'.
11058         (xref--collect-match): Use xref-make-match.
11060         * lisp/progmodes/xref.el (xref-item): Rename from `xref--xref'.
11061         Update all references.
11063         * lisp/progmodes/xref.el (xref--xref): Rename the `description'
11064         slot to `summary'.
11066         vc-hg: Perform the print-log call asynchronously
11067         * lisp/vc/vc-hg.el (vc-hg-print-log): Perform the call
11068         asynchronously (bug#21067).
11070         Add xref-after-jump-hook and xref-after-return-hook
11071         * lisp/progmodes/xref.el (xref-after-jump-hook)
11072         (xref-after-return-hook): New hooks.
11073         (xref-pulse-on-jump): Remove, in favor of the above.
11074         (xref-pulse-momentarily): Rename from xref--maybe-pulse.
11075         (xref--pop-to-location, xref--display-position)
11076         (xref-pop-marker-stack): Use the new hooks, as requested in
11077         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00213.html
11079 2015-07-19  Bozhidar Batsov  <bozhidar@batsov.com>
11081         * lisp/progmodes/js.el (js-mode): Correct the lighter.
11083 2015-07-19  Leo Liu  <sdl.web@gmail.com>
11085         Fix a bug in cfengine3-mode
11086         * lisp/progmodes/cfengine.el (cfengine3-mode): Handle nil
11087         eldoc-documentation-function.
11089 2015-07-18  Julien Danjou  <julien@danjou.info>
11091         sieve-mode: support "body" test command
11092         * lisp/gnus/sieve-mode.el (sieve-font-lock-keywords):
11093         Add missing "body" test command.
11095 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
11097         Fix info-apropos when the default encoding is Latin-N
11098         * lisp/info.el (Info-find-node-2): Reset the buffer's encoding to
11099         'undecided', so that it is set to the encoding of the Info file we
11100         are about to insert.  Otherwise, 'info-apropos' will fail to find
11101         some index nodes in some UTF-8 encoded files, if the buffer's
11102         previous encoding is Latin-N or some such.
11104 2015-07-18  Ivan Andrus  <darthandrus@gmail.com>
11106         * lisp/epg.el (epg--start): Check that gpgconf can be found
11107         before calling it.
11109         Expose more file types to OS X that Emacs understands
11110         * nextstep/Cocoa/Emacs.base/Contents/Info.plist: Add editor role for
11111         sty, dtx, json, and org files.  Export UTIs for el, elc, and org files.
11113 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
11115         Fix visual-order cursor movement when lines are truncated
11116         * src/xdisp.c (Fmove_point_visually): When lines are truncated,
11117         simulate display in a window of infinite width, to allow move_it_*
11118         functions reach positions outside of normal window dimensions.
11119         Remove code that tried to handle a subset of these situations by
11120         manual iteration of buffer text.  (Bug#17777)
11122         Fix following Info cross-references to anchors
11123         * lisp/info.el (Info-read-subfile): Add to the returned value the
11124         length of subfile preamble, after converting it to file's byte
11125         offset, as expected by the caller.  Use bufferpos-to-filepos.
11126         (Info-find-node-2): If searching for a node with a
11127         1000-character slop fails, try again with a 10000-character slop,
11128         to account for known bugs in Texinfo 5.0 and 5.1.  (Bug#21055)
11129         * lisp/international/mule-util.el (bufferpos-to-filepos): New
11130         function.
11131         * etc/NEWS: Mention bufferpos-to-filepos.
11133         Fix scrolling backwards on TTY frames under scroll-conservatively
11134         * src/xdisp.c (move_it_vertically_backward): Fix off-by-one error
11135         in moving backwards on TTY frames.  (Bug#21080)
11137 2015-07-17  Dmitry Gutov  <dgutov@yandex.ru>
11139         Consider a jsdoc tag to be a beginning of a paragraph as well
11140         * lisp/progmodes/js.el (js-mode): Change c-paragraph-start to
11141         consider a jsdoc tag to be a beginning of a paragraph as well.
11143 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
11145         * lisp/emacs-lisp/package.el: Fix warnings.
11147         * lisp/emacs-lisp/package.el (package-buffer-info):
11148         Add author and maintainers to `package-buffer-info'.
11150         * lisp/emacs-lisp/package.el: Many small changes.
11151         Replace all instances of 'face with 'font-lock-face.
11152         (describe-package-1): Improve some strings and move the summary
11153         up the list.
11154         (package-install-file): Update docstring.
11155         (package-menu-hide-package): Bind to `H'.
11157         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
11158         Fix error handling.
11160 2015-07-17  Paul Eggert  <eggert@cs.ucla.edu>
11162         Fix hang with large yanks This should fix the bug fixed by Mike
11163         Crowe's patch in:
11164         https://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00106.html
11165         A problem in this area has been reported by several users; see
11166         Bug#16737, Bug#17101, Bug#17026, Bug#17172, Bug#19320, Bug#20283.
11167         This fix differs from Mike Crowe's patch in that it should avoid a
11168         race condition that could lose SIGIO signals.  ignore_sigio dates
11169         back to the 1980s when some platforms couldn't block signals, and
11170         could only ignore them, which led to races when signals arrived
11171         while being ignored.  We shouldn't have to worry about those old
11172         platforms now.
11173         * src/dispextern.h, src/sysdep.c (ignore_sigio): Remove.
11174         * src/emacs.c (shut_down_emacs):
11175         Don't call ignore_sigio; unrequest_sigio should suffice.
11176         * src/keyboard.c (kbd_buffer_store_buffered_event):
11177         Use unrequest_sigio, not ignore_sigio.
11178         (kbd_buffer_get_event):
11179         Call request_sigio when getting the ball rolling again.
11181 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
11183         * lisp/obsolete/longlines.el (longlines-search-function):
11184         Fallback on `isearch-search-fun-default'.
11186 2015-07-17  Tassilo Horn  <tsdh@gnu.org>
11188         Support @-mentions
11189         * lisp/net/rcirc.el (rcirc-completion-at-point): Support completion
11190         of mentions/messages with @nick instead of just nick.
11192 2015-07-16  Michael Albinus  <michael.albinus@gmx.de>
11194         Fix bug#20943
11195         * lisp/autorevert.el (auto-revert-handler): Do not check for
11196         `buffer-modified-p'.
11197         * lisp/files.el (buffer-stale--default-function): Check for
11198         `buffer-modified-p'.
11199         * test/automated/auto-revert-tests.el
11200         (auto-revert-test02-auto-revert-mode-dired): Adapt test.
11202 2015-07-16  Ari Roponen  <ari.roponen@gmail.com>
11204         Fix delete-dups bug on long lists
11205         * lisp/subr.el (delete-dups):
11206         Don't mistakenly keep some dups when applied to long lists.
11208 2015-07-16  Paul Eggert  <eggert@cs.ucla.edu>
11210         Better heuristic for C stack overflow
11211         Improve the heuristic for distinguishing stack overflows from
11212         other SIGSEGV causes (Bug#21004).  Corinna Vinschen explained that
11213         the getrlimit method wasn't portable to Cygwin; see:
11214         https://www.cygwin.com/ml/cygwin/2015-07/msg00092.html
11215         Corinna suggested pthread_getattr_np but this also has problems.
11216         Instead, replace the low-level system stuff with a simple
11217         heuristic based on known good stack addresses.
11218         * src/eval.c, src/lisp.h (near_C_stack_top): New function.
11219         * src/sysdep.c: Don't include <sys/resource.h>.
11220         (stack_direction): Remove.  All uses removed.
11221         (stack_overflow): New function.
11222         (handle_sigsegv): Use it instead of incorrect getrlimit heuristic.
11223         Make SEGV fatal in non-main threads.
11225 2015-07-16  Daiki Ueno  <ueno@gnu.org>
11227         epg: Automatically start pinentry server
11228         * lisp/epg-config.el (epg-gpgconf-program): New variable.
11229         * lisp/epg.el (epg--start): Call `pinentry-start' if
11230         allow-emacs-pinentry is set in ~/.gnupg/gpg-agent.conf.
11232 2015-07-15  Katsumi Yamaoka  <yamaoka@jpl.org>
11234         * lisp/gnus/nnimap.el: Fix my last bogus change.
11235         Reinstall Stefan Monnier's change that was made in
11236         <83d824bc4041332f338ad7e5e830f443535aa300>.
11238 2015-07-15  Paul Eggert  <eggert@cs.ucla.edu>
11240         Merge from gnulib
11241         This incorporates:
11242         2015-07-05 acl-permissions: Document FreeBSD ACL_TYPE_NFS4 acls
11243         2015-07-05 acl-permissions: Fix on FreeBSD
11244         2015-07-05 file-has-acl, acl-permissions: fix some more HP-UX typos
11245         * lib/acl-internal.c, lib/acl-internal.h, lib/get-permissions.c:
11246         * lib/set-permissions.c: Copy from gnulib.
11248         Port to stricter C99
11249         * src/keyboard.h (kbd_buffer_store_event_hold):
11250         Don't return a void expression.
11252 2015-07-15  Xue Fuqiao  <xfq.free@gmail.com>
11254         * doc/emacs/frames.texi (Creating Frames):
11255         Fix the command `C-x 5 m' runs.
11257 2015-07-14  Michael Albinus  <michael.albinus@gmx.de>
11259         New autorevert tests
11260         * test/automated/auto-revert-tests.el: New file.
11262 2015-07-14  Paul Eggert  <eggert@cs.ucla.edu>
11264         Clear gcprolist etc. after stack overflow
11265         After stack overflow, command_loop calls init_eval, and this needs to
11266         clear gcprolist and byte_stack_list (Bug#20996).
11267         * src/alloc.c (init_alloc):
11268         Move gcprolist and byte_stack_list initialization from here ...
11269         * src/eval.c (init_eval): ... to here.
11271 2015-07-13  Xue Fuqiao  <xfq.free@gmail.com>
11273         * doc/emacs/windows.texi (Pop Up Window): Fix the description
11274         of `C-x 4 m'.
11276 2015-07-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
11278         Avoid deprecated enums in mac-ct font backend driver
11279         * src/macfont.m (mac_font_copy_default_descriptors_for_language)
11280         (mac_ctfont_get_advance_width_for_glyph)
11281         (mac_ctfont_get_bounding_rect_for_glyph): Avoid deprecated enums.
11283         Cache font family in mac-ct font backend driver
11284         * src/macfont.m (macfont_family_cache): New variable.
11285         (syms_of_macfont): Initialize it.
11286         (macfont_available_families_cache): New variable.
11287         (macfont_invalidate_family_cache, macfont_get_family_cache_if_present)
11288         (macfont_set_family_cache, macfont_invalidate_available_families_cache)
11289         (macfont_handle_font_change_notification)
11290         (macfont_init_font_change_handler)
11291         (macfont_copy_available_families_cache): New functions.
11292         (macfont_create_family_with_symbol): Use font family caches.
11293         (macfont_list, macfont_list_family):
11294         Use macfont_copy_available_families_cache instead of
11295         mac_font_create_available_families.
11297 2015-07-12  Dmitry Gutov  <dgutov@yandex.ru>
11299         Show the default value in the prompt
11300         * lisp/progmodes/xref.el: Add `M-?' binding for
11301         xref-find-references.  Declare functions `grep-read-files' and
11302         `grep-expand-template'.
11303         (xref--read-identifier): Show the default value in the prompt.
11305         * lisp/progmodes/xref.el (xref-find-regexp): When called with
11306         prefix argument, ask for file patterns to search as well.  When
11307         prompting for the directory, require an existing one.
11308         (xref-collect-matches): Add a new argument, FILES.  Use it in the
11309         above function.
11311         Add `project-ignores'
11312         * lisp/progmodes/project.el (project-ignores): New generic
11313         function, and an implementation for the VC project type.
11314         * lisp/progmodes/xref.el (xref--rgrep-command): Split, as a
11315         variant of rgrep-default-command that handles a generic list of
11316         ignores.
11317         (xref-collect-matches): Use it, and pass through to it the value
11318         of the newly added argument.
11319         (xref-find-regexp): Handle ignored paths within the project.
11320         Remove outdated comment.
11321         * lisp/vc/vc.el (vc-default-ignore-completion-table):
11322         Skip the comments and the empty lines.
11324 2015-07-12  Xue Fuqiao  <xfq.free@gmail.com>
11326         * doc/emacs/buffers.texi (Misc Buffer): Add a cross reference.
11328 2015-07-11  Eric Abrahamsen  <eric@ericabrahamsen.net>
11330         gnus-registry.el: Correct function argument order
11331         * lisp/gnus/gnus-registry.el (gnus-registry--set/remove-mark):
11332         Reverse the order of function arguments.
11334 2015-07-11  Dmitry Gutov  <dgutov@yandex.ru>
11336         Bind grep-highlight-matches to nil
11337         * lisp/progmodes/xref.el (xref-collect-matches):
11338         Bind grep-highlight-matches to nil (bug#20728).
11340 2015-07-11  Nikolaus Rath  <Nikolaus@rath.org>
11342         nnimap.el: Fix IMAP message size parsing
11343         * lisp/gnus/nnimap.el (nnimap-transform-headers):
11344         Don't assume that UID comes before RFC822.SIZE.
11346 2015-07-10  Stefan Monnier  <monnier@iro.umontreal.ca>
11348         * lisp/gnus/nnimap.el: Clean up "unused var" warnings
11349         (auth-source-creation-prompts): Declare.
11350         (nnimap-retrieve-headers, nnimap-status-message)
11351         (nnimap-request-create-group, nnimap-request-delete-group)
11352         (nnimap-close-group, nnimap-request-move-article)
11353         (nnimap-request-accept-article, nnimap-request-newgroups)
11354         (nnimap-request-post, nnimap-dummy-active-number)
11355         (nnimap-save-mail-spec, nnimap-get-groups): Add _ to unused vars.
11356         (nnimap-parse-flags): Remove unused var `p'.
11357         (nnimap-retrieve-group-data-early): Remove unused var `groups'.
11358         (nnimap-flags-to-marks): Remove unused var `totalp'.
11360 2015-07-10  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
11362         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 20MB.
11364 2015-07-10  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
11366         * src/macfont.m (macfont_list): Ignore font families lacking
11367         font descriptors.
11369 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
11371         Don't check the exit status, it can be misleading
11372         * lisp/progmodes/xref.el (xref-collect-matches): Don't check the
11373         exit status, it can be misleading.
11375         Introduce a Project API
11376         * lisp/progmodes/project.el: New file.
11377         * lisp/cedet/ede.el (project-try-ede): New function.
11378         (project-root): New implementation.
11379         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
11380         Set project-search-path-function.
11381         (elisp--xref-find-references): Delegate some logic to
11382         project-search-path.
11383         (elisp-search-path): New function.
11384         (elisp-xref-find): Don't implement `matches' anymore.
11385         * lisp/progmodes/etags.el: Don't implement `matches'.
11386         Delegate some logic to project-search-path.
11387         (etags-search-path): New function.
11388         * lisp/progmodes/xref.el (xref-find-function):
11389         Remove `matches' from the API.
11390         (xref-find-regexp): Move whatever common logic was in elisp and
11391         etags implementations, and search the directories returned by
11392         project-directories and project-search-path.
11394 2015-07-09  Nicolas Petton  <nicolas@petton.fr>
11396         * test/automated/map-tests.el (test-map-delete-return-value):
11397         Uncomment test.
11399         Add support for gv.el in map.el
11400         * lisp/emacs-lisp/map.el (map-elt, map-delete): Declare a gv-expander.
11401         * lisp/emacs-lisp/map.el (map-put): Refactor using `setf' and `map-elt'.
11402         * test/automated/map-tests.el: Update tests to work with the new
11403         implementations of map-elt and map-put.
11405 2015-07-09  Glenn Morris  <rgm@gnu.org>
11407         * lisp/emacs-lisp/debug.el (debug-help-follow): Use describe-symbol.
11409 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
11411         Syntax-propertize until the end of the line first
11412         * lisp/progmodes/xref.el (xref--collect-match): Syntax-propertize
11413         until the end of the line first.
11415 2015-07-09  Xue Fuqiao  <xfq.free@gmail.com>
11417         * doc/emacs/files.texi (File Archives): Add a cross reference.
11419 2015-07-08  Nikolaus Rath  <Nikolaus@rath.org>
11421         nnimap.el: Handle plain value for nnimap-stream
11422         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Always query
11423         capabilities, so that a 'plain value for the `nnimap-stream' server
11424         variable is handled correctly.
11425         * doc/misc/gnus.texi (Customizing the IMAP Connection):
11426         Document the 'plain option.
11428 2015-07-08  Leo Liu  <sdl.web@gmail.com>
11430         Fix bug in thing-at-point--bounds-of-well-formed-url
11431         * lisp/thingatpt.el (thing-at-point--bounds-of-well-formed-url): Make
11432         sure boundary contains current point.
11434 2015-07-08  Dmitry Gutov  <dgutov@yandex.ru>
11436         * lisp/progmodes/xref.el (xref-collect-matches): Use `nreverse'
11437         in the end.
11439         Declare whitespace-line-column a safe file-local
11440         * lisp/whitespace.el (whitespace-line-column): Declare to be a
11441         safe file-local when the value is an integer.
11443 2015-07-08  Eric Abrahamsen  <eric@ericabrahamsen.net>
11445         gnus-group.el: Check if group names are already strings
11446         * lisp/gnus/gnus-group.el (gnus-group-group-name):
11447         The group name may already be a string.
11448         Specifically, in the group list reached from the *Server* buffer,
11449         the 'gnus-group text property returns a string.  Everywhere else
11450         it returns a symbol.
11452         nnimap.el: Remove unused let variables
11453         * lisp/gnus/nnimap.el (nnimap-request-group): Variables are not used.
11455 2015-07-08  Eli Zaretskii  <eliz@gnu.org>
11457         Support "maximized" property of runemacs's shortcut
11458         * nt/runemacs.c (WinMain): If runemacs is invoked "maximized", pass
11459         the '--maximized' switch to Emacs.
11461         Support "minimized" property of runemacs's shortcut
11462         * nt/runemacs.c (WinMain): If runemacs is invoked "minimized",
11463         pass the '--iconic' switch to Emacs.  (Bug#20991)
11465 2015-07-08  Xue Fuqiao  <xfq.free@gmail.com>
11467         Doc fixes
11468         * doc/emacs/files.texi (Diff Mode): Fix the description of `C-c
11469         C-w' in Diff mode.
11470         * doc/emacs/arevert-xtra.texi (Auto Reverting the Buffer Menu):
11471         Add a cross reference.
11473 2015-07-08  Nicolas Richard  <youngfrog@members.fsf.org>
11475         * lisp/obsolete/landmark.el: Add Obsolete-since header.
11477 2015-07-07  Glenn Morris  <rgm@gnu.org>
11479         * test/automated/ert-tests.el (ert-test-deftest):
11480         Update for recent changes.
11482 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
11484         (gv-setter, gv-synthetic-place, gv-delay-error): New funs/macros
11485         * lisp/emacs-lisp/gv.el (gv-setter): New function.
11486         (gv-invalid-place): New error.
11487         (gv-get): Use them.
11488         (gv-synthetic-place, gv-delay-error): New places.
11489         * lisp/emacs-lisp/cl-generic.el (cl--generic-setf-rewrite): Remove.
11490         (cl-defgeneric, cl-defmethod): Use gv-setter.
11492 2015-07-07  Fabrice Popineau  <fabrice.popineau@gmail.com>
11494         Make vc-tests work with MSYS svn program
11495         * lisp/vc/vc-svn.el (vc-svn-create-repo): Fix the file:// URL when
11496         svn is an MSYS program.
11498 2015-07-07  Ken Brown  <kbrown@cornell.edu>
11500         Improve recent change to emacsclient on Cygwin
11501         * lisp/server.el (server-process-filter): Remove redundant check
11502         that 'cygwin-convert-file-name-from-windows' is defined as a
11503         function on Cygwin.  Don't call that function unless its argument
11504         starts with a drive letter.
11506 2015-07-07  Artur Malabarba  <bruce.connor.am@gmail.com>
11508         * lisp/emacs-lisp/package.el (package-compute-transaction):
11509         Fix void variable due to `found-something' being in the wrong `let'.
11511 2015-07-07  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
11513         * lisp/play/landmark.el: Move to lisp/obsolete/.
11515 2015-07-07  Martin Rudalics  <rudalics@gmx.at>
11517         Have `x-show-tip' handle `right' and `bottom' frame parameters
11518         * src/nsfns.m (compute_tip_xy, Fx_show_tip)
11519         * src/w32fns.c (compute_tip_xy, Fx_show_tip)
11520         * src/xfns.c (compute_tip_xy, Fx_show_tip): Allow aligning
11521         tooltips also via `right' and `bottom' frame parameters.
11523 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
11525         Add online-help support to describe types
11526         * lisp/help-fns.el (describe-symbol-backends): Move to help-mode.el.
11527         (describe-symbol): Improve the selection of default.
11528         * lisp/help-mode.el: Require cl-lib.
11529         (describe-symbol-backends): Move from help-fns.el.
11530         (help-make-xrefs): Use it.
11531         * lisp/emacs-lisp/cl-extra.el (describe-symbol-backends): Add entry
11532         for types.
11533         (cl--typedef-regexp): New const.
11534         (find-function-regexp-alist): Add entry for types.
11535         (cl-help-type, cl-type-definition): New buttons.
11536         (cl-find-class): New function.
11537         (cl-describe-type): New command.
11538         (cl--describe-class, cl--describe-class-slot)
11539         (cl--describe-class-slots): New functions, moved from eieio-opt.el.
11540         * lisp/emacs-lisp/cl-generic.el (cl--generic-method-documentation)
11541         (cl--generic-all-functions, cl--generic-specializers-apply-to-type-p):
11542         New functions.  Moved from eieio-opt.el.
11543         (cl--generic-class-parents): New function, extracted from
11544         cl--generic-struct-specializers.
11545         (cl--generic-struct-specializers): Use it.
11546         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Use pcase-dolist.
11547         Improve constructor's docstrings.
11548         (cl-struct-unknown-slot): New error.
11549         (cl-struct-slot-offset): Use it.
11550         * lisp/emacs-lisp/cl-preloaded.el (cl-struct-define): Record the type
11551         definition in current-load-list.
11552         * lisp/emacs-lisp/eieio-core.el (eieio--known-slot-names): New var.
11553         (eieio--add-new-slot): Set it.
11554         (eieio-defclass-internal): Use new name for current-load-list.
11555         (eieio-oref): Add compiler-macro to warn about unknown slots.
11556         * lisp/emacs-lisp/eieio.el (defclass): Update eieio--known-slot-names
11557         as compile-time as well.  Improve constructor docstrings.
11558         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
11559         (eieio--help-print-slot, eieio-help-class-slots): Move to cl-extra.el.
11560         (eieio-class-def): Remove button.
11561         (eieio-help-constructor): Use new name for load-history element.
11562         (eieio--specializers-apply-to-class-p, eieio-all-generic-functions)
11563         (eieio-method-documentation): Move to cl-generic.el.
11564         (eieio-display-method-list): Use new names.
11565         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression):
11566         Add "define-linline".
11567         (lisp-fdefs): Remove "defsubst".
11568         (el-fdefs): Add "defsubst", "cl-defsubst", and "define-linline".
11569         * lisp/emacs-lisp/macroexp.el (macroexp--warned): New var.
11570         (macroexp--warn-and-return): Use it to avoid inf-loops.
11571         Add `compile-only' argument.
11573 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
11575         python.el: Fix local/remote shell environment setup
11576         * lisp/progmodes/python.el (python-shell-with-environment):
11577         Fix remote/local environment setup.
11578         * test/automated/python-tests.el (python-shell-with-environment-1)
11579         (python-shell-with-environment-2): New tests.
11581 2015-07-06  Glenn Morris  <rgm@gnu.org>
11583         * lisp/simple.el (set-variable): Tweak recent doc fix.
11585 2015-07-06  Ken Brown  <kbrown@cornell.edu>
11587         * src/sysdep.c (handle_sigsegv) [CYGWIN]: Increase STACK_DANGER_ZONE.
11589 2015-07-06  Glenn Morris  <rgm@gnu.org>
11591         * lisp/simple.el (set-variable): Use user-error for type mismatch.
11593 2015-07-06  Ken Brown  <kbrown@cornell.edu>
11595         * src/emacs.c (main): Don't increase the stack size on Cygwin.
11597 2015-07-06  Stefan Monnier  <monnier@iro.umontreal.ca>
11599         (describe-symbol): Rewrite describe-function-or-variable
11600         * lisp/help-fns.el (describe-symbol-backends): New var.
11601         (help-xref-stack-item): Declare.
11602         (describe-symbol): Rename from describe-function-or-variable.
11603         Rewrite using describe-symbol-backends instead of help-xref-interned.
11604         * lisp/help.el (help-map): Use it.
11605         * lisp/help-mode.el (help-symbol, help-follow-symbol): Use it.
11606         (help-xref-interned): Make it into an obsolete alias.
11608         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-save): Don't ignore
11609         `file' arg (bug#20972).  Always use utf-8-emacs.  Use with-temp-buffer
11610         and cl-letf.
11612 2015-07-06  Wolfgang Jenkner  <wjenkner@inode.at>
11614         Fix parsing glitches in dired-mark-sexp (bug#13575)
11615         * lisp/dired-x.el (dired-x--string-to-number): New function.
11616         (dired-mark-sexp): Use it.  Tweak dired-re-inode-size.  Fix usage
11617         of directory-listing-before-filename-regexp.  Consider
11618         forward-word harmful and replace it.  Add more verbiage in
11619         comments and doc string.
11621 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
11623         python.el: Respect process environment for remote shells
11624         * lisp/progmodes/python.el
11625         (python-shell-calculate-process-environment): Calculate
11626         process-environment or tramp-remote-process-environment depending
11627         whether current file is remote.
11628         (python-shell-calculate-exec-path): Calculate exec-path or
11629         tramp-remote-path depending whether current file is remote.
11630         (python-shell-with-environment): New macro.
11631         (python-shell-prompt-detect, python-shell-calculate-command)
11632         (python-shell-make-comint, python-check): Use it.
11634         python.el: Avoid making let-bound defvars buffer local  (Bug#18244)
11635         * lisp/progmodes/python.el (python-shell--interpreter)
11636         (python-shell--interpreter-args): New vars.
11637         (inferior-python-mode, python-shell-make-comint): Use them.
11639         python.el: Fixes for IPython 3.x  (Bug#20580)
11640         * lisp/progmodes/python.el:
11641         (python-shell-completion-native-setup): Fix IPython 3.x setup.
11642         (python-shell-completion-native-get-completions): Fix timeout
11643         logic.
11645         python.el: Fix mark-defun behavior  (Bug#19665)
11646         * lisp/progmodes/python.el (python-mark-defun): New function.
11647         * test/automated/python-tests.el (python-mark-defun-1)
11648         (python-mark-defun-2, python-mark-defun-3): New tests.
11650 2015-07-05  Glenn Morris  <rgm@gnu.org>
11652         * lisp/progmodes/f90.el (f90-type-def-re): Handle attribute lists
11653         such as "extends(parent), private".  (Bug#20969)
11654         * test/automated/f90.el (f90-test-bug20969, f90-test-bug20969b):
11655         New tests.
11657 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
11659         Avoid duplicate calls to current_timespec
11660         * src/process.c (wait_reading_process_output):
11661         Cache current_timespec results as long as we're not waiting.
11663 2015-07-05  Ian Kelling  <ian@iankelling.org>
11665         Avoid returning early reading process output due to SIGIO
11666         * src/process.c (wait_reading_process_output): Extend the behavior of
11667         not breaking due to not finding output when a timer has lowered the
11668         timeout to include when SIGIO lowers the timeout.
11670         Don't return as fast reading any process output
11671         * src/process.c (wait_reading_process_output):
11672         The patch for Bug#17647 returns too fast sometimes when reading
11673         from any processes.  Revert part of it, and limit the timeout more
11674         sensibly (Bug#20978).
11676         Refactor timeouts in wait_reading_process_output
11677         * src/process.c (wait_reading_process_output):
11678         Simplify timeouts with an enum.  Remove a redundant condition.
11679         (Bug#20978)
11681         Remove ADAPTIVE_READ_BUFFERING ifdef
11682         * src/process.c (make-process, make-pipe-process, deactivate_process)
11683         (wait_reading_process_output, read_process_output, send_process)
11684         (init_process_emacs): ifdef ADAPTIVE_READ_BUFFERING was originally
11685         added in case there was an operating system in which it was not
11686         useful.  That was 11 years ago and it hasn't happened.  Make
11687         development easier by not considering the effect of changes on a
11688         theoretical OS where this is disabled (Bug#20978).
11690 2015-07-05  Glenn Morris  <rgm@gnu.org>
11692         * lisp/simple.el (set-variable): Doc fix.
11694         * lisp/progmodes/fortran.el (fortran-line-length): Doc fix.
11696 2015-07-05  Ian Kelling  <ian@iankelling.org>
11698         accept-process-output fix
11699         This is a followon to the fix for bug#17647 (Bug#20976).
11700         * src/process.c (status_notify): Fix too high return in some cases.
11702 2015-07-05  Artur Malabarba  <bruce.connor.am@gmail.com>
11704         * lisp/character-fold.el (character-fold-table):
11705         Only fold decompositions if at least one character is non-spacing.
11706         (Bug#20975)
11708 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
11710         Merge from gnulib
11711         This incorporates:
11712         2015-07-04 file-has-acl, acl-permissions: fix HP-UX typos
11713         2015-07-03 set-permissions.c: adjust acl_from_mode's cpp guard
11714         2015-07-02 update-copyright: fix test failure with perl >= 5.22
11715         2015-07-01 gnulib-common.m4: change the ARFLAGS default to 'cr'
11716         2015-07-01 acl: fix definition of acl_from_mode on FreeBSD
11717         * build-aux/update-copyright, doc/misc/texinfo.tex, lib/acl-internal.h:
11718         * lib/set-permissions.c, m4/gnulib-common.m4: Copy from gnulib.
11720 2015-07-05  Christoph Wedler  <christoph.wedler@sap.com>
11722         Respect `prog-indentation-context' in python.el
11723         * lisp/progmodes/python.el (python-indent-guess-indent-offset)
11724         (python-indent-context, python-indent--calculate-indentation)
11725         (python-info-current-defun)
11726         (python-info-dedenter-opening-block-message)
11727         (python-info-line-ends-backslash-p)
11728         (python-info-beginning-of-backslash)
11729         (python-info-continuation-line-p): Use `prog-widen'.
11730         (python-indent--calculate-indentation)
11731         (python-indent--calculate-levels)
11732         (python-indent-calculate-indentation): Use `prog-first-column'.
11733         (python-indent--calculate-levels): Simplify.
11734         Ignore also initial empty lines for syntax calculation.
11735         * lisp/progmodes/python.el (python-indent-context): Return
11736         :no-indent for first non-empty line, not just in line 1.
11737         * test/automated/python-tests.el (python-indent-base-case)
11738         (python-indent-inside-paren-1, python-indent-inside-paren-2)
11739         (python-indent-inside-paren-3, python-indent-inside-paren-4)
11740         (python-indent-inside-paren-5, python-indent-inside-paren-6)
11741         (python-indent-after-backslash-1)
11742         (python-indent-after-backslash-2)
11743         (python-indent-after-backslash-3)
11744         (python-indent-after-backslash-4, python-indent-inside-string-1):
11745         Expect :no-indent for first non-empty line.
11747 2015-07-04  Daniel Colascione  <dancol@dancol.org>
11749         Factor isearch word description into new function
11750         * lisp/isearch.el (isearch--describe-word-mode): New function.
11751         (isearch-message-prefix, isearch-query-replace): Use it.
11753 2015-07-04  Eli Zaretskii  <eliz@gnu.org>
11755         Fix mouse pointer on w32 when a menu is active
11756         * src/w32fns.c (w32_wnd_proc): Don't change the mouse pointer
11757         shape while a menu is in use.  This started happening since we now
11758         send WM_EMACS_SHOWCURSOR messages when the mouse moves.
11760 2015-07-04  Martin Rudalics  <rudalics@gmx.at>
11762         Fix processing of alpha parameter for Windows tip frames  (Bug#17344)
11763         * src/w32fns.c (x_create_tip_frame): Fix processing alpha
11764         parameter.  (Bug#17344)
11766         Have `compilation-set-window' use right window for getting fringes
11767         (Bug#20829)
11768         * lisp/progmodes/compile.el (compilation-set-window):
11769         Take `window-fringes' from argument window.
11771 2015-07-03  Glenn Morris  <rgm@gnu.org>
11773         Update eieio tests for recent eieio-core change.
11774         * test/automated/eieio-test-persist.el (persist-test-save-and-compare):
11775         * test/automated/eieio-tests.el
11776         (eieio-test-32-slot-attribute-override-2):
11777         Replace the deleted eieio--class-v with cl--find-class.
11779 2015-07-03  Martin Rudalics  <rudalics@gmx.at>
11781         Fix some issues with `window-divider-mode'
11782         * lisp/frame.el (window-divider-default-places): New option.
11783         (window-divider-mode): Remove option.
11784         (window-divider-mode): Make it a "regular" minor mode.
11785         (window-divider-width-valid-p): Drop frame- prefix.
11786         (window-divider-mode-apply): New argument ENABLE.  Drop frame-
11787         prefix.  Handle `window-divider-default-places'.
11788         (frame--window-divider-mode-set-and-apply): Remove.
11789         (window-divider-default-bottom-width)
11790         (window-divider-default-right-width): Drop :group entries.
11791         * lisp/menu-bar.el (menu-bar-bottom-and-right-window-divider)
11792         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
11793         (menu-bar-no-window-divider): Set `window-divider-default-places'
11794         and call `window-divider-mode'.
11795         * doc/emacs/frames.texi (Window Dividers): Document
11796         `window-divider-default-places'.
11798 2015-07-02  Xue Fuqiao  <xfq.free@gmail.com>
11800         * doc/emacs/display.texi (Displaying Boundaries):
11801         * doc/emacs/search.texi (Word Search): Add cross references.
11803 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
11805         -batch should not affect ‘’ -> `' display
11806         * lisp/startup.el (command-line): Do the ‘’ -> `' check even if
11807         -batch (Bug#20926).
11809 2015-07-02  Stefan Monnier  <monnier@iro.umontreal.ca>
11811         * lisp/emacs-lisp/eieio-core.el (eieio--class-v): Remove
11812         * lisp/emacs-lisp/eieio-core.el, lisp/emacs-lisp/eieio.el:
11813         * lisp/emacs-lisp/eieio-opt.el, lisp/emacs-lisp/eieio-compat.el:
11814         Use cl--find-class instead.
11816         * lisp/term/xterm.el (xterm--query): Fix paren typo (bug#20951).
11818 2015-07-02  Martin Rudalics  <rudalics@gmx.at>
11820         Some further fixes in Change Window node (Bug#20183)
11821         * doc/emacs/windows.texi (Change Window): Replace "rearranging"
11822         by "resizing" in section title.  Add some concept indices.
11823         Suggested by N. Jackson (Bug#20183).
11825         * doc/emacs/windows.texi (Change Window): Reference window
11826         dividers.
11828         Document new `window-divider-mode'.
11829         * lisp/frame.el (window-divider-mode): Fix doc-string.
11830         * doc/emacs/frames.texi (Window Dividers): New section.
11832         Improve accessibility of window dividers (Bug#20183)
11833         * lisp/faces.el (window-divider)
11834         (window-divider-first-pixel, window-divider-last-pixel): Change
11835         membership from `frames' to `window-divider' customization group.
11836         * lisp/frame.el (window-divider): New customization group.
11837         (window-divider-mode): New minor mode.
11838         (window-divider-default-bottom-width)
11839         (window-divider-default-right-width): New options.
11840         (frame--window-divider-previous-mode): New variable.
11841         (frame-window-divider-width-valid-p)
11842         (frame--window-divider-mode-apply)
11843         (frame--window-divider-mode-set-and-apply): New functions.
11844         * lisp/menu-bar.el (menu-bar-options-save): Save
11845         window-divider-mode settings.
11846         (menu-bar-window-divider-customize)
11847         (menu-bar-bottom-and-right-window-divider)
11848         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
11849         (menu-bar-no-window-divider): New functions.
11850         (menu-bar-showhide-window-divider-menu): New variable.
11851         (menu-bar-showhide-menu): Show/hide window divider menu.
11852         * lisp/mouse.el (mouse-split-window-vertically)
11853         (mouse-split-window-horizontally): Replace `error' by
11854         `user-error'.  Bind `window-combination-resize' to nil.
11855         (top-level): Add/reorder mouse key bindings on mode- and
11856         vertical-line.
11858 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
11860         Don't display ‘’ as `' under X in en_GB
11861         The curved quote setup code invokes (char-displayable-p ?‘),
11862         but this isn’t reliable until after the X frame replaces the
11863         terminal frame (Bug#20926).
11864         * lisp/international/mule-cmds.el (set-locale-environment):
11865         Move curved quote setup code from here ...
11866         * lisp/startup.el (command-line): ... to here, after creating
11867         the X frame.
11869 2015-07-01  Nicolas Richard  <youngfrog@members.fsf.org>
11871         * lisp/emacs-lisp/seq.el (seq-difference): Fix typo in docstring.
11873         * lisp/ido.el (ido-restrict-to-matches): Add an optional argument
11874         to reverse the meaning (Bug#15631).
11876 2015-07-01  Eli Zaretskii  <eliz@gnu.org>
11878         Be more tolerant to fonts named "Foobar-12"
11879         * src/frame.c (x_set_font): If font_spec_from_name returns nil,
11880         don't barf; instead, request a new fontset to be generated.  This
11881         avoids unnecessarily rejecting fonts named against XLFD rules.  See
11882         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html,
11883         for the description of the original problem.
11884         * lisp/faces.el (set-face-attribute): Don't be fooled too easily
11885         by a hyphen in a font's name.
11887         Fix value of posn-at-pont in R2L lines
11888         * src/keyboard.c (Fposn_at_x_y, Fposn_at_point): Allow X pixel
11889         coordinate of -1, for a newline in a right-to-left line that
11890         overflowed into the left fringe.
11892 2015-07-01  Stefan Monnier  <monnier@iro.umontreal.ca>
11894         (cl--copy-slot-descriptor): Copy the `props' alist as well
11895         * lisp/emacs-lisp/cl-preloaded.el (cl--copy-slot-descriptor-1):
11896         Rename from cl--copy-slot-descriptor.
11897         (cl--copy-slot-descriptor): New function.  Copy the alist (bug#20914).
11899 2015-06-30  Stefan Monnier  <monnier@iro.umontreal.ca>
11901         * lisp/term/xterm.el (xterm--query): Avoid generating garbage
11902         (xterm-query-timeout): New var.
11903         (xterm--query): Use it.  Fallback on async method if we timeout before
11904         getting the first byte of the reply (bug#12354).
11906 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
11908         Spelling fixes
11909         * lisp/character-fold.el (character-fold-search):
11910         * lisp/emacs-lisp/package.el (package-hidden-regexps):
11911         Fix typos.
11913 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
11915         * doc/emacs/frames.texi (Frame Commands): Typo fix.  (Bug#20946)
11917 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
11919         In strings, prefer plain ` and ' to \` and \'
11920         * lisp/allout.el (allout-insert-listified):
11921         * lisp/emacs-lisp/easy-mmode.el (define-globalized-minor-mode):
11922         * lisp/ls-lisp.el (ls-lisp-UCA-like-collation)
11923         (ls-lisp-string-lessp):
11924         * lisp/menu-bar.el (menu-bar-open):
11925         * lisp/obsolete/otodo-mode.el (todo-top-priorities):
11926         * lisp/progmodes/compile.el (compile):
11927         * lisp/progmodes/etags.el (tags-loop-scan):
11928         * lisp/progmodes/make-mode.el (makefile-browser-insert-continuation):
11929         * lisp/subr.el (posn-actual-col-row):
11930         * lisp/term/pc-win.el (x-list-fonts):
11931         * lisp/textmodes/texinfmt.el (texinfmt-version):
11932         * lisp/textmodes/texnfo-upd.el (texinfo-master-menu):
11933         * lisp/time.el (display-time-world-list):
11934         * lisp/tmm.el (tmm-menubar):
11935         * src/buffer.c (syms_of_buffer):
11936         * src/fileio.c (syms_of_fileio):
11937         Omit unnecessary and confusing backslash before quote.
11938         * lisp/erc/erc.el (erc-cmd-LASTLOG):
11939         * lisp/progmodes/flymake.el (flymake-fix-file-name):
11940         * lisp/progmodes/vhdl-mode.el (vhdl-in-extended-identifier-p):
11941         Fix string that was intended to escape a backslash and not a quote.
11943 2015-06-30  Glenn Morris  <rgm@gnu.org>
11945         * leim/Makefile.in, lisp/Makefile.in: Add missing EXEEXT definition.
11947         * lisp/Makefile.in (MH_E_SRC, TRAMP_SRC, CAL_SRC):
11948         Replace hard-coded lists with wildcard + filter-out.
11950         * configure.ac (system-configuration-features): Add X11, NS.
11952         Improve reproducibility of generated loaddefs file
11953         * lisp/emacs-lisp/autoload.el (autoload-generate-file-autoloads):
11954         Make the return value the modtime of the input file (if no autoloads).
11955         (update-directory-autoloads): In the "no autoloads" section,
11956         use "most recent modtime" rather than "current time".
11958 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
11960         * lisp/emacs-lisp/package.el (package--remove-hidden): Fix logic.
11961         (Bug#20930)
11963 2015-06-30  Nicolas Petton  <nicolas@petton.fr>
11965         * doc/lispref/sequences.texi: Add documentation for seq-min and seq-max.
11967         Add seq-min and seq-max
11968         Bump version number.
11969         * lisp/emacs-lisp/seq.el (seq-min, seq-max): New functions.
11970         * test/automated/seq-tests.el: Add tests for seq-min and seq-max.
11972 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
11974         Make sure sleep-for always delays for as long as it's told
11975         * src/dispnew.c (Fsleep_for): Call wait_reading_process_output in
11976         a loop, to ensure we always wait exactly the required amount of
11977         time.  (Bug#15990)
11979 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
11981         Fix pointer signedness glitch
11982         * src/font.c (font_load_for_lface): Use SSDATA, not SDATA.
11984 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
11986         Don't block changes in mouse pointer inside 'track-mouse'
11987         * etc/NEWS:
11988         * doc/lispref/frames.texi (Mouse Tracking): Document the special
11989         effect of setting 'track-mouse' to 'dragging'.
11990         * lisp/textmodes/artist.el (artist-mouse-draw-continously):
11991         * lisp/ruler-mode.el (ruler-mode-mouse-drag-any-column-iteration):
11992         * lisp/mouse-drag.el (mouse-drag-throw):
11993         * lisp/mouse.el (mouse-drag-line): Set 'track-mouse' to 'dragging'
11994         to avoid changes in the shape of the mouse pointer.
11995         * src/xdisp.c (define_frame_cursor1): Don't change the mouse
11996         pointer shape when do_mouse_tracking has the value of 'dragging',
11997         not just any non-nil value.  (Bug#20934)
11998         (syms_of_xdisp): DEFSYM 'dragging'.
12000 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
12002         * lisp/isearch.el (isearch-toggle-word): Fix toggle.
12004         * lisp/emacs-lisp/package.el (package-compute-transaction):
12005         Don't assume version sorting.
12007         * lisp/emacs-lisp/package.el (package--save-selected-packages):
12008         Don't save before init time, to avoid overwriting configurations.
12009         (Bug#20855)
12011 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
12013         * doc/emacs/display.texi (Standard Faces, Fringes): Add cross
12014         references.
12016 2015-06-29  Ted Zlatanov  <tzz@lifelogs.com>
12018         Update for the upcoming CFEngine 3.7 release: support macros and
12019         quoted context strings; reformat JSON; indent promise attributes 2
12020         units by default; give function parameter descriptions in the eldoc
12021         glue.
12022         * lisp/progmodes/cfengine.el: Update version and docs and fix name.
12023         Autoload `json-pretty-print'.  Support new features in 3.7.
12024         (cfengine-parameters-indent): Set default promise attribute indent to
12025         2 more than the promise itself.
12026         (cfengine3-macro-regex): New variable to match the new macro syntax.
12027         (cfengine3-font-lock-keywords): Use it to highlight macros.
12028         (cfengine3-indent-line): Use it to indent macros to column 0.
12029         (cfengine3-class-selector-regex): Update for the new quoted strings
12030         format.
12031         (cfengine3-reformat-json-string): New function to reformat a JSON
12032         string using `json-pretty-print'.
12033         (cfengine3-format-function-docstring): Use function parameter
12034         description if it's provided by the cf-promises syntax dump.
12036 2015-06-29  Michael R. Mauger  <michael@mauger.com>
12038         Cygwin emacsclient handles w32 file names
12039         * lisp/server.el (server-process-filter): Allow Cygwin's
12040         emacsclient to be used as a file handler on MS-Windows.
12042 2015-06-29  Katsumi Yamaoka  <yamaoka@jpl.org>
12044         * lisp/isearch.el (isearch-exit): Don't call isearch-done twice
12045         (bug#20925).
12047 2015-06-29  Eli Zaretskii  <eliz@gnu.org>
12049         * doc/lispref/text.texi (Sticky Properties): Improve wording.
12050         (Bug#20924)
12052         Allow font names that end in "-NN", where NN is a number
12053         * src/font.c (font_load_for_lface): If the font-spec didn't match
12054         any available fonts, try again without interpreting trailing "-NN"
12055         as the font size.  For the description of the original problem, see
12056         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html
12058         .gdbinit followup to changes in !USE_LSB_TAG
12059         * src/.gdbinit (xgetsym): Don't left-shift $ptr even under
12060         !USE_LSB_TAG, as Emacs no longer does.
12062 2015-06-29  Wolfgang Jenkner  <wjenkner@inode.at>
12064         * lisp/calc-store.el (calc-insert-permanent-variable): Heed case.
12065         Otherwise `s p' of f and F will stomp on each other's value.
12066         (Bug#20916)
12068 2015-06-29  Artur Malabarba  <bruce.connor.am@gmail.com>
12070         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
12071         Don't block remember-pos if buffer isn't displayed.  (Bug#20921)
12073 2015-06-29  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
12075         * lisp/emacs-lisp/package.el (describe-package): Use symbol-at-point
12076         as additional guess.
12078         * lisp/emacs-lisp/package.el (describe-package): Convert the guess
12079         to a string.
12081 2015-06-28  Paul Eggert  <eggert@cs.ucla.edu>
12083         apropos-library quoting fix
12084         * lisp/apropos.el (apropos-library): Quote library consistently
12085         with the rest of the quoting used by apropos.
12087         Clarify interpreter-mode-alist doc
12088         * lisp/files.el (interpreter-mode-alist):
12089         Reword to avoid confusing quoting that wasn't working anyway.
12091 2015-06-28  Michael Albinus  <michael.albinus@gmx.de>
12093         Sync with Tramp 2.2.12
12094         * doc/misc/trampver.texi:
12095         * lisp/net/trampver.el: Update release number.
12096         * test/automated/tramp-tests.el (tramp-test13-make-directory):
12097         Fix cleanup.
12099 2015-06-28  Artur Malabarba  <bruce.connor.am@gmail.com>
12101         * lisp/isearch.el (isearch-mode): Don't char-fold regexps (bug#20913).
12103 2015-06-27  Dmitry Gutov  <dgutov@yandex.ru>
12105         Bind grep-highlight-matches around the rgrep call
12106         * lisp/progmodes/grep.el (zrgrep): Bind grep-highlight-matches
12107         around the rgrep call (bug#20728).
12109         Put "--color" before the other options in grep-command
12110         * lisp/progmodes/grep.el (grep-compute-defaults): Put "--color"
12111         before the other options in grep-command (bug#20912).
12113         Add --color Grep option to the command dynamically
12114         * lisp/progmodes/grep.el (grep-template, grep-find-template):
12115         Update the description for <C>.  (Bug#20728)
12116         (grep-compute-defaults): Don't add the --color option to
12117         grep-options.  Only add it to grep-command.
12118         (grep-expand-keywords): Expand the env value opts into <C>.
12119         (grep-expand-template): Replace cf in the env with the opts list,
12120         that can include -i and --color.
12121         * lisp/progmodes/xref.el (xref-collect-matches): Do not remove
12122         "--color=always" from the template, because we don't have to.
12124 2015-06-27  Paul Eggert  <eggert@cs.ucla.edu>
12126         cl-extra fixes for most-negative-fixnum
12127         * lisp/emacs-lisp/cl-extra.el (cl-gcd, cl-lcm, cl-random):
12128         Don't mishandle an argument equal to most-negative-fixnum,
12129         whose absolute value equals itself.
12130         (cl-gcd, cl-lcm): Use dolist rather than doing it by hand.
12132         Initialize cl--gensym-counter to 0
12133         Previously it was initialized to a random value, which made it
12134         harder to reproduce earlier Emacs runs.  The need for a random
12135         value went away when Emacs introduced and used the #: syntax for
12136         uninterned symbols (Bug#20862).
12137         * doc/misc/cl.texi (Creating Symbols, Common Lisp Compatibility):
12138         Document that cl--gensym-counter now starts with 0.
12139         * lisp/emacs-lisp/cl-lib.el (cl--gensym-counter): Remove.
12140         (cl--random-time): Move to near only remaining use.
12141         * lisp/emacs-lisp/cl-macs.el (cl--gensym-counter): Initialize to 0.
12143         Improve docstring for macroexp-let2
12144         * lisp/emacs-lisp/macroexp.el (macroexp-let2):
12145         Improve as per suggestion by RMS in:
12146         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00621.html
12147         Also, rename args to match new doc string.
12149 2015-06-27  Eli Zaretskii  <eliz@gnu.org>
12151         Fix VC test suite on MS-Windows
12152         * lisp/vc/vc-svn.el (vc-svn-create-repo): Make sure the file: URL
12153         always starts with 3 slashes after the colon.
12154         * test/automated/vc-tests.el (vc-test--create-repo-function): Use
12155         'w32-application-type' to invoke CVS on MS-Windows with properly
12156         formatted CVSROOT directory name.
12158         Add a new function w32-application-type
12159         * src/w32proc.c (Fw32_application_type): New function.
12161         Avoid error in TLS connections due to incorrect format
12162         * src/gnutls.c (Fgnutls_boot): Use the %x conversion specifier in
12163         the call to 'error', instead of the unsupported %u.  Reported by
12164         lo2net <fangtao0901@gmail.com>.  (Bug#20908)
12166 2015-06-26  Artur Malabarba  <bruce.connor.am@gmail.com>
12168         * lisp/replace.el (replace-search): Fix regexp case (bug#20901).
12170 2015-06-26  Leo Liu  <sdl.web@gmail.com>
12172         * lisp/emacs-lisp/cl-indent.el: Fix indentation for
12173         `with-output-to-string' in elisp.
12175         Revert "lisp/emacs-lisp/cl-indent.el: Fix indent of
12176         with-output-to-string".
12177         This reverts commit 659199f2ca5f283fb246faa78a244e5ca25f53dd.
12179 2015-06-26  Eli Zaretskii  <eliz@gnu.org>
12181         Minor corrections in ELisp manual
12182         * doc/lispref/nonascii.texi (Character Properties): Correct
12183         inaccuracies in description of values of the Unicode properties.
12185         Fix invisible mouse pointers on Windows.
12186         * src/w32fns.c: Include windowsx.h.
12187         (w32_wnd_proc): If the mouse moved and the mouse pointer is
12188         invisible, make it visible again even when the main (Lisp)
12189         thread is busy.
12190         * src/w32term.c (w32_toggle_invisible_pointer): Rather then
12191         garbaging the frame have the input thread call SetCursor.
12193 2015-06-26  Martin Rudalics  <rudalics@gmx.at>
12195         Provide invisible mouse pointers on Windows (Bug#6105) (Bug#12922)
12196         * src/w32fns.c (w32_wnd_proc): Handle f->pointer_invisible
12197         for WM_SETCURSOR and WM_EMACS_SETCURSOR cases.
12198         * src/w32term.c (w32_hide_hourglass): Handle f->pointer_invisible.
12199         (w32_toggle_invisible_pointer): New function.
12200         (w32_create_terminal): Add w32_toggle_invisible_pointer as
12201         toggle_invisible_pointer_hook for this terminal.
12203 2015-06-25  Xue Fuqiao  <xfq.free@gmail.com>
12205         Doc fix for deletion commands
12206         'delete-char' does not respect the value of 'delete-active-region'.
12207         * doc/emacs/killing.texi (Deletion):
12208         Fix documentation for some single-char deletion commands.
12210         * doc/emacs/help.texi (Apropos):
12211         Improve documentation of 'apropos-do-all'.
12213         * doc/emacs/help.texi (Help Summary):
12214         Improve documentation of 'describe-mode'.
12216 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
12218         Fix submake dependency bug with .h files
12219         * src/Makefile.in ($(libsrc)/make-docfile$(EXEEXT)):
12220         Depend on $(lib)/libgnu.a, so that we build $(lib)/*/*.h
12221         before the submake in $(libsrc) would spin off a subsubmake
12222         for $(lib) in parallel with our submake for $(lib) (Bug#20894).
12224 2015-06-25  Artur Malabarba  <bruce.connor.am@gmail.com>
12226         * lisp/character-fold.el (character-fold-table): Reuse `table'.
12228 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
12230         Translate undisplayable ‘ to `
12231         * doc/lispref/help.texi (Keys in Documentation):
12232         * lisp/international/mule-cmds.el (set-locale-environment):
12233         * lisp/term/w32console.el (terminal-init-w32console):
12234         * src/doc.c (Fsubstitute_command_keys, Vhelp_quote_translation):
12235         If ‘ is not displayable, transliterate it to `, not to '.  See:
12236         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00542.html
12238         Fix C99 incompatibilities in Cairo code
12239         * src/image.c (xpm_load) [USE_CAIRO]:
12240         * src/xterm.c (x_cr_accumulate_data) [USE_CAIRO]:
12241         Fix pointer signedness problem.
12243 2015-06-25  Oleh Krehel  <ohwoeowho@gmail.com>
12245         lisp/emacs-lisp/cl-indent.el: Fix indent of with-output-to-string
12246         * lisp/emacs-lisp/cl-indent.el (common-lisp-indent-function):
12247         `with-output-to-string' should have the same indent as `progn'.
12248         This is in line with the declaration of `with-output-to-string'.
12250 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
12252         Get ‘./configure; make -C src emacs’ to work
12253         Without this fix, lib/fcntl.h isn't built in time (Bug#20894).
12254         * lib-src/Makefile.in (../lib/libgnu.a):
12255         * src/Makefile.in ($(lib)/libgnu.a): Build all, not libgnu.a.
12257 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
12259         Fix GC bugs --with-wide-int and Qnil == 0
12260         Use the same alignment for the !USE_LSB_TAG case as for the
12261         more-typical USE_LSB_TAG case.  The attempt to support arbitrary
12262         alignments with !USE_LSB_TAG had subtle bugs in garbage collection
12263         once we changed the representation of symbols so that Qnil == 0.
12264         Problem reported by Eli Zaretskii (Bug#20862).
12265         * src/alloc.c (XMALLOC_HEADER_ALIGNMENT) [XMALLOC_OVERRUN_CHECK]:
12266         * src/alloc.c (vector_alignment, union aligned_Lisp_Symbol)
12267         (union aligned_Lisp_Misc, maybe_lisp_pointer, pure_alloc):
12268         Use same alignment for !USE_LSB_TAG as for USE_LSB_TAG.
12269         * src/alloc.c (POINTERS_MIGHT_HIDE_IN_OBJECTS): Remove.
12270         This optimization in the !USE_LSB_TAG case is no longer valid when
12271         symbols are represented via offsets.  Change the only use to
12272         assume that pointers might hide in objects.
12273         * src/lisp.h (alignas) [!USE_LSB_TAG]:
12274         Require support in this case, too.
12275         (TAG_SYMOFFSET, XSYMBOL) [!USE_LSB_TAG]: Do not shift the offset.
12276         This is OK, because the !USE_LSB_TAG case now applies only when
12277         Lisp_Object is wider than void *, so there's no longer any need
12278         to shift the offset.  Not shifting the offset means that
12279         symbol representations have the same alignment as pointers,
12280         which the GC assumes.
12282 2015-06-24  Xue Fuqiao  <xfq.free@gmail.com>
12284         * doc/lispintro/emacs-lisp-intro.texi (Data types):
12285         Improve documentation of 'substring'.
12287 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
12289         * lisp/character-fold.el (character-fold-table): Fix table generation.
12291 2015-06-24  Glenn Morris  <rgm@gnu.org>
12293         * nextstep/Makefile.in (all): Make it the first target.
12294         (../src/emacs${EXEEXT}): Add rule for making it.
12296 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
12298         * etc/NEWS: Fix mention to old function name.
12300         * lisp/character-fold.el: New file (Bug#20887)
12301         (character-fold-to-regexp): New function.
12302         * lisp/replace.el (replace-search): Check value of
12303         `character-fold-search'.
12304         * lisp/isearch.el: Move character-folding code to
12305         character-fold.el
12306         (isearch-toggle-character-fold): New command.
12307         (isearch-mode-map): Bind it to "\M-sf".
12308         (isearch-mode): Check value of `character-fold-search'.
12310 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
12312         lisp/subr.el (remove-from-invisibility-spec): Handle the t case
12313         * lisp/subr.el (remove-from-invisibility-spec): Make sure `element'
12314         is visible even if it's not yet in buffer-invisibility-spec (bug#20468).
12316         * lisp/progmodes/xref.el (xref-location-group, xref-location-marker)
12317         (xref--insert-xrefs, xref-collect-references): Avoid init-args in oref.
12319 2015-06-24  Glenn Morris  <rgm@gnu.org>
12321         * Makefile.in (install-arch-dep): Don't set sticky bit on the binary.
12323 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
12325         lisp/gnus/nnmaildir.el: Silence lexical warnings
12326         * lisp/gnus/nnmaildir.el (nnmaildir--prepare): Use a more
12327         functional style.
12328         (nnmaildir--update-nov): Remove unused var `numdir'.
12329         (nnmaildir-request-type, nnmaildir--scan, nnmaildir-request-newgroups)
12330         (nnmaildir-request-group, nnmaildir-request-create-group)
12331         (nnmaildir-request-post, nnmaildir-request-move-article)
12332         (nnmaildir-request-accept-article, nnmaildir-active-number):
12333         Mark unused args.
12334         (nnmaildir-get-new-mail, nnmaildir-group-alist)
12335         (nnmaildir-active-file): Declare.
12336         (nnmaildir-request-scan): Remove unused vars `group' and `grp-dir'.
12337         (nnmaildir-request-update-info): Remove unused vars `dotfile', `num',
12338         `mark', `end', `new-mark', and `mark-sym'.
12339         (nnmaildir-retrieve-headers): Remove unused args `srv-dir', `dir',
12340         `nlist2'.
12341         (nnmaildir-request-expire-articles):
12342         Remove unused vars `article', `stop' and `nlist2'.
12343         (nnmaildir-request-set-mark): Remove unused vars `begin', `article' and
12344         `end'.  Use nnmaildir--article when dyn-binding is needed.
12345         Give the value directly in the `let' for `del-mark', `del-action',
12346         `add-action', and `set-action'.  Don't use `add-to-list' on a local var.
12347         (nnmaildir-close-server): Declare those local vars that need to be
12348         dyn-bound.
12350 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
12352         * src/keyboard.h (kbd_buffer_store_event_hold): Remove unused local.
12354         Port selection info fix to clang
12355         * src/keyboard.h (kbd_buffer_store_event_hold):
12356         Don't assume C11 semantics for alignof (Bug#20756).
12358         Fix bug that munged selection info
12359         On some optimizing C compilers, copying a structure did not
12360         copy the padding bytes between elements, and the type punning
12361         between struct input_data and struct selection_input_data did
12362         not work.  Change the C code to use a proper union type instead.
12363         Problem reported by YAMAMOTO Mitsuharu (Bug#20756).
12364         * src/keyboard.c (kbd_buffer, kbd_fetch_ptr, kbd_store_ptr)
12365         (readable_events, discard_mouse_events, kbd_buffer_events_waiting)
12366         (kbd_buffer_get_event, process_special_events, stuff_buffered_input)
12367         (mark_kboards):
12368         Use union buffered_input_event, not struct input_event.
12369         (clear_event, deliver_input_available_signal, process_special_events):
12370         Remove unnecessary forward decls.
12371         (kbd_buffer_store_buffered_event): New function, mostly just the
12372         old kbd_buffer_store_event_hold, except its argument is of type
12373         union buffered_input_event, not struct input_event.
12374         (kbd_buffer_unget_event): Define only if HAVE_X11, since it's
12375         not needed otherwise.  Argument is now of type
12376         struct selection_input_event *, not struct input_event *.
12377         All callers changed.
12378         (clear_event): Arg is now of type union buffered_input_event *,
12379         not struct input_event *.  All callers changed.
12380         * src/keyboard.h [HAVE_X11]: Include "xterm.h".
12381         (union buffered_input_event): New type.
12382         (kbd_buffer_store_event_hold): Now an inline function,
12383         defined here.
12384         * src/termhooks.h (EVENT_KIND_WIDTH): New constant.
12385         (struct input_event): Use it.
12386         * src/xselect.c (struct selection_event_queue):
12387         Make elements be of type struct selection_input_event,
12388         not struct input_event.
12389         (selection_input_event_equal): New static function.
12390         (x_queue_event): Use it.
12391         (x_queue_event, x_decline_selection_request)
12392         (x_selection_current_request, x_reply_selection_request)
12393         (x_handle_selection_request, x_handle_selection_clear)
12394         (x_handle_selection_event): Use struct selection_input_event,
12395         not struct input_event.  All callers changed.
12396         (x_convert_selection): Omit unused first arg.  All callers changed.
12397         (Fx_disown_selection_internal): Omit unnecessary union.
12398         * src/xterm.c (handle_one_xevent): Use new union buffered_input_event
12399         rather than rolling our own equivalent.  Prefer sie.kind when
12400         setting up that kind of structure.
12401         Call kbd_buffer_store_buffered_event, not kbd_buffer_store_event_hold.
12402         * src/xterm.h (struct selection_input_event: Use EVENT_KIND_WIDTH.
12403         (SELECTION_EVENT_DISPLAY, SELECTION_EVENT_DPYINFO)
12404         (SELECTION_EVENT_REQUESTOR, SELECTION_EVENT_SELECTION)
12405         (SELECTION_EVENT_TARGET, SELECTION_EVENT_PROPERTY)
12406         (SELECTION_EVENT_TIME, x_handle_selection_event):
12407         Arg is now of type struct selection_input_event *)
12408         not struct input_event *.  All callers changed.
12410 2015-06-23  Glenn Morris  <rgm@gnu.org>
12412         * Makefile.in (install-arch-dep): Simplify with Make conditionals.
12414 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
12416         * lisp/isearch.el: Fold many unicode characters to ASCII.
12417         (isearch-character-fold-search, isearch--character-fold-extras)
12418         (isearch--character-fold-table): New variable.
12419         (isearch--character-folded-regexp): New function.
12420         (isearch-search-fun-default): Use them.
12421         * lisp/replace.el (replace-character-fold): New variable.
12422         (replace-search): Use it.
12423         * etc/NEWS: Document it.
12425 2015-06-23  Glenn Morris  <rgm@gnu.org>
12427         Check for an input event before showing a dialog box.  (Bug#20813)
12428         * lisp/subr.el (y-or-n-p):
12429         * src/fns.c (Fyes_or_no_p): Check last-input-event as well
12430         as last-nonmenu-event.
12432 2015-06-23  Jürgen Hartmann  <juergen_hartman_@hotmail.com>  (tiny change)
12434         Respect ‘switch-to-visible-buffer’ more rigidly.  (Bug#20861)
12435         * lisp/window.el (switch-to-visible-buffer): Doc adjustment.
12436         (switch-to-prev-buffer, switch-to-next-buffer): Respect
12437         switch-to-visible-buffer independent of the windows history.
12439 2015-06-23  Paul Eggert  <eggert@cs.ucla.edu>
12441         * src/keyboard.c (last_timer_event): Remove unused var.
12443 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
12445         * test/automated/package-test.el (package-test-update-listing):
12446         Fix test.
12448 2015-06-23  Glenn Morris  <rgm@gnu.org>
12450         Revert 2014-06-25 nextstep/Makefile change.
12451         * nextstep/Makefile.in (${ns_appbindir}): Remove rule.
12452         (${ns_appbindir}/Emacs, links): Create ns_appbindir in the rule,
12453         not as an order-only prerequisite.
12455         * configure.ac (--with-ns): Enable by default on OS X.
12457 2015-06-23  Leo Liu  <sdl.web@gmail.com>
12459         Fix shell-for/backward-command to exclude spaces
12460         * lisp/shell.el (shell-forward-command, shell-backward-command):
12461           Handle the 'move case from re-search-forward/backward.
12462           fixes debbugs:20873
12464 2015-06-22  Juri Linkov  <juri@linkov.net>
12466         * lisp/replace.el (query-replace-read-from): Add separator to
12467         the local binding of text-property-default-nonsticky.  (Bug#20690)
12469         * lisp/simple.el (shell-command-on-region): Replace 'error' with 'user-error'.
12470         (Bug#20785)
12472 2015-06-22  Ken Brown  <kbrown@cornell.edu>
12474         Enable CPU profiling on Cygwin
12475         * src/syssignal.h [CYGWIN] (PROFILER_CPU_SUPPORT): Revert previous
12476         change that undefined this.
12477         (SIGEV_SIGNAL): Ensure that this is defined as a macro.
12478         * src/profiler.c [CYGWIN] (timer_getoverrun): Define as a macro on
12479           Cygwin.
12481         Improve diagnostics of profiler-cpu-start
12482         * src/profiler.c (setup_cpu_timer): Change return type to 'int';
12483         return -1 if the sampling interval is invalid.
12484         (Fprofiler_cpu_start): Improve error message if 'setup_cpu_timer'
12485         fails.  (Bug#20843)
12487 2015-06-22  Artur Malabarba  <bruce.connor.am@gmail.com>
12489         * lisp/emacs-lisp/package.el: Exclude packages by name.
12490         (package-hidden-regexps): New variable.
12491         (package-menu--refresh): Use it.
12492         (package-menu-hide-package): New command.
12494         * lisp/emacs-lisp/package.el: Rename hide-obsolete to toggle-hiding.
12496 2015-06-22  Eli Zaretskii  <eliz@gnu.org>
12498         Fix debug-timer-check on systems without HAVE_TIMERFD
12499         * src/atimer.c (Fdebug_timer_check) [!HAVE_TIMERFD]: Actively run
12500         the expired timers, since wait_reading_process_output doesn't.
12501         (debug_timer_callback): Enlarge the tolerance to 20 msec.
12503         Fix RCS crashes in vc-test
12504         * lisp/vc/vc-rcs.el (vc-rcs-register): Avoid crashes with some old
12505         ports of 'ci' on MS-Windows by always passing the -t- switch.
12507 2015-06-22  Glenn Morris  <rgm@gnu.org>
12509         * doc/emacs/package.texi (Packages):
12510         * doc/emacs/trouble.texi (Known Problems): Remove faq cross-references.
12512         * doc/misc/efaq-w32.texi (Downloading): Copyedits.  (Bug#20851)
12514 2015-06-22  Paul Eggert  <eggert@cs.ucla.edu>
12516         Port tests to help-quote-translation
12517         * test/automated/ert-x-tests.el (ert-test-describe-test):
12518         * test/automated/package-test.el (package-test-describe-package)
12519         (package-test-signed): Allow straight quotes, too.
12521 2015-06-22  Dmitry Gutov  <dgutov@yandex.ru>
12523         Make find-function-on-key use the current window
12524         * lisp/emacs-lisp/find-func.el (find-function-on-key-do-it):
12525         Extract from `find-function-on-key', add a second argument.
12526         (find-function-on-key): Use it (bug#19679).
12527         (find-function-on-key-other-window)
12528         (find-function-on-key-other-frame): New commands.
12530 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
12532         Revert "Define `map-elt' as a generalized variable"
12533         This reverts commit 8b6d82d3ca86f76ed964063b3941a7c6ab0bf1c6.
12535 2015-06-21  Ken Brown  <kbrown@cornell.edu>
12537         Drop support for CPU profiling on Cygwin
12538         * src/syssignal.h (PROFILER_CPU_SUPPORT): Don't define on Cygwin.
12539         (Bug#20843)
12541 2015-06-21  Paul Eggert  <eggert@cs.ucla.edu>
12543         Fix some “nested” quoting confusion in doc strings
12544         * lisp/emacs-lisp/advice.el (ad-map-arglists):
12545         * lisp/kermit.el (kermit-clean-on):
12546         * lisp/mh-e/mh-comp.el (mh-repl-group-formfile):
12547         * src/keyboard.c (Frecursive_edit):
12548         Use curved quotes when quoting text containing apostrophe,
12549         so that the apostrophe isn't curved in the output.
12551 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
12553         Define `map-elt' as a generalized variable
12554         * lisp/emacs-lisp/map.el (map-elt): Define a gv-expander.
12555         * lisp/emacs-lisp/map.el (map--dispatch): Tighten the code.
12556         * lisp/emacs-lisp/map.el (map-put): Redefine it as a function using a
12557         `setf' with `map-elt'.
12558         * test/automated/map-tests.el: Comment out `test-map-put-literal'.
12560 2015-06-21  Michael Albinus  <michael.albinus@gmx.de>
12562         Improve error handling in tramp-adb.el
12563         * lisp/net/tramp-adb.el (tramp-adb-handle-file-local-copy):
12564         Improve error handling.
12566 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
12568         Reuse `alist-get' in map.el
12569         * lisp/emacs-lisp/map.el (map-elt): Use `alist-get' to retrieve alist
12570         elements.
12572 2015-06-21  Eli Zaretskii  <eliz@gnu.org>
12574         Fix bytecomp-tests--warnings when $TMPDIR has a long name
12575         * test/automated/bytecomp-tests.el (bytecomp-tests--warnings):
12576         Allow the warning to begin on the 3rd, not only 2nd line, which
12577         happens if temporary-file-directory has a very long name.
12579         Expect 2 icalendar tests to fail on MS-Windows
12580         * test/automated/icalendar-tests.el (icalendar-import-with-timezone)
12581         (icalendar-real-world): Make them expected failures on MS-Windows.
12583 2015-06-20  Paul Eggert  <eggert@cs.ucla.edu>
12585         Improve port of settings UI to older displays
12586         * lisp/cus-start.el (standard): Don't assume curved quotes are
12587         easily distinguishable when users are tinkering with a setting
12588         that affects how curved quotes are generated.
12590         Fix quoting in electric-quote-mode doc string
12591         * lisp/electric.el (electric-quote-mode): Fix quoting.
12592         This is a fallout from the recent change introducing
12593         ‘help-quote-translation’.
12595         Spelling fix
12597         * doc/misc/texinfo.tex, lib/set-permissions.c: Merge from gnulib.
12599         * src/doc.c (syms_of_doc): Remove unused symbols.
12601 2015-06-20  Martin Rudalics  <rudalics@gmx.at>
12603         * lisp/window.el (window-state-put): Undedicate target window
12604         before putting STATE into it.  (Bug#20848)
12606 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
12608         Merge from origin/emacs-24
12609         a5e6f33 Fixes: debbugs:20832
12610         b9f02cf Fixes: debbugs:20832
12612 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
12614         Fix file-in-directory-p when the directory is UNC
12615         * lisp/files.el (file-in-directory-p): Support files and
12616         directories that begin with "//".  (Bug#20844)
12618 2015-06-19  Stephen Berman  <stephen.berman@gmx.net>
12620         * lisp/calendar/todo-mode.el (todo-show): Don't visit todo file
12621         in the minibuffer.  (Bug#20832)
12623 2015-06-19  Nicolas Richard  <youngfrog@members.fsf.org>
12625         * lisp/calendar/todo-mode.el (todo-show): Signal an error if buffer
12626         for adding new todo file is empty but modified.  (Bug#20832)
12628 2015-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
12630         (filepos-to-bufferpos): Further tweaks to the utf-16 code
12631         * lisp/international/mule-util.el (filepos-to-bufferpos):
12632         Fix typo.  Move non-exact check to the utf-16 branch (the only one
12633         affected).  Don't use byte-to-position for the utf-16 case.
12635 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
12637         Minor fixes in filepos-to-bufferpos
12638         * lisp/international/mule-util.el (filepos-to-bufferpos): Remove
12639         test for utf-8-emacs.  Exempt single-byte encodings from the
12640         'use-exact' path when QUALITY is 'exact'.  Test UTF-16 encodings
12641         for BOM before subtracting 2 bytes.  Use 'identity' when adjusting
12642         UTF-16 encoded files for CR-LF EOLs.
12644 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
12646         Improve the optional translation of quotes
12647         Fix several problems with the recently-added custom variable
12648         help-quote-translation where the code would quote inconsistently
12649         in help buffers.  Add support for quoting 'like this', which
12650         is common in other GNU programs in ASCII environments.  Change
12651         help-quote-translation to use more mnemonic values: values are now the
12652         initial quoting char, e.g., (setq help-quote-translation ?`) gets the
12653         traditional Emacs help-buffer quoting style `like this'.  Change the
12654         default behavior of substitute-command-keys to match what's done in
12655         set-locale-environment, i.e., quote ‘like this’ if displayable,
12656         'like this' otherwise.
12657         * doc/lispref/help.texi (Keys in Documentation): Document
12658         new behavior of substitute-command-keys, and document
12659         help-quote-translation.
12660         * doc/lispref/tips.texi (Documentation Tips):
12661         Mention the effect of help-quote-translation.
12662         * etc/NEWS: Mention new behavior of substitute-command-keys,
12663         and merge help-quote-translation news into it.
12664         When talking about doc strings, mention new ways to type quotes.
12665         * lisp/cedet/mode-local.el (overload-docstring-extension):
12666         Revert my recent change to this function, which shouldn't be
12667         needed as the result is a doc string.
12668         * lisp/cedet/mode-local.el (mode-local-print-binding)
12669         (mode-local-describe-bindings-2):
12670         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
12671         * lisp/cus-theme.el (describe-theme-1):
12672         * lisp/descr-text.el (describe-text-properties-1, describe-char):
12673         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
12674         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
12675         (eieio-help-constructor):
12676         * lisp/emacs-lisp/package.el (describe-package-1):
12677         * lisp/faces.el (describe-face):
12678         * lisp/help-fns.el (help-fns--key-bindings)
12679         (help-fns--compiler-macro, help-fns--parent-mode)
12680         (help-fns--obsolete, help-fns--interactive-only)
12681         (describe-function-1, describe-variable):
12682         * lisp/help.el (describe-mode):
12683         Use substitute-command-keys to ensure a more-consistent quoting
12684         style in help buffers.
12685         * lisp/cus-start.el (standard):
12686         Document new help-quote-translation behavior.
12687         * lisp/emacs-lisp/lisp-mode.el (lisp-fdefs):
12688         * lisp/help-mode.el (help-xref-symbol-regexp, help-xref-info-regexp)
12689         (help-xref-url-regexp):
12690         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
12691         * lisp/wid-edit.el (widget-documentation-link-regexp):
12692         Also match 'foo', in case we're in a help buffer generated when
12693         help-quote-translation is ?'.
12694         * src/doc.c: Include disptab.h, for DISP_CHAR_VECTOR.
12695         (LEFT_SINGLE_QUOTATION_MARK, uLSQM0, uLSQM1, uLSQM2, uRSQM0)
12696         (uRSQM1, uRSQM2, LSQM, RSQM): New constants.
12697         (Fsubstitute_command_keys): Document and implement new behavior.
12698         (Vhelp_quote_translation): Document new behavior.
12700 2015-06-18  Glenn Morris  <rgm@gnu.org>
12702         * lisp/cus-start.el (help-quote-translation): Add :version.
12704         * src/doc.c (Fsubstitute_command_keys): Make previous change compile.
12706 2015-06-18  Alan Mackenzie  <acm@muc.de>
12708         Make translation of quotes to curly in doc strings optional.
12709         * src/doc.c (traditional, prefer-unicode): New symbols.
12710         (help-quote-translation): New variable.
12711         (Fsubstitute_command_keys): Make translation of quotes dependent on
12712         `help-quote-translation'; also translate curly quotes back to ASCII
12713         ones.
12714         * lisp/cus-start.el (top-level): Add a customization entry for
12715         `help-quote-translation'.
12717 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
12719         * lisp/emacs-lisp/package.el: Don't always propagate async errors
12720         (package--with-work-buffer-async): Only propagate the error if the
12721         callback returns non-nil.
12722         (package--download-one-archive): Return nil on the signature
12723         checking callback if we accept unsigned.
12724         (package--download-and-read-archives): Return non-nil on the
12725         archive download callback.
12727 2015-06-18  Martin Rudalics  <rudalics@gmx.at>
12729         Set image_cache_refcount before x_default_parameter calls.  (Bug#20802)
12730         * src/nsfns.m (Fx_create_frame):
12731         * src/xfns.c (Fx_create_frame, x_create_tip_frame): Move setting
12732         image_cache_refcount before first x_default_parameter call.
12734 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
12736         Improve and extend filepos-to-bufferpos
12737         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
12738         Don't barf if F returns nil for some argument.
12739         (filepos-to-bufferpos): Expand to support UTF-16 and not assume
12740         that every encoding of type 'charset' is single-byte.
12742 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
12744         * lisp/emacs-lisp/package.el (package-menu--perform-transaction):
12745         Properly delete packages.  (Bug#20836)
12747 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
12749         Update data files from just-released Unicode 8.0
12750         * etc/NEWS: Update wording since Unicode 8.0 is no longer in draft
12751         status.
12752         * test/BidiCharacterTest.txt: Update from Unicode 8.0.
12753         * admin/unidata/BidiMirroring.txt:
12754         * admin/unidata/BidiBrackets.txt:
12755         * admin/unidata/UnicodeData.txt: Update from Unicode 8.0.
12757 2015-06-18  Paul Eggert  <eggert@cs.ucla.edu>
12759         Document curved quotes a bit better
12760         * doc/emacs/basic.texi (Inserting Text):
12761         Mention C-x 8.  Change example to use curved quote rather
12762         than infinity, as this lets us give more ways to do it.
12763         * doc/emacs/mule.texi (International Chars): Mention C-x 8 shortcuts
12764         and quotation marks.
12765         * doc/emacs/text.texi (Quotation Marks):
12766         * doc/lispref/tips.texi (Documentation Tips):
12767         Add "curly quotes" and "curved quotes" to the index.
12768         * doc/emacs/text.texi (Quotation Marks):
12769         Give the C-x 8 shorthands for curved quotes.
12770         Cross-reference to "Quotation Marks".
12772 2015-06-17  Daiki Ueno  <ueno@gnu.org>
12774         Add pinentry.el for better GnuPG integration
12775         * lisp/pinentry.el: New file.
12776         * etc/NEWS: Add entry about pinentry.el.
12777         * lisp/epg.el (epg--start): Set INSIDE_EMACS envvar.
12778         (Bug#20550)
12780 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
12782         * lisp/emacs-lisp/package.el: Slightly better error reporting.
12784 2015-06-17  Stefan Monnier  <monnier@iro.umontreal.ca>
12786         (define-minor-mode): Use setq-default for :global minor modes
12787         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
12788         Use setq-default for :global minor modes (bug#20712).
12790 2015-06-17  Eli Zaretskii  <eliz@gnu.org>
12792         Avoid infloop in redisplay with tall images
12793         * src/xdisp.c (try_scrolling): Prevent an infloop when scrolling
12794         down near ZV.  (Bug#20808)
12795         Call bidi_unshelve_cache to avoid memory leaks.  Use IT_CHARPOS
12796         instead of CHARPOS.
12798 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
12800         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
12801         Fix error reporting.
12803         * lisp/let-alist.el: Move to lisp/emacs-lisp/let-alist.el
12805         * lisp/emacs-lisp/package.el: Revert buffer after any operation
12806         Call `package-menu--post-refresh' after any operation that changes
12807         the package database (`package-install' and `package-delete').  To
12808         avoid performance issues in large transactions, these functions
12809         add `post-refresh' to `post-command-hook' instead of calling it
12810         immediately.
12811         (package-menu--mark-or-notify-upgrades): New function.
12812         (list-packages): Add it to `package--post-download-archives-hook'.
12813         (package-menu--post-refresh): Lose the upgrade-checking code, add
12814         code to remove itself from `post-command-hook'.
12815         (package-install, package-delete): Add it to `post-command-hook'.
12816         (package-menu-execute): Don't call `package-menu--post-refresh'.
12818 2015-06-17  Stephen Leake  <stephen_leake@stephe-leake.org>
12820         Add missing function xref-location-group for elisp-mode.
12821         * lisp/progmodes/elisp-mode.el: Add missing function xref-location-group.
12823 2015-06-17  Wolfgang Jenkner  <wjenkner@inode.at>
12825         * src/editfns.c (Fbyte_to_position): Fix bytepos not at char boundary.
12826         The behavior now matches the description in the manual.  (Bug#20783)
12828 2015-06-17  Xue Fuqiao  <xfq.free@gmail.com>
12830         * etc/tutorials/TUTORIAL.cn: Update; synchronize with TUTORIAL.
12832 2015-06-17  Glenn Morris  <rgm@gnu.org>
12834         Generate char-script-table from Unicode source.  (Bug#20789)
12835         * admin/unidata/Makefile.in (AWK): New, set by configure.
12836         (all): Add charscript.el.
12837         (blocks): New variable.
12838         (charscript.el, ${unidir}/charscript.el): New targets.
12839         (extraclean): Also remove generated charscript.el.
12840         * admin/unidata/blocks.awk: New script.
12841         * admin/unidata/Blocks.txt: New data file, from unicode.org.
12842         * lisp/international/characters.el: Load charscript.
12843         * src/Makefile.in (charscript): New variable.
12844         (${charscript}): New target.
12845         (${lispintdir}/characters.elc): Depend on charscript.elc.
12846         (temacs$(EXEEXT)): Depend on charscript.
12848         * lisp/international/characters.el (char-script-table): Tweak
12849         some ranges to better match the source.  (Bug#20789#17)
12851         Remove "no-byte-compile: t" from a few files.
12852         * lisp/obsolete/bruce.el, lisp/obsolete/keyswap.el:
12853         * lisp/obsolete/patcomp.el: No reason not to compile these.
12855 2015-06-16  Glenn Morris  <rgm@gnu.org>
12857         Fix some typos in copied Unicode data.  (Bug#20789)
12858         * lisp/international/characters.el (char-script-table):
12859         * lisp/international/fontset.el (script-representative-chars)
12860         (setup-default-fontset): Fix typos.
12862         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
12863         Don't print filename twice (it's in the prefix now).
12865         * lisp/emacs-lisp/pcase.el (pcase--u1): Revert earlier workaround.
12866         No longer needed.
12868         Address a compilation warning.
12869         * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-defalias):
12870         Replace 't' with '_' in pcase.
12872         Address some check-declare warnings.
12873         * lisp/simple.el (tabulated-list-print):
12874         * lisp/progmodes/elisp-mode.el (xref-collect-matches):
12875         * lisp/term/ns-win.el (ns-selection-owner-p, ns-selection-exists-p)
12876         (ns-get-selection): Update declarations.
12878         Address some compilation warnings.
12879         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
12880         * lisp/vc/vc-git.el (vc-git-file-type-as-string):
12881         Replace 't' with '_' in pcase.
12883         Address some compilation warnings.
12884         * lisp/face-remap.el (text-scale-adjust):
12885         * lisp/menu-bar.el (popup-menu-normalize-position):
12886         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand):
12887         * lisp/emacs-lisp/bytecomp.el (byte-compile-arglist-warn):
12888         * lisp/emacs-lisp/generator.el (cps--transform-1):
12889         * lisp/emacs-lisp/macroexp.el (macroexp--expand-all):
12890         * lisp/obsolete/vc-arch.el (vc-arch-mode-line-string):
12891         * lisp/progmodes/octave.el (octave-goto-function-definition)
12892         (octave-find-definition-default-filename):
12893         Replace 't' with '_' in pcase.
12895         * lisp/emacs-lisp/pcase.el (pcase--u1):
12896         Paper-over today's bootstrap failure.
12898 2015-06-16  Nicolas Petton  <nicolas@petton.fr>
12900         * lisp/emacs-lisp/seq.el: Fix a byte-compiler warnings related to pcase.
12902         * lisp/emacs-lisp/map.el (map-into): Fix a byte-compiler warning.
12904         Better confirmation message in `find-alternate-file' (Bug#20830)
12905         * lisp/files.el (find-alternate-file'): Improve the confirmation
12906         message to show the buffer name.
12908         Better docstring for null.  (Bug#20815)
12909         * src/data.c (null): Improves the docstring, saying what null returns
12910         when OBJECT is non-nil.
12912 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
12914         * lisp/net/newst-treeview.el: Use lexical-binding.
12916         (filepos-to-bufferpos): Add missing cases.  Make sure it terminates.
12917         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
12918         New auxiliary function, extracted from filepos-to-bufferpos.
12919         Make sure it terminates.
12920         (filepos-to-bufferpos): Use it to fix the latin-1-dos case.
12921         Add support for the `exact' quality.
12923 2015-06-16  Cédric Chépied  <cedric.chepied@gmail.com>
12925         Identify feeds in newsticker treeview with :nt-feed property
12926         * lisp/net/newst-treeview.el:
12927         (newsticker--treeview-nodes-eq): Use property :nt-feed instead of :tag.
12929 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
12931         * lisp/emacs-lisp/pcase.el: Improve docs and error handling.
12932         (pcase--self-quoting-p): Floats aren't self-quoting.
12933         (pcase): Tweak docstring.
12934         (pcase--u1): Deprecate the t pattern.  Improve error detection for
12935         the nil pattern.
12936         (\`): Tweak docstring.  Signal an error for unrecognized cases.
12937         (bug#20784)
12939 2015-06-16  Eli Zaretskii  <eliz@gnu.org>
12941         Fix infloop in filepos-to-bufferpos
12942         * lisp/international/mule-util.el (filepos-to-bufferpos): Fix EOL
12943         offset calculation, and make it conditional on the eol-type of the
12944         file's encoding.  (Bug#20825)
12946 2015-06-16  Martin Rudalics  <rudalics@gmx.at>
12948         Fix handling of image cache refcounts.  (Bug#20802)
12949         This backports Eli Zaretskii's solution of this problem for W32
12950         to X and NS.
12951         * src/nsfns.m (image_cache_refcount): Define unconditionally.
12952         (unwind_create_frame): If the image cache's reference count
12953         hasn't been updated yet, do that now.
12954         (Fx_create_frame): Set image_cache_refcount unconditionally.
12955         * src/xfns.c (image_cache_refcount): Define unconditionally.
12956         (unwind_create_frame): If the image cache's reference count
12957         hasn't been updated yet, do that now.
12958         (Fx_create_frame, x_create_tip_frame): Set image_cache_refcount
12959         unconditionally.
12960         * src/w32fns.c (image_cache_refcount): Make it a ptrdiff_t as on
12961         X and NS.
12963 2015-06-16  Nils Ackermann  <nils@ackermath.info>
12965         Improve reftex-label-regexps default value
12966         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Make
12967         keyvals label regexp more strict to better cope with unbalanced
12968         brackets common in math documents.
12970 2015-06-16  Glenn Morris  <rgm@gnu.org>
12972         * doc/emacs/calendar.texi (Format of Diary File):
12973         Move "nonmarking" from here...
12974         (Displaying the Diary): ... to here.
12976         * doc/emacs/calendar.texi (Format of Diary File, Displaying the Diary):
12977         Swap the order of these nodes.
12978         * doc/emacs/emacs.texi: Update detailed menu for the above change.
12980         * doc/emacs/calendar.texi (Specified Dates, Special Diary Entries):
12981         Update date of examples.
12982         (Diary, Format of Diary File): Move example from former to latter.
12983         Reduce duplication.
12985         No need for cp51932.el, eucjp-ms.el to not be compiled any more.
12986         * admin/charsets/cp51932.awk, admin/charsets/eucjp-ms.awk:
12987         Don't set no-byte-compile in the outputs.
12988         * lisp/loadup.el: Don't specify uncompiled cp51932, eucjp-ms.
12990 2015-06-15  Glenn Morris  <rgm@gnu.org>
12992         * lisp/calendar/calendar.el (diary-file): Use locate-user-emacs-file.
12993         * doc/emacs/calendar.texi (Diary, Format of Diary File):
12994         Update for above diary-file change.
12996         * lisp/macros.el (name-last-kbd-macro, kbd-macro-query)
12997         (apply-macro-to-region-lines): Use user-error.
12999         * lisp/textmodes/page-ext.el (add-new-page, pages-directory)
13000         (pages-directory-for-addresses): Doc fixes.
13002 2015-06-15  Stefan Monnier  <monnier@iro.umontreal.ca>
13004         * lisp/info.el: Cleanup bytepos/charpos issues
13005         * lisp/international/mule-util.el: Use lexical-binding.
13006         (filepos-to-bufferpos): New function.
13007         * lisp/info.el (Info-find-in-tag-table-1): Use 0-based file positions.
13008         (Info-find-node-2): Use filepos-to-bufferpos (bug#20704).
13009         (Info-read-subfile, Info-search): Use 0-based file positions.
13011         * lisp/progmodes/perl-mode.el: Refine handling of /re/ and y/abc/def/
13012         (perl--syntax-exp-intro-keywords): New var.
13013         (perl--syntax-exp-intro-regexp, perl-syntax-propertize-function): Use it.
13014         (bug#20800).
13016 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
13018         Fix quoting when making derived mode docstring
13019         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
13020         Nest regexp-quote inside format, not the reverse.
13021         Problem reported by Artur Malabarba in:
13022         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00206.html
13024 2015-06-15  Eli Zaretskii  <eliz@gnu.org>
13026         Fix current-iso639-language on MS-Windows
13027         * lisp/international/mule-cmds.el (set-locale-environment):
13028         Downcase the locale name before interning it.  This is so the
13029         'current-iso639-language' on MS-Windows matches the ':lang'
13030         property of font-spec objects.
13032         Limit Symbola usage some more
13033         * lisp/international/fontset.el (setup-default-fontset): Limit
13034         Symbol coverage of Currency Symbols to u+20B6..u+20CF.
13035         (Bug#20727)
13037 2015-06-15  Nicolas Petton  <nicolas@petton.fr>
13039         * lisp/emacs-lisp/map.el (map-let): Better docstring.
13041 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
13043         * test/automated/help-fns.el (abc\\\[universal-argument\]b\`c\'d\\e\"f):
13044         (help-fns-test-funny-names): Spelling fixes.
13046 2015-06-14  Glenn Morris  <rgm@gnu.org>
13048         * lisp/version.el (emacs-repository-version-git): Demote errors.
13049         Check result is a hash.
13051 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
13053         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
13054         Catch errors that happen before going async.  (Bug#20809)
13056 2015-06-14  Eli Zaretskii  <eliz@gnu.org>
13058         Another improvement of documentation of set-fontset-font
13059         * doc/lispref/display.texi (Fontsets): Say explicitly that
13060         CHARACTER can be a single codepoint.
13061         * src/fontset.c (Fset_fontset_font): Doc fix.
13063         Another improvement for symbol and punctuation characters
13064         * lisp/international/fontset.el (setup-default-fontset): Exclude
13065         from Symbola character ranges for symbols and punctuation covered
13066         well by popular Unicode fonts.  Prefer fixed-misc Unicode font, if
13067         installed and where its coverage of symbols and punctuation is
13068         known to be good.  (Bug#20727)
13070 2015-06-14  Christoph Wedler  <christoph.wedler@sap.com>
13072         Some generic support for multi-mode indentation.
13073         * lisp/progmodes/prog-mode.el (prog-indentation-context):
13074         New variable.
13075         (prog-first-column, prog-widen): New convenience functions.
13077 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
13079         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
13080         Don't assume that `tabulated-list-printer' will leave point at the
13081         end of the buffer.  (Bug#20810)
13083 2015-06-13  Glenn Morris  <rgm@gnu.org>
13085         Tweaks for getting repository version; a bit more like it was for bzr
13086         * lisp/version.el (emacs-repository-version-git)
13087         (emacs-repository--version-git-1): New functions,
13088         split from emacs-repository-get-version.
13089         (emacs-repository-get-version): Make the second argument meaningful.
13091         * lisp/startup.el (command-line-1): Inform if skipping relative
13092         file names due to deleted PWD.
13094         * src/xsmfns.c (x_session_initialize): Avoid libSM crash
13095         when starup directory is missing.  (Bug#18851)
13096         (errno.h): Include it.
13098 2015-06-13  Paul Eggert  <eggert@cs.ucla.edu>
13100         Better fix for documenting `X as "`X"
13101         Fix suggested by Stefan Monnier.
13102         * lisp/help-fns.el (help-fns--signature):
13103         Insert "`X", not "(\` X)", when documenting `X (Bug#20759).
13104         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
13105         Don't treat `X specially, as help-fns--signature now handles this.
13107 2015-06-13  Eli Zaretskii  <eliz@gnu.org>
13109         Improve the default fontset when Symbola is not installed
13110         * lisp/international/fontset.el (setup-default-fontset): Only
13111         prepend Symbola and FreeMono font specs for symbols and
13112         punctuation; do not replace the default spec for them.  This
13113         should have better results when Symbola/FreeMono are not
13114         installed.  (Bug#20727)
13116         Improve documentation of ':lang' in font specs
13117         * src/font.c (Ffont_spec): Doc fix: elaborate on the values and
13118         use of the ':lang' property of the font spec.
13119         * doc/emacs/frames.texi (Fonts): Document the language names that
13120         can be in the STYLE part of XLFD.
13121         * doc/lispref/display.texi (Low-Level Font): Document the ':lang'
13122         property.
13124         * nt/README: Don't advertise the (obsolescent) w32 FAQ.
13126         * nt/README.W32: Don't advertise the (obsolescent) w32 FAQ.
13128         Revert last change in fontset.el
13129         * lisp/international/fontset.el (setup-default-fontset): Revert
13130         the change "Configure Symbola font only if installed", since font
13131         search is evidently not yet set up when this function is called.
13132         (Bug#20727)
13134 2015-06-12  Glenn Morris  <rgm@gnu.org>
13136         Ensure early startup warnings are visible at the end.  (Bug#20792)
13137         * lisp/emacs-lisp/warnings.el (display-warning):
13138         If startup isn't complete, delay the warning.
13139         * lisp/startup.el (normal-top-level, command-line):
13140         Let display-warning automatically handle the needed delays.
13141         Run delayed-warnings-hook.
13143         * lisp/version.el (emacs-repository-get-version):
13144         Avoid calling external executable if possible.  (Bug#20799)
13146 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
13148         Document `X as "`X", not as "(` X)"
13149         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
13150         Document (backquote FOO) as "`FOO", not as "(` FOO)" (Bug#20759).
13152         * src/print.c (print_object): Minor simplification.
13154 2015-06-12  Glenn Morris  <rgm@gnu.org>
13156         * src/buffer.c (init_buffer): Add final newline to message.
13158 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
13160         Configure Symbola font only if installed
13161         * lisp/international/fontset.el (setup-default-fontset):
13162         Don't specify the Symbola font if it's not installed.
13163         Likewise for FreeMono.  (Bug#20727)
13165 2015-06-12  Eli Zaretskii  <eliz@gnu.org>
13167         Configure Symbola font only for symbols and punctuation
13168         * lisp/international/fontset.el (setup-default-fontset): Leave
13169         only symbols and punctuation in the fontset setup for Symbola
13170         font; remove "Greek and Coptic" and "Cyrillic Supplement".
13171         (Bug#20798)
13173 2015-06-12  Andreas Schwab  <schwab@linux-m68k.org>
13175         Fix crash in fontset-info
13176         * src/fontset.c (Ffontset_info): Check that the RFONT-DEF elt is
13177         non-nil.
13179 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
13181         Port to Solaris 10 sparc + Sun C 5.13
13182         * configure.ac (SETUP_SLAVE_PTY) [sol2* | unixware]:
13183         Adjust to process.c change.
13184         * src/process.c (create_process): Declare volatile variables at
13185         top level of this function, so that they're less likely to be
13186         reused later in the function in the code executed by the vforked
13187         child.  Do not declare locals used only in the vforked child, as
13188         they might share memory with locals still live in the parent.
13189         Instead, use the same variables in the child as in the parent.
13190         This works around a subtle bug that causes a garbage collector
13191         crash when Emacs is built with Sun C 5.13 sparc on Solaris 10.
13193 2015-06-12  Glenn Morris  <rgm@gnu.org>
13195         * lisp/startup.el (normal-top-level): Don't let *Messages* get
13196         a nil default-directory.
13198 2015-06-11  Glenn Morris  <rgm@gnu.org>
13200         * lisp/startup.el (normal-top-level): Use delay-warning.  (Bug#20792)
13202         Some progress towards starting with PWD deleted.  (Bug#18851)
13203         * src/buffer.c (init_buffer): Handle get_current_dir_name failures.
13204         * lisp/startup.el (normal-top-level, command-line-1):
13205         * lisp/minibuffer.el (read-file-name-default):
13206         Handle default-directory being nil.
13208 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
13210         Fix "not a tty" bug on Solaris 10
13211         * configure.ac (PTY_OPEN): Define to plain 'open'
13212         on SVR4-derived hosts, so that the O_CLOEXEC flag isn't set.
13213         * src/process.c (allocate_pty): Set the O_CLOEXEC flag after
13214         calling PTY_TTY_NAME_SPRINTF, for the benefit of SVR4-derived
13215         hosts that call grantpt which does its work via a setuid subcommand
13216         (Bug#19191, Bug#19927, Bug#20555, Bug#20686).
13217         Also, set O_CLOEXEC even if PTY_OPEN is not defined, since it
13218         seems relevant in that case too.
13220 2015-06-11  Juri Linkov  <juri@linkov.net>
13222         * lisp/bindings.el (debug-ignored-errors): Add mark-inactive.
13223         * lisp/simple.el (kill-region): Replace 'error' with 'user-error'.
13224         (Bug#20785)
13226 2015-06-11  Glenn Morris  <rgm@gnu.org>
13228         * lisp/international/characters.el (char-script-table): Fix typo.
13230 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
13232         Fix quoting of help for functions with odd names
13233         While investigating Bug#20759, I discovered other quoting problems:
13234         C-h f mishandled characters like backslash and quote in function names.
13235         This fix changes the behavior so that 'C-h f pcase RET' now
13236         generates "... (\` QPAT) ..." instead of "... (` QPAT) ...",
13237         because '(format "%S" '(` FOO))' returns "(\\` FOO)".  A comment
13238         in src/lread.c's read1 function says that the backslash will be
13239         needed starting in Emacs 25, which implies that 'format' is
13240         correct and the old pcase documention was wrong to omit the backslash.
13241         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
13242         * lisp/help-fns.el (help-fns--signature):
13243         * lisp/help.el (help-add-fundoc-usage):
13244         * lisp/progmodes/elisp-mode.el (elisp-function-argstring):
13245         Use help--make-usage-docstring rather than formatting
13246         help-make-usage.
13247         * lisp/emacs-lisp/pcase.el (pcase--make-docstring):
13248         Return raw docstring.
13249         * lisp/help-fns.el (help-fns--signature): New arg RAW, to return
13250         raw docstring.  Take more care to distinguish raw from cooked dstrings.
13251         (describe-function-1): Let help-fns--signature substitute
13252         command keys.
13253         * lisp/help.el (help--docstring-quote): New function.
13254         (help-split-fundoc): Use it, to quote funny characters more
13255         systematically.
13256         (help--make-usage): Rename from help-make-usage, since this
13257         should be private.  Leave an obsolete alias for the old name.
13258         (help--make-usage-docstring): New function.
13259         * test/automated/help-fns.el (help-fns-test-funny-names): New test.
13261 2015-06-11  Stefan Monnier  <monnier@iro.umontreal.ca>
13263         * lisp/thingatpt.el (in-string-p): Revert last change,
13264         since in-string-p is not used in thingatpt.el but only from outside.
13265         Also, use lexical binding.
13267 2015-06-11  Artur Malabarba  <bruce.connor.am@gmail.com>
13269         * lisp/let-alist.el (let-alist--deep-dot-search): Fix cons.
13270         * test/automated/let-alist.el (let-alist-cons): Test it.
13272 2015-06-11  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
13274         * src/syntax.c (Fbackward_prefix_chars): Reword docstring.
13276 2015-06-10  Glenn Morris  <rgm@gnu.org>
13278         * build-aux/gitlog-to-emacslog: Also ignore pointless merge commits.
13280         Improve generated ChangeLog for gitmerge.el commits.  (Bug#20717)
13281         * build-aux/gitlog-to-changelog: Handle gitmerge.el skipped commits.
13282         * admin/gitmerge.el (gitmerge-commit-message):
13283         Exclude "skipped" messages from ChangeLog once again.
13285         Slight namespace cleanup for thingatpt.el.
13286         * lisp/thingatpt.el (thing-at-point--in-string-p)
13287         (thing-at-point--end-of-sexp, thing-at-point--beginning-of-sexp)
13288         (thing-at-point--read-from-whole-string): Rename from
13289         old versions without "thing-at-point--" prefix.
13290         Keep old versions as obsolete aliases.  Update all uses.
13292         * lisp/emacs-lisp/checkdoc.el (checkdoc-get-keywords):
13293         Move requiring of finder from here...
13294         (checkdoc-package-keywords): ... to here.
13296         Use 'user-error' in a few calendar files.
13297         * lisp/calendar/appt.el (appt-add):
13298         * lisp/calendar/calendar.el (calendar-absolute-from-gregorian)
13299         (calendar-generate):
13300         * lisp/calendar/diary-lib.el (diary-mail-entries, diary-cyclic):
13301         Replace 'error' with 'user-error'.
13303         * lisp/progmodes/f90.el (f90-backslash-not-special): Use user-error.
13305         * lisp/files-x.el (add-file-local-variable):
13306         Special-case 'lexical-binding'.  (Bug#20641)
13308         * lisp/progmodes/executable.el (executable-self-display): Obsolete.
13309         No longer autoload.
13310         * doc/misc/autotype.texi (Executables):
13311         Undocument executable-self-display.
13313         * lisp/progmodes/executable.el (executable-self-display):
13314         Use non-obsolete tail syntax.  (Bug#20779)
13315         (executable-self-display): Doc update.
13317 2015-06-10  Stefan Monnier  <monnier@iro.umontreal.ca>
13319         * lisp/emacs-lisp/checkdoc.el: Use lexical-binding
13320         (finder-known-keywords): Silence byte-compiler.
13322 2015-06-09  Stefan Monnier  <monnier@iro.umontreal.ca>
13324         * lisp/simple.el (eval-expression): Macroexpand before evaluating
13325         (bug#20730).
13327         * lisp/progmodes/sh-script.el: Better handle nested quotes.
13328         (sh-here-doc-open-re): Don't mis-match the <<< operator (bug#20683).
13329         (sh-font-lock-quoted-subshell): Make sure double quotes within single
13330         quotes don't mistakenly end prematurely the surrounding string.
13332         * lisp/progmodes/elisp-mode.el: Require cl-lib for cl-defstruct.
13334 2015-06-09  Glenn Morris  <rgm@gnu.org>
13336         * test/automated/Makefile.in (ELFILES): Sort.
13338         * Makefile.in (SUBDIR_MAKEFILES):
13339         * lwlib/Makefile.in (WARN_CFLAGS):
13340         Use built-in Make functions rather than echo+sed.
13342 2015-06-09  Eli Zaretskii  <eliz@gnu.org>
13344         Update char-script-table
13345         * lisp/international/characters.el (char-script-table): Update
13346         from Unicode 8.0 Draft.
13348         Improve font selection for punctuation and other symbols
13349         * src/fontset.c (face_for_char): If the character's script is
13350         'symbol', and the font used for ASCII face has a glyph for it, use
13351         the font for the ASCII face instead of searching the fontsets.
13352         This comes instead of NS-specific code that used the current
13353         face's font instead, which is now disabled due to undesirable
13354         consequences.  (Bug#20727)
13356 2015-06-08  Dmitry Gutov  <dgutov@yandex.ru>
13358         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
13359         Skip past `#' to find BEG (bug#20771).
13360         * test/automated/elisp-mode-tests.el
13361         (elisp-completes-functions-after-hash-quote): New test.
13363 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
13365         Fix compilation warning/error in --without-x builds
13366         * src/xdisp.c (append_space_for_newline): Condition GUI-specific
13367         code on HAVE_WINDOW_SYSTEM.
13369         Improve the default fontset wrt symbols
13370         * lisp/international/fontset.el (setup-default-fontset): Better
13371         setup of fontset-default for symbols: use Symbola and FreeMono.
13372         (Bug#20727)
13374 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
13376         Add new command checkdoc-package-keywords
13377         * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag):
13378         New defcustom.
13379         (checkdoc-list-of-strings-p): Add doc.
13380         (checkdoc-current-buffer): When `checkdoc-package-keywords-flag' is
13381         non-nil, call `checkdoc-package-keywords'.
13382         (checkdoc-get-keywords): New defun.
13383         (checkdoc-package-keywords): New command.  Warns if the current file
13384         has package.el-style keywords that aren't in `finder-known-keywords'.
13385         * etc/NEWS: Add entry.
13387 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
13389         Avoid crashes when key-binding is called from a timer
13390         * src/keymap.c (Fkey_binding): Don't segfault if called with an
13391         empty vector as KEY.  (Bug#20705)
13393         Fix a thinko in arc-mode.el
13394         * lisp/arc-mode.el (archive-zip-summarize): Fix last change in the
13395         non-Zip64 case.  (Bug#20769)
13397 2015-06-08  Artur Malabarba  <bruce.connor.am@gmail.com>
13399         * lisp/emacs-lisp/package.el (package-delete): Make interactive.
13401 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
13403         * lisp/emacs-lisp/checkdoc.el (checkdoc-file): New function.
13404         (checkdoc-error): When `checkdoc-diagnostic-buffer' is set to
13405         "*warn*", print the warning to the standard output.  (bug#20754)
13407 2015-06-07  Glenn Morris  <rgm@gnu.org>
13409         * admin/update_autogen (changelog_files): Remove gitlog-to-emacslog.
13411         * src/font.c (syms_of_font) <font-log>: Doc fix.
13413         Remove the obsolete leading "*" from some C doc strings.
13414         * src/coding.c (syms_of_coding):
13415         * src/font.c (syms_of_font): Remove leading "*" from docs.
13416         * lisp/cus-start.el (enable-character-translation): Add it.
13418 2015-06-07  Paul Eggert  <eggert@cs.ucla.edu>
13420         Move gen_origin from program to data
13421         That way, 'make change-history' needs to change only ChangeLog.2,
13422         instead of having to change two files.
13423         * ChangeLog.2: Add commit info for range that this file covers.
13424         * Makefile.in (new_commit_regexp): New macro.
13425         (change-history-nocommit): Simplify, by putting what used to be
13426         the gen_origin value into the data (ChangeLog.2) rather than
13427         into the program (gitlog-to-emacslog).
13428         * build-aux/gitlog-to-emacslog (gen_origin): Calculate from
13429         the input file (e.g., ChangeLog.2) rather than by having a
13430         constant in the program.  Substitute it into the output.
13432 2015-06-07  Dmitry Gutov  <dgutov@yandex.ru>
13434         * lisp/help-fns.el (help-fns--signature): Quote any quotes in the
13435         function name (bug#20759).
13437 2015-06-07  Eli Zaretskii  <eliz@gnu.org>
13439         Adapt 'struct timespec' to next release of MinGW runtime
13440         * nt/inc/ms-w32.h (struct timespec): Don't declare if
13441         __struct_timespec_defined is defined.
13443 2015-06-06  Paul Eggert  <eggert@cs.ucla.edu>
13445         Merge from gnulib
13446         This incorporates:
13447         2015-06-06 acl-permissions: pacify -Wsuggest-attribute=const
13448         2015-06-05 stdio: Don't redefine gets when using C++
13449         2015-06-05 acl-permissions: port to AIX, C89 HP-UX
13450         2015-06-02 file-has-acl: fix build on Mac OS X 10
13451         2015-06-01 gnulib-tool: concatenate lib_SOURCES to a single line
13452         2015-06-01 pthread_sigmask: discount system version if a simple macro
13453         2015-05-31 readlinkat: avoid OS X 10.10 trailing slash bug
13454         * doc/misc/texinfo.tex, lib/acl-internal.h, lib/get-permissions.c:
13455         * lib/readlinkat.c, lib/set-permissions.c, lib/stdio.in.h:
13456         * m4/acl.m4, m4/pthread_sigmask.m4, m4/readlinkat.m4: Copy from gnulib.
13457         * lib/gnulib.mk: Regenerate.
13459 2015-06-06  Juri Linkov  <juri@linkov.net>
13461         * lisp/progmodes/grep.el (zrgrep): Let-bind grep-highlight-matches
13462         before calling grep-compute-defaults because now it affects the
13463         command lines computed in grep-compute-defaults.  (Bug#20728)
13465 2015-06-06  Glenn Morris  <rgm@gnu.org>
13467         Address some compilation warnings.
13468         * lisp/international/mule-cmds.el (w32-get-console-codepage)
13469         (w32-get-console-output-codepage):
13470         * lisp/progmodes/elisp-mode.el (xref-collect-references):
13471         * lisp/version.el (cairo-version-string): Declare.
13472         * lisp/erc/erc.el (erc-nickname-in-use): Fix typo.
13474 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
13476         Fix display when a font claims large values of ascent and descent
13477         This fixes bug#20628.
13478         * src/xdisp.c (get_phys_cursor_geometry): Correct the Y
13479         coordinate of a hollow cursor glyph when the original glyph's
13480         ascent is too small.
13481         (get_font_ascent_descent, normal_char_ascent_descent)
13482         (normal_char_height): New functions.
13483         (handle_single_display_spec, append_space_for_newline)
13484         (calc_pixel_width_or_height, produce_stretch_glyph)
13485         (calc_line_height_property): Use normal_char_ascent_descent and
13486         normal_char_height.
13487         (x_produce_glyphs): When font-global values of ascent and descent
13488         are too large, use per-character glyph metrics instead, if
13489         possible.  But don't allow the glyph row's ascent and descent
13490         values become smaller than the values from the metrics of the
13491         font's "normal" character.
13492         * src/xftfont.c (xftfont_draw):
13493         * src/w32font.c (w32font_draw): Correct the values of ascent and
13494         descent used to draw glyphless characters' hex code in a box.
13495         * src/xterm.c (x_draw_glyph_string_background):
13496         * src/xdisp.c (x_produce_glyphs):
13497         * src/w32term.c (x_draw_glyph_string_background):
13498         * src/nsterm.m (ns_maybe_dumpglyphs_background): Use FONT_TOO_HIGH
13499         to detect fonts whose global ascent and descent values are too
13500         large to be used in layout decision, and redraw the background
13501         when that happens.
13502         * src/dispextern.h (FONT_TOO_HIGH): New macro.
13503         (get_font_ascent_descent): Add prototype.
13504         * src/xterm.c (x_new_font):
13505         * src/w32term.c (x_new_font):
13506         * src/nsterm.m (x_new_font):
13507         * src/font.c (font_open_entity):
13508         * src/composite.c (composition_gstring_width):
13509         Use get_font_ascent_descent to obtain reasonable values for ascent
13510         and descent of a font.
13512 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
13514         Add assertion in adjust_point_for_property
13515         * src/keyboard.c (adjust_point_for_property): Add eassert for
13516         current buffer being shown in selected window.
13518 2015-06-06  Dmitry Gutov  <dgutov@yandex.ru>
13520         Replace uses of in-string-p; make it obsolete
13521         * lisp/thingatpt.el (in-string-p): Declare obsolete (bug#20732).
13522         (end-of-sexp, beginning-of-sexp): Use syntax-ppss instead.
13524 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
13526         Fix Dired display of an explicit list of files by ls-lisp.el
13527         * lisp/ls-lisp.el (ls-lisp-uid-d-fmt, ls-lisp-uid-s-fmt)
13528         (ls-lisp-gid-d-fmt, ls-lisp-gid-s-fmt): Make the initial values be
13529         correct for when displaying individual files separately, not as
13530         part of listing a directory, in which case these values are not
13531         recomputed by 'ls-lisp-insert-directory', but used verbatim.
13533         * lisp/dired.el (dired): Doc fix.  (Bug#20739)
13535 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
13537         Do not adjust point in a non-selected window
13538         * src/keyboard.c (command_loop_1): Do not adjust point when
13539         current buffer is not shown in selected window (Bug#20590).
13541         * etc/DEBUG: Mention 'maybe_call_debugger'
13543 2015-06-05  Nicolas Petton  <nicolas@petton.fr>
13545         Fix a unit test for map.el
13546         * test/automated/map-tests.el (test-map-let): Fix the test to work
13547         with the new syntax of `map-let'.
13549         * lisp/emacs-lisp/map.el (map-let): Better docstring.
13551         Better syntax for the map pcase pattern
13552         * lisp/emacs-lisp/map.el: Improves the map pcase pattern to take
13553         bindings of the form (KEY PAT) or SYMBOL.  KEY is not quoted.
13555         * lisp/emacs-lisp/map.el (map--dispatch): Better docstring.
13557         Fix a byte-compiler error in map-put and map-delete
13558         * lisp/emacs-lisp/map.el (map-put, map-delete): Ensure that `setq' is
13559         called with a symbol.
13561 2015-06-05  Glenn Morris  <rgm@gnu.org>
13563         * admin/gitmerge.el (gitmerge-commit-message):
13564         Revert to including "skipped" messages in ChangeLog once again.
13566 2015-06-05  Tassilo Horn  <tsdh@gnu.org>
13568         Use string> instead of equiv lambda with string<
13569         * lisp/help.el (view-emacs-news): Use string> instead of equivalent
13570         lambda with string<.
13572 2015-06-05  Glenn Morris  <rgm@gnu.org>
13574         * lisp/emacs-lisp/map.el (map--dispatch): Move before use.
13575         (map--delete-array): Fix typo.
13577         * test/automated/map-tests.el: Replace "assert" with "should".
13579         * lisp/Makefile.in (SUBDIRS): Rename from SUBDIRS_ABS.
13580         (SUBDIRS_REL): Derive from SUBDIRS.
13582         Tweak some build messages.
13583         * lisp/Makefile.in ($(lisp)/loaddefs.el):
13584         * lisp/cus-dep.el (custom-make-dependencies):
13585         * lisp/finder.el (finder-compile-keywords): Say what we are doing.
13586         * lisp/international/titdic-cnv.el (batch-titdic-convert):
13587         Don't say how to compile.
13589 2015-06-05  Paul Eggert  <eggert@cs.ucla.edu>
13591         Omit U+0332 COMBINING LOW LINE in previous change
13592         It turns out that it does not work on Ubuntu 15.04.
13594         Fix transliteration of Bahá'í months
13595         * lisp/calendar/cal-bahai.el (calendar-bahai-month-name-array):
13596         Improve quality of Latin transliteration of Bahá'í month names.
13598         Fix curved quotes in a few places
13599         * lisp/calc/calc-misc.el (calc-help): Fix quoting.
13600         The strings in question are not doc strings, so this partially
13601         undoes the recent change that assumed they were doc strings.
13602         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
13603         * lisp/info.el (Info-finder-find-node):
13604         Use curved quotes.
13605         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
13606         Also allow curved quotes in doc strings.
13608 2015-06-04  Glenn Morris  <rgm@gnu.org>
13610         * lisp/Makefile.in (AM_V_at): Add missing definition.
13612         * lisp/Makefile.in: Quieten output a bit.
13613         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el):
13614         Don't echo directories, since the commands we invoke print them.
13616         * lisp/Makefile.in: Replace shell fragments in variables with $(shell).
13617         (SUBDIRS_REL, SUBDIRS_ABS, SUBDIRS_ALMOST, SUBDIRS_FINDER)
13618         (SUBDIRS_SUBDIRS): New variables.
13619         (setwins, setwins_almost, setwins_finder, setwins_for_subdirs):
13620         Remove.
13621         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el, $(lisp)/loaddefs.el)
13622         (update-subdirs, compile-main, compile-clean):
13623         Replace "setwins" usage with new "SUBDIRS" variables.
13625         * lisp/vc/compare-w.el (compare-windows-get-window-function):
13626         Fix :version tag.
13628 2015-06-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
13630         * src/ftfont.c (ftfont_open2): Round divisions by upEM.
13632         Undo removal of x_clear_area call on expose for GTK3 or cairo
13633         * src/xterm.c (handle_one_xevent) [HAVE_GTK3 || USE_CAIRO]:
13634         Clear exposed area.  (Bug#20677)
13636 2015-06-04  Glenn Morris  <rgm@gnu.org>
13638         * doc/lispref/hash.texi (Creating Hash): Remove obsolete makehash.
13640         * lisp/Makefile.in (check-defun-dups): Also skip ldefs-boot.
13642         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
13643         Rename from quail-lao-update-translation, since lao.el defines that.
13645 2015-06-04  Dmitry Gutov  <dgutov@yandex.ru>
13647         Handle new-style advice in find-funct
13648         * lisp/emacs-lisp/find-func.el (find-function-advised-original):
13649         Handle new-style advice.  Return the symbol's function definition.
13650         (Bug#20718)
13651         (find-function-library): Update accordingly.
13653 2015-06-04  Nicolas Petton  <nicolas@petton.fr>
13655         Merge branch 'map'
13657         * lisp/emacs-lisp/map.el: Better docstring for the map pcase macro.
13659         Add new function string-greaterp
13660         * lisp/subr.el (string-greaterp): New function.  Also aliased to
13661         `string>'.
13662         * test/automated/subr-tests.el (string-comparison-test): Add unit
13663         tests for `string>'and `string<'.
13664         * src/fns.c (string-lessp): Better docstring.
13666 2015-06-04  Eli Zaretskii  <eliz@gnu.org>
13668         Fix timezone-related functions on MS-Windows
13669         * src/editfns.c (set_time_zone_rule) [WINDOWSNT]: Always call
13670         'xputenv', even if no reallocation of tzvalbuf was necessary.
13671         This fixes a bug in timezone-related functions on MS-Windows.
13672         Reported by Fabrice Popineau <fabrice.popineau@gmail.com>.
13674 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
13676         Don't pass raw directory name to 'error'
13677         * lisp/files.el (basic-save-buffer-2): Avoid format error if
13678         a directory name contains a string like "%s".
13680 2015-06-03  Dmitry Gutov  <dgutov@yandex.ru>
13682         Override 'grep --color=always'
13683         * lisp/progmodes/xref.el (xref-collect-matches):
13684         Override --color=always in grep-find-template.
13686 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
13688         Fix error introduced recently in file-notify-tests.el
13689         * test/automated/file-notify-tests.el
13690         (file-notify--test-remote-enabled): Do not use `file-notify--test-desc'.
13691         (file-notify--deftest-remote): Revert previous patch, not
13692         necessary anymore.
13694 2015-06-03  Wolfgang Jenkner  <wjenkner@inode.at>
13696         * src/indent.c (Fvertical_motion): Amend motion by 0 lines.
13697         Starting from a display string after a newline, point went to the
13698         previous line.  Also, fix an inadvertent use of a buffer position
13699         with FETCH_BYTE.  (Bug#20701)
13701 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
13703         Instrument file-notify-test.el in order to catch hydra error
13704         * test/automated/file-notify-tests.el (file-notify--deftest-remote):
13705         Wrap body by `ignore-case', in order to trap non-local errors.
13707 2015-06-03  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
13709         Undo previous changes in non-toolkit scroll bar drawing
13710         * src/xterm.c (x_scroll_bar_set_handle, x_scroll_bar_expose)
13711         [!USE_TOOLKIT_SCROLL_BARS]: Draw into scroll bar window.  (Bug#20668)
13713 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
13715         * .gitignore: Also ignore doc/*/*/*.html and .ps.
13717         Support quotes 'like this' in info files
13718         This is possible when 'makeinfo --disable-encoding' is used
13719         in Texinfo 5.
13720         * lisp/calc/calc-help.el (calc-describe-thing):
13721         * lisp/gnus/gnus-art.el (gnus-button-alist):
13722         * lisp/info.el (Info-find-index-name):
13723         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
13724         Also support quotes 'like this'.
13725         * lisp/calc/calc-help.el (calc-describe-thing): Simplify.
13726         * lisp/finder.el (finder-font-lock-keywords): Remove var that
13727         hasn't been used in years, instead of bothering to fix its quoting.
13729 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
13731         * .gitignore: Remove !test/etags/html-src/*.html.
13732         It's no longer needed, since *.html was removed.  Sort.
13734 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
13736         Restore <D> instead of '.' in grep-find-template
13737         * lisp/cedet/semantic/symref/grep.el
13738         (semantic-symref-grep-use-template): Update a comment.
13739         * lisp/progmodes/grep.el (grep-compute-defaults): Restore <D>
13740         instead of '.' in grep-find-template (bug#20719).
13741         (rgrep): Pass nil as the directory to rgrep-default-command.
13742         * lisp/progmodes/grep.el (grep-expand-keywords): Use '.' as the
13743         default value for DIR.
13744         * lisp/progmodes/xref.el (xref-collect-matches): Drop the
13745         workaround.
13747 2015-06-02  Glenn Morris  <rgm@gnu.org>
13749         * configure.ac (emacs_config_features): Add X toolkit and scroll-bars.
13751         * configure.ac (emacs_config_features): Add Cairo.
13753         * configure.ac [HAVE_GTK3]: Remove USE_CAIRO that gets reset later.
13755 2015-06-02  Michael Albinus  <michael.albinus@gmx.de>
13757         Ensure that autorevert works for remote files in file-notify-tests.el
13758         * test/automated/file-notify-tests.el (file-notify--test-desc):
13759         New defvar.
13760         (file-notify--test-remote-enabled)
13761         (file-notify-test00-availability, file-notify-test01-add-watch)
13762         (file-notify-test02-events): Use it.
13763         (file-notify--test-event-test): Check proper descriptor.
13764         (file-notify-test03-autorevert): Ensure that
13765         `visited-file-modtime' has changed.  (Bug#20392)
13767 2015-06-02  Nicolas Petton  <nicolas@petton.fr>
13769         Add a pcase pattern for maps and `map-let' based on it
13770         * lisp/emacs-lisp/map.el (map-let): New macro.
13771         (map--make-pcase-bindings, map--make-pcase-patterns): New functions.
13772         * test/automated/map-tests.el: New test for `map-let'.
13774 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
13776         Reuse rgrep mechanics in xref-find-regexp
13777         * lisp/progmodes/grep.el (rgrep-default-command):
13778         Extract from `rgrep'.
13779         * lisp/progmodes/xref.el (xref-collect-references): Split from
13780         `xref-collect-matches'.  Only handle the case of symbol search.
13781         (xref-collect-matches): Instead of Semantic Symref, use
13782         `rgrep-default-command', to take advantage of its directory and
13783         file ignore settings.
13784         (xref--collect-match): Remove the last argument, leaving the
13785         regexp construction up to the caller.
13786         * lisp/progmodes/elisp-mode.el (elisp--xref-find-matches):
13787         Change to take the xref-collect- function to use as an argument.
13788         (elisp-xref-find): Update accordingly.
13789         * lisp/progmodes/etags.el (etags--xref-find-matches)
13790         (etags-xref-find): Same.
13792         Move xref-elisp-location to elisp-mode.el
13793         * lisp/progmodes/xref.el (xref-elisp-location)
13794         (xref-make-elisp-location, xref-location-marker): Remove here.
13795         (xref--xref): Don't limit the type of the location slot.
13796         * lisp/progmodes/elisp-mode.el (xref-elisp-location):
13797         Define as a cl-struct here.
13798         (xref-location-marker): Move here.
13800 2015-06-02  Eli Zaretskii  <eliz@gnu.org>
13802         Minor tweaks for .gitignore
13803         * .gitignore: Don't ignore versioned *.html and *.ps files.
13804         Don't ignore admin/notes/tags that might be ignored as TAGS
13805         on case-insensitive filesystems.  (Bug#20710)
13807 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
13809         Generate curved quotes in ert doc
13810         * lisp/emacs-lisp/ert.el (ert--print-test-for-ewoc)
13811         (ert-results-mode-menu)
13812         (ert-results-pop-to-backtrace-for-test-at-point)
13813         (ert-results-pop-to-messages-for-test-at-point)
13814         (ert-results-pop-to-should-forms-for-test-at-point)
13815         (ert-describe-test):
13816         Quote ‘like this’, not `like this', when generating doc strings
13817         and the like.
13818         * test/automated/ert-x-tests.el (ert-test-describe-test):
13819         Allow quoting ‘like this’.
13821 2015-06-02  Nicolas Richard  <youngfrog@members.fsf.org>
13823         Add test for previous commit
13824         * test/automated/replace-tests.el: New file.
13825         (query-replace--split-string-tests): Add test for previous commit.
13827         Avoid confusion in query-replace history when replacing NUL chars
13828         * lisp/replace.el (query-replace--split-string): New function.
13829         (query-replace-read-from): Rely on the 'separator' property
13830         instead of searching for the NUL character (Bug#20690).
13832 2015-06-02  Glenn Morris  <rgm@gnu.org>
13834         Merge from origin/emacs-24
13835         8b5f2f4 * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
13837         * admin/gitmerge.el (gitmerge-commit-message):
13838         Exclude "skipped" messages from ChangeLog.
13840 2015-06-01  Michael Albinus  <michael.albinus@gmx.de>
13842         Sync with Tramp repository
13843         * lisp/net/tramp.el (tramp-message): Dump connection buffer error
13844         messages.
13845         (tramp-handle-make-auto-save-file-name): When calling
13846         `make-auto-save-file-name' internally, make sure it uses Unix-like
13847         behavior, not Windows-like behavior.
13848         * lisp/net/tramp-sh.el (tramp-set-file-uid-gid): Add a timeout for
13849         the local case, because "chown" might fail on w32.
13850         * lisp/net/trampver.el (tramp-repository-get-version): Don't run
13851         for XEmacs.
13853 2015-06-01  Eli Zaretskii  <eliz@gnu.org>
13855         MS-Windows followup for batch stdout/stderr output changes
13856         * lisp/international/mule-cmds.el (set-locale-environment):
13857         In batch mode, use console codepages for keyboard and terminal
13858         encoding.  (Bug#20545)
13860         Update .gitattributes for DOS EOL files
13861         * .gitattributes: Use "whitespace=cr-at-eol" for files with DOS
13862         CRLF end-of-line format.
13864         NS equivalents of xterm.c and w32term.c changes
13865         * src/nsterm.m (ns_maybe_dumpglyphs_background): Force redraw of
13866         glyph string background also when the font in use claims
13867         preposterously large global height value.  Helps to remove
13868         artifacts left from previous displays when glyphless characters
13869         are displayed as hex code in a box.
13870         (x_new_font): Call get_font_ascent_descent to obtain a reasonable
13871         value for FRAME_LINE_HEIGHT, even when a font claims very large
13872         value for its height.
13874 2015-06-01  Paul Eggert  <eggert@cs.ucla.edu>
13876         Avoid grave accent quoting in stderr diagnostics
13877         A few Emacs diagnostics go directly to stderr, and so can't easily
13878         contain curved quotes (as non-UTF-8 locales might mishandle them).
13879         Instead of bothering to add support for this rarity, reword the
13880         diagnostics so that they don't use grave accent to quote.
13881         * src/alloc.c (mark_memory): Fix comment.
13882         * src/buffer.c (init_buffer):
13883         * src/dispnew.c (init_display):
13884         * src/emacs.c (main, sort_args):
13885         * src/lread.c (dir_warning):
13886         * src/term.c (init_tty):
13887         * src/unexmacosx.c (unexec):
13888         * src/xfns.c (select_visual):
13889         * src/xterm.c (cvt_string_to_pixel, x_io_error_quitter):
13890         Reword stderr diagnostics to avoid quoting `like this'.
13891         * src/unexmacosx.c: Include errno.h.
13892         * src/xfns.c (select_visual): Encode value for locale.
13894 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
13896         Treat batch stdout/stderr like standard display
13897         Calls like (print FOO) could generate improperly encoded or
13898         hard-to-read output if FOO contains characters outside the system
13899         locale.  Fix this by treating batch stdout and stderr like
13900         interactive standard display, when it comes to transliterating and
13901         encoding characters (Bug#20545).
13902         * doc/emacs/mule.texi (Communication Coding):
13903         * doc/lispref/display.texi (Active Display Table):
13904         * doc/lispref/nonascii.texi (Locales):
13905         * etc/NEWS:
13906         * src/coding.c (syms_of_coding):
13907         * src/dispnew.c (syms_of_display):
13908         Document this.
13909         * src/print.c: Include disptab.h.
13910         (printchar_to_stream): New function, with much of the guts of the
13911         old Fexternal_debugging_output, except this one also uses the
13912         standard display table.
13913         (printchar, strout, Fexternal_debugging_output): Use it.
13915 2015-05-31  Glenn Morris  <rgm@gnu.org>
13917         * src/emacs.c (syms_of_emacs) <system-configuration-features>: Doc fix.
13919 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
13921         Remove DEFSYMs that aren't used at the C level.  Also:
13922         * src/decompress.c (Qzlib_dll):
13923         * src/font.c (Qunicode_sip):
13924         * src/frame.c (Qtip_frame):
13925         * src/ftfont.c (Qserif):
13926         * src/gnutls.c (Qgnutls_dll):
13927         * src/xml.c (Qlibxml2_dll):
13928         Move from here ...
13929         * src/w32fns.c (syms_of_w32fns): ... to here,
13930         as these are used only on MS-Windows.
13932 2015-05-31  Michael Albinus  <michael.albinus@gmx.de>
13934         Use another default value for tramp-histfile-override
13935         * lisp/net/tramp-sh.el (tramp-histfile-override):
13936         Use ".tramp_history" as default.
13937         Fixes bug#20446
13939 2015-05-29  Nicolas Petton  <nicolas@petton.fr>
13941         * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
13943 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
13945         * etc/NEWS: Add an entry about map.el.
13947         Improve the docstring of functions in map.el
13948         Since a map is not a data structure but a concept, adding information
13949         about the possible types of maps can be useful information.
13950         * lisp/emacs-lisp/map.el: Add documentation about the type of MAP to
13951         each public function.
13953 2015-04-29  Nicolas Petton  <nicolas@petton.fr>
13955         * lisp/emacs-lisp/map.el (map-empty-p): Faster implementation using
13956         specific tests depending on the type of the map.
13958         * lisp/emacs-lisp/map.el: Better docstrings.
13960 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
13962         * lisp/emacs-lisp/map.el (map-pairs): Dump redundant lambda.
13964 2015-04-25  Nicolas Petton  <nicolas@petton.fr>
13966         * lisp/emacs-lisp/map.el (map--elt-list): Better docstring.
13968         * lisp/emacs-lisp/map.el (map--elt-list): Minor refactoring.
13970         Fix a false negative in `map-elt' with alists and values being nil
13971         * lisp/emacs-lisp/map.el (map-elt): If map is an alist and key is
13972         found but its associated value is nil, do not return the default
13973         value.
13974         * test/automated/map-tests.el: Add a regression test.
13976 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
13978         * lisp/emacs-lisp/map.el (map--dispatch): Improve the docstring.
13980         Do not signal an error when trying to delete a key from an array
13981         * lisp/emacs-lisp/map.el (map-delete): When map is an array, check if
13982         the key is present to avoid signaling an error.
13983         * test/automated/map-tests.el: Add a test for deleting non-existing
13984         keys from maps.
13986         * lisp/emacs-lisp/map.el: Better docstring.
13988         Minor improvement in map-elt
13989         * lisp/emacs-lisp/map.el (map-elt): Do not use `ignore-errors' when
13990         doing a lookup in arrays, but check the boundaries of the array
13991         instead.
13992         * test/automated/map-tests.el: Adds a test for `map-elt' with arrays
13993         and a negative integer as key.
13995 2015-04-21  Nicolas Petton  <nicolas@petton.fr>
13997         * test/automated/map-tests.el: Refactoring of test methods.
13999         * test/automated/map-tests.el: Renamed from map-test.el.
14001 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
14003         * lisp/emacs-lisp/map.el (map-into): Better error message.
14005         * lisp/emacs-lisp/map.el: Remove byte-compilation warnings.
14007         Throw an error when converting a map into an unknown map type
14008         * lisp/emacs-lisp/map.el (map-into): Throw an error if type is
14009         not valid.
14010         * test/automated/map-test.el: Add a regression test.
14012         New library map.el similar to seq.el but for mapping data structures.
14013         * test/automated/map-test.el: New file.
14014         * lisp/emacs-lisp/map.el: New file.
14016 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
14018         * lisp/progmodes/etags.el (tag-implicit-name-match-p): Make sure
14019         there's no explicit tag name (bug#20629).
14021 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
14023         Remove format2
14024         * src/editfns.c, src/lisp.h (format2): Remove.
14025         It is more trouble than it's worth, now that we have CALLN.
14026         This is just a minor refactoring.
14027         * src/buffer.c (Fkill_buffer):
14028         * src/dbusbind.c (XD_OBJECT_TO_STRING):
14029         * src/fileio.c (barf_or_query_if_file_exists):
14030         Adjust to format2 going away.
14032         Don't misencode C-generated messages
14033         Also, be more consistent about calls to 'Fmessage' vs 'message'.
14034         * src/alloc.c (Fgc_status):
14035         Prefer AUTO_STRING to build_string for Fmessage call.
14036         * src/data.c (Fmake_variable_buffer_local)
14037         (Fmake_local_variable, Fmake_variable_frame_local):
14038         * src/doc.c (store_function_docstring):
14039         Use Fmessage, not message, since the argument can contain
14040         non-ASCII characters, and this can cause the resulting message
14041         to be incorrectly encoded for the current environment.
14042         * src/fns.c (maybe_resize_hash_table):
14043         * src/xselect.c (x_clipboard_manager_save_all):
14044         Use message, not Fmessage, since Fmessage's power isn't needed here.
14045         * src/process.c (Fmake_network_process): Reword message to avoid %s.
14046         * src/xdisp.c (vmessage): Document restrictions on message contents.
14047         (message_nolog) [false]: Remove unused code.
14049         Use \r rather than ^M in string literals
14050         This is less likely to cause problems on platforms that
14051         use CRLF (or CR!) termination for lines.
14053         Update .gitattributes to match current sources
14054         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00879.html
14055         * .gitattributes: Accommodate tests that insist on DOS format.
14056         Remove test/automated/data/decompress/foo-gzipped.
14057         Add etc/e/eterm-color.
14059 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
14061         * doc/emacs/mule.texi (Modifying Fontsets):
14062         Document face-ignored-fonts.  (Bug#20628)
14064         Add etags test for the new -Q option
14065         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
14066         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
14067         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
14068         test-case changes below.
14069         * test/etags/ETAGS.good_6: New file.
14070         * test/etags/cp-src/x.cc: New file.
14071         * test/etags/Makefile (CPSRC): Add x.cc.
14072         (check): Add one more test, for -Q.
14074 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
14076         Use list for the tags completion table, not obarray
14077         * lisp/progmodes/etags.el (etags-tags-completion-table): Return a
14078         list instead of an obarray
14079         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00876.html).
14080         (tags-completion-table): Combine those lists.
14081         (tags-completion-table): Update the docstring.
14083 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
14085         Restore EOL format testing in etags
14086         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
14087         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
14088         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
14089         test-case changes below.
14090         * test/etags/html-src/algrthms.html: Convert back to DOS EOL format.
14091         * test/etags/cp-src/c.C (B): Add back stray CR character.
14092         * test/etags/c-src/dostorture.c: Add back.
14093         * test/etags/Makefile (CSRC): Add back c-src/dostorture.c.
14095 2015-05-30  Vitaly Takmazov  <vitalyster@gmail.com>  (tiny change)
14097         Declare Emacs on MS-Windows to be DPI-aware
14098         * nt/emacs-x86.manifest (asmv3:windowsSettings): Add dpiAware.
14099         * nt/emacs-x64.manifest (asmv3:windowsSettings): Add dpiAware.
14100         This avoids Windows entering compatibility mode for Emacs,
14101         which causes fonts to look less nice.
14103 2015-05-30  Michael Albinus  <michael.albinus@gmx.de>
14105         Improve Tramp traces
14106         * lisp/net/trampver.el (tramp-repository-get-version): New defun.
14107         * lisp/net/tramp.el (tramp-debug-message): Use it.
14109 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
14111         backup-buffer minor reworking of internals
14112         * lisp/files.el (backup-buffer): Rework to avoid a couple of
14113         unused locals inadvertently introduced in the previous change.
14115         backup-buffer now reports .emacs.d/%backup% ills
14116         * lisp/files.el (backup-buffer): If the write to .emacs.d/%backup%
14117         fails due to disk space exhaustion or whatever, do not pretend
14118         that it succeeded.  More generally, do a better job of checking
14119         for I/O failures, and limit the scope of the condition-case to
14120         just the operations where file errors should be caught and ignored
14121         (Bug#20595).  Also, don't bother trying to delete later backups if
14122         an earlier deletion fails, as this is a sign of trouble and it's
14123         better to stop when there's trouble.
14125         copy-file now truncates output after writing
14126         * src/fileio.c (Fcopy_file): Truncate output after writing rather
14127         than before.  This is more likely to work than truncation before
14128         writing, if the file system is out of space or the user is over
14129         disk quota (Bug#20595).  Also, check for read errors.
14131 2015-05-29  Artur Malabarba  <bruce.connor.am@gmail.com>
14133         * lisp/emacs-lisp/package.el (package-load-all-descriptors):
14134         Don't load descriptors from directories above the package directories.
14136 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
14138         Merge from gnulib
14139         This incorporates the following (Bug#20681):
14140         2015-05-29 acl-permissions: Fix build on Mac OS X and older AIX
14141         2015-05-29 acl-permissions: Fix build on Solaris and Cygwin
14142         * lib/set-permissions.c: Copy from gnulib.
14144 2015-05-29  Michael Albinus  <michael.albinus@gmx.de>
14146         Improve Tramp traces
14147         * lisp/net/tramp.el (tramp-call-process-region): New defun.
14148         * lisp/net/tramp-sh.el (tramp-get-inline-coding): Use it.
14150 2015-05-29  Glenn Morris  <rgm@gnu.org>
14152         * test/automated/vc-tests.el: Try enabling tests on hydra.nixos.org.
14154 2015-05-29  Wolfgang Jenkner  <wjenkner@inode.at>
14156         * src/xfns.c (x_set_menu_bar_lines): Fix calls to x_clear_area.
14157         The signature was changed in the cairo branch, merged on 2015-05-23.
14158         This oversight broke compiling only the non-toolkit X version.
14160 2015-05-29  Samer Masterson  <samer@samertm.com>
14162         * doc/lispref/os.texi: Update initial-buffer-choice docs.
14164 2015-05-29  Glenn Morris  <rgm@gnu.org>
14166         * test/automated/vc-tests.el (vc-test-rcs04-checkout-model):
14167         Mark as an expected failure.
14169 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
14171         Change package test to look for curved quotes
14172         * test/automated/package-test.el (package-test-describe-package)
14173         (package-test-signed): Search for curved single quotes as well as
14174         for grave accent and apostrophe.
14176 2015-05-28  Katsumi Yamaoka  <yamaoka@jpl.org>
14178         * lisp/gnus/gnus-art.el (gnus-button-alist): Re-revert last change.
14179         cf. <http://news.gmane.org/group/gmane.emacs.devel/thread=186896>
14181 2015-05-28  Samer Masterson  <samer@samertm.com>
14183         Show files when `initial-buffer-choice' is non-nil
14184         * lisp/startup.el (command-line-1): When Emacs is given a file as an
14185         argument and `initial-buffer-choice' is non-nil, display both the file
14186         and `initial-buffer-choice'.  For more than one file, show
14187         `initial-buffer-choice' and *Buffer List*.  Refactor display-changing
14188         commands out of the command line arg parser.
14189         (initial-buffer-choice): Clarify docstring.
14191 2015-05-28  Eli Zaretskii  <eliz@gnu.org>
14193         Fix last commit
14194         * nt/gnulib.mk (libgnu_a_SOURCES): Add get-permissions.c back.
14195         (gnulib module qcopy-acl): Add back, as it is harmless.  This
14196         minimizes differences wrt lib/gnulib.mk.
14198         Fix the MS-Windows build as followup to gnulib update
14199         * nt/gnulib.mk (libgnu_a_SOURCES): Remove get-permissions.c and
14200         set-permissions.c, as they don't compile on MinGW.
14201         (gnulib module qcopy-acl): Remove, as it needs set-permissions.c.
14203 2015-05-28  Paul Eggert  <eggert@cs.ucla.edu>
14205         Revert my change to gnus-art.el
14206         * lisp/gnus/gnus-art.el (gnus-button-alist): Revert last change.
14207         It wasn't that important, and it caused a Gnus build to fail.  See:
14208         http://www.randomsample.de:4456/builders/emacs-devel/builds/734
14210         New minor mode Electric Quote
14211         This lets you easily insert quotes ‘like this’ by typing
14212         quotes `like this', and similarly you can easily insert
14213         quotes “like this” by typing quotes ``like this'' (Bug#20545).
14214         * doc/emacs/basic.texi (Inserting Text):
14215         * doc/emacs/modes.texi (Minor Modes):
14216         * etc/NEWS: Document it.
14217         * doc/emacs/text.texi (Quotation Marks): New section.
14218         * lisp/electric.el (electric-quote-comment)
14219         (electric-quote-string, electric-quote-paragraph):
14220         New custom vars.
14221         (electric--insertable-p)
14222         (electric-quote-post-self-insert-function): New functions.
14223         (electric-quote-mode, electric-quote-local-mode): New minor modes.
14224         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
14225         Add curved single quotes to electric-pair-text-pairs.
14226         Set electric-quote-string in this buffer.
14228         A few more doc string fixes (Bug#20385)
14230         Accept curved quotes in doc strings
14231         * lisp/info-look.el (info-lookup-guess-custom-symbol):
14232         (info-lookup-alist): Treat ‘’ like `' when parsing help buffers etc.
14234         Generate curved quotes in pseudo-info nodes
14235         * lisp/info.el (Info-virtual-index-find-node)
14236         (Info-virtual-index, Info-apropos-find-node, info-apropos):
14237         Quote ‘like this’, not `like this', when generating pseudo-info nodes.
14239         Fix minor quoting problems in doc strings
14240         Most of these fixes involve escaping grave accents that are
14241         actually intended to be grave accents, not left quotes.
14242         (Bug#20385)
14244         Support curved quotes in doc strings
14245         Emacs's traditional doc string style has been to quote symbols
14246         `like this'.  This worked well on now-obsolete terminals where
14247         ` and ' were symmetric quotes, but nowadays curved quotes
14248         ‘like this’ look better.  Support quoting the new way too.
14249         (Bug#20385)
14250         * doc/lispref/tips.texi (Documentation Tips): Symbols can be quoted
14251         ‘like-this’ as well as `like-this'.
14252         * etc/NEWS: Mention this.
14253         * lisp/cedet/mode-local.el (overload-docstring-extension)
14254         (mode-local-print-binding, mode-local-describe-bindings-2):
14255         * lisp/cus-theme.el (describe-theme-1):
14256         * lisp/descr-text.el (describe-text-properties-1, describe-char):
14257         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
14258         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
14259         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
14260         (eieio-help-constructor):
14261         * lisp/emacs-lisp/package.el (describe-package-1):
14262         * lisp/faces.el (describe-face):
14263         * lisp/help-fns.el (help-fns--key-bindings)
14264         (help-fns--compiler-macro, help-fns--parent-mode, help-fns--obsolete):
14265         (help-fns--interactive-only, describe-function-1):
14266         (describe-variable):
14267         * lisp/help.el (describe-mode):
14268         * lisp/international/mule-cmds.el (describe-input-method)
14269         (describe-language-environment):
14270         * lisp/international/mule-diag.el (describe-character-set)
14271         (print-coding-system-briefly, list-input-methods)
14272         (list-input-methods-1):
14273         Insert curved quotes rather than grave accent and apostrophe.
14274         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
14275         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
14276         (checkdoc-proper-noun-region-engine):
14277         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2)
14278         (lisp-cl-font-lock-keywords-2):
14279         * lisp/finder.el (finder-font-lock-keywords):
14280         * lisp/gnus/gnus-art.el (gnus-button-alist):
14281         * lisp/help-fns.el (help-do-arg-highlight)
14282         (describe-function-1, describe-variable):
14283         * lisp/help-mode.el (help-xref-symbol-regexp)
14284         (help-xref-info-regexp, help-xref-url-regexp):
14285         * lisp/help.el (describe-mode):
14286         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
14287         * lisp/wid-edit.el (widget-documentation-link-regexp):
14288         Parse symbols quoted ‘like-this’ as well as `like-this'.
14289         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
14290         Add "‘" and "’" to electric-pair-text-pairs.
14291         (elisp--form-quoted-p): Also allow "‘" as a quoting char.
14292         (elisp-completion-at-point, elisp--preceding-sexp):
14293         Also treat "‘" and "’" as quoting chars.
14295         substitute-command-keys now curves quotes
14296         So, for example, it turns "`abc'" into "‘abc’" (Bug#20385).
14297         * doc/lispref/help.texi (Keys in Documentation):
14298         * etc/NEWS: Document this.
14299         * src/doc.c (Fsubstitute_command_keys): Implement it.
14301 2015-05-28  Glenn Morris  <rgm@gnu.org>
14303         * lisp/mail/rmailsum.el (rmail-summary-by-recipients)
14304         (rmail-summary-by-topic, rmail-summary-by-senders):
14305         No longer strip leading/trailing whitespace.
14307         * lisp/progmodes/f90.el (f90-type-def-re): Add "type, extends".
14308         (f90-no-block-limit): Add "enum".  (Bug#20680)
14309         * test/automated/f90.el (f90-test-bug20680, f90-test-bug20680b):
14310         New tests.
14312 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
14314         * lisp/isearch.el (isearch--current-buffer): Give a default value.
14315         Un-revert changes mistakenly dropped by f9fabb2b.
14317 2015-05-27  Paul Eggert  <eggert@cs.ucla.edu>
14319         Merge from gnulib
14320         This incorporates:
14321         2015-05-27 qacl: Reimplement qset_acl and qcopy_acl (Bug#20666)
14322         2015-05-27 file-has-acl: Split feature tests again (Bug#20667)
14323         2015-05-27 string: fix build failure on BSD/OSX with FORTIFY_SOURCE
14324         2015-05-26 stdio: limit __gnu_printf__ witness to gcc 4.4+
14325         2015-05-26 inttypes: force correct mingw PRIdMAX even without <stdio.h>
14326         2015-05-26 stdio: fix probe on mingw under gcc 5.1
14327         * admin/merge-gnulib (GNULIB_MODULES):
14328         Replace qacl with qcopy-acl, since we don't need the rest of qacl.
14329         * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
14330         * lib/inttypes.in.h, lib/qcopy-acl.c, lib/qset-acl.c:
14331         * lib/string.in.h, m4/acl.m4, m4/stdio_h.m4:
14332         Get latest versions from gnulib.
14333         * lib/get-permissions.c, lib/set-permissions.c: New files.
14334         * lib/gnulib.mk, m4/gnulib-comp.m4:
14335         Regenerate.
14336         * nt/gnulib.mk: Merge lib/gnulib.mk changes by hand.
14338 2015-05-27  Dmitry Gutov  <dgutov@yandex.ru>
14340         * lisp/vc/vc-dispatcher.el (vc-setup-buffer): Delete the old
14341         process here.
14342         (vc-do-command): Rather than here (bug#20608).
14344 2015-05-27  Ivan Shmakov  <ivan@siamics.net>
14346         Avoid gratuitous delete-dups in face-at-point
14347         * lisp/faces.el (face-at-point): Do not compute the properly
14348         ordered, duplicate-free list if only a single value is
14349         requested anyway.  (Bug#20519)
14351         Show the exact C-x 8 RET invocation in describe-char
14352         * lisp/descr-text.el (describe-char): Show the exact C-x 8 RET
14353         invocation instead of a template.  (Bug#20522)
14355 2015-05-27  Artur Malabarba  <bruce.connor.am@gmail.com>
14357         * lisp/emacs-lisp/package.el: Don't erase tags on refresh.
14358         (package-menu--post-refresh): Call `tabulated-list-print' with the
14359         UPDATE argument.  This only affects the refresh action, the revert
14360         action still erases tags.
14361         (package-menu-get-status): Change `assq' to `assoc'.
14362         (package-menu--mark-upgrades-1): New function.
14363         (package-menu--mark-upgrades-pending): New variable.
14364         (package-menu-mark-upgrades): Use them to delay marking until
14365         after refresh is done.
14366         (package-menu--post-refresh): Call mark-upgrades-1 if
14367         mark-upgrades-pending is non-nil.
14369 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
14371         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
14372         Fix typo in "Improve tramp-handle-make-auto-save-file-name"
14373         (commit 3953c4be2816537be95520605d45b866dc731f4b).
14375 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
14377         * lisp/isearch.el (isearch--current-buffer): New var.
14378         (isearch-update): Set cursor-sensor-inhibit here.
14379         (isearch-done): Unset cursor-sensor-inhibit in the right buffer
14380         (bug#20532).
14382         Change inhibit-point-motion-hooks to t
14383         * src/textprop.c (syms_of_textprop): Default Vinhibit_point_motion_hooks
14384         to t and document it as obsolete.
14386 2015-05-27  Eli Zaretskii  <eliz@gnu.org>
14388         Support ZIP files that use Zip64 extensions
14389         * lisp/arc-mode.el (archive-zip-summarize): Handle the new ZIP
14390         format of central directory offsets used by Zip64 extensions.
14391         (Bug#20665)
14393 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
14395         New test tramp-test30-make-auto-save-file-name
14396         * test/automated/tramp-tests.el
14397         (tramp-test30-make-auto-save-file-name): New test.
14398         (tramp-test31-special-characters)
14399         (tramp-test31-special-characters-with-stat)
14400         (tramp-test31-special-characters-with-perl)
14401         (tramp-test31-special-characters-with-ls, tramp-test32-utf8)
14402         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
14403         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
14404         (tramp-test34-recursive-load, tramp-test35-unload): Rename.
14406         Improve tramp-handle-make-auto-save-file-name
14407         * lisp/net/tramp.el (tramp-auto-save-directory): Add :tags.
14408         (tramp-handle-make-auto-save-file-name): Let native
14409         `make-auto-save-file-name' use `auto-save-file-name-transforms',
14410         if `tramp-auto-save-directory' is not set.
14412 2015-05-27  Glenn Morris  <rgm@gnu.org>
14414         No longer set dired-directory in eshell.  (Bug#16477)
14415         * lisp/eshell/esh-mode.el (eshell-mode):
14416         * lisp/eshell/em-dirs.el (eshell/cd): No longer set dired-directory.
14418         * lisp/mail/sendmail.el (mail-position-on-field): Doc fix.
14420         Make c-submit-bug-report file reports at debbugs.gnu.org.  (Bug#15784)
14421         * lisp/progmodes/cc-mode.el (c-mode-help-address):
14422         Change to submit@debbugs.
14423         (c-mode-bug-package): New constant.
14424         (mail-position-on-field): Declare.
14425         (c-submit-bug-report): Insert X-Debbugs-Package header.
14426         * doc/misc/cc-mode.texi (Mailing Lists and Bug Reports):
14427         Mention debbugs.gnu.org.
14429 2015-05-26  Glenn Morris  <rgm@gnu.org>
14431         * lisp/mail/rmailsum.el: Commas no longer separate regexps.  (Bug#19026)
14432         (rmail-summary-by-recipients, rmail-summary-by-topic)
14433         (rmail-summary-by-senders): No longer use mail-comma-list-regexp.
14434         * doc/emacs/rmail.texi (Rmail Make Summary): Update for this change.
14436 2015-05-26  Paul Eggert  <eggert@cs.ucla.edu>
14438         Handle curved quotes in info files
14439         * lisp/calc/calc-help.el (calc-describe-thing):
14440         * lisp/info.el (Info-find-index-name)
14441         (Info-try-follow-nearest-node, Info-fontify-node):
14442         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
14443         In info files, process quotes ‘like this’ the same way we process
14444         quotes `like this'.  This catches a few places we missed earlier.
14446 2015-05-26  Dmitry Gutov  <dgutov@yandex.ru>
14448         xref-prompt-for-identifier: Use a list value
14449         * lisp/progmodes/xref.el (xref-prompt-for-identifier): Allow list
14450         value, to be interpreted as a list of commands.
14451         (xref--prompt-p): New function.
14452         (xref--read-identifier): Use it.
14454 2015-05-26  Eli Zaretskii  <eliz@gnu.org>
14456         Teach MS-Windows font back-end return per-glyph ascent/descent
14457         * src/w32font.h (struct w32_metric_cache): Add ascent and descent
14458         values.
14459         * src/w32font.c (w32font_text_extents): Compute, cache, and
14460         accumulate per-glyph ascent and descent values, instead of copying
14461         global values from the font.  If the values are not available from
14462         the font data, i.e., non-TTF fonts, fall back on font-global values.
14463         (compute_metrics): Compute and return per-glyph ascent and descent
14464         values, if returned by GetGlyphOutlineW, falling back on
14465         font-global values.  (Bug#20628)
14466         * src/w32term.c (w32_draw_rectangle): Add 1 pixel to width and
14467         height of rectangle to be drawn, to be compatible with
14468         XDrawRectangle.  Fixes glyphless-char display as hex codes in a
14469         box, when per-glyph ascent/descent values are used.
14471 2015-05-26  Artur Malabarba  <bruce.connor.am@gmail.com>
14473         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
14474         Don't sort if sorter is nil.
14476 2015-05-26  Michael Albinus  <michael.albinus@gmx.de>
14478         Fix Bug#20621
14479         * lisp/net/tramp-sh.el (tramp-set-auto-save): Remove it.  There
14480         are major modes which set `auto-save-mode' on their own rules;
14481         Tramp shall not overwrite such settings.
14483 2015-05-26  Glenn Morris  <rgm@gnu.org>
14485         * lisp/desktop.el: If modes aren't autoloaded, try simple guesswork.
14486         (desktop-load-file): Guess that "foobar" defines "foobar-mode".
14487         (desktop-buffer-mode-handlers, desktop-minor-mode-handlers):
14488         Doc updates.
14489         (vc-dir-mode): Remove unnecessary autoload.
14491 2015-05-25  Philipp Stephani  <phst@google.com>
14493         * lisp/term/xterm.el: Add gui-get-selection support via OSC-52.
14494         (xterm--extra-capabilities-type): Add `getSelection'.
14495         (xterm--query): Add `no-async' argument.
14496         (xterm--init-activate-get-selection): New function.
14497         (terminal-init-xterm): Use it.
14498         (xterm--init-modify-other-keys): Rename from
14499         terminal-init-xterm-modify-other-keys.
14500         (xterm--init-bracketed-paste-mode): Rename from
14501         terminal-init-xterm-bracketed-paste-mode.
14502         (xterm--init-activate-set-selection): Rename from
14503         terminal-init-xterm-activate-set-selection.
14504         (xterm--selection-char): New function.
14505         (gui-backend-set-selection): Use it.  Use the &context to only apply
14506         this method in terminals where we enabled the feature.
14507         (gui-backend-get-selection): New method.
14509 2015-05-25  Daniel Colascione  <dancol@dancol.org>
14511         * lisp/progmodes/cc-langs.el (c-constant-kwds): Add C-language
14512         keyword constants to C++.
14514 2015-05-25  Paul Eggert  <eggert@cs.ucla.edu>
14516         Make TAGS files more portable to MS-Windows
14517         * etc/NEWS: Document this.
14518         * lib-src/etags.c (readline_internal) [DOS_NT]:
14519         Don't treat CRs differently from GNUish hosts.
14520         * lisp/progmodes/etags.el (etags-goto-tag-location):
14521         Adjust STARTPOS to account for the skipped CRs in dos-style files.
14523 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
14525         Improve fix of bug#20634 in tramp-sh.el
14527 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
14529         Fix a typo in last commit
14530         * lib-src/etags.c (C_entries): Fix a typo.
14531         * test/etags/ETAGS.good_1:
14532         * test/etags/ETAGS.good_2:
14533         * test/etags/ETAGS.good_3:
14534         * test/etags/ETAGS.good_4:
14535         * test/etags/ETAGS.good_5:
14536         * test/etags/CTAGS.good: Update due to the change in etags.c.
14538         Fix tagging of class members in C-like OO languages
14539         * lib-src/etags.c (longopts): Add new option --class-qualify and
14540         its shorthand -Q.
14541         (print_help): Add help text for --class-qualify.
14542         (main): Add handling of -Q.
14543         (consider_token, C_entries) <omethodparm>: Append argument types
14544         to Objective C methods only if --class-qualify was specified.
14545         Qualify C++, Objective C, and Java class members with their class
14546         names only if --class-qualify was specified.
14547         (C_entries): If --class-qualify was not specified, remove the
14548         namespace and class qualifiers from tag names of C++ methods.
14549         This allows to use etags.el as xref back-end without the
14550         tag-symbol-match-p method, which greatly increases the number of
14551         potentially false positives.  (Bug#20629)
14552         * doc/man/etags.1: Update to document the new --class-qualify
14553         option.
14554         * test/etags/ETAGS.good_1:
14555         * test/etags/ETAGS.good_2:
14556         * test/etags/ETAGS.good_3:
14557         * test/etags/ETAGS.good_4:
14558         * test/etags/ETAGS.good_5:
14559         * test/etags/CTAGS.good: Update due to changes in etags.c.
14561 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
14563         (cl-generic-define-method): Side effects are evil (bug#20644)
14564         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method): Don't reuse
14565         cons-cells that might be used as keys in an `equal' hash-table.
14567 2015-05-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
14569         Make erc timestamps visible again
14570         * lisp/erc/erc-stamp.el (erc-munge-invisibility-spec):
14571         Make timestamps visible again (if requested).
14573 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
14575         Fix last change in etags.c that broke tagging compresed files
14576         * lib-src/etags.c (process_file_name) [MSDOS || DOS_NT]: Fix
14577         quoting of decompression shell command for MS-Windows/MS-DOS.
14579 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
14581         * lisp/emacs-lisp/cl-macs.el (cl-tagbody): Scope cl--tagbody-alist.
14582         (Bug#20639)
14584 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
14586         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer):
14587         Fix typo in "Inhibit `epa-file-handler' in Tramp"
14588         (commit 89035e247591c8d688fce922b7079881aa110f33).
14590 2015-05-25  Orivej Desh  <orivej@gmx.fr>  (tiny change)
14592         Fix IPv6 addresses in Tramp
14593         * lisp/net/tramp-sh.el (tramp-make-copy-program-file-name):
14594         Add square brackets around host name.
14596 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
14598         Inhibit `epa-file-handler' in Tramp (Bug#20634)
14599         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer)
14600         (tramp-sh-handle-insert-file-contents-literally): Inhibit also
14601         `epa-file-handler'.
14603 2015-05-24  Stefan Monnier  <monnier@iro.umontreal.ca>
14605         * lisp/emacs-lisp/pcase.el: Use PAT rather than UPAT in docstring.
14606         (pcase-let): Document the behavior in case the pattern doesn't match.
14608 2015-05-24  Artur Malabarba  <bruce.connor.am@gmail.com>
14610         * lisp/emacs-lisp/tabulated-list.el: New optional print method.
14611         (tabulated-list-print): New optional argument, UPDATE.  If
14612         non-nil, the list is printed by only adding and deleting the
14613         changed entries, instead of erasing the whole buffer.  This method
14614         is much faster when few or no entries have changed.
14615         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
14616         * etc/NEWS: Document it.
14618         * lisp/emacs-lisp/tabulated-list.el: Improve printing.
14619         (tabulated-list--get-sorter): New function.
14620         (tabulated-list-print): Restore window-line when remember-pos is
14621         passed and optimize away the `nreverse'.
14623 2015-05-24  Paul Eggert  <eggert@cs.ucla.edu>
14625         Simpilify etags TEX mode scanning
14626         * lib-src/etags.c (TEX_mode, TEX_esc, TEX_opgrp, TEX_clgrp):
14627         Remove static vars.
14628         (TeX_commands): Deduce escapes here instead.
14629         (TEX_LESC, TEX_SESC, TEX_mode): Remove; all uses removed.
14630         This removes the need for a reset_input call.
14632         Improve etags I/O error reporting
14633         * lib-src/etags.c:
14634         Don't include sys/types.h and sys/stat.h; no longer needed.
14635         (infilename): New static var.
14636         (process_file_name): Don't call 'stat'.  Instead, just open the
14637         file for reading and report any errors.  Don't bother making
14638         a copy of the file argument; it's not needed.  Be more careful to
14639         use the failing errno when reporting an error.
14640         Quote the real name better (though no perfectly)
14641         when passing it to the shell.
14642         (reset_input): New function, which reports I/O errors.
14643         All uses of 'rewind' changed to use this function.
14644         (perhaps_more_input): New function, which also checks for
14645         I/O errors.  All uses of 'feof' changed to use this function.
14646         (analyze_regex): Report an error if fclose fails.
14647         (readline_internal): Report an error if getc fails.
14648         (etags_mktmp): Return an error if close fails.
14650         etags.c: avoid side effects in 'if'
14651         * lib-src/etags.c (process_file_name, Perl_functions)
14652         (TEX_decode_env): Hoist side effects into previous statement.
14654         .gitignore tweaks
14655         * .gitignore: Ignore all *.stamp files.  Sort.
14656         Ignore [0-9]*.txt (commonly used name for git patches)
14657         and /vc-dwim-log-* (vc-dwim temporary).
14659 2015-05-24  Eli Zaretskii  <eliz@gnu.org>
14661         Fix last change in etags.c, which failed the test suite
14662         * lib-src/etags.c (intoken): Add '$' to the set, as it was there
14663         before the last change.
14665 2015-05-23  Glenn Morris  <rgm@gnu.org>
14667         Remove charset map files from repository, generate in first bootstrap
14668         * admin/charsets/Makefile.in (${srcdir}/charsets.stamp): New.
14669         (all): Create the stamp file.
14670         (extraclean): Delete the stamp file.
14671         * src/Makefile.in (lispintdir, charsets): New variables.
14672         (${lispintdir}/cp51932.el, ${lispintdir}/eucjp-ms.el, ${charsets}):
14673         New rules.
14674         (emacs$(EXEEXT), temacs$(EXEEXT)): Depend on $charsets.
14675         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
14676         * etc/charsets/*.map: Remove from repository.
14678 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
14680         Cleanup etags.c to use locale-independent code
14681         Although this doesn't alter behavior (as etags doesn't use
14682         setlocale), the new version is more clearly locale-independent and
14683         the executable is a bit smaller on my platform.
14684         * lib-src/etags.c: Include <limits.h>, for UCHAR_MAX.
14685         Include <c-ctype.h> instead of <ctype.h>.
14686         (CHARS, CHAR, init, _wht, _nin, _itk, _btk, _etk, white, nonam, endtk)
14687         (begtk, midtk):
14688         Remove; no longer needed.
14689         (iswhite, ISALNUM, ISALPHA, ISDIGIT, ISLOWER, lowcase): Remove.
14690         All callers changed to use c_isspace, c_isalnum, c_isalpha, c_isdigit,
14691         c_islower, c_tolower, respectively.
14692         (notinname, begtoken, intoken, endtoken): Rewrite as functions
14693         instead of macros, and initialize the tables at compile-time
14694         rather than at run-time.
14696         Put default action first in src/Makefile
14697         * src/Makefile.in (all): Put this rule before lisp.mk.
14698         That way, plain 'make' works in the src directory again.
14700 2015-05-23  Glenn Morris  <rgm@gnu.org>
14702         * Makefile.in: Fix extraclean rule.
14703         (extraclean_dirs): New.
14704         (extraclean): Use it.
14706 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
14708         Avoid compiler warning in image.c on MS-Windows
14709         * src/w32term.h (x_query_color): Add prototype, to avoid compiler
14710         warning in image.c.
14712 2015-05-23  Glenn Morris  <rgm@gnu.org>
14714         Fix --without-toolkit-scroll-bars builds.
14715         * src/xterm.c (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]:
14716         Add new argument to x_clear_area1.
14717         (XTset_horizontal_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
14718         Update x_clear_area arguments.
14720         * admin/charsets/glibc/: New directory, imported from glibc 2.21.
14721         * admin/charsets/Makefile.in (GLIBC_CHARMAPS):
14722         Change to included version.
14723         (LOCAL, local, totalclean): Remove.
14724         (extraclean): Delete all generated files.
14726 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
14728         * lisp/pcmpl-cvs.el (pcmpl-cvs-entries): Don't assume
14729         CVS/Entries exists.
14731         * lisp/progmodes/xref.el (xref-find-apropos): Use read-string.
14733         * lisp/progmodes/etags.el (tags-completion-at-point-function):
14734         Don't trust the find-tag function.
14736 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
14738         Pacify --enable-gcc-warnings
14739         * src/frame.h (x_query_color): Remove redundant extern decl.
14740         * src/ftcrfont.c (ftcrfont_glyph_extents, ftcrfont_list)
14741         (ftcrfont_match, ftcrfont_open, ftcrfont_close)
14742         (ftcrfont_text_extents, ftcrfont_draw):
14743         * src/xterm.c (x_set_window_size_1, *x_color_cells, x_update_end)
14744         (XTframe_up_to_date, x_clear_area1, x_clear_frame)
14745         (x_ins_del_lines, frame_highlight, frame_unhighlight)
14746         (x_new_focus_frame, x_focus_changed, XTframe_rehighlight)
14747         (x_draw_hollow_cursor, x_draw_bar_cursor, x_flush, x_update_begin)
14748         (x_update_window_begin, x_connection_closed)
14749         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
14750         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
14751         (*x_gc_get_ext_data, x_extension_initialize)
14752         (x_cr_accumulate_data):
14753         Remove redundant static decl.  Many of these GCC doesn't complain
14754         about, but we might as well clean out the duplication while we're
14755         in the neighborhood.
14756         * src/xterm.c (x_fill_trapezoid_for_relief):
14757         Remove decl of nonexistent function.
14759 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
14761         Replace gui-method macros with cl-generic with &context
14762         * lisp/frame.el (gui-method--name, gui-method, gui-method-define)
14763         (gui-method-declare, gui-call): Remove.
14764         (frame-creation-function): Use cl-defgeneric.
14765         (make-frame): Adjust callers.
14766         * lisp/menu-bar.el (menu-bar-edit-menu):
14767         Use gui-backend-selection-exists-p.
14768         * lisp/select.el (x-get-clipboard): Use gui-backend-get-selection.
14769         (gui-backend-get-selection): New cl-generic to replace
14770         gui-get-selection method.
14771         (gui-backend-set-selection): New cl-generic to replace
14772         gui-set-selection method.
14773         (gui-selection-owner-p): New cl-generic to replace
14774         gui-selection-owner-p method.
14775         (gui-backend-selection-exists-p): New cl-generic to replace
14776         gui-selection-exists-p method.  Adjust all callers.
14777         * lisp/server.el (server-create-window-system-frame): Don't ignore
14778         window-system spec even when unsupported.
14779         * lisp/simple.el (deactivate-mark): Use new gui-backend-* functions.
14780         * lisp/startup.el (handle-args-function, window-system-initialization):
14781         Use cl-defgeneric.
14782         (command-line): Adjust calls accordingly.
14783         * lisp/term/ns-win.el (ns-window-system-initialization): Turn into
14784         a window-system-initialization method.
14785         (handle-args-function, frame-creation-function): Use cl-defmethod.
14786         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
14787         (gui-get-selection): Use cl-defmethod on the new functions instead.
14788         * lisp/term/pc-win.el (w16-get-selection-value): Turn into
14789         a gui-backend-get-selection method.
14790         (gui-selection-exists-p, gui-selection-owner-p, gui-set-selection):
14791         Use cl-defmethod on the new functions instead.
14792         (msdos-window-system-initialization): Turn into
14793         a window-system-initialization method.
14794         (frame-creation-function, handle-args-function): Use cl-defmethod.
14795         * lisp/term/w32-win.el (w32-window-system-initialization): Turn into
14796         a window-system-initialization method.
14797         (handle-args-function, frame-creation-function): Use cl-defmethod.
14798         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
14799         (gui-get-selection): Use cl-defmethod on the new functions instead.
14800         * lisp/term/x-win.el (x-window-system-initialization): Turn into
14801         a window-system-initialization method.
14802         (handle-args-function, frame-creation-function): Use cl-defmethod.
14803         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
14804         (gui-get-selection): Use cl-defmethod on the new functions instead.
14805         * lisp/term/xterm.el (xterm--set-selection): Turn into
14806         a gui-backend-set-selection method.
14807         * src/nsselect.m (Fns_selection_exists_p): Remove unused arg `terminal'.
14808         (Fns_selection_owner_p): Remove unused arg `terminal'.
14809         (Fns_get_selection): Remove unused args `time_stamp' and `terminal'.
14811 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
14813         Revert "Fix etags Bug#20629 that broke C++ support"
14814         This reverts commit 13dd9d4f7e75d2c78aa5537cef09de03663e9748.
14816 2015-05-23  Jan D  <jan.h.d@swipnet.se>
14818         Fix etags Bug#20629 that broke C++ support
14819         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
14820         Revert commit from Sun May 10 (Bug#20629).
14822         Merge branch 'cairo'.
14823         Main work done by YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>.
14824         Small fixes and image work by Jan D. <jan.h.d@swipnet.se>.
14826         Merge branch 'master' into cairo
14828         Fixes to compile cairo branch without cairo
14829         * src/gtkutil.c (xg_update_scrollbar_pos): x_clear_area takes frame as
14830         first argument.
14831         * src/xterm.c (handle_one_xevent): Surround x_cr_destroy_surface with
14832         USE_CAIRO.
14834 2015-05-23  Artur Malabarba  <bruce.connor.am@gmail.com>
14836         * lisp/emacs-lisp/package.el: Always update selected-packages.
14837         (package--update-selected-packages): New function.
14838         (package-menu-execute): Use it before starting the transaction,
14839         this way the list of selected packages is updated even when the
14840         transaction fails.
14841         (package-menu--perform-transaction): Don't edit selected-packages.
14843 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
14845         Fix etags reading of compressed files
14846         * lib-src/etags.c (O_CLOEXEC) [WINDOWSNT]: Define.
14847         Include fcntl.h, for O_CLOEXEC.
14848         (process_file_name): Don't use 'popen', whose streams cannot be
14849         rewound.  Instead, uncompress the file to a temporary file,
14850         created by 'etags_mktmp', and read from that as usual.
14851         (etags_mktmp): New function.
14852         * test/etags/ETAGS.good_1:
14853         * test/etags/ETAGS.good_2:
14854         * test/etags/ETAGS.good_3:
14855         * test/etags/ETAGS.good_4:
14856         * test/etags/ETAGS.good_5: Update to be consistent with latest
14857         changes in etags.c regarding reading compressed files.
14859         Improve documentation of 'set-fontset-font'
14860         * doc/lispref/display.texi (Fontsets): Document the value of nil
14861         for the 3rd argument of 'set-fontset-font'.
14863         Fix documentation of forward-line
14864         * src/cmds.c (Fforward_line): Clarify the return value if the line
14865         at end of accessible portion of the buffer has no newline.
14866         * doc/lispref/positions.texi (Text Lines): Document what happens
14867         if the line at end of accessible portion of buffer has no newline.
14868         (Bug#20587)
14870 2015-05-22  Glenn Morris  <rgm@gnu.org>
14872         * admin/charsets/Makefile.in (TRANS_TABLE): Add short aliases.
14874         * admin/charsets/mapconv (LC_ALL): Set to C.
14876         * Makefile.in: Add admin/charsets into top-level clean rules.
14877         (clean): Add admin/charsets.
14878         (maybeclean_dirs): New variable.
14879         (distclean, bootstrap-clean, maintainer-clean): Use $maybeclean_dirs.
14881         * admin/charsets/Makefile.in (LOCAL, local): Fix members.
14883 2015-05-22  Artur Malabarba  <bruce.connor.am@gmail.com>
14885         * lisp/emacs-lisp/package.el (package-selected-packages): Fix doc.
14887 2015-05-22  Glenn Morris  <rgm@gnu.org>
14889         Generate admin/charsets Makefile via configure, and make more portable
14890         * configure.ac (SUBDIR_MAKEFILES): Add admin/charsets/Makefile.
14891         (admin/charsets/Makefile): Generate it.
14892         * admin/charsets/Makefile.in: Rename from Makefile.
14893         (AWK, srcdir, top_srcdir, AM_DEFAULT_VERBOSITY):
14894         New variables, set by configure.
14895         (charsetdir, lispintdir, mapfiledir, AM_V_GEN, am__v_GEN_)
14896         (am__v_GEN_0, am__v_GEN_1, AM_V_at, am__v_at_, am__v_at_0)
14897         (am__v_at_1, LOCAL, mapconv, run_mapconv, big5, compact, cp51932)
14898         (cp932, eucjp_ms, gb180302, gb180304, kuten): New variables.
14899         (TRANS_TABLE, CHARSETS): Add directory prefix to value.
14900         (all): Declare PHONY.
14901         (local): New PHONY target.
14902         (map_template): New template.  Use to define short PHONY aliases.
14903         (*.map): Add directory prefixes to targets and prerequisites.
14904         Respect make verbosity.
14905         (JISC6226.map): Replace non-portable sed append without newline.
14906         (install): Remove rule.
14907         (clean): Only delete temporary sedscript.
14908         (bootstrap-clean, distclean, maintainer-clean, extraclean)
14909         (totalclean): New PHONY rules.
14910         * admin/charsets/mapconv (BASE): Replace basename with expr.
14911         (FILE): Add "mapfiles" subdirectory.
14912         (AWK): New variable.  Use throughout in place of "awk".
14913         (main): Use "gunzip -c" in place of "zcat".
14914         Don't leave whitespace before "p", for older sed.
14915         * admin/charsets/mapfiles/PTCP154: Add final newline,
14916         to make older sed versions happy.
14918 2015-05-22  Stefan Monnier  <monnier@iro.umontreal.ca>
14920         * lisp/autorevert.el: Use lexical-binding.  Fix hook usage.
14921         (global-auto-revert-ignore-buffer, auto-revert-notify-modified-p)
14922         (auto-revert-notify-watch-descriptor): Use defvar-local.
14923         (find-file-hook, auto-revert-tail-mode)
14924         (auto-revert-notify-add-watch): Use setq-local.
14925         (auto-revert-notify-add-watch): Don't call make-local-variable on
14926         kill-buffer-hook (bug#20601).
14928 2015-05-21  Stefan Monnier  <monnier@iro.umontreal.ca>
14930         Change defgeneric so it doesn't completely redefine the function
14931         * lisp/emacs-lisp/cl-generic.el (cl-generic-define): Don't throw away
14932         previously defined methods.
14933         (cl-generic-define-method): Let-bind purify-flag instead of
14934         using `fset'.
14935         (cl--generic-prefill-dispatchers): Only define during compilation.
14936         (cl-method-qualifiers): Remove redundant alias.
14937         (help-fns-short-filename): Silence byte-compiler.
14938         * test/automated/cl-generic-tests.el:
14939         Adjust to new defgeneric semantics.
14941 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
14943         * lisp/emacs-lisp/package.el (package-menu-execute):
14944         Remove reference to remove-dups.
14946 2015-05-21  kwhite  <kwhite@gnu.org>
14948         * lisp/erc/erc.el: Hide network/channel messages.
14949         (erc-network-hide-list, etc-channel-hide-list): New lists to define
14950         message types per network/channel.
14951         (erc-add-targets): New function to parse list of targets.
14952         (erc-hide-current-message-p): Modified to check for new targets.
14954 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
14956         Don't quote nil and t in doc strings
14957         This is as per "Tips for Documentation Strings" in the elisp manual.
14958         For consistency, do the same in diagnostics and comments.
14960 2015-05-21  Eli Zaretskii  <eliz@gnu.org>
14962         Fix a minor problem with mouse-face on mode line
14963         * src/xdisp.c (note_mode_line_or_margin_highlight): Reset the
14964         mouse face also if the mouse pointer hovers above mode-line glyphs
14965         that don't come from any Lisp string.  (Bug#20620)
14967 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
14969         * lisp/emacs-lisp/package.el: Fix selected-package logic.
14970         (package-menu-execute): Mark as selected all non-upgrade packages
14971         being installed.
14972         (package-menu--perform-transaction): Don't mark anything.
14974         * lisp/emacs-lisp/package.el: Mode-line progress report.
14975         (package-menu--transaction-status): New variable.
14976         (package-menu-mode, package-menu--perform-transaction): Use it.
14978         * lisp/emacs-lisp/package.el: Better transaction messages.
14979         (package-menu--partition-transaction): New function.
14980         (package-menu--prompt-transaction-p, package-menu-execute):
14981         Use it.
14982         (package-menu--perform-transaction): Don't do any messaging.
14984         * lisp/emacs-lisp/package.el: Revert async package transactions.
14985         (package-menu-async): Update doc.
14986         (package-install-from-archive, package-download-transaction)
14987         (package-install, package-menu--perform-transaction)
14988         (package-menu-execute): Remove asynchronous functionality.
14990 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
14992         Revert doc string changes to f90.el
14993         Problem reported by Glenn Morris in:
14994         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00596.html
14995         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
14996         Revert recent changes to doc strings, as it's intended that they
14997         use grave accent, not quote.
14999 2015-05-20  Bozhidar Batsov  <bozhidar@batsov.com>
15001         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p):
15002         Improve parameter name.
15004         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p): New inline function.
15006 2015-05-20  Paul Eggert  <eggert@cs.ucla.edu>
15008         Don't require help-fns when not needed
15009         * lisp/emacs-lisp/autoload.el, lisp/emacs-lisp/advice.el:
15010         * lisp/emacs-lisp/elint.el:
15011         Don't require help-fns at the top level
15012         * lisp/emacs-lisp/advice.el (ad-arglist):
15013         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
15014         Don't require help-fns.  (Bug#17001)
15016 2015-05-20  Eli Zaretskii  <eliz@gnu.org>
15018         Fix slash collapsing in etags on MS-Windows
15019         * lib-src/etags.c (canonicalize_filename) [DOS_NT]: Separate the
15020         MS-Windows code from the Posix code, and support collapsing both
15021         forward- and back-slashes on MS-Windows.  Fixes a regression found
15022         by the test suite.
15024         Improve documentation of glyphless-char-display
15025         * doc/lispref/display.texi (Glyphless Chars): Improve
15026         documentation of glyphless character display.
15028         Fix "acronym" display of glyphless characters on w32
15029         * src/w32term.c (x_draw_glyphless_glyph_string_foreground): Don't
15030         ignore "acronym" substitutes of 1 character for glyphless characters.
15032 2015-05-20  Oleh Krehel  <ohwoeowho@gmail.com>
15034         Add an automated test for let-when-compile
15035         * test/automated/subr-tests.el (let-when-compile): New test.
15037         Add let-when-compile macro instead of using pcase-let
15038         * lisp/subr.el (let-when-compile): New let-like macro that makes its
15039         bindings known to macros like `eval-when-compile' in the body.
15040         * lisp/emacs-lisp/lisp-mode.el: Change the top-level `pcase-let' to
15041         a `let-when-compile'.  Also comment out the unused lexical var
15042         `el-kws-re'.
15043         The change greatly improves readability, while providing almost the
15044         same (even shorter) byte code: instead of pre-evaluating 10 variables,
15045         tossing them into a list, and destructuring that list a full screen
15046         page later, the variables are simply bound as they are evaluated,
15047         wrapped individually in `eval-when-compile'.
15049 2015-05-20  Artur Malabarba  <bruce.connor.am@gmail.com>
15051         * lisp/emacs-lisp/package.el: "Delete" button in Help buffer.
15052         (package-delete-button-action): New function.
15053         (describe-package-1): Add Delete button.
15055         * lisp/emacs-lisp/package.el: Better dependency description.
15056         (package--used-elsewhere-p): New optional arg, ALL, and return
15057         package-desc objects instead of names.
15058         (package-delete): Update accordingly.
15059         (describe-package-1): Describe which packages require the package.
15061 2015-05-20  Martin Rudalics  <rudalics@gmx.at>
15063         Fix handling and doc-string of FRAME arg of `other-buffer' (Bug#20533)
15064         * src/buffer.c (Fother_buffer): Argument FRAME must denote a live frame.
15065         Fix doc-string.
15067         Improve `switch-to-buffer' in strongly dedicated windows (Bug#20472)
15068         * lisp/window.el (switch-to-buffer-in-dedicated-window): New option.
15069         (switch-to-buffer): If the selected window is strongly dedicated
15070         to its buffer, signal error before prompting for buffer name.
15071         Handle `switch-to-buffer-in-dedicated-window'.
15072         * doc/lispref/windows.texi (Switching Buffers):
15073         Document `switch-to-buffer-in-dedicated-window'.
15075 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
15077         Prefer "this" to “this” in doc strings
15078         This mostly just straightens quotes introduced in my previous patch.
15079         Suggested by Dmitry Gutov in:
15080         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00565.html
15081         * lisp/faces.el, lisp/gnus/gnus-group.el, lisp/ldefs-boot.el:
15082         * lisp/mail/supercite.el, lisp/net/tramp.el, lisp/recentf.el:
15083         * lisp/textmodes/artist.el, lisp/textmodes/rst.el:
15084         * lisp/textmodes/tildify.el, lisp/vc/ediff-util.el:
15085         * lisp/vc/log-edit.el, lisp/xt-mouse.el:
15086         Prefer straight double quotes to curved double quotes in doc strings.
15088         Fix minor quoting problems in doc strings
15089         These were glitches regardless of how or whether we tackle the
15090         problem of grave accent in doc strings.
15091         * lisp/calc/calc-aent.el (math-restore-placeholders):
15092         * lisp/ido.el (ido-ignore-buffers, ido-ignore-files):
15093         * lisp/leim/quail/cyrillic.el ("bulgarian-alt-phonetic"):
15094         * lisp/leim/quail/hebrew.el ("hebrew-new")
15095         ("hebrew-biblical-sil"):
15096         * lisp/leim/quail/thai.el ("thai-kesmanee"):
15097         * lisp/progmodes/idlw-shell.el (idlwave-shell-file-name-chars):
15098         Used curved quotes to avoid ambiguities like ‘`''’ in doc strings.
15099         * lisp/calendar/calendar.el (calendar-month-abbrev-array):
15100         * lisp/cedet/semantic/mru-bookmark.el (semantic-mrub-cache-flush-fcn):
15101         * lisp/cedet/semantic/symref.el (semantic-symref-tool-baseclass):
15102         * lisp/cedet/semantic/tag.el (semantic-tag-copy)
15103         (semantic-tag-components):
15104         * lisp/cedet/srecode/cpp.el (srecode-semantic-handle-:cpp):
15105         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
15106         * lisp/emacs-lisp/byte-opt.el (byte-optimize-all-constp):
15107         * lisp/emacs-lisp/checkdoc.el (checkdoc-message-text-engine):
15108         * lisp/emacs-lisp/generator.el (iter-next):
15109         * lisp/gnus/gnus-art.el (gnus-treat-strip-list-identifiers)
15110         (gnus-article-mode-syntax-table):
15111         * lisp/net/rlogin.el (rlogin-directory-tracking-mode):
15112         * lisp/net/soap-client.el (soap-wsdl-get):
15113         * lisp/net/telnet.el (telnet-mode):
15114         * lisp/org/org-compat.el (org-number-sequence):
15115         * lisp/org/org.el (org-remove-highlights-with-change)
15116         (org-structure-template-alist):
15117         * lisp/org/ox-html.el (org-html-link-org-files-as-html):
15118         * lisp/play/handwrite.el (handwrite-10pt, handwrite-11pt)
15119         (handwrite-12pt, handwrite-13pt):
15120         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
15121         * lisp/progmodes/idlwave.el (idlwave-mode, idlwave-check-abbrev):
15122         * lisp/progmodes/verilog-mode.el (verilog-tool)
15123         (verilog-string-replace-matches, verilog-preprocess)
15124         (verilog-auto-insert-lisp, verilog-auto-insert-last):
15125         * lisp/textmodes/makeinfo.el (makeinfo-options):
15126         * src/font.c (Ffont_spec):
15127         Fix minor quoting problems in doc strings, e.g., missing quote,
15128         ``x'' where `x' was meant, etc.
15129         * lisp/erc/erc-backend.el (erc-process-sentinel-2):
15130         Fix minor quoting problem in other string.
15131         * lisp/leim/quail/ethiopic.el ("ethiopic"):
15132         * lisp/term/tvi970.el (tvi970-set-keypad-mode):
15133         Omit unnecessary quotes.
15134         * lisp/faces.el (set-face-attribute, set-face-underline)
15135         (set-face-inverse-video, x-create-frame-with-faces):
15136         * lisp/gnus/gnus-group.el (gnus-group-nnimap-edit-acl):
15137         * lisp/mail/supercite.el (sc-attribs-%@-addresses)
15138         (sc-attribs-!-addresses, sc-attribs-<>-addresses):
15139         * lisp/net/tramp.el (tramp-methods):
15140         * lisp/recentf.el (recentf-show-file-shortcuts-flag):
15141         * lisp/textmodes/artist.el (artist-ellipse-right-char)
15142         (artist-ellipse-left-char, artist-vaporize-fuzziness)
15143         (artist-spray-chars, artist-mode, artist-replace-string)
15144         (artist-put-pixel, artist-text-see-thru):
15145         * lisp/vc/ediff-util.el (ediff-submit-report):
15146         * lisp/vc/log-edit.el (log-edit-changelog-full-paragraphs):
15147         Use double-quotes rather than TeX markup in doc strings.
15148         * lisp/skeleton.el (skeleton-pair-insert-maybe):
15149         Reword to avoid the need for grave accent and apostrophe.
15150         * lisp/xt-mouse.el (xterm-mouse-tracking-enable-sequence):
15151         Don't use grave and acute accents to quote.
15153 2015-05-19  Stefan Monnier  <monnier@iro.umontreal.ca>
15155         * lisp/emacs-lisp/generator.el (cps--gensym, cps--transform-1):
15156         Silence compiler.
15158 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
15160         Try to port new etags tests to MS-Windows
15161         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
15162         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
15163         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
15164         Adjust to test-case changes below.
15165         * test/etags/Makefile (CSRC): Remove dostorture.c.
15166         Whatever it was trying to test, wasn't working portably.
15167         (LC_ALL): Remove.  Apparently there wasn't an encoding problem,
15168         just a line-ending problem.
15169         * test/etags/c-src/dostorture.c: Remove.
15170         * test/etags/cp-src/c.C: Remove stray CR.
15171         * test/etags/html-src/algrthms.html: Remove trailing CRs.
15172         State UTF-8 as the encoding.  The file is ASCII so it doesn't matter,
15173         but if someone edits it later it should stay UTF-8-compatible.
15175 2015-05-19  Eli Zaretskii  <eliz@gnu.org>
15177         Fix display of overlapping window-specific overlays
15178         * src/keyboard.c (adjust_point_for_property): When adjusting point
15179         due to display strings, ignore overlays that are specific to
15180         windows other than the currently selected one.
15181         * src/xdisp.c (handle_single_display_spec): If the display
15182         property comes from an overlay, arrange for buffer iteration to
15183         resume only after the end of that overlay.  (Bug#20607)
15185 2015-05-19  Dmitry Gutov  <dgutov@yandex.ru>
15187         New command icomplete-force-complete-and-exit
15188         * lisp/icomplete.el (icomplete-force-complete-and-exit):
15189         New command
15190         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00461.html)
15191         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00516.html).
15192         (icomplete-minibuffer-map): Bind C-j to it.
15193         (icomplete-forward-completions, icomplete-backward-completions):
15194         Mention the new command in the docstring.
15195         * lisp/minibuffer.el (minibuffer-force-complete-and-exit):
15196         Revert the previous fix for bug#17545.
15198 2015-05-19  Martin Rudalics  <rudalics@gmx.at>
15200         Fix last commit
15202         In Elisp manual explain how to override window manager positioning
15203         (Bug#20552)
15204         * doc/lispref/frames.texi (Position Parameters): Give example of
15205         how to override a window manager positioning decision.
15207         Clarify concept of "surrogate minibuffer frames" (Bug#20538)
15208         * src/frame.c (Fdelete_frame): In doc-string mention that frame
15209         can't be deleted if it has a surrogate minibuffer.
15210         * doc/lispref/frames.texi (Minibuffers and Frames)
15211         (Deleting Frames): Explain "surrogate minibuffer frames".
15213         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 19/12 MB.
15215 2015-05-18  Glenn Morris  <rgm@gnu.org>
15217         Add option to ignore commit lines matching a pattern in ChangeLog
15218         * build-aux/gitlog-to-changelog: Add --ignore-line option.
15219         * build-aux/gitlog-to-emacslog: Ignore lines matching '^; '.
15221 2015-05-18  Paul Eggert  <eggert@cs.ucla.edu>
15223         Don't skip new etags tests on non-UTF-8 hosts
15224         Problem reported by Eli Zaretskii for MS-Windows.
15225         * test/etags/Makefile (UTF8_LOCALE, UTF8_ENCODING): Remove.
15226         (LC_ALL): Set to C if the current locale isn't UTF-8.
15227         (.PHONY): Remove ediff_1 thru ediff_5.
15228         (check): Always run.
15230 2015-05-18  Glenn Morris  <rgm@gnu.org>
15232         * lisp/calculator.el (calculator-funcall):
15233         * lisp/textmodes/artist.el (artist-spray-random-points):
15234         Use standard degree/radian conversion utilities.
15236         Further lisp-complete-symbol related cleanup.
15237         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol):
15238         Unadvertise non-functional argument.  Replace obsolete alias.
15240 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
15242         Add a test case for Maven warning ouput
15243         * test/automated/compile-tests.el
15244         (compile-tests--test-regexps-data): Add a case for Maven warning
15245         ouput.
15246         (compile--test-error-line): Check the compilation message type, if
15247         it's specified in the test data.
15249 2015-05-18  Paul Pogonyshev  <pogonyshev@gmail.com>
15251         Update Maven compilation-mode entry to distinguish warnings
15252         * lisp/progmodes/compile.el
15253         (compilation-error-regexp-alist-alist): Update Maven entry to
15254         distinguish warnings (bug#20556).
15256 2015-05-18  Przemysław Wojnowski  <esperanto@cumego.com>
15258         * test/automated/sgml-mode-tests.el: New file.
15260 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
15262         Improve handling of the first Git revision
15263         * lisp/vc/log-view.el (log-view-toggle-entry-display): When
15264         there's no next entry, delete until the end of the buffer.
15265         (log-view-end-of-defun-1): Stop at eob.
15266         * lisp/vc/vc-annotate.el
15267         (vc-annotate-show-diff-revision-at-line-internal): Don't give up
15268         when previous-revision is nil.
15269         * lisp/vc/vc-git.el (vc-git-expanded-log-entry): End the arguments
15270         with `--' to avoid ambiguity.
15271         (vc-git-annotate-extract-revision-at-line): Exclude `^' from the
15272         returned revision string.
15273         (vc-git-annotate-time): Expect `^' before the first revision.
15274         * lisp/vc/vc-git.el (vc-git-diff): Diff against an empty tree if
15275         REV1 is nil, and REV2 is not.
15276         * lisp/vc/vc.el: Update the description of the `diff' function.
15278 2015-05-18  Oleh Krehel  <ohwoeowho@gmail.com>
15280         Allow checkdoc to be called in batch
15281         * lisp/emacs-lisp/checkdoc.el (checkdoc-error): When `noninteractive'
15282         is non-nil, echo the error with `warn'.
15283         How it can be used in -batch:
15284         (with-current-buffer (find-file "checkdoc.el")
15285           (checkdoc-current-buffer t))
15287 2015-05-18  Glenn Morris  <rgm@gnu.org>
15289         * lisp/calendar/solar.el (solar-ecliptic-coordinates): Use float-pi.
15291 2015-05-17  Paul Eggert  <eggert@cs.ucla.edu>
15293         * admin/notes/unicode: New section "binary files".
15295         Change new etags test to use UTF-8 encoding
15296         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
15297         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
15298         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
15299         * test/etags/html-src/index.shtml, test/etags/html-src/software.html:
15300         * test/etags/html-src/softwarelibero.html:
15301         Switch to UTF-8 encoding.
15302         * test/etags/Makefile (SRCS): Adjust to switch to UTF-8.
15303         Remove Makefile, as it's too incestuous to have the test input
15304         include the build procedure.
15305         (UTF8_LOCALE, UTF_ENCODING): New macros.
15306         (LC_ALL): If possible, set to a UTF-8 encoding if not already UTF-8.
15307         (check): Skip if not UTF-8.
15308         (.PHONY): New rule.
15309         (FRC): Remove, as superseded by .PHONY.  All uses removed.
15310         (regexfile): Prefer printf to echo when outputting oddball chars.
15311         (.PRECIOUS): Remove, as these files are not built.
15313         Rename 'foo-gzipped' to 'foo.gz'
15314         * test/automated/data/decompress/foo.gz:
15315         Rename from test/automated/data/decompress/foo-gzipped,
15316         to make it easier for other tools to tell that it's compressed.
15317         * test/automated/zlib-tests.el (zlib--decompress):
15318         Adjust to renamed file.
15320 2015-05-17  Dmitry Gutov  <dgutov@yandex.ru>
15322         Set up default-directory
15323         * lisp/vc/vc-annotate.el (vc-annotate-mode-map): Remove duplicate
15324         binding for `v'.
15325         (vc-annotate-show-changeset-diff-revision-at-line): Set up an
15326         appropriate value for default-directory.
15328 2015-05-17  Samer Masterson  <samer@samertm.com>
15330         * lisp/eshell/em-term.el (eshell-term-sentinel):
15331         No-op by default, only kills term buffer if
15332         `eshell-destroy-buffer-when-process-dies' is non-nil.  (Bug#18108)
15333         (eshell-destroy-buffer-when-process-dies): New custom to preserve
15334         previous behavior.
15336         eshell: Introduce new buffer syntax
15337         The new buffer syntax '#<buffer-name>' is equivalent to '#<buffer
15338         buffer-name>'.  Remove `eshell-buffer-shorthand', as it is no longer
15339         needed (Bug#19319).
15340         * lisp/eshell/esh-io.el (eshell-buffer-shorthand): Remove.
15341         (eshell-get-target): Remove shorthand-specific code.
15342         * lisp/eshell/esh-arg.el (eshell-parse-special-reference): Parse
15343         '#<buffer-name>'.
15345 2015-05-17  Jan D  <jan.h.d@swipnet.se>
15347         Merge branch 'master' into cairo
15349 2015-04-26  Jan D  <jan.h.d@swipnet.se>
15351         Merge branch 'master' into cairo
15353         Add PBM support for cairo
15354         * src/image.c (xcolor_to_argb32): New function.
15355         (get_spec_bg_or_alpha_as_argb): Call xcolor_to_argb32.
15356         (pbm_load, png_load_body, jpeg_load_body, gif_load): Only use
15357         XImagePtr if ! USE_CAIRO.
15358         (pbm_load): Add cairo support.
15360 2015-04-12  Jan D  <jan.h.d@swipnet.se>
15362         * src/xterm.c (x_free_cr_resources): Rename from x_prepare_for_xlibdraw.
15363         (x_cr_draw_frame, x_cr_export_frames, x_shift_glyphs_for_insert)
15364         (x_free_frame_resources): Rename x_prepare_for_xlibdraw to
15365         x_free_cr_resources.
15367         Handle specified bg in images.  Use generic libpng code for PNGs.
15368         * src/image.c (get_spec_bg_or_alpha_as_argb)
15369         (create_cairo_image_surface): New functions when USE_CAIRO.
15370         (xpm_load): Call the above functions.  Handle XPM without mask
15371         when USE_CAIRO.
15372         (png_load_body): Handle USE_CAIRO case.
15373         (png_load): Remove USE_CAIRO specific fuction, modify png_load_body
15374         instead.
15375         (jpeg_load_body): Call create_cairo_image_surface.
15376         (gif_load, svg_load_image): Handle specified background, call
15377         create_cairo_image_surface.
15378         * src/xterm.c (x_draw_image_glyph_string): Add missing USE_CAIRO.
15380 2015-04-11  Jan D  <jan.h.d@swipnet.se>
15382         Support GIF and TIFF with cairo
15383         * configure.ac: Allow jpeg with cairo.
15384         Allow tiff and gif with cairo.
15385         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
15386         (tiff_load): Create cairo image surface if USE_CAIRO.
15387         (gif_load): Ditto.
15389         Support JPEG with USE_CAIRO
15390         * configure.ac: Allow jpeg with cairo.
15391         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
15393 2015-04-05  Jan D  <jan.h.d@swipnet.se>
15395         Support RSVG and cairo
15396         * configure.ac: Allow rsvg with cairo.  Move back HAVE_RSVG.
15397         * src/dispextern.h (struct image): Add cr_data2 if cairo.
15398         * src/image.c: #undef COLOR_TABLE_SUPPORT when USE_CAIRO.
15399         (x_clear_image): Free cr_data and cr_data2 if set.
15400         (xpm_load): Assign data to cr_data2.
15401         (svg_load_image): Convert from GdkPixbuf to CAIRO_FORMAT_ARGB32.
15403 2015-04-03  Jan D  <jan.h.d@swipnet.se>
15405         Introduce limited Xpm support (32 bit ZPixmap) for Cairo
15406         * configure.ac (HAVE_RSVG): Move after cairo.
15407         (USE_CAIRO): Disable rsvg, don't disable Xpm.
15408         * src/image.c (prepare_image_for_display): Don't load if USE_CAIRO.
15409         (x_clear_image): If USE_CAIRO, also free possible img->ximg->obdata and
15410         don't return early.
15411         (ALLOC_XPM_COLORS): Don't define when USE_CAIRO.
15412         (xpm_load): Convert simple Xpms (32 bit ZPixmap) to CAIRO_FORMAT_ARGB32
15413         and create a surface.
15415         Tool tips for menus did not show any text.
15416         * src/xterm.c (x_update_begin): Don't create any surface for non-visible
15417         tip frames, the geometry may be wrong.
15419         Merge branch 'master' into cairo, fixes tooltips not shown.
15421         Merge branch 'master' into cairo
15423         Add CAIRO_CFLAGS to lwlib/Makefile.in
15424         * Makefile.in (CAIRO_CFLAGS): Add.
15426 2015-02-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
15428         * src/ftcrfont.c (ftcrfont_draw): Don't flush when drawing to screen.
15430 2015-02-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
15432         Draw outermost line using black relief and erase corners also for cairo.
15433         * src/xterm.c [USE_CAIRO]: Include math.h.
15434         (enum corners) [USE_CAIRO]: New enum.
15435         (x_erase_corners_for_relief) [USE_CAIRO]: New function.
15436         (x_draw_relief_rect) [USE_CAIRO]: Use it.  If box width is larger
15437         than 1, draw the outermost line using the black relief.
15439         * src/xterm.c (x_fill_trapezoid_for_relief):
15440         Remove unnecessary cairo_close_path.
15442 2015-02-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
15444         * src/xterm.c (x_draw_relief_rect) [USE_CAIRO]: Reset clipping.
15446         * src/xterm.c (x_draw_stretch_glyph_string):
15447         Call x_reset_clip_rectangles instead of XSetClipMask.
15449         Use int instead of unsigned int for width and height args.
15450         * src/xterm.c (x_cr_draw_image, x_fill_rectangle, x_draw_rectangle)
15451         (x_fill_trapezoid_for_relief): Use int instead of unsigned int for
15452         width and height args.
15454         Modernize k&r cairo-related function declarations.
15455         * src/gtkutil.c (xg_page_setup_dialog, xg_get_page_setup, draw_page)
15456         (xg_print_frames_dialog): Modernize k&r declarations.
15457         * src/xfns.c (Fx_export_frames, Fx_page_setup_dialog, Fx_get_page_setup)
15458         (Fx_print_frames_dialog): Modernize k&r declarations.
15459         * src/xterm.c (x_gc_get_ext_data, x_extension_initialize)
15460         (x_begin_cr_clip, x_end_cr_clip, x_set_cr_source_with_gc_foreground)
15461         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
15462         (x_cr_destroy_fringe_bitmap, x_cr_draw_frame, x_cr_accumulate_data)
15463         (x_cr_destroy, x_cr_export_frames, x_prepare_for_xlibdraw)
15464         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
15465         (x_draw_rectangle, x_clear_window, x_fill_trapezoid_for_relief)
15466         (x_clear_area): Modernize k&r declarations.
15468         Implement wave-style variant of underlining for cairo.
15469         * src/xterm.c (x_draw_horizontal_wave) [USE_CAIRO]: New function.
15470         (x_draw_underwave) [USE_CAIRO]: Use it.
15472         * src/xterm.c (x_draw_window_divider): Use x_fill_rectangle
15473         instead of XFillRectangle.
15475 2015-02-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
15477         Fix fringe bitmap initialization for cairo
15478         * src/fringe.c (init_fringe_bitmap) [USE_CAIRO]: Adjust bitmap
15479         data for cairo image surface.
15480         * src/xterm.c (x_cr_define_fringe_bitmap):
15481         Call cairo_surface_mark_dirty.
15483 2015-02-11  Jan D  <jan.h.d@swipnet.se>
15485         Add cairo drawing
15486         * configure.ac (with-cairo): New option.
15487         (USE_CAIRO): Default to yes for Gtk+ 3.  Add code to test for cairo,
15488         set CAIRO_CFLAGS, CAIRO_LIBS.  Add ftcrfonto to FONT_OBJ if cairo.
15489         Output "Does Emacs use cairo?".
15490         * lisp/version.el (emacs-version): Add cairo version.
15491         * src/Makefile.in (CAIRO_CFLAGS, CAIRO_LIBS): New variables.
15492         (FONT_OBJ): Add comment about ftcrfont.
15493         (ALL_CFLAGS): Add CAIRO_CFLAGS.
15494         (LIBES): Add CAIRO_LIBS.
15495         * src/dispextern.h (struct image): Add cr_data for cairo.
15496         (x_cr_init_fringe): Declare.
15497         * src/font.c (syms_of_font): Call syms_of_ftcrfont for cairo.
15498         * src/font.h (ftcrfont_driver, syms_of_ftcrfont): Declare
15499         * src/fringe.c (x_cr_init_fringe): New function name that shares code
15500         with w32_init_fringe.
15501         * src/ftcrfont.c: New font driver for cairo, based on the ftfont driver.
15502         * src/ftfont.c (ftfont_info_size); New global variable.
15503         (ftfont_open2): New extern function almost the same as old ftfont_open,
15504         but takes the font_object as argument.
15505         (ftfont_open): Build font object and call ftfont_open2.
15506         * src/ftfont.h (ftfont_open2, ftfont_info_size): Declare.
15507         * src/gtkutil.c (xg_clear_under_internal_border)
15508         (xg_update_scrollbar_pos, xg_update_horizontal_scrollbar_pos):
15509         Only queue_draw if not cairo.  Change args to x_clear_area.
15510         (xg_get_font): Use Qftcr when using cairo, Qxft otherwise.
15511         (xg_page_setup_dialog, xg_get_page_setup, draw_page)
15512         (xg_print_frames_dialog): New functions for printing.
15513         * src/gtkutil.h (xg_page_setup_dialog, xg_get_page_setup)
15514         (xg_print_frames_dialog): Declare.
15515         * src/image.c: Add defined (USE_CAIRO) for PNG.
15516         Add !defined USE_CAIRO for W32 PNG code.
15517         (x_clear_image): If cairo, destroy the surface in cr_data.
15518         (png_load): Add new cairo compatible implementation.
15519         (lookup_image_type): Add defined (USE_CAIRO) for define png_type.
15520         * src/xfns.c: New section Printing.
15521         (x-export-frames, x-page-setup-dialog, x-get-page-setup)
15522         (x-print-frames-dialog): New printing functions.
15523         (Fx_create_frame, x_create_tip_frame): Register ftcrfont if cairo.
15524         (syms_of_xfns): Defsym Qorientation, Qtop_margin, Qbottom_margin,
15525         Qportrait, Qlandscape, Qreverse_portrait, Qreverse_landscape).
15526         (syms_of_xfns): Provide cairo and defvar cairo-version-string.
15527         defsubr Sx_page_setup_dialog, Sx_get_page_setup, Sx_print_frames_dialog.
15528         * src/xterm.c (x_clear_area1, x_prepare_for_xlibdraw)
15529         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
15530         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
15531         (x_gc_get_ext_data, x_extension_initialize, x_cr_accumulate_data):
15532         Declare.
15533         (FRAME_CR_CONTEXT, FRAME_CR_SURFACE): New macros.
15534         (max_fringe_bmp, fringe_bmp): New variables.
15535         (x_gc_get_ext_data, x_extension_initialize)
15536         (x_cr_destroy_surface, x_begin_cr_clip, x_end_cr_clip)
15537         (x_set_cr_source_with_gc_foreground)
15538         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
15539         (x_cr_destroy_fringe_bitmap, x_cr_draw_image, x_cr_draw_frame)
15540         (x_cr_accumulate_data, x_cr_destroy, x_cr_export_frames)
15541         (x_prepare_for_xlibdraw, x_set_clip_rectangles)
15542         (x_reset_clip_rectangles, x_fill_rectangle, x_draw_rectangle)
15543         (x_clear_window, x_fill_trapezoid_for_relief): New functions.
15544         (x_update_begin): Create cairo surface if needed.
15545         (x_draw_vertical_window_border): Call x_fill_rectangle for cairo.
15546         (x_update_end): Paint cairo drawing surface to xlib surface.
15547         (x_clear_under_internal_border, x_after_update_window_line): Adjust
15548         arguments to x_clear_area.
15549         (x_draw_fringe_bitmap): Call x_fill_rectangle.  Get GC values and
15550         call x_cr_draw_image for cairo.  Call x_reset_clip_rectangles instead
15551         of XSetClipMask.
15552         (x_set_glyph_string_clipping)
15553         (x_set_glyph_string_clipping_exactly): Use x_set_clip_rectangles
15554         instead of XSetClipRectangles.
15555         (x_clear_glyph_string_rect, x_draw_glyph_string_background):
15556         Use x_fill_rectangle instead of XFillRectangle.
15557         (x_draw_glyph_string_foreground)
15558         (x_draw_composite_glyph_string_foreground)
15559         (x_draw_glyphless_glyph_string_foreground): Use x_draw_rectangle
15560         instead of XDrawRectangle.
15561         (x_draw_relief_rect): Add code for USE_CAIRO.
15562         Call x_reset_clip_rectangles instead of XSetClipMask.
15563         (x_draw_box_rect): x_set_clip_rectangles instead of XSetClipRectangles,
15564         x_fill_rectangle instead of XFillRectangle, x_reset_clip_rectangles
15565         instead of XSetClipMask.
15566         (x_draw_image_foreground, x_draw_image_foreground_1):
15567         x_draw_rectangle instead of XDrawRectangle.
15568         (x_draw_glyph_string_bg_rect): x_fill_rectangle instead of
15569         XFillRectangle.
15570         (x_draw_image_glyph_string): If img has cr_data, use it as
15571         a cairo surface.
15572         (x_draw_stretch_glyph_string): x_set_clip_rectangles instead of
15573         XSetClipRectangles, x_fill_rectangle instead of XFillRectangle.
15574         (x_draw_glyph_string): x_fill_rectangle instead of XFillRectangle.,
15575         x_reset_clip_rectangles instead of XSetClipMask.
15576         (x_shift_glyphs_for_insert): Call x_prepare_for_xlibdraw.
15577         (x_clear_area1): New function that calls XClearArea.
15578         (x_clear_area): Takes frame as parameter, calls x_clear_area1 for
15579         non-cairo.
15580         (x_clear_frame): x_clear_window instead of XClearWindow.
15581         (x_scroll_run): Set frame garbaged if cairo.
15582         (XTmouse_position): Initialize *part to 0.
15583         (x_scroll_bar_create): Adjust arguments to x_clear_area.
15584         (x_scroll_bar_set_handle): x_clear_area1 instead of x_clear_area,
15585         x_fill_rectangle instead of XFillRectangle.
15586         (XTset_vertical_scroll_bar, XTset_horizontal_scroll_bar): Adjust
15587         arguments to x_clear_area.
15588         (x_scroll_bar_expose): x_draw_rectangle instead of XDrawRectangle.
15589         (handle_one_xevent): Adjust arguments to x_clear_area.
15590         Destroy cairo surface for frame if ConfigureNotify.
15591         (x_clip_to_row): x_set_clip_rectangles instead of XSetClipRectangles.
15592         (x_draw_hollow_cursor): x_draw_rectangle instead of XDrawRectangle,
15593         x_reset_clip_rectangles instead of XSetClipMask.
15594         (x_draw_bar_cursor): x_fill_rectangle instead of XFillRectangle,
15595         x_reset_clip_rectangles instead of XSetClipMask.
15596         (x_clear_frame_area): Adjust arguments to x_clear_area.
15597         (x_free_frame_resources): Call x_prepare_for_xlibdraw.
15598         (x_term_init): Call x_extension_initialize if cairo.
15599         (x_redisplay_interface): Add x_cr_define_fringe_bitmap,
15600         x_cr_destroy_fringe_bitmap for cairo.
15601         (x_initialize): Call x_cr_init_fringe for cairo.
15602         * src/xterm.h: Add include of cairo header files.
15603         (x_bitmap_record): Add img if cairo.
15604         (x_gc_ext_data): New struct for cairo.
15605         (x_display_info): Add ext_codes for cairo.
15606         (x_output): Add cr_context and cr_surface for cairo.
15607         (x_clear_area): Change arguments from Display*/Window to frame pointer.
15608         (x_query_color, x_begin_cr_clip, x_end_cr_clip)
15609         (x_set_cr_source_with_gc_foreground, x_set_cr_source_with_gc_background)
15610         (x_cr_draw_frame, x_cr_export_frames): Declare.
15612 2015-05-17  Johan Bockgård  <bojohan@gnu.org>
15614         Fix integer-valued `mouse-highlight' (Bug#20590)
15615         * src/xterm.c (handle_one_xevent) [USE_GTK]: Fix ifdef scope.
15617 2015-05-17  Eli Zaretskii  <eliz@gnu.org>
15619         MS-Windows followup for ASCIIfication of curved quotes
15620         * lisp/term/w32console.el (terminal-init-w32console): Repeat the
15621         test for curved quotes being displayable, after switching the
15622         terminal encoding.  (Bug#20545)
15624 2015-05-17  Jan D  <jan.h.d@swipnet.se>
15626         Add comment that x_shift_glyphs_for_insert is never called
15627         * src/xterm.c (x_shift_glyphs_for_insert, x_redisplay_interface):
15628         Add comment that this function is never called.
15630 2015-05-16  Glenn Morris  <rgm@gnu.org>
15632         * src/lisp.mk: Remove from repository and generate at build-time.
15633         * src/Makefile.in (lisp.mk): New rule to generate from loadup.el.
15634         (shortlisp_filter): New variable.
15635         (emacs$(EXEEXT), $(etc)/DOC): Depend on lisp.mk.
15636         (distclean): Remove lisp.mk.
15637         * Makefile.in ($(MAKEFILE_NAME)): No longer depend on src/lisp.mk.
15638         * lisp/loadup.el: Tweak layout to make it easier to parse.
15639         * make-dist: Do not distribute src/lisp.mk.
15641 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
15643         Display shorter dates in Git annotate output
15644         * lisp/vc/vc-git.el (vc-git-annotate-command): Use the short date
15645         format (when not overridden with vc-git-annotate-switches).
15646         (vc-git-annotate-time): Support the short format, as well as ISO
15647         8601 that has been used until now (bug#5428).
15649 2015-05-16  Paul Eggert  <eggert@cs.ucla.edu>
15651         ASCIIfy curved quotes on displays lacking them
15652         * lisp/international/mule-cmds.el (set-locale-environment):
15653         If curved quotes don't work, display straight ASCII approximations
15654         (Bug#20545).
15656 2015-05-16  Glenn Morris  <rgm@gnu.org>
15658         Small src/Makefile simplification
15659         * src/lisp.mk (shortlisp): Rename from lisp, remove $lispsource prefix.
15660         * src/Makefile.in (lisp): Derive from shortlisp.
15661         ($(etc)/DOC): Use $shortlisp rather than parsing lisp.mk.
15663 2015-05-16  Eli Zaretskii  <eliz@gnu.org>
15665         * lisp/help-mode.el (help-go-forward): Doc fix.
15666         (Bug#20577)
15668         * doc/lispref/debugging.texi (Profiling): Improve indexing.
15669         (Bug#20576)
15671 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
15673         * lisp/vc/vc-git.el (vc-git-resolve-when-done): Use `unless' to
15674         have one fewer `not'.
15676         * lisp/vc/vc-git.el (vc-git-diff-switches)
15677         (vc-git-annotate-switches, vc-git-resolve-conflicts)
15678         (vc-git-program, vc-git-root-log-format): Remove the redundant
15679         :group declarations.
15681 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
15683         Removes the predicate from lisp-complete-symbol (Bug#20456)
15684         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol): Do not use predicate
15685         and remove it from the docstring.
15687 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
15689         Add new option vc-git-resolve-conflicts
15690         * lisp/vc/vc-git.el (vc-git-resolve-conflicts): New variable.
15691         (vc-git-find-file-hook): Add to after-save-hook only when the
15692         above is non-nil.
15693         (vc-git-resolve-when-done): Update to honor the new variable.
15694         (Bug#20292)
15696 2015-05-16  Artur Malabarba  <bruce.connor.am@gmail.com>
15698         * lisp/emacs-lisp/tabulated-list.el: Don't error on null header-string.
15699         (tabulated-list-init-header): Document new behavior.
15700         (tabulated-list-print-fake-header): Do nothing if
15701         `tabulated-list--header-string' is nil.
15702         (tabulated-list--header-string): Add a docstring.
15703         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
15704         * etc/NEWS: Document it.
15706 2015-05-15  Leo Liu  <sdl.web@gmail.com>
15708         Revert "Fix cps--gensym"
15709         * lisp/emacs-lisp/generator.el (cps--gensym): Revert commit
15710         fbda511ab8069d0115eafca411a43353b85431b1 on 2015-05-14.
15712 2015-05-15  Glenn Morris  <rgm@gnu.org>
15714         Replace AC_SUBST_FILE in configure with include in Makefiles
15715         * configure.ac (DEPDIR, MKDEPDIR, deps_frag, lwlib_deps_frag)
15716         (oldxmenu_deps_frag, lisp_frag): Remove output variables/files.
15717         (AUTO_DEPEND): New output variable.
15718         * lwlib/Makefile.in (AUTO_DEPEND): New, set by configure.
15719         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
15720         (lwlib_deps_frag): Replace by conditional include.
15721         * lwlib/autodeps.mk: Remove file.
15722         * oldXMenu/Makefile.in (AUTO_DEPEND): New, set by configure.
15723         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
15724         (oldxmenu_deps_frag): Replace by conditional include.
15725         * oldXMenu/autodeps.mk: Remove file.
15726         * src/Makefile.in (AUTO_DEPEND): New, set by configure.
15727         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
15728         (lisp_frag): Replace by an include.
15729         (deps_frag): Replace by conditional include.
15730         * src/autodeps.mk: Remove file.
15732         Tweak japanese.el's loading of dependencies
15733         * lisp/loadup.el: Explicitly load cp51932 and eucjp-ms.
15734         * lisp/language/japanese.el: Use require rather than load.
15735         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
15736         Provide a feature.
15737         * admin/charsets/eucjp-ms.awk, admin/charsets/cp51932.awk:
15738         Provide a feature in the generated file.
15740 2015-05-15  Jan D  <jan.h.d@swipnet.se>
15742         Fix NS warnings
15743         * src/nsmenu.m (ns_popup_dialog)
15744         * src/nsimage.m (initFromXBM:width:height:fg:bg:)
15745         * src/nsfns.m (Fx_create_frame): Remove unused variables.
15746         (Fns_read_file_name): Initialize fname, remove ret.
15747         * src/nsterm.m (ns_draw_window_cursor): Handle DEFAULT_CURSOR in switch.
15748         (ns_get_color, ns_set_horizontal_scroll_bar, keyDown):
15749         Remove unused variable.
15750         (init): Add parantesis in if.
15751         (ns_create_terminal): Assign set_horizontal_scroll_bar_hook.
15753 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
15755         Fix a enum conversion warning in macfont.m
15756         * src/macfont.h (CharacterCollection): Typedef to NSCharacterCollection.
15757         (MAC_CHARACTER_COLLECTION_*): Use the NS variants.
15759 2015-05-15  Eli Zaretskii  <eliz@gnu.org>
15761         * lisp/textmodes/ispell.el (ispell-aspell-find-dictionary):
15762         Support Aspell dictionaries with names like "de-alt".  (Bug#20581)
15764 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
15766         * lisp/cus-start.el: Add ns-confirm-quit.
15768         Fix warnings on OSX 10.10
15769         * src/nsfns.m (MODAL_OK_RESPONSE): New define for different
15770         OSX versions.
15771         (Fns_read_file_name): Check against MODAL_OK_RESPONSE.
15772         (compute_tip_xy): Use convertRectToScreen for OSX >= 10.7
15773         * src/nsmenu.m (initWithContentRect:styleMask:backing:defer:)
15774         * src/nsimage.m (allocInitFromFile, setPixmapData): Only call
15775         setScalesWhenResized for OSX < 10.6.
15776         * src/nsterm.h (EmacsScroller): Declare scrollerWidth.
15777         * src/nsterm.m (ns_copy_bits): New function that does not use
15778         deprecated NSCopyBits.
15779         (ns_scroll_run, ns_shift_glyphs_for_insert): Call ns_copy_bits.
15780         (runAlertPanel): New function.
15781         (applicationShouldTerminate:): Call runAlertPanel.
15782         (initFrameFromEmacs, toggleFullScreen:): Only call
15783         useOptimizedDrawing for OSX < 10.10.
15784         (initFrameFromEmacs:): Only call allocateGState for OSX < 10.10.
15785         (windowWillUseStandardFrame:defaultFrame:): Cast arg to abs to int.
15786         (draggingEntered:): Returns NSDragOperation.
15787         (scrollerWidth): Use scrollerWidthForControlSize for OSX >= 10.7.
15789 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
15791         * lisp/emacs-lisp/package.el: Don't ensure-init during startup.
15792         (package--init-file-ensured): New variable.
15793         (package-initialize, package--ensure-init-file): Use it.
15795 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
15797         Honor :fore/background for XBM on NS (Bug#14969)
15798         * src/nsterm.h (EmacsImage): Add xbm_fg, remove initFromSkipXBM,
15799         initFromXBM takes bg, fg args, remove flip arg.
15800         (ns_image_from_XBM): Add bg, fg args.
15801         * src/image.c (x_create_bitmap_from_data)
15802         (Create_Pixmap_From_Bitmap_Data): ns_image_from_XBM takes bg, fg args.
15803         * src/nsimage.m (ns_image_from_XBM): Add fg, bg args, pass to
15804         initFromXBM.  Remove flip arg.
15805         (initFromSkipXBM): Move code to initFromXBM.
15806         (initFromXBM): Actually set fg and bg, instead of playing alpha games.
15807         Use fg, bg from args (Bug#14969).  Remove if (length) section, was
15808         always false.
15809         Remove bit flipping (bitPat, swt), generated incorrect images when
15810         width/height wasn't a multiple of 8.
15811         (setXBMColor:): Modify planes by comparing to saved xbm_fg.
15812         * src/nsterm.m (ns_draw_fringe_bitmap): initFromXBM takes fg, bg args,
15813         remove flip arg.
15815 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
15817         * lisp/emacs-lisp/package.el: Be more careful with the init file.
15818         (package--ensure-init-file): Check that user-init-file is set,
15819         exists, is readable, and is writable.  (Bug#20584)
15820         Also expand the docstring.
15822 2015-05-14  Wilson Snyder  <wsnyder@wsnyder.org>
15824         Sync with upstream verilog-mode revision 6232468
15825         * lisp/progmodes/verilog-mode.el
15826         (verilog-font-lock-grouping-keywords-face)
15827         (verilog-highlight-grouping-keywords): Fix use of face when
15828         `verilog-highlight-grouping-keywords' set.  Reported by Jeff Pompa.
15829         (verilog-auto-reset): Fix AUTORESET to ignore member resets if
15830         parent is reset, bug906.  Reported by Ken Schmidt.
15831         (verilog-auto-inout-module): Add fourth regexp argument to
15832         AUTOINOUTMODULE and AUTOINOUTCOMP for signals to not match, bug856.
15833         Reported by John Tillema.
15834         (verilog-auto-inst-port): Fix AUTOINST interfaces to not show
15835         modport if signal attachment is itself a modport.  Reported by
15836         Matthew Lovell.
15837         (verilog-auto-reset, verilog-auto-sense-sigs): Fix AUTORESET with
15838         always_comb and always_latch, bug844.  Reported by Greg Hilton.
15839         (verilog-at-constraint-p, verilog-beg-of-statement-1): Fix hanging
15840         with many curly-bracket pairs, bug663.
15841         (verilog-set-auto-endcomments): Fix end comments for functions of
15842         type void, etc.  Reported by Alex Reed.
15843         (verilog-do-indent): Fix electric tab deleting form-feeds.  Note
15844         caused by indent-line-to deleting tabls pre 24.5.
15845         (verilog-nameable-item-re): Fix nameable items that can have an
15846         end-identifier to include endchecker, endgroup, endprogram,
15847         endproperty, and endsequence.  Reported by Alex Reed.
15848         (verilog-label-be): When auto-commenting a buffer, consider
15849         auto-comments on all known keywords (not just a subset thereof).
15850         Reported by Alex Reed.
15851         (verilog-auto-end-comment-lines-re)
15852         (verilog-end-block-ordered-re, verilog-set-auto-endcomments):
15853         Automatically comment property/endproperty blocks to match other
15854         similar blocks like sequence/endsequence, function/endfunction, etc.
15855         Reported by Alex Reed.
15856         (verilog-set-auto-endcomments): Detect the function- or task-name
15857         when auto-commenting blocks that lack an explicit portlist.
15858         Reported by Alex Reed.
15859         (verilog-auto, verilog-auto-insert-last): Add AUTOINSERTLAST to
15860         allow post-AUTO user fixups, bug826.  Reported by Dennis Muhlestein.
15861         (verilog-no-indent-begin-re): When `verilog-indent-begin-after-if'
15862         is nil, fix indenting initial/final to match always statements,
15863         bug825.  Reported by Tim Clapp.
15864         (verilog-extended-complete-re): Fix indentation of DPI-C imports
15865         with c_identifiers, and DPI-C imports, bug557.  Reported by ZeDong
15866         Mao and Jason Forkey.
15867         (verilog-read-decls): Fix parsing typed interfaces.  Fix
15868         AUTOINOUTMODPORT missing types.  Reported by Stephan Bourduas.
15869         Fix localparam not being ignored in AUTOINSTPARAM,
15870         bug889.  Reported by Shannon Hill.
15871         (verilog-auto-output-every): Add regexp to AUTOOUTPUTEVERY,
15872         bug793.  Reported by Pierre-David Pfister.
15873         (verilog-auto-arg-format, verilog-auto-arg-ports):
15874         Add verilog-auto-arg-format to support newlines in AUTOARG.
15875         Reported by Jie Xiao.
15876         (verilog-batch-execute-func): Do not batch re-auto files loaded by
15877         Local Variables.  Fix printing "no changes to be saved" with
15878         verilog-batch.  Reported by Dan Dever.
15879         (verilog-auto-inout-module): Fix AUTOINOUTMODULE not inserting
15880         interface-only modules, bug721.  Reported by Dean Hoyt.
15881         Author: Alex Reed <acreed4@gmail.com>
15882         * lisp/progmodes/verilog-mode.el (verilog-beg-of-statement):
15883         Don't treat '<keyword>:<identifier>' as the start of a labeled
15884         statement, bug905.  Reported by Enzo Chi.
15885         (verilog-directive-re, verilog-compiler-directives)
15886         (verilog-keywords): Match full set of IEEE 2012-1800 compiler
15887         directives (plus some extras) when determining indentation, bug
15888         901.  Reported by Bernd Beuster.
15889         (verilog-at-constraint-p): Fix indentation of coverpoint bins if
15890         iff expression doesn't start with word-character, bug900.
15891         (verilog-optional-signed-range-re, verilog-optional-signed-re):
15892         Fix incorrect indentation/alignment of unsigned declarations,
15893         bug897.
15894         (verilog-looking-back, verilog-in-attribute-p): Fix labeling of
15895         always constructs, bug895.
15896         (verilog-calc-1): Fix verilog-mode constraint indentation, bug324.
15897         Reported by Eric Mastromarchi.
15898         (verilog-beg-of-statement): Fix indenting for some forms of
15899         constraintsm bug433.  Reported by Brad Parker.  Fix indentation of
15900         continued assignment incorrect if first line ends with ']', bug437.
15901         Reported by Dan Dever.  Fix indention of cover inside an
15902         ifdef, bug 862.  Reported by Bernd Beuster.  Fix labeling do-while
15903         blocks, bug842.
15904         (verilog-preprocessor-re): Fix fork/end UNMATCHED warning, bug859.
15905         Reported by Kaushal Modi.
15906         (verilog-set-auto-endcomments): Fix endlabel end comments, bug888.
15907         (verilog-backward-token): Fix indenting sensitivity lists with
15908         named events, bug840.  Reed.
15909         (verilog-no-indent-begin-re): Fix `verilog-indent-begin-after-if'
15910         nil not honoring 'forever', 'foreach', and 'do' keywords.
15912 2015-05-14  Paul Eggert  <eggert@cs.ucla.edu>
15914         Check for invalid GTK+ monitor scales
15915         * src/gtkutil.c (xg_get_gdk_scale): Return 1 for invalid scales,
15916         INT_MAX for too-large scales.  All callers changed to assume the
15917         result is valid (Bug#20432).
15918         (xg_frame_set_char_size, xg_update_scrollbar_pos):
15919         Calculate scale only if needed.
15920         Show ASCII approximations instead.
15922 2015-05-14  Eli Zaretskii  <eliz@gnu.org>
15924         Fix daemon crashes when linum-mode is turned on early on
15925         * src/window.c (Fwindow_end): Don't try calling display engine
15926         functions on initial-frame frame.  (Bug#20565)
15928         Fix selective diff browsing in Ediff
15929         * lisp/vc/ediff-util.el (ediff-focus-on-regexp-matches):
15930         Go to the beginning of the region before searching for the
15931         ediff-regexp-focus-* regexps.  (Bug#20568)
15933 2015-05-14  Jan D  <jan.h.d@swipnet.se>
15935         Fixes bug#20142
15936         * src/gtkutil.c (delete_cb): Don't send delete event here, it does
15937         arrive in the main loop, even for Gtk 3 (Bug#20142).
15939         Don't access display after i/o error (Bug#19147).
15940         * src/xterm.c (x_connection_closed): Add third arg ioerror.
15941         If ioerror, set display to 0 (Bug#19147).
15942         (x_error_quitter): Call x_connection_closed with third arg false.
15943         (x_io_error_quitter): Call x_connection_closed with third arg true.
15945         Handle GTK_SCALE, fixes Bug#20432.
15946         * src/gtkutil.c (xg_get_gdk_scale): New function.
15947         (xg_frame_set_char_size)
15948         (x_wm_set_size_hint, xg_get_default_scrollbar_width)
15949         (xg_get_default_scrollbar_height)
15950         (xg_update_horizontal_scrollbar_pos): Take GTK_SCALE in to account
15951         when setting sizes (Bug#20432).
15953 2015-05-13  Leo Liu  <sdl.web@gmail.com>
15955         * lisp/emacs-lisp/generator.el (cps--gensym): Fix.
15957 2015-05-13  Glenn Morris  <rgm@gnu.org>
15959         Fix bootstrap (void function cl-member).
15960         * lisp/emacs-lisp/cl-lib.el: Load cl-seq if no cl-loaddefs file.
15961         * lisp/emacs-lisp/cl-seq.el: Provide a feature.
15963 2015-05-13  Stefan Monnier  <monnier@iro.umontreal.ca>
15965         * lisp/loadup.el ("emacs-lisp/cl-generic"): Preload
15966         * src/lisp.mk (lisp): Add emacs-lisp/cl-generic.elc.
15967         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method):
15968         Avoid defalias for closures which are not immutable.
15969         (cl--generic-prefill-dispatchers): New macro.  Use it to prefill
15970         the dispatchers table with various entries.
15971         * lisp/emacs-lisp/ert.el (emacs-lisp-mode-hook):
15972         * lisp/emacs-lisp/seq.el (emacs-lisp-mode-hook): Use add-hook.
15974 2015-05-13  Eli Zaretskii  <eliz@gnu.org>
15976         Improve tagging of C bindings in DEFVAR_*
15977         * src/Makefile.in (TAGS): Add --regex options to tag the C binding
15978         from DEFVAR_*.
15980 2015-05-13  Paul Eggert  <eggert@cs.ucla.edu>
15982         * src/editfns.c (Fformat): Fix use-after-free bug (Bug#20548).
15984 2015-05-12  Glenn Morris  <rgm@gnu.org>
15986         * lisp/progmodes/tcl.el (tcl-filter):
15987         Handle comint-prompt-read-only like gud.el does.  (Bug#20549)
15989         Add basic VC push support
15990         * lisp/vc/vc.el (vc-push): New autoloaded command.
15991         * lisp/vc/vc-hooks.el (vc-prefix-map, vc-menu-map): Add vc-push.
15992         * lisp/vc/vc-bzr.el (vc-bzr--pushpull): New, factored from vc-bzr-pull.
15993         (vc-bzr-pull): Reimplement using vc-bzr--pushpull.
15994         (vc-bzr-push): New.
15995         * lisp/vc/vc-git.el (vc-git--pushpull): New, factored from vc-git-pull.
15996         (vc-git-pull): Reimplement using vc-git--pushpull.
15997         (vc-git-push): New.
15998         * lisp/vc/vc-hg.el (vc-hg--pushpull): New, factored from vc-hg-pull.
15999         (vc-hg-pull, vc-hg-push): Reimplement using vc-hg--pushpull.
16000         * doc/emacs/maintaining.texi (Pulling / Pushing):
16001         Rename from "VC Pull".  Mention pushing.
16002         (VC With A Merging VCS, VC Change Log): Update xrefs.
16003         (Branches): Update menu.
16004         * doc/emacs/emacs.texi: Update menu.
16005         * etc/NEWS: Mention this.
16007 2015-05-12  Nicolas Petton  <nicolas@petton.fr>
16009         Improve the seq pcase pattern and the `seq-let' macro
16010         * lisp/emacs-lisp/seq.el: The pcase pattern now matches only if the
16011         object is a sequence, and binds each element of ARGS to the
16012         corresponding element of the sequence.
16014 2015-05-12  Eli Zaretskii  <eliz@gnu.org>
16016         Fix tags created from DEFVAR_* declarations in C
16017         * src/Makefile.in (TAGS): Improve the --regex argument to etags,
16018         to make tags extracted from DEFVAR_* declarations more accurate.
16020         Add a test suite for etags
16021         * test/etags/: New test suite, adapted from
16022         http://fly.isti.cnr.it/pub/software/unix/etags-regression-test.tar.bz2,
16023         whose original author is Francesco Potortì <pot@gnu.org>.
16025         Fix tagging of symbols in C enumerations
16026         * lib-src/etags.c (consider_token): Don't tag symbols in
16027         expressions that assign values to enum constants.  See
16028         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00291.html
16029         for details.
16030         (C_entries): Reset fvdef to fvnone after processing a preprocessor
16031         conditional and after a comma outside of parentheses.
16033 2015-05-12  Glenn Morris  <rgm@gnu.org>
16035         * lisp/url/url-handlers.el (url-file-name-completion)
16036         (url-file-name-all-completions): Silence compiler.
16038         * lisp/emacs-lisp/chart.el (chart-axis-draw): Replace obsolete alias.
16040         * lisp/play/dunnet.el (dun-dos-boot-msg): Fix time.  (Bug#20554)
16042 2015-05-12  Stefan Monnier  <monnier@iro.umontreal.ca>
16044         * lisp/emacs-lisp/cl-generic.el: Add dispatch on &context arguments
16045         (cl--generic-mandatory-args): Remove.
16046         (cl--generic-split-args): New function.
16047         (cl-generic-define, cl--generic-lambda): Use it.
16048         (cl-generic-define-method): Use it as well, and add support for
16049         context args.
16050         (cl--generic-get-dispatcher): Handle &context dispatch.
16051         (cl--generic-cache-miss): `dispatch-arg' can now be a
16052         context expression.
16053         (cl--generic-dispatchers): Pre-fill.
16054         * test/automated/cl-generic-tests.el (sm-generic-test-12-context):
16055         New test.
16057 2015-05-11  Glenn Morris  <rgm@gnu.org>
16059         * make-dist: Abort if "make ChangeLog" fails.  Add "--no-changelog".
16061 2015-05-11  Stefan Monnier  <monnier@iro.umontreal.ca>
16063         * lisp/term/xterm.el: Fix xterm-paste handling for rxvt
16064         * lisp/term/rxvt.el: Require term/xterm.
16065         (rxvt-function-map): Use xterm-rxvt-function-map.
16066         (rxvt-standard-colors): Move before first use.
16067         (terminal-init-rxvt): Use xterm--push-map and
16068         xterm-register-default-colors.
16069         (rxvt-rgb-convert-to-16bit, rxvt-register-default-colors): Remove.
16070         * lisp/term/xterm.el (xterm-rxvt-function-map): New var.
16071         Move shared bindings between rxvt and xterm to it.
16072         (xterm-function-map): Use it.  Move the xterm-paste binding to
16073         xterm-rxvt-function-map (bug#20444).
16074         (xterm-standard-colors): Move before first use.
16075         (xterm--push-map): New function.
16076         (xterm-register-default-colors): Take standard colors as argument.
16077         (terminal-init-xterm): Use it.  Adjust call to
16078         xterm-register-default-colors.
16080 2015-05-11  Glenn Morris  <rgm@gnu.org>
16082         * lisp/term/x-win.el: Quieten --without-x compilation.
16083         (x-own-selection-internal, x-disown-selection-internal)
16084         (x-selection-owner-p, x-selection-exists-p, x-get-selection-internal):
16085         Declare.
16087         * Makefile.in (emacslog): Remove srcdir.
16088         (ChangeLog): Update for the above.
16090 2015-05-10  Fabián Ezequiel Gallina  <fgallina@gnu.org>
16092         python.el: better limit for looking-back calls
16093         * lisp/progmodes/python.el (python-shell-accept-process-output):
16094         Use last comint prompt start as limit for looking-back.
16096 2015-05-10  Stefan Monnier  <monnier@iro.umontreal.ca>
16098         CEDET (srecode-insert-fcn): Fix use of oref on a class
16099         * lisp/cedet/srecode/insert.el (srecode-insert-fcn): Fix use of oref
16100         on a class.  Reported by Pierre Lorenzon.
16101         (srecode-template-inserter-point): Remove declaration.
16103         CEDET (srecode-create-dictionary): Avoid obsolete object name
16104         * lisp/cedet/srecode/dictionary.el (srecode-create-dictionary):
16105         Don't use a symbol as an object name.  Reported by Pierre Lorenzon.
16107 2015-05-10  Paul Eggert  <eggert@cs.ucla.edu>
16109         C-x 8 shorthands for curved quotes, Euro, etc.
16110         Although C-x 8 lets you insert arbitrary Unicode characters,
16111         it's awkward to use this to insert commonly used symbols such as curved
16112         quotes, the Euro symbol, etc.  This patch adds simpler sequences for
16113         characters commonly found in English text and in basic math.
16114         For example, assuming the Alt key works on your keyboard and iso-transl
16115         is loaded, one can now type "A-[" instead of "A-RET LEFT SIN TAB RET"
16116         to get the character "‘" (U+2018 LEFT SINGLE QUOTATION MARK).
16117         (Bug#20499)
16118         * doc/emacs/mule.texi (Unibyte Mode):
16119         A few other printing characters now work too.
16120         * etc/NEWS: Document this.
16121         * lisp/international/iso-transl.el (iso-transl-char-map):
16122         Also support the following characters:
16123         ‐ ‑ ‒ – — ― ‘ ’ “ ” † ‡ • ′ ″ € № ← → ↔ − ≈ ≠ ≤ ≥
16125 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
16127         Add xref-find-regexp
16128         * lisp/progmodes/xref.el (xref-find-function): Describe the
16129         `matches' action.
16130         (xref-find-regexp): New command, using it.
16131         (xref-collect-references): Rename to xref-collect-matches.
16132         (xref--collect-reference): Rename to xref--collect-match.
16133         (xref-collect-matches, xref--collect-match): Accept new argument,
16134         KIND.  Update accordingly.
16135         (xref--regexp-to-extended): New function.
16136         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Support the
16137         `matches' action.
16138         (elisp--xref-find-matches): Accept new argument.  Resolve a FIXME.
16139         * lisp/progmodes/etags.el (etags-xref-find):
16140         Support the `matches' action.
16141         (etags--xref-find-matches): New function.
16143 2015-05-10  Glenn Morris  <rgm@gnu.org>
16145         * Makefile.in: Fixes for recent change-history changes.
16146         (change-history-nocommit): Update footer regexp.
16147         Ensure output script stays executable.
16149 2015-05-10  Nicolas Petton  <nicolas@petton.fr>
16151         New version of `seq-let' based on a pcase pattern
16152         * lisp/emacs-lisp/seq.el (seq-let): Define the macro in terms of a
16153         pcase pattern if `pcase-defmacro' is defined (Emacs>=25.1).
16155 2015-05-10  Przemysław Wojnowski  <esperanto@cumego.com>
16157         Add basic HTML5 tags and a template
16158         * lisp/textmodes/sgml-mode.el: Basic HTML5 support.
16159         (html-tag-alist): Add HTML5 tags.
16160         (html-tag-help): Add new tags descriptions.
16161         (html-navigational-links): Template for nav links.
16162         (html-html5-template): Template for a HTML5 page.
16164 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
16166         semantic/symref/grep: Don't use word boundaries
16167         * lisp/cedet/semantic/symref/grep.el
16168         (semantic-symref-perform-search): Instead of wrapping input in
16169         word boundaries, check that the characters before and after are
16170         not word constituents.
16172         semantic/symref/grep: Support regexp search
16173         * lisp/cedet/semantic/symref.el
16174         (semantic-symref-hit-to-tag-via-buffer): Don't regexp-quote when
16175         the search type is regexp.
16176         * lisp/cedet/semantic/symref/grep.el
16177         (semantic-symref-perform-search): Support the regexp search type.
16178         Pass -E to Grep when it's used.
16180         semantic-symref-regexp: Allow to input an arbitrary string
16181         * lisp/cedet/semantic/symref/list.el (semantic-symref-regexp):
16182         Allow to input an arbitrary string interactively.
16184         Remove tag-symbol-match-p from etags-xref-find-definitions-tag-order
16185         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
16186         Remove tag-symbol-match-p from the default value
16187         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00292.html).
16189         Declare find-tag obsolete
16190         * lisp/progmodes/etags.el (find-tag): Declare obsolete in favor of
16191         xref-find-definitions.
16193 2015-05-10  Jan D  <jan.h.d@swipnet.se>
16195         Draw composite string correctly (Bug#20537)
16196         * src/nsterm.m (ns_draw_composite_glyph_string_foreground):
16197         New function.
16198         (ns_draw_glyph_string): Call it.
16200 2015-05-09  Eli Zaretskii  <eliz@gnu.org>
16202         Avoid infloop in ERC
16203         * lisp/simple.el (line-move-to-column): Ignore field boundaries
16204         while computing line beginning position.  (Bug#20498)
16206 2015-05-08  Glenn Morris  <rgm@gnu.org>
16208         * Makefile.in (ChangeLog): No longer pass "srcprefix"; cd instead.
16209         * build-aux/gitlog-to-emacslog: Check called from right directory.
16210         (srcprefix): Remove.
16212         * build-aux/gitlog-to-emacslog: Get rid of "distprefix".
16213         * Makefile.in (ChangeLog): No longer pass "distprefix".
16214         * make-dist: Update "make ChangeLog" syntax for the above change.
16216         * build-aux/gitlog-to-emacslog: Don't hard-code "ChangeLog.2".
16217         * Makefile.in (ChangeLog): Pass -n to gitlog-to-emacslog.
16219         * build-aux/gitlog-to-emacslog: Add "for earlier changes" to footer.
16221         Add command-line option-parsing to gitlog-to-emacslog
16222         * build-aux/gitlog-to-emacslog: Add command-line options.
16223         By default, refuse to remove an existing output file.
16224         * Makefile.in (CHANGELOG): Update default.
16225         (ChangeLog): Do not test for existing file.
16226         (change-history-nocommit): Ensure temp file does not exist.
16228         Quieten --without-x compilation
16229         * lisp/term/common-win.el: Provide a feature.
16230         * lisp/term/x-win.el (term/common-win): Require it.
16232         * lisp/dired-aux.el (dired-do-print): Require lpr.
16234         Quieten compilation, eg in --without-x builds
16235         * lisp/dired-aux.el (lpr-printer-switch):
16236         * lisp/frame.el (tool-bar-height):
16237         * lisp/linum.el (font-info):
16238         * lisp/window.el (font-info, overflow-newline-into-fringe)
16239         (tool-bar-height):
16240         * lisp/emacs-lisp/package-x.el (tar-data-buffer):
16241         * lisp/gnus/gnus-util.el (iswitchb-mode):
16242         * lisp/mail/rmailmm.el (libxml-parse-html-region):
16243         * lisp/net/nsm.el (gnutls-peer-status)
16244         (gnutls-peer-status-warning-describe):
16245         * lisp/net/shr.el (libxml-parse-xml-region):
16246         * lisp/url/url-http.el (gnutls-peer-status): Declare.
16248 2015-05-08  Stefan Monnier  <monnier@iro.umontreal.ca>
16250         CEDET (srecode-pop, srecode-peek): Don't use `subclass'
16251         * lisp/cedet/srecode/insert.el (srecode-pop, srecode-peek): Don't use
16252         `subclass' since they're never called with a class.
16253         (srecode-insert-method, srecode-insert-subtemplate): Avoid obsolete
16254         srecode-dictionary-child-p.
16256 2015-05-08  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
16258         * lisp/help.el (help--binding-locus): Document argument POSITION.
16259         (Bug#20530)
16261 2015-05-08  Paul Eggert  <eggert@cs.ucla.edu>
16263         Merge from gnulib
16264         * doc/misc/texinfo.tex: Get latest version.
16266 2015-05-08  Oleh Krehel  <ohwoeowho@gmail.com>
16268         ffap.el (ffap-read-file-or-url): Fix completing-read call
16269         * lisp/ffap.el (ffap-read-file-or-url): The HIST argument of
16270         `completing-read' should be a symbol.
16272 2015-05-08  Eli Zaretskii  <eliz@gnu.org>
16274         Verify file modifications by other programs
16275         * src/filelock.c (lock_file): Check whether the file was modified
16276         since it was visited even if 'create-lockfiles' is nil.  (Bug#18828)
16278         Fix keyboard macros that include function keys
16279         * src/keyboard.c (read_char_minibuf_menu_prompt): Record function
16280         keys in the macro before returning.  (Bug#20454)
16282 2015-05-08  Glenn Morris  <rgm@gnu.org>
16284         * build-aux/gitlog-to-changelog: Treat "Tiny-change" like
16285         "Copyright-paperwork-exempt".  (Bug#20324)
16287         * lisp/vc/log-edit.el: Handle "(tiny change)".  (Bug#20324)
16288         (log-edit-rewrite-tiny-change): New variable.
16289         (log-edit-insert-changelog): Maybe add "Copyright-paperwork-exempt".
16290         (log-edit-changelog-ours-p): Set log-edit-author to a cons.
16291         * etc/NEWS: Mention this.
16293         * lisp/calc/calc.el (math-zerop): Declare.
16295         * lisp/emacs-lisp/eieio-opt.el (help-fns-short-filename): Declare.
16297 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
16299         * lisp/emacs-lisp/subr-x.el (if-let): Fix debug spec.
16300         Support the case when BINDINGS is a single tuple.  (Bug#20525)
16302         * etc/NEWS: Fix typo in previous commit
16303         (14bb519f1034ddb38ce375cbad7095d9b07f8b26).
16305 2015-05-07  Jan D  <jan.h.d@swipnet.se>
16307         * configure.ac: Warn for multiple display crash for all Gtk+ versions.
16308         Output URL to Gtk+ bug (Bug#20452).
16310         * lisp/term/ns-win.el (ns-paste-secondary): Use gui-get-selection.
16312 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
16314         * lisp/emacs-lisp/package.el: New "external" package status.
16315         An external package is any installed package that's not built-in
16316         and not from `package-user-dir', which usually means it's from an
16317         entry in `package-directory-list'.  They are treated much like
16318         built-in packages, in that they cannot be through the Package Menu
16319         deleted and are not considered for upgrades.
16320         (package-desc-status): Identify if a package is installed outside
16321         `package-user-dir'.
16322         (package-menu--print-info-simple)
16323         (package-menu--status-predicate): Add support for it.
16324         * etc/NEWS: Document it.
16326 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
16328         * lisp/mail/rmail.el: Use lexical-binding.
16329         (rmail-bury): Remove unused var `buffer-to-bury'.
16330         (rmail-get-new-mail): Remove unused vars `opoint' and `success'.
16331         (rmail-parse-url): Remove unused var `proto', `user', and `host'.
16332         (rmail-unrmail-new-mail-maybe): Remove unused var `new-file'.
16333         (rmail-insert-inbox-text): Remove unused var `movemail'.
16334         (rmail-add-mbox-headers): Remove unused var `limit'.
16335         (rmail-undelete-previous-message): Remove unused var `value'.
16336         (rmail-reply): Remove unused vars `resent-to', `resent-cc',
16337         `resent-reply-to'.
16338         (rmail-mime-mbox-buffer, rmail-mime-view-buffer): Declare.
16339         (rmail-restore-desktop-buffer): Rename arguments.
16341 2015-05-06  Glenn Morris  <rgm@gnu.org>
16343         * Makefile.in (change-history-commit): Add missing piece of previous.
16345         Avoid unnecessary bumping of Makefile.in's timestamp
16346         * Makefile.in (gen_origin): Move to gitlog-to-emacslog.
16347         (emacslog): New variable.
16348         (ChangeLog): Use $emacslog.  Don't pass $gen_origin.
16349         (unchanged-history-files): Use $emacslog rather than Makefile.in.
16350         (change-history-nocommit): Store hash in $emacslog.
16351         * build-aux/gitlog-to-emacslog (gen_origin): Move default here.
16352         * admin/update_autogen (changelog_files): Update for the above.
16354         * Makefile.in: Don't always insist on removing existing "ChangeLog".
16355         (CHANGELOG): New variable.
16356         (no-ChangeLog): Remove.
16357         (ChangeLog): Replace "no-ChangeLog"; pass output file to script.
16358         (change-history-nocommit): Use a temp file rather than insisting
16359         on deletion of any existing "ChangeLog".
16361         * build-aux/gitlog-to-emacslog: Allow specification of output.
16363         * admin/update_autogen: Add option to update ChangeLog.
16364         (usage): Mention -H.
16365         (changelog_flag, changelog_n, changelog_files): New variables.
16366         (main): Check for -H, and maybe run change-history-nocommit.
16368 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
16370         * lisp/subr.el (delete-dups): Pre-size the hashtable.
16372         * lisp/emacs-lisp/cl.el (define-modify-macro): Make sure
16373         cl--arglist-args is defined (bug#20517).
16375 2015-05-06  Glenn Morris  <rgm@gnu.org>
16377         * Makefile.in (change-history-nocommit): New.
16379 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
16381         * lisp/cedet/pulse.el (pulse-momentary-unhighlight): Only cancel
16382         timer when it is non-nil
16383         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00223.html).
16385 2015-05-06  Glenn Morris  <rgm@gnu.org>
16387         Quieten CEDET compilation
16388         * lisp/cedet/semantic/db-el.el (semanticdb-elisp-sym->tag):
16389         Invert fboundp test to quieten on current Emacs.
16390         * lisp/cedet/ede/config.el (ede-shell-run-something)
16391         (semanticdb-file-table-object, semanticdb-needs-refresh-p)
16392         (semanticdb-refresh-table): Declare.
16393         (ede-preprocessor-map): Require semantic/db.
16395         Quieten cc-mode compilation
16396         * lisp/progmodes/cc-awk.el (c-forward-sws):
16397         * lisp/progmodes/cc-cmds.el (c-forward-subword, c-backward-subword):
16398         Declare.
16400 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
16402         * lisp/subr.el (delete-dups): Avoid nreverse.
16404 2015-05-06  Artur Malabarba  <bruce.connor.am@gmail.com>
16406         * lisp/subr.el (delete-dups): Make it destructive again.
16408 2015-05-06  Paul Eggert  <eggert@cs.ucla.edu>
16410         * doc/lispref/sequences.texi (Sequence Functions): Fix quoting.
16412 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
16414         * lisp/emacs-lisp/testcover.el: Don't use edebug--read (bug#20487).
16415         * lisp/emacs-lisp/testcover.el: Use lexical-binding.
16416         (testcover--read): Rename from testcover-read.  Change calling
16417         convention.  Use edebug-read-and-maybe-wrap-form now that edebug-read
16418         is gone.
16419         (testcover-start): Use add-function.  Move edebug-all-defs binding to
16420         testcover--read.
16421         (testcover-this-defun): Tighten scope of edebug-all-defs binding.
16422         (testcover-mark): Remove unused var `item'.
16423         * src/lread.c (syms_of_lread): Default load-read-function to `read'.
16425 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
16427         * lisp/subr.el (delete-dups): When there are more than 100 candidates,
16428           use a hash table.  This can result in ~500 times speed-up for typical
16429           collections of size 5000, like that of `load-library'.
16431 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
16433         CEDET: Avoid `oref' on classes in a few more cases
16434         * lisp/cedet/ede/generic.el (ede-find-target):
16435         * lisp/cedet/ede.el (ede-project-forms-menu): Avoid `oref' on classes.
16436         * lisp/cedet/semantic/bovine/gcc.el (semantic-gcc-setup): Remove unused
16437         var `prefix'.
16439         * lisp/cedet/semantic/symref/grep.el: Fix unused var warnings.
16440         (grepflags, greppattern): Declare.
16441         (semantic-symref-perform-search): Remove unused var `pat'.
16443         CEDET (srecode-compile-inserter): Avoid `oref' on classes
16444         * lisp/cedet/srecode/compile.el (srecode-compile-inserter):
16445         Avoid `oref' on classes (bug#20491).
16446         (srecode-compile-split-code): Remove unused var `key'.
16448 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
16450         Clean up pulse.el a little
16451         * lisp/cedet/pulse.el (pulse): Remove.
16452         (pulse-momentary-timer): Save instead of the stop time.
16453         (pulse-momentary-highlight-overlay):
16454         Call pulse-momentary-unhighlight first thing.
16455         Treat pulse-momentary-overlay as a single value, not a list.
16456         Save the created timer.  Only pass the stop time to the timer.
16457         (pulse-tick): Update accordingly.
16458         (pulse-momentary-unhighlight): Treat pulse-momentary-overlay as a
16459         single value.  Cancel the timer.
16461 2015-05-06  Tassilo Horn  <tsdh@gnu.org>
16463         * lisp/textmodes/reftex-cite.el (reftex-format-bib-entry):
16464         Support the biblatex journaltitle field.
16466 2015-05-05  Glenn Morris  <rgm@gnu.org>
16468         Minor declare-function improvement
16469         * lisp/emacs-lisp/bytecomp.el
16470         (byte-compile-macroexpand-declare-function):
16471         Handle declarations after calls.  (Bug#20509)
16473         * lisp/progmodes/js.el (js--optimize-arglist): Remove declaration.
16475         * lisp/w32-fns.el (w32-shell-name): Silence compiler.
16477 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
16479         Pulse using a timer
16480         * lisp/cedet/pulse.el (pulse-momentary-stop-time): New variable.
16481         (pulse-momentary-highlight-overlay): Set up the timer instead of
16482         calling `pulse'
16483         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/).
16484         (pulse-tick): New function.
16485         (pulse-momentary-unhighlight): Cut off the stop time.
16486         (pulse-delay): Update the docstring WRT to not using sit-for.
16488         Add semantic/symref/grep file patterns for ruby-mode
16489         * lisp/cedet/semantic/symref/grep.el
16490         (semantic-symref-filepattern-alist): Add patterns for ruby-mode.
16491         Clarify the docstring.
16493         Don't require match
16494         * lisp/progmodes/xref.el (xref--read-identifier): Don't require
16495         match.  That doesn't work for every command, and some identifier
16496         completion tables are bound to be imperfect anyway.
16498 2015-05-05  Stefan Monnier  <monnier@iro.umontreal.ca>
16500         * lisp/cedet/semantic/grammar.el: Fix compiler warnings (bug#20505).
16501         (semantic-grammar--template-expand): New function.
16502         (semantic-grammar-header, semantic-grammar-footer): Use it.
16503         (semantic-grammar--lex-block-specs): Remove unused var `block-spec'.
16504         (semantic-grammar-file-regexp): Refine regexp.
16505         (semantic-grammar-eldoc-get-macro-docstring):
16506         Use elisp-get-fnsym-args-string when available.
16507         (semantic-idle-summary-current-symbol-info): Use new elisp-* names
16508         instead of the old eldoc-* names.
16509         * lisp/emacs-lisp/eldoc.el (eldoc-docstring-format-sym-doc): Move back
16510         from elisp-mode.el.  Tweak calling convention.
16511         * lisp/progmodes/elisp-mode.el (package-user-dir): Declare.
16512         (elisp-get-fnsym-args-string): Add `prefix' argument.  Rename from
16513         elisp--get-fnsym-args-string.
16514         (elisp--highlight-function-argument): Add `prefix' arg.
16515         (elisp-get-var-docstring): Rename from elisp--get-var-docstring.
16516         (elisp--docstring-format-sym-doc): Move back to eldoc.el.
16518 2015-05-05  Glenn Morris  <rgm@gnu.org>
16520         * lisp/help-fns.el (describe-function-1):
16521         Handle builtins with advertised calling conventions.  (Bug#20479)
16523 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
16525         Merge branch 'seq-let'
16527         Update `seq-let' documentation
16528         * doc/lispref/sequences.texi: Update the documentation of `seq-let'
16529         with the support of  `&rest'.
16531         Add support for &rest in `seq-let'
16532         * lisp/emacs-lisp/seq.el (seq--make-bindings): Add support for `&rest'
16533         in the argument list.
16534         * test/automated/seq-tests.el: Add a test for parsing and binding
16535         `&rest' in `seq-let'.
16537 2015-05-05  Pierre Lorenzon  <devel@pollock-nageoire.net>  (tiny change)
16539         * lisp/emacs-lisp/eieio-custom.el (eieio-object-value-get):
16540         Add missing increment (Bug#20467).
16541         (eieio-object-value-create): Adjust to new slots representation
16542         (Bug#20467).
16543         (eieio-object-value-create): Fix missed adjustment to new
16544         representation of slots metadata.
16546 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
16548         * lisp/emacs-lisp/seq.el (seq--make-bindings): Improve the docstring.
16550 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
16552         Work around "Attempt to modify read-only object"
16553         * lisp/progmodes/elisp-mode.el (elisp--xref-format): Extract from
16554         elisp--xref-find-definitions, to work around "Attempt to modify
16555         read-only object" error.
16557         Only skip some variables that have function counterparts
16558         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
16559         Only skip minor-mode-named variable if it's defined in a Lisp
16560         file, and it's in minor-mode-list (bug#20506).
16561         * test/automated/elisp-mode-tests.el
16562         (elisp-xref-finds-both-function-and-variable)
16563         (elisp-xref-finds-only-function-for-minor-mode): New tests.
16565 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
16567         * lisp/progmodes/xref.el (xref--location-at-point): Revert the
16568         previous change.
16569         (xref--insert-xrefs): Buttonize the whole line, including the
16570         number at the beginning.
16572         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
16573         Make sure we're inside the let bindings.
16574         * test/automated/elisp-mode-tests.el
16575         (elisp-completes-functions-after-let-bindings): New test.
16577 2015-05-04  Glenn Morris  <rgm@gnu.org>
16579         * lisp/cedet/semantic/grammar.el (eldoc-function-argstring)
16580         (eldoc-docstring-format-sym-doc, eldoc-last-data-store)
16581         (eldoc-get-fnsym-args-string, eldoc-get-var-docstring):
16582         Remove outdated declarations.
16584         Replace instances of "(eval-when-compile (autoload ...))"
16585         * lisp/gnus/gnus-art.el (nneething-get-file-name):
16586         Declare rather than autoload.
16587         * lisp/gnus/gnus-async.el (gnus-html-prefetch-images):
16588         Remove pointless autoload.
16589         * lisp/gnus/gnus-sync.el (gnus-group-topic): Autoload at run-time.
16590         (gnus-topic-create-topic, gnus-topic-enter-dribble):
16591         Declare rather than autoload.
16592         * lisp/gnus/mm-archive.el (gnus-recursive-directory-files)
16593         (mailcap-extension-to-mime): Autoload at run-time.
16594         * lisp/gnus/mm-util.el (latin-unity-massage-name)
16595         (latin-unity-maybe-remap, latin-unity-representations-feasible-region)
16596         (latin-unity-representations-present-region):
16597         Declare rather than autoload.
16598         * lisp/gnus/mml-smime.el (epg-make-context)
16599         (epg-passphrase-callback-function): Autoload at run-time.
16600         (epg-context-set-signers, epg-context-result-for)
16601         (epg-new-signature-digest-algorithm)
16602         (epg-verify-result-to-string, epg-list-keys, epg-verify-string)
16603         (epg-sign-string, epg-encrypt-string)
16604         (epg-context-set-passphrase-callback, epg-sub-key-fingerprint)
16605         (epg-configuration, epg-expand-group, epa-select-keys):
16606         Declare rather than autoload.
16607         * lisp/gnus/nnir.el (nnimap-change-group, nnimap-make-thread-query):
16608         Autoload at run-time.
16609         (gnus-group-topic-name, nnimap-buffer, nnimap-command)
16610         (gnus-registry-get-id-key, gnus-registry-action):
16611         Declare rather than autoload.
16612         * lisp/gnus/nnmail.el (mail-send-and-exit): Autoload at run-time.
16613         * lisp/gnus/spam.el (spam-stat-buffer-change-to-non-spam)
16614         (spam-stat-buffer-change-to-spam, spam-stat-buffer-is-non-spam)
16615         (spam-stat-buffer-is-spam, spam-stat-load, spam-stat-save)
16616         (spam-stat-split-fancy): Remove pointless autoloads.
16617         * lisp/net/mairix.el: Load gnus-util when compiling.
16618         (gnus-group-read-ephemeral-group, gnus-summary-toggle-header)
16619         (message-field-value): Declare rather than autoload.
16620         (mairix-gnus-ephemeral-nndoc, mairix-gnus-fetch-field):
16621         Check gnus-alive-p is fbound.
16622         (vm-quit, vm-visit-folder, vm-select-folder-buffer)
16623         (vm-check-for-killed-summary, vm-error-if-folder-empty)
16624         (vm-get-header-contents, vm-select-marked-or-prefixed-messages):
16625         Declare rather than autoload.
16627         * lisp/gnus/mm-view.el (epg-decrypt-string): Autoload.
16629         * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
16630         (epg-sub-key-capability, epg-sub-key-validity): Fix declarations.
16632         * lisp/progmodes/elisp-mode.el (xref-collect-references): Declare.
16634         * lisp/emacs-lisp/debug.el (help-xref-interned): Update declaration.
16636         * lisp/allout.el (epg-user-id-string, epg-key-user-id-list):
16637         * lisp/emacs-lisp/package.el (epg-signature-status):
16638         Fix declarations.
16640         * lisp/play/gametree.el (gametree-show-children-and-entry)
16641         (gametree-apply-layout, gametree-mouse-show-subtree)
16642         (gametree-mouse-hide-subtree): Replace obsolete outline aliases.
16644         * lisp/emacs-lisp/check-declare.el (check-declare-verify):
16645         Handle cl-defgeneric, cl-defmethod.
16647 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
16649         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions):
16650         Highlight both type and symbol name.
16652         Insert, highlight and align line numbers in xref output
16653         * lisp/progmodes/etags.el (xref-location-line): Specialize for
16654         xref-etags-location.
16655         * lisp/progmodes/xref.el (xref-location-line): New generic method.
16656         (xref-file-location): Add reader for the line slot.
16657         (xref--location-at-point): Skip to the `xref-location' property.
16658         (xref--collect-reference): Drop the line number from description.
16659         (xref--insert-xrefs): Insert, highlight and align line numbers.
16661 2015-05-04  Daniel Colascione  <dancol@dancol.org>
16663         * lisp/simple.el (save-mark-and-excursion--save)
16664         (save-mark-and-excursion--restore): Fix previous commit
16665         (255a011f0ecf004b31c59945b10154b10fac3af1).
16667 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
16669         Don't pulse the indentation, or the newline
16670         * lisp/cedet/pulse.el (pulse-lighten-highlight)
16671         (pulse-reset-face): Fall back to the inherited background
16672         attribute in FACE.
16673         (pulse-momentary-highlight-region): Add autoload cookie.
16674         * lisp/progmodes/xref.el (xref--maybe-pulse): Don't highlight the
16675         indentation, or the newline, if the line's non-empty
16676         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00118.html).
16678 2015-05-04  Daniel Colascione  <dancol@dancol.org>
16680         Add `save-mark-and-excursion', which has the old
16681         `save-excursion' behavior
16682         * doc/lispref/positions.texi (Excursions):
16683         Document `save-mark-and-excursion'.
16684         * lisp/font-lock.el (font-lock-fontify-block):
16685         Use `save-mark-and-excursion' instead of `save-excursion',
16686         restoring Emacs 24 behavior.
16687         * lisp/simple.el (save-mark-and-excursion--save)
16688         (save-mark-and-excursion--restore): New functions.
16689         (save-mark-and-excursion): New user macro.
16690         * src/editfns.c (Fsave_excursion): Mention `save-mark-and-excursion'
16691         in `save-excursion' documentation.
16693 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
16695         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
16696         Classify lone symbol inside let varlist as variable.
16697         * test/automated/elisp-mode-tests.el
16698         (completest-variables-in-let-bindings): New test.
16700         Add xref-pulse-on-jump
16701         * lisp/cedet/pulse.el (pulse-momentary-highlight-one-line):
16702         Add autoload cookie.
16703         * lisp/progmodes/xref.el (xref-pulse-on-jump): New option.
16704         (xref--maybe-pulse): New function.
16705         (xref-pop-marker-stack, xref--pop-to-location)
16706         (xref--display-position): Use it.
16707         (xref--location-at-point): Use back-to-indentation.
16709 2015-05-04  Stefan Monnier  <monnier@iro.umontreal.ca>
16711         lisp/org/org-{macs,list}.el: Fix lexical warnings
16712         * lisp/org/org-list.el (org-list-struct): Remove unused var `ind'.
16713         (org-list-get-next-item, org-list-get-prev-item)
16714         (org-list-get-children): Mark unused arg `struct'.
16715         (org-list-use-alpha-bul-p): Remove unused var `bul'.
16716         (org-toggle-checkbox): Mark unused var.
16717         (org-update-checkbox-count): Remove unused var `box-num'.
16718         (org-adapt-indentation): Declare.
16719         (org-list-parse-list): Declare var instead of adding a dummy duplicate.
16720         (org-list-send-list): Remove unused var `txt'.
16721         (org-list-to-latex, org-list-to-texinfo): Mark unused arg `params'.
16722         (org-list-to-subtree): Add prefix to dyn-bind var, and declare them.
16723         * lisp/org/org-macs.el: Use `declare'.
16724         (org-with-limited-levels): Declare dyn-bound vars.
16726 2015-05-04  Eli Zaretskii  <eliz@gnu.org>
16728         Fix minor issues with CEDET on MS-Windows
16729         * lisp/cedet/semantic/symref/idutils.el
16730         (semantic-symref-parse-tool-output-one-line): Fix the search
16731         regexp to match MS-Windows file names with drive letters.
16732         (Bug#19468)
16733         * lisp/cedet/semantic/symref/grep.el
16734         (semantic-symref-grep-use-template): Remove "--color=always" from
16735         Grep switches on MS-Windows.
16736         (semantic-symref-grep-shell): Use shell-file-name as the default
16737         value, so this works not only on Posix platforms.
16738         (semantic-symref-perform-search): Use shell-quote-argument instead
16739         of literal '..' for portable quoting of Grep command-line
16740         argument.  Use shell-command-switch instead of a literal "-c".
16741         * lisp/cedet/semantic/bovine/gcc.el
16742         (semantic-gcc-get-include-paths): Use file-name-absolute-p to test
16743         for an absolute file name in a portable way.
16745 2015-05-04  Artur Malabarba  <bruce.connor.am@gmail.com>
16747         * lisp/emacs-lisp/package.el: Remove `package--silence' variable.
16748         (package-import-keyring, package-refresh-contents)
16749         (package-compute-transaction, package--save-selected-packages)
16750         (package-install-from-archive, package-delete)
16751         (package-menu--perform-transaction): Use `inhibit-message' instead.
16752         (package--compile): Set `warning-minimum-level' to :error.
16754 2015-05-03  Stefan Monnier  <monnier@iro.umontreal.ca>
16756         * lisp/term/screen.el (xterm-screen-extra-capabilities): New custom.
16757         (terminal-init-screen): Use it (bug#20356).
16758         * lisp/term/xterm.el: Provide `term/xterm' instead of `xterm'.
16759         (xterm--extra-capabilities-type): New const.
16760         (xterm-extra-capabilities): Use it.
16761         (xterm--version-handler): Lower the pseudo-version for `screen'.
16763 2015-05-03  Dmitry Gutov  <dgutov@yandex.ru>
16765         * lisp/progmodes/xref.el (xref--insert-xrefs): Tweak the faces.
16766         Always insert a newline at the end (to avoid mouse-face background
16767         tail at the last line).
16769         elisp-completion-at-point: Prioritize being quoted over funpos
16770         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
16771         Only consider function position when not inside quoted form
16772         (bug#20425).
16773         * test/automated/elisp-mode-tests.el: New file.
16775         Stop vc-print-log from jumping to the top
16776         * lisp/vc/vc.el (vc-print-log-internal): Pass nil
16777         GOTO-LOCATION-FUNC to vc-log-internal-common when WORKING-REVISION
16778         is not specified.
16779         (vc-incoming-outgoing-internal): Always pass nil.
16780         (vc-log-internal-common): When GOTO-LOCATION-FUNC is nil, don't
16781         call it, and don't set vc-sentinel-movepoint (bug#15322).
16782         (vc-print-root-log): Don't fetch the root working revision, nor
16783         pass it to vc-print-log-internal.
16785 2015-05-02  Michael Vehrs  <Michael.Burschik@gmx.de>
16787         Fix display of keyboard layouts for right-to-left scripts
16788         * lisp/international/quail.el (quail-insert-kbd-layout):
16789         Force left-to-right paragraph direction.
16791 2015-05-02  K. Handa  <handa@gnu.org>
16793         * src/cmds.c (internal_self_insert): When we insert spaces for
16794         padding, set point before the padding spaces, not after them.
16796 2015-05-02  Nicolas Petton  <nicolas@petton.fr>
16798         * lisp/emacs-lisp/seq.el (seq-p): New alias to `sequencep'.
16800 2015-05-02  Dmitry Gutov  <dgutov@yandex.ru>
16802         Fix etags-xref-find for references
16803         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
16804         Use `cl-mapcan'.
16805         * lisp/progmodes/etags.el (etags-xref-find): Ditto.  Prompt for
16806         directory if no tags tables are loaded (bug#19468).
16808 2015-05-02  Philipp Stephani  <phst@google.com>
16810         Update the options in whitespace-style defcustom
16811         * lisp/whitespace.el (whitespace-style): Use `set' instead of a
16812         `repeat' because the option is really set-like.  Add missing
16813         options.  Reorder options to match the order in the
16814         documentation.  (Bug#20346)
16816 2015-05-02  Eli Zaretskii  <eliz@gnu.org>
16818         Fix error diagnostics of c-macro-expand
16819         * lisp/progmodes/cmacexp.el (c-macro-expansion): Don't bail out
16820         too early if no start-marker string was found -- that generally
16821         means cpp exited abnormally, and we still want to show its error
16822         messages to the user.
16824         Don't require Texinfo 5.0 for Emacs documentation
16825         * doc/emacs/docstyle.texi: Use "@set txicodequoteundirected" and
16826         "@set txicodequotebacktick" instead of "@codequotebacktick on" and
16827         "@codequoteundirected on", respectively, to avoid requiring
16828         Texinfo 5.x for Emacs documentation.
16830 2015-05-01  Simen Heggestøyl  <simenheg@gmail.com>
16832         * lisp/files.el (pwd):
16833         When called with a prefix argument, insert the current default
16834         directory at point.
16836 2015-05-01  Stefan Monnier  <monnier@iro.umontreal.ca>
16838         * lisp/isearch.el (isearch-mode-map): Allow backspace remapping
16839         * lisp/isearch.el (isearch-mode-map): Don't inhibit
16840         function-key-map remapping for backspace (bug#20466).
16842 2015-05-01  Dmitry Gutov  <dgutov@yandex.ru>
16844         Implement xref-find-references in etags and elisp-mode
16845         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references): New function.
16846         (elisp-xref-find): Use it.
16847         * lisp/progmodes/etags.el (etags-xref-find): Use `xref-collect-references'.
16848         * lisp/progmodes/xref.el (xref-collect-references):
16849         (xref--collect-reference): New functions.
16851 2015-05-01  Paul Eggert  <eggert@cs.ucla.edu>
16853         Prefer plain characters to Texinfo circumlocutions
16854         For example, prefer 'François' to 'Fran\c{c}ois', 'Fran\c cois',
16855         'Fran@,{c}ois' or 'Francois' (all of which were used!) in Texinfo sources.
16857         Fix single-quoting style in PDF manuals
16858         The PDF versions of the GNU manuals used curved single quotes to
16859         represent grave accent and apostrophe, which made it a pain to cut
16860         and paste code examples from them.  Fix the PDF versions to use
16861         grave accent and apostrophe for Lisp source code, keystrokes, etc.
16862         This change does not affect the info files, nor does it affect
16863         ordinary uses of curved single quotes in PDF.
16864         * doc/emacs/docstyle.texi: New file, which specifies treatment for
16865         grave accent and apostrophe, as well as the document encoding.
16866         * doc/emacs/emacs-xtra.texi, doc/emacs/emacs.texi:
16867         * doc/lispintro/emacs-lisp-intro.texi:
16868         * doc/lispref/back.texi, doc/lispref/book-spine.texi:
16869         * doc/lispref/elisp.texi, doc/lispref/lay-flat.texi:
16870         * doc/misc/ada-mode.texi, doc/misc/auth.texi:
16871         * doc/misc/autotype.texi, doc/misc/bovine.texi, doc/misc/calc.texi:
16872         * doc/misc/cc-mode.texi, doc/misc/cl.texi, doc/misc/dbus.texi:
16873         * doc/misc/dired-x.texi, doc/misc/ebrowse.texi, doc/misc/ede.texi:
16874         * doc/misc/ediff.texi, doc/misc/edt.texi, doc/misc/efaq-w32.texi:
16875         * doc/misc/efaq.texi, doc/misc/eieio.texi, doc/misc/emacs-gnutls.texi:
16876         * doc/misc/emacs-mime.texi, doc/misc/epa.texi, doc/misc/erc.texi:
16877         * doc/misc/ert.texi, doc/misc/eshell.texi, doc/misc/eudc.texi:
16878         * doc/misc/eww.texi, doc/misc/flymake.texi, doc/misc/forms.texi:
16879         * doc/misc/gnus-coding.texi, doc/misc/gnus-faq.texi:
16880         * doc/misc/gnus.texi, doc/misc/htmlfontify.texi:
16881         * doc/misc/idlwave.texi, doc/misc/ido.texi, doc/misc/info.texi:
16882         * doc/misc/mairix-el.texi, doc/misc/message.texi, doc/misc/mh-e.texi:
16883         * doc/misc/newsticker.texi, doc/misc/nxml-mode.texi:
16884         * doc/misc/octave-mode.texi, doc/misc/org.texi, doc/misc/pcl-cvs.texi:
16885         * doc/misc/pgg.texi, doc/misc/rcirc.texi, doc/misc/reftex.texi:
16886         * doc/misc/remember.texi, doc/misc/sasl.texi, doc/misc/sc.texi:
16887         * doc/misc/semantic.texi, doc/misc/ses.texi, doc/misc/sieve.texi:
16888         * doc/misc/smtpmail.texi, doc/misc/speedbar.texi:
16889         * doc/misc/srecode.texi, doc/misc/todo-mode.texi, doc/misc/tramp.texi:
16890         * doc/misc/url.texi, doc/misc/vhdl-mode.texi, doc/misc/vip.texi:
16891         * doc/misc/viper.texi, doc/misc/widget.texi, doc/misc/wisent.texi:
16892         * doc/misc/woman.texi:
16893         Use it instead of '@documentencoding UTF-8', to lessen the need for
16894         global changes like this in the future.
16895         * doc/emacs/Makefile.in (EMACS_XTRA):
16896         * doc/lispintro/Makefile.in (srcs):
16897         * doc/lispref/Makefile.in (srcs):
16898         Add dependency on docstyle.texi.
16899         * doc/misc/Makefile.in (style): New macro.
16900         (${buildinfodir}/%.info, %.dvi, %.pdf, %.html)
16901         (${buildinfodir}/ccmode.info, ${buildinfodir}/efaq%.info, gnus_deps):
16902         Use it.
16904 2015-05-01  Glenn Morris  <rgm@gnu.org>
16906         * test/automated/cl-lib-tests.el (cl-lib-adjoin-test): Fix it.
16908         * lisp/emacs-lisp/pcase.el (get-edebug-spec, edebug-match)
16909         (help-fns--signature): Declare.
16911         * lisp/emacs-lisp/pcase.el (pcase--make-docstring): Require help-fns.
16913 2015-05-01  Nicolas Petton  <nicolas@petton.fr>
16915         New macro seq-let, providing destructuring support to seq.el
16916         * lisp/emacs-lisp/seq.el (seq-let): New macro.  `seq-let' is similar
16917         to `cl-destructuring-bind' but works on all sequence types supported
16918         by `seq.el'.  Bump version number to 1.6.
16919         * test/automated/seq-tests.el: Add tests for seq-let.
16920         * doc/lispref/sequences.texi: Add documentation for seq-let.
16922 2015-05-01  Pontus Michael  <m.pontus@gmail.com>
16924         * lisp/simple.el (blink-matching-open): Better behavior in minibuffer.
16926 2015-05-01  Glenn Morris  <rgm@gnu.org>
16928         * lisp/emacs-lisp/ert.el (ert--special-operator-p): Fix previous.
16930 2015-05-01  Artur Malabarba  <bruce.connor.am@gmail.com>
16932         * lisp/emacs-lisp/bytecomp.el: Revert "Silence noninteractive compilations"
16933         This reverts commit 9a7ddde977378cb5276a81476ae458889c403267.
16934         This reverts commit 3c0ea587daf8b17960b90603a70e3ac4057d883d.
16935         With message: "* lisp/emacs-lisp/bytecomp.el: Use `inhibit-message'".
16936         (Bug#20445).
16938 2015-05-01  K. Handa  <handa@gnu.org>
16940         * lisp/international/mule-cmds.el (input-method-use-echo-area):
16941         Change :type to 'boolean.
16943 2015-05-01  Lars Magne Ingebrigtsen  <larsi@gnus.org>
16945         Start using proportional fonts in eww by default
16946         * lisp/net/shr.el (shr-use-fonts): Switch the default to t, since
16947         it seems to work well.
16949         Fix links in tables in shr
16950         * lisp/net/shr.el: Remove `shr-inhibit-decoration', because that
16951         makes (some) links in tables not work.
16953 2015-05-01  Jan D  <jan.h.d@swipnet.se>
16955         * lisp/term/ns-win.el (ns-get-cut-buffer-internal): Remove this alias.
16957 2015-04-30  Glenn Morris  <rgm@gnu.org>
16959         * lisp/emacs-lisp/ert.el (ert--special-operator-p):
16960         Update for 2015-02-08 change to indirect-function.
16962         * lisp/term/ns-win.el (ns-get-selection-internal):
16963         Remove declaration for function deleted 2014-10-21.
16965         * lisp/dom.el: Load subr-x when compiling, for when-let.
16967         Silence some compilation warnings
16968         * lisp/emacs-lisp/check-declare.el (compilation-forget-errors):
16969         * lisp/emulation/cua-base.el (delete-active-region):
16970         * lisp/net/net-utils.el (w32-get-console-output-codepage):
16971         * lisp/term/ns-win.el (ns-own-selection-internal)
16972         (ns-disown-selection-internal, ns-selection-owner-p)
16973         (ns-selection-exists-p, ns-get-selection):
16974         Declare for compiler.
16976         Function declaration updates prompted by 'make check-declare'
16977         * lisp/emacs-lisp/package.el (lm-homepage):
16978         * lisp/gnus/gnus-util.el (iswitchb-read-buffer):
16979         * lisp/gnus/mm-decode.el (libxml-parse-html-region):
16980         * lisp/gnus/mml.el (libxml-parse-html-region):
16981         * lisp/gnus/nnrss.el (libxml-parse-html-region):
16982         * lisp/net/eww.el (libxml-parse-html-region):
16983         * lisp/net/shr.el (libxml-parse-html-region):
16984         * lisp/vc/vc-bzr.el (vc-annotate-convert-time):
16985         * lisp/vc/vc-cvs.el (vc-annotate-convert-time):
16986         * lisp/vc/vc-git.el (vc-annotate-convert-time):
16987         * lisp/vc/vc-hg.el (vc-annotate-convert-time):
16988         * lisp/vc/vc-mtn.el (vc-annotate-convert-time):
16989         * lisp/vc/vc-rcs.el (vc-annotate-convert-time):
16990         Update declaration.
16992         Remove compatibility code for 20-year old function renaming
16993         * lisp/progmodes/idlw-shell.el (idlwave-shell-comint-filter):
16994         Make it an obsolete alias.
16995         (idlwave-shell-filter): Change all uses to comint-output-filter.
16997 2015-04-30  Tassilo Horn  <tsdh@gnu.org>
16999         Add ace-window face config
17000         * etc/themes/tsdh-light-theme.el (tsdh-light): Add ace-window face
17001         configuration.
17003 2015-04-30  Paul Eggert  <eggert@cs.ucla.edu>
17005         Unclutter 'make doc' output a bit
17006         * Makefile.in ($(DOCS), $(INSTALL_DOC), $(UNINSTALL_DOC)):
17007         Use make subst rather than sh IFS to split target string apart.
17008         This makes 'make' output easier to follow.
17010         Merge from gnulib
17011         * doc/misc/texinfo.tex: Update from gnulib.
17013 2015-04-30  Artur Malabarba  <bruce.connor.am@gmail.com>
17015         * lisp/emacs-lisp/package.el: Some speed optimizations on menu refresh.
17016         (package-menu--print-info): Obsolete.
17017         (package-menu--print-info-simple): New function.
17018         (package-menu--refresh): Use it, simplify code, and improve
17019         performance.
17020         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print-entry):
17021         Tiny performance improvement.
17023         * lisp/emacs-lisp/package.el (package--message): inhibit-message.
17025 2015-04-29  Paul Eggert  <eggert@cs.ucla.edu>
17027         Omit -Wstrict-overflow workaround in GCC 5
17028         * src/process.c: Remove workaround for GCC -Wstrict-overflow bug
17029         if it's GCC 5 or later, as the bug appears to be fixed in GCC 5.1.
17031         Merge from gnulib
17032         This incorporates:
17033         2015-04-29 extern-inline: no need for workaround in GCC 5.1
17034         2015-04-26 file-has-acl: port to CentOS 6
17035         * m4/acl.m4, m4/extern-inline.m4: Update from gnulib.
17037 2015-04-29  Helmut Eller  <eller.helmut@gmail.com>
17039         Set next-error-* in xref--xref-buffer-mode
17040         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
17041         Set `next-error-function' and `next-error-last-buffer'.
17042         (xref--next-error-function): New function.
17043         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01311.html)
17045 2015-04-29  Fabián Ezequiel Gallina  <fgallina@gnu.org>
17047         python.el: Fix warnings on looking-back calls missing LIMIT
17048         * lisp/progmodes/python.el (python-shell-accept-process-output):
17049         Pass LIMIT arg to looking-back.
17051 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
17053         * lisp/emacs-lisp/package.el: Use pushnew for downloads in progress.
17054         (package--download-and-read-archives): Use pushnew instead of
17055         append.  If something terrible happened during a previous
17056         download, simply refreshing should now make things work again.
17058 2015-04-29  Dmitry Gutov  <dgutov@yandex.ru>
17060         Introduce etags-xref-find-definitions-tag-order
17061         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
17062         New variable.
17063         (etags--xref-find-definitions): Use it (bug#19468).
17065 2015-04-29  Eli Zaretskii  <eliz@gnu.org>
17067         PATH- and completion-related fixes in Eshell on MS-Windows
17068         * lisp/eshell/esh-ext.el (eshell-search-path): When running on
17069         MS-Windows, prepend "." to list of directories produced from PATH,
17070         as Windows always implicitly searches the current directory first.
17071         (eshell-force-execution): Make it have a non-nil default value on
17072         MS-Windows and MS-DOS.
17073         * lisp/eshell/em-cmpl.el (eshell-complete-commands-list): If
17074         eshell-force-execution is non-nil, complete on readable files and
17075         directories, not only executables.  When running on MS-Windows,
17076         prepend "." to list of directories produced from PATH, as Windows
17077         always implicitly searches the current directory first.
17079 2015-04-29  Sam Steingold  <sds@gnu.org>
17081         Bury RCIRC buffers when there is no activity
17082         * lisp/net/rcirc.el (rcirc-non-irc-buffer): Remove.
17083         (rcirc-bury-buffers): New function.
17084         (rcirc-next-active-buffer): When there is no new activity, use
17085         `rcirc-bury-buffers' to hide all RCIRC buffers.
17087 2015-04-29  Krzysztof Jurewicz  <krzysztof.jurewicz@gmail.com>  (tiny change)
17089         Fix DBUS query result parsing for secrets-search-items
17090         * lisp/net/secrets.el (secrets-search-items): Fix DBUS query result
17091         parsing.  The function assumed that return value of the
17092         SearchItems method called on a collection is a list of two lists,
17093         however this is true only when no collection is specified.  GNOME
17094         had used to incorrectly return a list of two lists in both cases,
17095         but this was already fixed:
17096         https://bugzilla.gnome.org/show_bug.cgi?id=695115 .  Also fix an
17097         incorrect information in the secrets-search-items’ docstring.
17098         (Bug#20449)
17100 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
17102         * lisp/emacs-lisp/bytecomp.el (byte-compile--message):
17103         Use `inhibit-message' instead of hiding the previous message
17104         with (message nil).
17106 2015-04-29  Oleh Krehel  <ohwoeowho@gmail.com>
17108         Remove the deprecated INTERNAL_FIELD macro by expanding it
17109         * src/lisp.h (INTERNAL_FIELD): Remove.
17110         (DEFVAR_KBOARD): Modify accordingly.
17111         * src/alloc.c, src/buffer.c, src/buffer.h, src/category.c:
17112         * src/keyboard.c, src/keyboard.h, src/syntax.c: Adjust users.
17113         * src/buffer.c (compact_buffer): Use BVAR.
17115 2015-04-29  Glenn Morris  <rgm@gnu.org>
17117         Replace an obsolete function alias
17118         * lisp/isearch.el (isearch-yank-x-selection):
17119         * lisp/mouse-copy.el (mouse-drag-secondary-pasting)
17120         (mouse-drag-secondary-moving):
17121         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
17122         Replace obsolete alias x-get-selection with gui-get-selection.
17124 2015-04-29  Stefan Monnier  <monnier@iro.umontreal.ca>
17126         * lisp/mail/rmailsum.el: Use lexical-binding.
17128 2015-04-29  Glenn Morris  <rgm@gnu.org>
17130         * test/automated/package-test.el (package-test-update-archives-async):
17131         Skip test on hydra.nixos.org.
17133 2015-04-28  Glenn Morris  <rgm@gnu.org>
17135         * lisp/foldout.el: Update for 2015-01-30 outline.el changes.
17136         (foldout-zoom-subtree, foldout-exit-fold, foldout-mouse-show)
17137         (foldout-mouse-hide-or-exit): Use new names for outline functions.
17139         * lisp/cedet/semantic/bovine/c.el (semantic-c-do-lex-if):
17140         Update for 2014-06-26 hideif.el change.
17142         * lisp/mail/rmailsum.el: Fix search for encoded subjects.  (Bug#19088)
17143         (rmail--decode-and-apply): New function.
17144         (rmail-message-regexp-p-1, rmail-message-subject-p): Use it.
17146         * lisp/mail/rmail.el (rmail-highlighted-headers): Fix :type.
17148 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
17150         * lisp/emacs-lisp/package.el: Fix priority-hiding corner case
17151         (package-menu--refresh): Delegate obsolete-hiding to
17152         `package--remove-hidden'.
17153         (package--remove-hidden): Disregard high-priority package if it is
17154         older than the installed one.
17156 2015-04-28  Paul Eggert  <eggert@cs.ucla.edu>
17158         Update source file encoding list
17159         Update admin/notes/unicode, along with coding system cookies in
17160         other files, so that the two match each other better.
17161         * admin/notes/unicode: lisp/language/ethio-util.el and
17162         lisp/language/ethiopic.el also use utf-8-emacs.
17163         * admin/notes/hydra, doc/misc/dbus.texi, doc/misc/org.texi:
17164         * doc/misc/remember.texi, etc/refcards/cs-dired-ref.tex:
17165         * etc/refcards/cs-refcard.tex, etc/refcards/cs-survival.tex:
17166         * etc/refcards/sk-dired-ref.tex, etc/refcards/sk-refcard.tex:
17167         * etc/refcards/sk-survival.tex:
17168         Add "coding: utf-8" so that this file is not mishandled in a
17169         Latin-1 or Big-5 locale.
17170         * lisp/international/robin.el, lisp/org/ox-ascii.el:
17171         Specify utf-8, not utf-8-emacs, as these are plain UTF-8 files.
17172         * lisp/language/ethio-util.el: Fix trailer.
17174 2015-04-28  Eli Zaretskii  <eliz@gnu.org>
17176         Fix synchronous invocation of Ispell
17177         * lisp/textmodes/ispell.el (ispell-init-process): Assign a non-nil
17178         value to ispell-process-directory before calling ispell-init-process.
17179         Don't call set-process-coding-system if ispell-async-processp is nil.
17180         (Bug#20448)
17182 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
17184         * lisp/emacs-lisp/package.el: Skip space and comments in init file
17185         (package--ensure-init-file): Insert snippet at first
17186         non-whitespace non-comments line.  Respects local-vars at the top
17187         of the file.
17189 2015-04-28  Glenn Morris  <rgm@gnu.org>
17191         * lisp/mail/rmail.el (rmail-copy-headers):
17192         Handle rmail-nonignored-headers being nil.  (Bug#18878)
17194         * lisp/subr.el (delay-mode-hooks): Fix doc typo.
17196         * lisp/vc/vc-bzr.el (vc-bzr-after-dir-status):
17197         Don't get confused by a bzrlib version mismatch warning.
17199 2015-04-27  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
17201         Change default location of EUDC options file
17202         * etc/NEWS: Document change to EUDC options file's default location.
17203         * lisp/net/eudc-vars.el (eudc-options-file): Use
17204         `locate-user-emacs-file' to change default options file location.
17206 2015-04-27  Glenn Morris  <rgm@gnu.org>
17208         * test/automated/package-test.el (package-test-update-archives-async):
17209         Try to handle the test server script dying.
17211 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
17213         * lisp/saveplace.el (save-place-mode): New minor mode.
17214         (save-place): Redefine as an obsolete alias.
17216         * lisp/midnight.el: Make it a minor mode.  Allow predicates.
17217         * lisp/midnight.el: Use lexical-binding.
17218         (midnight-mode): Make it a proper minor mode.
17219         (midnight-buffer-display-time): Make arg non-optional.
17220         (midnight-find): Remove.
17221         (clean-buffer-list-kill-never-regexps)
17222         (clean-buffer-list-kill-regexps): Tweak type for new function choice.
17223         (clean-buffer-list-delay): Allow clean-buffer-list-kill-regexps to
17224         contain functions.
17225         (clean-buffer-list): Use cl-find.
17226         Allow clean-buffer-list-kill-never-regexps to contain functions.
17228 2015-04-27  Nicolas Petton  <nicolas@petton.fr>
17230         Bump version of seq.el to 1.5
17231         * lisp/emacs-lisp/seq.el (seq-doseq): Remove undocumented return value
17232         from seq-doseq.  Bump version number of seq.el.
17234 2015-04-27  Glenn Morris  <rgm@gnu.org>
17236         * lisp/mail/rmail.el (rmail-reply):
17237         Decode subject before matching "Re:" prefix.  (Bug#20396)
17239 2015-04-27  Artur Malabarba  <bruce.connor.am@gmail.com>
17241         * lisp/emacs-lisp/package.el: Small improvements
17242         (package--with-work-buffer-async): More informative error.
17243         (package-install-user-selected-packages): Rename to
17244         `package-install-selected-packages'.
17246 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
17248         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last
17249         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last change.
17250         (eieio--class-make): Remove leftover `tag'.
17252 2015-04-27  Glenn Morris  <rgm@gnu.org>
17254         * lisp/gnus/message.el (gnus-extract-address-components):
17255         Remove bogus declaration that was masking previous problem.
17257 2015-04-27  Nicolas Graner  <nicolas.graner@u-psud.fr>  (tiny change)
17259         * lisp/gnus/message.el (message-insert-formatted-citation-line):
17260         Fix typo.  (Bug#20318)
17262 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
17264         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Reuse oldc.
17266         * lisp/textmodes/reftex-toc.el: Improve multi-frame behavior
17267         * lisp/textmodes/reftex-toc.el (reftex-toc-revert): Avoid displaying
17268         the buffer in yet another frame.
17269         (reftex-toc-visit-location): Make sure toc-window has focus at the end
17270         when `final' is nil.
17271         (reftex--rebuilding-toc): Defvar to avoid `boundp' and
17272         silence warnings.  Use `--' to clarify that it's internal.
17273         (reftex-toc-next, reftex-toc-previous, reftex-toc-demote)
17274         (reftex-toc-promote): Clarify unused argument.
17275         (reftex--pro-or-de, reftex--start-line, reftex--mark-line):
17276         Add `reftex--' prefix.  Fix all users.
17277         (reftex-toc-promote-prepare): Use _ for dummy variable.
17278         (reftex-toc-restore-region): Rename `m.
17280 2015-04-27  Eli Zaretskii  <eliz@gnu.org>
17282         Fix a typo in bibtex.el
17283         * lisp/textmodes/bibtex.el (bibtex-insert-kill): Fix a typo from
17284         last change.  (Bug#20429)
17286         Fix redisplay of frame after loading new fonts
17287         * src/xdisp.c (redisplay_internal): When retrying redisplay of
17288         a frame because new fonts were loaded, disable all redisplay
17289         optimizations on that frame by calling SET_FRAME_GARBAGED.
17290         (Bug#20410)
17292 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
17294         * lisp/info.el (Info-menu): Properly provide the `default'
17295         (Bug#20391)
17297         * lisp/progmodes/elisp-mode.el (elisp--get-fnsym-args-string):
17298         Catch errors from documentation (bug#20418).
17299         (emacs-lisp-mode-abbrev-table): Remove redundant defvar.
17301 2015-04-26  Stefan Monnier  <monnier@iro.umontreal.ca>
17303         * lisp/emacs-lisp/package.el: Move variables to silence byte-compiler.
17304         Remove redundant ":group 'package".
17306 2015-04-26  Eli Zaretskii  <eliz@gnu.org>
17308         Fix a typo in rmail.el
17309         * lisp/mail/rmail.el (rmail-ensure-blank-line): Fix a typo in the
17310         last commit.  (Bug#20429)
17312 2015-04-26  Dmitry Gutov  <dgutov@yandex.ru>
17314         Introduce xref-prompt-for-identifier
17315         * lisp/progmodes/xref.el (xref-prompt-for-identifier): New option.
17316         (xref--read-identifier): Use it
17317         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01205.html).
17319 2015-04-26  João Távora  <joaotavora@gmail.com>
17321         `tex-insert-quote' after single `'' opens quotes instead of closing
17322         Without this, it's very hard to precede double quotes with the
17323         apostrophe character, i.e. insert the sequence '``
17324         (quote-backquote-backquote), commonly useful in portuguese, for
17325         instance.
17326         * lisp/textmodes/tex-mode.el (tex-insert-quote): Add ?' to the list of
17327         preceding chars making `tex-insert-quote' be in the "opening" context.
17329 2015-04-25  Dmitry Gutov  <dgutov@yandex.ru>
17331         Pass `id' to `completing-read' as def instead of initial input
17332         * lisp/progmodes/xref.el (xref--read-identifier): Pass `id' to
17333         `completing-read' as the default value instead of initial input
17334         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01182.html).
17336 2015-04-25  Paul Eggert  <eggert@cs.ucla.edu>
17338         Don't freeze with unreadable processes
17339         Don't freeze if an exiting process can't be read from.  (Bug#19860).
17340         This fixes a bug I introduced in
17341         2014-07-08T07:24:07Z@eggert@cs.ucla.edu
17342         "* process.c: Add sanity checks for file descriptors."
17343         Dmitry Gutov did most of the legwork in finding the problem.
17344         * src/process.c (wait_reading_process_output):
17345         Treat non-running processes that can't be read from
17346         the same as other non-running processes.
17348 2015-04-25  Alan Mackenzie  <acm@muc.de>
17350         Fix change from 2015-04-22 "On C-y, stop some text property entries ..."
17351         * lisp/subr.el (remove-yank-excluded-properties): Put
17352         `with-silent-modifications' around only the last three lines of code.
17354 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
17356         * lisp/emacs-lisp/package.el (package-all-keywords): Don't cache
17357         (package--all-keywords): Deleted variable.
17359         * etc/NEWS: Document package-hiding functionality.
17361 2015-04-25  Eli Zaretskii  <eliz@gnu.org>
17363         * lisp/window.el (recenter-last-op): Doc fix.  (Bug#20419)
17365         Clarify the doc string of 'replace-regexp-in-string'
17366         * lisp/subr.el (replace-regexp-in-string): Doc fix.  (Bug#20395)
17368         Improve doc string of 'insert-buffer-substring'
17369         * src/editfns.c (Finsert_buffer_substring): Doc fix.  (Bug#20421)
17371         MS-Windows followup for the recent gnulib update
17372         * nt/gnulib.mk (libgnu_a_SOURCES): Replace file-has-acl.c with
17373         acl-internal.c.
17375 2015-04-24  Paul Eggert  <eggert@cs.ucla.edu>
17377         Spelling fixes
17379         Merge from gnulib
17380         This incorporates:
17381         2015-04-24 file-has-acl: new module, split from acl
17382         2015-04-24 manywarnings: add GCC 5.1 warnings
17383         2015-04-21 lstat: fix cross-compilation 'ln -s' problem
17384         2015-04-15 qacl: Simplify HP-UX acl_nontrivial check
17385         2015-04-15 acl: On Linux, check for acls without libacl
17386         2015-04-14 tempname: avoid unused parameter warnings (trivial)
17387         * lib/acl-internal.c: New file, from gnulib.
17388         * lib/file-has-acl.c: Remove; no longer imported from gnulib.
17389         * lib/acl-internal.h, lib/gnulib.mk, lib/qcopy-acl.c, lib/tempname.c:
17390         * m4/acl.m4, m4/gnulib-comp.m4, m4/lstat.m4, m4/manywarnings.m4:
17391         Update from gnulib.
17393         Port --enable-gcc-warnings to GCC 5.1 x86-64
17394         * lib-src/ebrowse.c (dump_sym):
17395         * lib-src/hexl.c (main):
17396         * src/ccl.c (ccl_driver):
17397         * src/character.c (string_escape_byte8):
17398         * src/dbusbind.c (xd_retrieve_arg, xd_add_watch):
17399         * src/gnutls.c (Fgnutls_boot):
17400         * src/gtkutil.c (xg_check_special_colors):
17401         * src/image.c (x_build_heuristic_mask):
17402         * src/print.c (safe_debug_print, print_object):
17403         * src/term.c (produce_glyphless_glyph):
17404         * src/xdisp.c (get_next_display_element)
17405         (produce_glyphless_glyph):
17406         * src/xterm.c (x_draw_glyphless_glyph_string_foreground):
17407         Don't use a signed format to print an unsigned integer, or vice
17408         versa.  GCC 5.1's new -Wformat-signedness option warns about this.
17409         * src/image.c (png_load_body, jpeg_load_body):
17410         Silence a bogus setjump diagnostic from GCC 5.1 (GCC bug 54561).
17412 2015-04-24  Tassilo Horn  <tsdh@gnu.org>
17414         Add new faces to tsdh-light-theme
17415         * etc/themes/tsdh-light-theme.el (tsdh-light): New face
17416         definitions for Info-quoted, ace-jump-face-foreground,
17417         hl-paren-face, show-paren-match, and show-paren-mismatch.
17419 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
17421         * lisp/emacs-lisp/seq.el (seq-doseq): Fix the macro.
17423 2015-04-24  Glenn Morris  <rgm@gnu.org>
17425         * build-aux/gitlog-to-emacslog:
17426         Use raw log format rather than wrapped one.
17428 2015-04-24  Stefan Monnier  <monnier@iro.umontreal.ca>
17430         * lisp/emacs-lisp/seq.el (seq-doseq): Tighten the code.
17431         (seq-doseq): Fix out-of-scope binding.
17432         Don't call `seq-length at every iteration.
17433         Reduce `if's from 3 to 2 per iteration.
17434         (emacs-lisp-mode-hook): Don't tweak in Emacs≥25.
17436 2015-04-24  Glenn Morris  <rgm@gnu.org>
17438         * lisp/textmodes/text-mode.el (text-mode-hook):
17439         Move text-mode-hook-identify to default.
17441         * lisp/mouse.el (minor-mode-menu-from-indicator):
17442         Handle non-function members of minor-mode-map-alist.  (Bug#20201)
17444         * lisp/help-fns.el (describe-function): More type checking.
17445         (describe-function-1): Handle changed symbol-function.  (Bug#20201)
17447         * build-aux/gitlog-to-emacslog: Convert "Fixes:" to "(Bug#)".
17448         (Bug#20325)
17450 2015-04-24  Andreas Schwab  <schwab@linux-m68k.org>
17452         shr: strip leading whitespace when expanding URLs
17453         * lisp/net/shr.el (shr-expand-url): Strip leading whitespace from URL.
17455 2015-04-24  Eli Zaretskii  <eliz@gnu.org>
17457         Clarify "co-authored" some more
17459         * CONTRIBUTE: Clarify "co-authored-by".  (Bug#20400)
17461         Clarify doc strings of functions that search for properties
17462         * src/textprop.c (Fnext_char_property_change)
17463         (Fprevious_char_property_change)
17464         (Fnext_single_char_property_change)
17465         (Fprevious_single_char_property_change, Fnext_property_change)
17466         (Fnext_single_property_change, Fprevious_property_change)
17467         (Fprevious_single_property_change): Clarify doc strings wrt return
17468         value and the optional LIMIT argument.  (Bug#20411)
17470 2015-04-24  Glenn Morris  <rgm@gnu.org>
17472         * test/automated/message-mode-tests.el (message-mode-propertize):
17473         Handle non-writable HOME; eg on hydra.nixos.org.
17475 2015-04-23  Eli Zaretskii  <eliz@gnu.org>
17477         Avoid starting threads by w32-shell-execute
17478         * src/w32fns.c (Fw32_shell_execute): Convert "file:///" URLs into
17479         local file names, before invoking ShellExecute.  (Bug#20220)
17481 2015-04-23  Martin Rudalics  <rudalics@gmx.at>
17483         Fix following doc-links in `widget-documentation-link-action'
17484         * lisp/wid-edit.el (widget-documentation-link-action): Make
17485         following doc-links less simplistic (Bug#20398).
17487 2015-04-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
17489         Improve EUDC manual
17490         * doc/misc/eudc.texi (Troubleshooting):
17491         New LDAP troubleshooting subsection.
17493 2015-04-22  Paul Eggert  <eggert@cs.ucla.edu>
17495         Omit needless "\ " after multibyte then newline
17496         * src/print.c: Include <c-ctype.h>, for c_isxdigit.
17497         (print_object): When print-escape-multibyte is non-nil and a
17498         multibyte character is followed by a newline or formfeed, followed
17499         by a hex digit, don't output a needless "\ " before the hex digit.
17500         * test/automated/print-tests.el (print-hex-backslash): New test.
17502 2015-04-22  Oleh Krehel  <ohwoeowho@gmail.com>
17504         Add a new `inhibit-message' variable
17505         * src/xdisp.c (syms_of_xdisp): Define a boolean `inhibit_message'.
17506         (message3): Don't call `message3_nolog' (i.e. use the Echo Area) when
17507         `inhibit_message' is non-zero.
17508         * etc/NEWS: Add an entry.
17509         * doc/lispref/display.texi: Add an entry for `inhibit-message',
17510         mention it in `message'.
17512 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
17514         Fix last fix in `display-buffer-record-window'.
17515         * lisp/window.el (display-buffer-record-window): Fix last fix.
17517 2015-04-22  Eli Zaretskii  <eliz@gnu.org>
17519         Minor edits in CONTRIBUTE
17520         * CONTRIBUTE: Rearrange instructions about log messages.
17521         Use "Git" capitalized all over.
17522         Use 2 spaces between sentences.
17524 2015-04-22  Artur Malabarba  <bruce.connor.am@gmail.com>
17526         * lisp/files.el (basic-save-buffer): Fix argument.
17528         * lisp/cus-edit.el (custom-file): Consider init-file-had-error.
17529         In case `(and (null custom-file) init-file-had-error)' do the same
17530         thing we'd do if `(null user-init-file)', which is to either error out
17531         or return nil.  This is in line with `custom-save-all' which would
17532         throw an error in that situation.  (Bug#20355)
17534         * lisp/emacs-lisp/package.el: Hide lower-priority packages in menu.
17535         (package-menu-hide-low-priority): New variable, see its doc.
17536         (package-archive-priorities): Update doc.
17537         (package-desc-priority): New function.
17538         (package-desc-priority-version): Use it.
17539         (package--remove-hidden): New function.
17540         (package-menu--refresh): Use it.
17542         * lisp/emacs-lisp/package.el: Implement displaying obsolete packages.
17543         (package-menu--hide-obsolete): New variable.
17544         (package--remove-hidden): Use it.
17545         (package-menu-hide-obsolete): New interactive function to toggle
17546         the variable.
17547         (package--quick-help-keys): Document it.
17548         (package-menu-async): Add :version tag.
17549         (package-menu-mode-map): Bind package-menu-hide-obsolete.
17550         (package-desc-status): Indicate non-installed obsolete packages as
17551         avail-obso.
17552         (package-menu-mark-install): Allow installation of avail-obso.
17553         (package-menu--status-predicate): Sort avail-obso with available.
17555 2015-04-22  Alan Mackenzie  <acm@muc.de>
17557         On C-y, stop some text property entries being written into buffer-undo-list
17558         * lisp/subr.el (remove-yank-excluded-properties): Enclose the code in
17559         `with-silent-modifications'.
17561 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
17563         In display-buffer-record-window record selected window if necessary
17564         * lisp/window.el (display-buffer-record-window): Store selected window
17565         if it differs from 3rd element of 'quit-restore' parameter (Bug#20353).
17567 2015-04-22  Tassilo Horn  <tsdh@gnu.org>
17569         Fix reftex-citation bug
17570         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
17571         Fix `wrong-type-argument stringp nil' error that occurs when AUCTeX
17572         integration is enabled and there are no citations in the document
17573         so far.
17575 2015-04-21  Dmitry Gutov  <dgutov@yandex.ru>
17577         Add or reset based on the presence of MERGE_HEAD
17578         * lisp/vc/vc-git.el (vc-git-find-file-hook): Add
17579         `vc-git-resolve-when-done' to `after-save-hook' in either case.
17580         (vc-git-conflicted-files): Add a TODO.
17581         (vc-git-resolve-when-done): Depending on the presence of
17582         MERGE_HEAD, either update the resolved file in the index, or
17583         remove it from there.  (Bug#20292)
17585 2015-04-21  Glenn Morris  <rgm@gnu.org>
17587         * lisp/custom.el (custom-declare-group): No need to purecopy
17588         custom-current-group-alist members following recent change to set
17589         it to nil before dumping.
17591         * build-aux/gitlog-to-emacslog: Get footer from ChangeLog.2.
17592         (Bug#20399)
17594 2015-04-21  Daniel Colascione  <dancol@dancol.org>
17596         Unbreak no-op buffer save message
17597         * lisp/files.el (basic-save-buffer): Accept called-interactively as
17598         an argument instead of directly invoking called-interactively-p,
17599         which will always yield nil in that context.
17601 2015-04-21  Alan Mackenzie  <acm@muc.de>
17603         CC Mode: Do nothing in before/after-change-functions for text
17604         property changes
17605         Fixes bug#20266.
17606         * lisp/progmodes/cc-mode.el (c-basic-common-init): Make
17607         yank-handled-properties buffer local, and remove 'category from it.
17608         (c-called-from-text-property-change-p): New function.
17609         (c-before-change): Don't do anything if a call of the new function
17610         returns non-nil.
17611         (c-after-change): Don't do much if a call of the new function returns
17612         non-nil.
17613         (c-extend-after-change-region): Put changes to text property 'fontified
17614         inside c-save-buffer-state.
17616 2015-04-20  Stefan Monnier  <monnier@iro.umontreal.ca>
17618         Fix byte-compiler warnings about looking-back
17619         * lisp/vc/log-view.el (log-view-end-of-defun-1):
17620         * lisp/textmodes/tex-mode.el (latex-forward-sexp-1):
17621         * lisp/textmodes/reftex-ref.el (reftex-goto-label):
17622         * lisp/textmodes/bibtex.el (bibtex-insert-kill):
17623         * lisp/progmodes/sh-script.el (sh--maybe-here-document):
17624         * lisp/progmodes/ruby-mode.el (ruby-end-of-defun):
17625         * lisp/progmodes/ada-mode.el (ada-in-numeric-literal-p):
17626         * lisp/org/org.el (org-insert-heading, org-sort-entries):
17627         * lisp/org/org-mouse.el (org-mouse-end-headline)
17628         (org-mouse-context-menu):
17629         * lisp/org/org-clock.el (org-clock-cancel):
17630         * lisp/man.el (Man-default-man-entry):
17631         * lisp/mail/rmail.el (rmail-get-new-mail, rmail-insert-inbox-text)
17632         (rmail-ensure-blank-line):
17633         * lisp/mail/footnote.el (Footnote-delete-footnote):
17634         * lisp/mail/emacsbug.el (report-emacs-bug):
17635         * lisp/info.el (Info-follow-reference, Info-fontify-node):
17636         * lisp/info-look.el (info-lookup-guess-custom-symbol):
17637         * lisp/help-fns.el (help-fns--key-bindings):
17638         * lisp/files.el (hack-local-variables):
17639         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-cmd-complete)
17640         (viper-get-ex-pat, ex-expand-filsyms, viper-get-ex-file)
17641         (viper-complete-filename-or-exit):
17642         * lisp/emulation/viper-cmd.el (viper-backward-indent):
17643         * lisp/emacs-lisp/lisp-mode.el (calculate-lisp-indent):
17644         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
17645         * lisp/cus-edit.el (custom-face-edit-value-create):
17646         * lisp/calendar/todo-mode.el (todo-set-item-priority)
17647         (todo-filter-items-1, todo-convert-legacy-files)
17648         (todo-prefix-overlays): Add explicit second arg to looking-back.
17650 2015-04-20  Glenn Morris  <rgm@gnu.org>
17652         Avoid non-nil current-load-list at startup
17653         * src/process.c (init_process_emacs): Move Fprovide statement...
17654         (syms_of_process): ... to here.
17656         * lisp/loadup.el (custom-current-group-alist): Reset before dumping.
17658         * lisp/startup.el (command-line) <site-run-file>: Avoid rogue value
17659         in emacs -Q.
17661 2015-04-20  Ludovic Courtès  <ludo@gnu.org>
17663         * lisp/loadup.el (exec-path): Avoid storing build-time PATH in binary.
17664         (Bug#20330)
17666 2015-04-20  Glenn Morris  <rgm@gnu.org>
17668         * lisp/cus-start.el (exec-path): Set standard value, to avoid rogue.
17670         Tweak exec-path in uninstalled case
17671         * src/callproc.c (init_callproc): If running uninstalled, do not
17672         include eventual installation libexec directory in exec-path.
17674 2015-04-20  Artur Malabarba  <bruce.connor.am@gmail.com>
17676         * lisp/emacs-lisp/package.el: Filter by multiple keywords and
17677         cache keywords.
17678         (package-menu-filter): Accept a list of keywords.
17679         (package--all-keywords): New variable to cache known keywords.
17680         (package-all-keywords): Populate it if necessary.
17681         (package-refresh-contents): Reset it.
17683         * lisp/emacs-lisp/package.el: Make archive and status pseudo-keywords
17684         (package--has-keyword-p): Understand "arc:xxxx" and "status:xxxx"
17685         as special keywords which match agains package archive and status
17686         respectively.
17687         * etc/NEWS: Document it.
17689 2015-04-20  Eli Zaretskii  <eliz@gnu.org>
17691         Describe and index "empty overlays".
17692         * doc/lispref/display.texi (Overlays): Improve indexing.
17693         (Managing Overlays): Describe "empty" overlays.
17694         (Overlay Properties, Finding Overlays): Add cross-reference to
17695         where empty overlays are described.
17697 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
17699         Spelling fixes
17701         Quote 'like this' in top-level files
17702         * CONTRIBUTE, INSTALL, Makefile.in, README, configure.ac, make-dist:
17703         Prefer to single-quote 'like this' (instead of the older style
17704         `like this').
17705         * configure.ac: Fix some space-before-tab problems that 'git commit'
17706         complained about.
17708         Use bool for boolean in textprop.c, undo.c
17709         * src/textprop.c (soft, hard): Now constants instead of macros.
17710         (validate_plist): Rewrite to avoid need for boolean local.
17711         (interval_has_all_properties, interval_has_some_properties)
17712         (interval_has_some_properties_list, add_properties)
17713         (remove_properties, get_char_property_and_overlay)
17714         (Fnext_single_char_property_change)
17715         (Fprevious_single_char_property_change, add_text_properties_1)
17716         (Fremove_text_properties, Fremove_list_of_text_properties)
17717         (copy_text_properties):
17718         * src/tparam.c (tparam1):
17719         * src/undo.c (record_change, record_property_change)
17720         (syms_of_undo):
17721         Use 'true' and 'false' for booleans.
17723 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
17725         * lisp/vc/vc-git.el (vc-git-find-file-hook):
17726         Call `smerge-start-session' even when dealing with a stash
17727         conflict (bug#20292).
17729 2015-04-19  Vibhav Pant  <vibhavp@gmail.com>
17731         Add option to eshell/clear to clear scrollback.
17732         * lisp/eshell/esh-mode.el (eshell/clear-scrollback): New function.
17733         (eshell/clear): Add an optional SCROLLBACK argument.  If non-nil,
17734         scrollback contents are cleared.
17735         * etc/NEWS: Describe change.
17736         * doc/misc/eshell.texi: Add entry for `clear'.
17738 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
17740         * src/widget.c (set_frame_size): Prefer 'int' to 'unsigned'
17741         where either will do.
17743 2015-04-19  Steve Purcell  <steve@sanityinc.com>
17745         Assume package archive-contents are UTF8-encoded
17746         * lisp/emacs-lisp/package.el (package--read-archive-file):
17747         Set `coding-system-for-read' explicitly to 'utf-8 when reading the
17748         downloaded and cached archive-contents files, so that non-ASCII
17749         characters in package descriptions are displayed correctly in the
17750         `list-packages' menu.  (Bug#20231)
17752 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
17754         Abort when looking at stashed changes
17755         * lisp/vc/vc-git.el (vc-git-find-file-hook): Abort when looking at
17756         stashed changes (bug#20292).
17758 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
17760         Refactor low-level printing for simplicity
17761         * src/print.c (PRINTDECLARE): Remove.  Move its contents into
17762         PRINTPREPARE; doable now that we assume C99.  All callers changed.
17763         (PRINTCHAR): Remove, as it adds more mystery than clarity.
17764         All callers changed.
17765         (strout): Assume that caller computes length.  All callers changed.
17766         (print_c_string): New function.
17767         (write_string, write_string_1): Compute length instead of asking
17768         the caller to compute it.  All callers changed.
17769         (write_string): Simplify by using write_string_1.
17770         (write_string_1): Simplify by using print_c_string.
17771         (Fterpri): Compute default val more clearly.
17772         (Fprin1_to_string, print_object):
17773         Assume C99 to avoid unnecessary nesting.
17774         (print_object): Prefer print_c_string to multiple printchar, or
17775         to calling strout with -1 length.  Coalesce into sprintf when
17776         this is easy.
17778 2015-04-18  Paul Eggert  <eggert@cs.ucla.edu>
17780         Prefer "Bug#1234" in commit messages (Bug#20325)
17781         * .dir-locals.el (log-edit-mode): Don't rewrite Bug#,
17782         as this isn't useful for Git.
17783         * CONTRIBUTE: Suggest "Bug#1234" instead of "Fixes: debbugs:1234".
17785 2015-04-18  Glenn Morris  <rgm@gnu.org>
17787         * lisp/files.el (auto-mode-alist): Use conf mode for gitconfig, hgrc.
17788         (Bug#19506)
17790 2015-04-18  Tom Willemse  <tom@ryuslash.org>  (tiny change)
17792         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
17793         Do not use `chomp' as a function.  (Bug#19505)
17795 2015-04-18  Glenn Morris  <rgm@gnu.org>
17797         * lisp/net/browse-url.el (browse-url, browse-url-at-point): Doc fixes.
17799         * doc/emacs/misc.texi (Sorting): Small edit.
17800         (Bug#19896)
17802         * admin/admin.el (make-manuals): Add emacs-xtra in pdf and ps.
17804 2015-04-18  Simen Heggestøyl  <simenheg@gmail.com>
17806         css-mode.el: Support multi-line comment filling
17807         (Bug#20256)
17808         * lisp/textmodes/css-mode.el (css-fill-paragraph): Support multi-line
17809         comment filling.
17810         (css-adaptive-fill): New function.
17811         (css-mode): Set `adaptive-fill-function'.
17812         (scss-mode): Set `comment-continue'.
17814 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
17816         * lisp/emacs-lisp/seq.el (seq-concatenate, seq-into):
17817         Better error messages.
17819 2015-04-18  Ivan Radanov Ivanov  <ivanradanov@yahoo.co.uk>  (tiny change)
17821         Minor improvements in Bulgarian input methods
17822         * lisp/leim/quail/cyrillic.el (bulgarian-phonetic, bulgarian-bds):
17823         Replace U+042C with U+045D, as the former character is not used in
17824         the modern Bulgarian language.
17825         (Bug#20350)
17827 2015-04-17  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
17829         Improve EUDC manual
17830         * doc/misc/eudc.texi (LDAP Configuration): Mention simple and SASL
17831         authentication schemes.  Add index items.  Shorten example server
17832         name.
17834 2015-04-17  Dmitry Gutov  <dgutov@yandex.ru>
17836         Don't show both feature and function with the same name
17837         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
17838         Don't show both feature and function with the same name.
17840         (elisp--xref-identifier-location): Skip variable, if it's also
17841         a function
17842         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
17843         Avoid returning both the variable and the function for the same
17844         minor mode.
17846 2015-04-17  Wolfgang Jenkner  <wjenkner@inode.at>
17848         Fix fontification of keywords clobbered by the prompt
17849         * lisp/comint.el (comint-output-filter): Remove the uses of
17850         with-silent-modifications I introduced as part of the last change.
17851         This fixes, e.g., erratically missing highlighting when running
17852         ./configure --help; ./configure in a shell-mode buffer with
17853         compilation-shell-minor-mode turned on.
17855 2015-04-17  Glenn Morris  <rgm@gnu.org>
17857         * admin/authors.el (authors-valid-file-names)
17858         (authors-renamed-files-alist): Additions.
17860 2015-04-17  Stefan Monnier  <monnier@iro.umontreal.ca>
17862         * lisp/indent.el (indent-region): Don't deactivate the mark.
17863         (Bug#20357)
17865 2015-04-17  Sam Steingold  <sds@gnu.org>
17867         * lisp/net/rcirc.el (defun-rcirc-command): Mark `target' as ignorable.
17869 2015-04-16  Leo Liu  <sdl.web@gmail.com>
17871         * lisp/progmodes/xref.el (xref-push-marker-stack): Add optional arg.
17873 2015-04-16  Stefan Monnier  <monnier@iro.umontreal.ca>
17875         * lisp/erc/erc-pcomplete.el (erc-pcomplete):
17876         Don't use `pcomplete' any more.
17878 2015-04-16  Glenn Morris  <rgm@gnu.org>
17880         * admin/authors.el (authors-lax-changelogs): Update for erc changes.
17882 2015-04-16  Eli Zaretskii  <eliz@gnu.org>
17884         Don't link with -ljpeg on MS-Windows, to avoid dependency on DLL
17885         * configure.ac (LIBJPEG): Leave it empty for MinGW.
17887 2015-04-16  Glenn Morris  <rgm@gnu.org>
17889         * lisp/replace.el (query-replace-from-to-separator):
17890         Delay initialization to avoid rogue setting after startup.
17892 2015-04-16  Paul Eggert  <eggert@cs.ucla.edu>
17894         Pre-4.6 GCC succeeds with unknown option
17895         * configure.ac (emacs_cv_prog_cc_nopie): Port to pre-4.6 GCC.
17896         (Bug#20338)
17898 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
17900         '[:graph:]' now excludes whitespace, not just ' '
17901         * doc/lispref/searching.texi (Char Classes):
17902         * lisp/emacs-lisp/rx.el (rx): Document [:graph:] to be [:print:]
17903         sans whitespace (not sans space).
17904         * src/character.c (graphicp): Exclude all Unicode whitespace chars,
17905         not just space.
17906         * src/regex.c (ISGRAPH): Exclude U+00A0 (NO-BREAK SPACE).
17908 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
17910         * lisp/subr.el (substitute-key-definition-key, special-form-p)
17911         (macrop): Drop deprecated second arg to indirect-function.
17912         (looking-back): Make the second arg non-optional.
17914         * lisp/org/org-clock.el (org-x11idle-exists-p): Be honest about which
17915         command is actually sent to the shell.
17917 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
17919         Port jpeg configuration to Solaris 10 with Sun C
17920         * configure.ac: Check for jpeglib 6b by trying to link it, instead
17921         of relying on cpp magic that has problems in practice.  Check for
17922         both jpeglib.h and jerror.h features.  Remove special case for
17923         mingw32, which should no longer be needed (and if it were needed,
17924         should now be addressable by hotwiring emacs_cv_jpeglib).
17925         (Bug#20332)
17927 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
17929         Move some Elisp-specific code from lisp-mode.el to elisp-mode.el
17930         * lisp/emacs-lisp/lisp-mode.el (lisp--el-font-lock-flush-elisp-buffers):
17931         Move to elisp-mode.el.
17932         (lisp-mode-variables): (Re)move elisp-specific settings.
17933         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode): Add settings removed
17934         from lisp-mode-variables.
17935         (elisp--font-lock-flush-elisp-buffers): New function, moved from
17936         lisp-mode.el.
17938         * lisp/emacs-lisp/lisp-mode.el (lisp--el-non-funcall-position-p):
17939         Avoid pathological slowdown at top-level in large file.
17941 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
17943         Standardize names of ChangeLog history files
17944         Suggested by Glenn Morris in:
17945         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
17946         * Makefile.in (install-man): Don't treat ChangeLog.1 as a man page.
17947         * doc/man/ChangeLog.1: Rename back from doc/man/ChangeLog.01.
17948         * lisp/erc/ChangeLog.1: New file, containing the old contents of ...
17949         * lisp/erc/ChangeLog.01, lisp/erc/ChangeLog.02, lisp/erc/ChangeLog.03:
17950         * lisp/erc/ChangeLog.04, lisp/erc/ChangeLog.05, lisp/erc/ChangeLog.06:
17951         * lisp/erc/ChangeLog.07, lisp/erc/ChangeLog.08, lisp/erc/ChangeLog.09:
17952         Remove.
17954         Split top-level entries into pre- and post-April 7
17955         This more clearly distingiushes pre-April-7 ChangeLog entries (which
17956         are for top-level files only) from post-April-7 entries (which are
17957         about files at all levels.  Problem reported by Glenn Morris in:
17958         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
17959         * ChangeLog.1: Move post-April-7 entries from here ...
17960         * ChangeLog.2: ... to this new file.
17961         * Makefile.in (CHANGELOG_HISTORY_INDEX_MAX): Bump to 2.
17963 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
17965         Fix recent cus-start changes that added customize-rogues
17966         * lisp/cus-start.el (custom-delayed-init-variables): Initialize the
17967         vars early.
17968         * lisp/loadup.el ("cus-start"): Move to the end to reduce
17969         customize-rogue.
17971 2015-04-15  Nicolas Petton  <nicolas@petton.fr>
17973         Define cl-concatenate as an alias to seq-concatenate
17974         * lisp/emacs-lisp/cl-extra.el (cl-concatenate): Removes duplicated
17975           code by making cl-concatenate an alias to seq-concatenate.
17977 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
17979         * src/lread.c (intern_1): Make sure we'd find the symbol we add
17980         (Bug#20334)
17981         * src/xfaces.c (resolve_face_name): Don't use `intern' with
17982         Lisp_Strings.
17984 2015-04-15  Glenn Morris  <rgm@gnu.org>
17986         * doc/lispref/sequences.texi (Sequence Functions): Fix typo in previous.
17988 2015-04-15  Lars Magne Ingebrigtsen  <larsi@gnus.org>
17990         Clean up gnus-uu saving code slightly
17991         * lisp/gnus/gnus-uu.el (gnus-uu-save-article): Make the
17992         save-restriction/widen calls make more sense.
17994 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
17996         Make [:graph:] act like [:print:] sans space
17997         In POSIX [[:print:]] is equivalent to [ [:graph:]], so change
17998         [:graph:] so that it matches everything that [:print:] does,
17999         except for space.
18000         * doc/lispref/searching.texi (Char Classes):
18001         * etc/NEWS:
18002         * lisp/emacs-lisp/rx.el (rx):
18003         Document [:graph:] to be [:print:] sans ' '.
18004         * src/character.c, src/character.h (graphicp): New function.
18005         * src/regex.c (ISGRAPH) [emacs]: Use it.
18006         (BIT_GRAPH): New macro.
18007         (BIT_PRINT): Increase to 0x200, to make room for BIT_GRAPH.
18008         (re_wctype_to_bit) [! WIDE_CHAR_SUPPORT]:
18009         Return BIT_GRAPH for RECC_GRAPH.
18010         (re_match_2_internal) [emacs]: Use ISGRAPH if BIT_GRAPH,
18011         and ISPRINT if BIT_PRINT.
18013 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
18015         automated/eieio-test-methodinvoke.el (make-instance) <(subclass C)>:
18016         Don't use call-next-method in a cl-defmethod.
18018         * lisp/emacs-lisp/eieio-core.el (eieio--class): Derive from cl--class
18019         (eieio--class-p): Remove, provided by cl-defstruct.
18021 2015-04-14  Nicolas Petton  <nicolas@petton.fr>
18023         Add seq-intersection and seq-difference to the seq library
18024         * lisp/emacs-lisp/seq.el (seq-intersection, seq-difference):
18025         New functions.
18026         * test/automated/seq-tests.el: Add tests for seq-intersection and
18027         seq-difference.
18028         * doc/lispref/sequences.texi: Add documentation for seq-intersection
18029         and seq-difference.
18031 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
18033         * lisp/emacs-lisp/eieio-core.el (class-abstract-p): Don't inline,
18034         to avoid leaking internals.
18036 2015-04-14  Sam Steingold  <sds@gnu.org>
18038         package--ensure-init-file: widen requires save-restriction
18040 2015-04-14  Eli Zaretskii  <eliz@gnu.org>
18042         Improve the commit-msg Git hook for unibyte environments
18043         * build-aux/git-hooks/commit-msg: Set LC_ALL=C, before running Awk
18044         in unibyte environments.  (Suggested by Paul Eggert
18045         <eggert@cs.ucla.edu>.)  Use a more accurate approximation to
18046         [:print:], based on UTF-8 sequences of the unprintable characters.
18048         Describe problems with cursor caused by Windows Magnifier
18049         * etc/PROBLEMS: Describe the problem with cursor shape on
18050         MS-Windows due to Windows Magnifier.
18051         (Bug#20271)
18053         Make [:print:] support non-ASCII characters correctly
18054         * src/regex.c (ISPRINT): Call 'printablep' for multibyte characters.
18055         (BIT_PRINT): New bit mask.
18056         (re_wctype_to_bit): Return BIT_PRINT for RECC_PRINT.
18057         * src/character.c (printablep): New function.
18058         * src/character.h (printablep): Add prototype.
18059         * lisp/emacs-lisp/rx.el (rx): Doc fix: document the new behavior
18060         of 'print', 'alnum', and 'alphabetic'.
18061         * doc/lispref/searching.texi (Char Classes): Document the new
18062         behavior of [:print:].
18063         * etc/NEWS: Mention the new behavior of [:print:].
18065         Assign correct general-category and names to surrogates
18066         * admin/unidata/unidata-gen.el (unidata-setup-list): Don't ignore
18067         surrogates.  This avoids assigning them the default
18068         general-category of 'Cn', i.e. unassigned codepoints.
18069         (unidata-get-name): Give surrogates synthetic names.
18071 2015-04-14  Paul Eggert  <eggert@cs.ucla.edu>
18073         Assume C89 offsetof in xterm.c, xlwmenu.c
18074         * lwlib/xlwmenu.c (offset):
18075         * src/xterm.c (cvt_string_to_pixel_args):
18076         Use offsetof, not XtOffset.
18078 2015-04-14  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
18080         Assume C89 offsetof in widget.c
18081         * src/widget.c (XtOffset): Remove; no longer needed.
18082         (offset): Implement via offsetof instead of via pre-C89 XtOffset hack.
18084         Fix think-o in previous patch
18085         * src/window.c (count_windows, get_leaf_windows):
18086         Don't optimize count_windows incorrectly.
18088 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
18090         Avoid some int overflows in window.c
18091         * src/print.c (print_object):
18092         * src/window.c (sequence_number):
18093         * src/window.h (struct window.sequence_number):
18094         Don't assume window sequence number fits in int.
18095         * src/window.c (window_select_count):
18096         * src/window.h (struct window.use_time, window_select_count):
18097         Don't assume window use time fits in int.
18098         * src/window.c (Fsplit_window_internal):
18099         Don't assume user-supplied integer, or sum, fits in int.
18100         (Fset_window_configuration, count_windows, get_leaf_windows)
18101         (save_window_save, Fcurrent_window_configuration):
18102         Use ptrdiff_t for object counts.
18103         (Fset_window_configuration): Omit unused local 'n'.
18104         (count_windows): Simplify by writing in terms of get_leaf_windows.
18105         (get_leaf_windows): Don't store through FLAT if it's null.
18106         (extract_dimension): New static function.
18107         (set_window_margins, set_window_fringes, set_window_scroll_bars):
18108         Use it to avoid undefined behavior when converting user-supplied
18109         integer to 'int'.
18111 2015-04-13  Glenn Morris  <rgm@gnu.org>
18113         Minor doc copyedits
18114         * doc/emacs/custom.texi (Init Examples): Tweak example, replace typo.
18115         * doc/lispintro/emacs-lisp-intro.texi (condition-case): Typo fix.
18117 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
18119         [Gnus] Catch the invalid-operation that idna.el will issue
18120         * lisp/gnus/gnus-art.el (gnus-use-idna):
18121         * lisp/gnus/gnus-sum.el (gnus-summary-idna-message):
18122         * lisp/gnus/message.el (message-use-idna):
18123         Catch the invalid-operation that idna.el will issue.
18125 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
18127         * doc/lispref/processes.texi (Shell Arguments): Prefer diff -u.
18129 2015-04-13  Sam Steingold  <sds@gnu.org>
18131         package--ensure-init-file: widen before looking for
18132         "(package-initialize)"
18134 2015-04-13  Dmitry Gutov  <dgutov@yandex.ru>
18136         Change diff-switches default to `-u' (Bug#20290)
18137         * doc/emacs/files.texi (Comparing Files): Document the new default
18138         value of `diff-switches'.
18139         * doc/emacs/trouble.texi (Sending Patches): Document the preference
18140         for unified diff format.  Escape the plus in the suggested `-F' regexp
18141         value.
18142         * lisp/vc/diff.el (diff-switches): Change the default to `-u'.
18144 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
18146         (gnus-group--setup-tool-bar-update): Fix last change
18147         * lisp/gnus/gnus-group.el (gnus-group--setup-tool-bar-update):
18148         cursor-sensor-functions should be a list of functions.
18150 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
18152         * lisp/gnus/gnus-topic.el (gnus-topic-mode):
18153         Use gmm-called-interactively-p.
18155 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
18157         * lisp/loadup.el ("cus-start"): Load it after loaddefs.el
18158         (Bug#20321)
18159         * lisp/cus-start.el (read-buffer-function): Don't advertise
18160         iswitchb-read-buffer any more.
18161         (iswitchb): Don't tweak this obsolete group any more.
18163 2015-04-13  Artur Malabarba  <bruce.connor.am@gmail.com>
18165         * lisp/emacs-lisp/package.el: Fix package--ensure-init-file.
18167         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Implement docstrings.
18168         Adding a string after a constructor's argument list will use
18169         that string as the constructor function docstring.  If this string
18170         is absent but the struct itself was given a docstring, use that as
18171         the constructor's docstring.
18172         Fixes bug#17284.
18174 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
18176         Deprecate `intangible' and `point-entered' properties
18177         * lisp/emacs-lisp/cursor-sensor.el: New file.
18178         * lisp/simple.el (pre-redisplay-functions): New hook.
18179         (redisplay--pre-redisplay-functions): New function.
18180         (pre-redisplay-function): Use it.
18181         (minibuffer-avoid-prompt): Mark obsolete.
18182         (redisplay--update-region-highlight): Adapt it to work as a function on
18183         pre-redisplay-functions.
18184         * lisp/cus-start.el (minibuffer-prompt-properties--setter): New fun.
18185         (minibuffer-prompt-properties): Use it.  Use cursor-intangible rather
18186         than point-entered to make the prompt intangible.
18187         * lisp/forms.el: Move `provide' calls to the end.
18188         (forms-mode): Don't use `run-hooks' on a local var.
18189         (forms--make-format, forms--make-format-elt-using-text-properties):
18190         Use cursor-intangible rather than `intangible'.
18191         (forms-mode): Enable cursor-intangible-mode.
18192         * lisp/isearch.el (isearch-mode): Use defvar-local.
18193         (cursor-sensor-inhibit): Declare.
18194         (isearch-mode): Set cursor-sensor-inhibit.
18195         (isearch-done): Set it back.
18196         (isearch-open-overlay-temporary, isearch-open-necessary-overlays)
18197         (isearch-close-unnecessary-overlays): Don't bother with `intangible'
18198         any more.
18199         * lisp/ses.el (ses-localvars): Remove `mode-line-process'.
18200         (ses-sym-rowcol, ses-cell-value, ses-col-width, ses-col-printer):
18201         Add Edebug spec.
18202         (ses-goto-print, ses-print-cell, ses-adjust-print-width)
18203         (ses-goto-data, ses-setup, ses-copy-region): Don't let-bind
18204         inhibit-point-motion-hooks any more.
18205         (ses--cell-at-pos, ses--curcell): New functions, extracted from
18206         ses-set-curcell.
18207         (ses-set-curcell): Use them.
18208         (ses-print-cell, ses-setup): Use cursor-intangible instead of
18209         `intangible'.  Make sure cursor-intangible isn't sticky at BOB.
18210         (ses-print-cell-new-width, ses-reprint-all, ses-recalculate-all):
18211         Use ses--cell-at-pos.
18212         (ses--mode-line-process, ses--cursor-sensor-highlight): New functions,
18213         extracted from ses-command-hook.  Make them work with multiple windows
18214         displaying the same buffer.
18215         (ses-mode): Use them via mode-line-process and pre-redisplay-functions.
18216         Enable cursor-intangible-mode.
18217         (ses-command-hook): Remove cell highlight and mode-line update code.
18218         (ses-forward-or-insert, ses-copy-region-helper, ses-sort-column):
18219         Update for new name of text-property holding the cell name.
18220         (ses-rename-cell): Don't mess with mode-line-process.
18221         * lisp/erc/erc-stamp.el (erc-add-timestamp): Use the new
18222         cursor-sensor-functions property instead of point-entered.
18223         (erc-insert-timestamp-right, erc-format-timestamp):
18224         Use cursor-intangible rather than `intangible'.
18225         (erc-munge-invisibility-spec): Use add-to-invisibility-spec and
18226         remove-from-invisibility-spec.  Enable cursor-intangible-mode and
18227         cursor-sensor-mode if needed.
18228         (erc-echo-timestamp): Adapt to calling convention of
18229         cursor-sensor-functions.
18230         (erc-insert-timestamp-right): Remove unused vars `current-window' and
18231         `indent'.
18232         * lisp/gnus/gnus-group.el (gnus-tmp-*): Declare.
18233         (gnus-update-group-mark-positions): Remove unused `topic' var.
18234         (gnus-group-insert-group-line): Remove unused var `header'.
18235         (gnus-group--setup-tool-bar-update): New function.
18236         (gnus-group-insert-group-line): Use it.
18237         (gnus-group-update-eval-form): Declare local
18238         dynamically-bound variables.
18239         (gnus-group-unsubscribe-group): Use \` and \' to match string bounds.
18240         * lisp/gnus/gnus-topic.el (gnus-topic-jump-to-topic)
18241         (gnus-group-prepare-topics, gnus-topic-update-topic)
18242         (gnus-topic-change-level, gnus-topic-catchup-articles)
18243         (gnus-topic-remove-group, gnus-topic-delete, gnus-topic-indent):
18244         Use inhibit-read-only.
18245         (gnus-topic-prepare-topic): Use gnus-group--setup-tool-bar-update.
18246         (gnus-topic-mode): Use define-minor-mode and derived-mode-p.
18247         * lisp/textmodes/reftex-index.el (reftex-display-index):
18248         Use cursor-intangible-mode if available.
18249         (reftex-index-post-command-hook): Check cursor-intangible.
18250         * lisp/textmodes/reftex-toc.el (reftex-toc):
18251         Use cursor-intangible-mode if available.
18252         (reftex-toc-recenter, reftex-toc-post-command-hook):
18253         Check cursor-intangible.
18254         * lisp/textmodes/sgml-mode.el: Use lexical-binding.
18255         (sgml-tag): Use cursor-sensor-functions instead of point-entered.
18256         (sgml-tags-invisible): Use with-silent-modifications and
18257         inhibit-read-only.  Enable cursor-sensor-mode.
18258         (sgml-cursor-sensor): Rename from sgml-point-entered and adjust to
18259         calling convention of cursor-sensor-functions.
18260         * lisp/textmodes/table.el (table-cell-map-hook, table-load-hook)
18261         (table-point-entered-cell-hook, table-point-left-cell-hook):
18262         Don't autoload.
18263         (table-cell-entered-state): Remove var.
18264         (table--put-cell-point-entered/left-property)
18265         (table--remove-cell-properties):
18266         Use cursor-sensor-functions rather than point-entered/left.
18267         (table--point-entered/left-cell-function): Merge
18268         table--point-entered-cell-function and table--point-left-cell-function
18269         and adjust to calling convention of cursor-sensor-functions.
18271         Update ldef-boots.el
18273         * lisp/emacs-lisp/pcase.el (pcase-dolist): Autoload as well.
18275         * doc/misc/eieio.texi: Don't advertise now obsolete constructs
18277         Collapse successive char deletions in the undo log
18278         * src/cmds.c (remove_excessive_undo_boundaries): New function,
18279         extracted from Fself_insert_command.
18280         (Fdelete_char, Fself_insert_command): Use it.
18281         * src/fileio.c (Fmake_symbolic_link): Rename arg to `target'.
18282         * src/keyboard.c (syms_of_keyboard): `top-level' shouldn't be special.
18284         xterm and OSC 52: Add NEWS entry, and tweak the code
18285         * lisp/term/xterm.el (gui-set-selection) <nil>: Move method definition
18286         to top-level.
18287         (terminal-init-xterm-activate-set-selection): Set a terminal property.
18288         (xterm--set-selection): Use it instead of checking the value of
18289         `terminal-initted'.  Don't use string-bytes.
18291 2015-04-13  Philipp Stephani  <p.stephani2@gmail.com>
18293         xterm.el: Implement OSC-52 functionality for setting the X selection
18294         * lisp/term/xterm.el (xterm-max-cut-length): New var.
18295         (xterm--set-selection, terminal-init-xterm-activate-set-selection):
18296         New funs.
18297         (terminal-init-xterm, xterm--version-handler): Use them.
18299 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
18301         Remove left over code from when we used an obsolete/loaddefs.el file
18302         * lisp/subr.el (do-after-load-evaluation): Remove left over code from
18303         when we used an obsolete/loaddefs.el file.
18305         * lisp/cedet/semantic/fw.el (semantic-exit-on-input)
18306         (semanticdb-without-unloaded-file-searches): Use declare.
18307         (semantic-fw-add-edebug-spec): Remove.
18309         * lisp/completion.el (completion-lisp-mode-hook):
18310         Use completion-separator-chars rather than local key binding.
18312         * src/*.c: Set deactivate_mark buffer-locally
18313         (Bug#20260)
18314         * src/insdel.c (prepare_to_modify_buffer_1):
18315         * src/fileio.c (Finsert_file_contents): Set deactivate_mark
18316         buffer-locally.
18318 2015-04-12  Fabián Ezequiel Gallina  <fgallina@gnu.org>
18320         python.el: Keep symmetry on sexp navigation with parens
18321         (Bug#19954)
18322         * lisp/progmodes/python.el
18323         (python-nav--forward-sexp): Add argument skip-parens-p.
18324         (python-nav-forward-sexp, python-nav-backward-sexp)
18325         (python-nav-forward-sexp-safe)
18326         (python-nav-backward-sexp-safe): Use it.
18327         * test/automated/python-tests.el
18328         (python-nav-forward-sexp-1): Fix test.
18330 2015-04-12  João Távora  <joaotavora@gmail.com>
18332         Don't use `setq-local' in Gnus code
18333         This might break upstream builds with older Emacsen
18334         * lisp/gnus/message.el (message-mode): Use `set' and
18335         `make-local-variable' instead of `setq-local'.
18337 2015-04-12  Paul Eggert  <eggert@cs.ucla.edu>
18339         Update Makefile.in's .PHONY dependencies
18340         * Makefile.in (change-history-commit, master-branch-is-current)
18341         (no-ChangeLog): Now phony.
18343         Remove configure's --with-mmdf option
18344         * configure.ac (MAIL_USE_MMDF): Remove.
18345         * etc/NEWS: Document this.
18346         * lib-src/movemail.c: Assume MAIL_USE_MMDF is not defined.
18347         (Bug#20308)
18349         * doc/man/ChangeLog.01: Rename from doc/man/ChangeLog.1.
18350         That way, 'make install' won't think it's a man page.
18351         Reported by Ashish SHUKLA in:
18352         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00656.html
18354         Improve 'make change-history' prereq tests
18355         * Makefile.in (gen_origin): Fix to match what's in the master branch.
18356         (no-ChangeLog, master-branch-is-current): New rules.
18357         (change-history): Depend on them, to avoid similar future problems.
18358         Escape the local-variables string to pacify Emacs when editing
18359         Makefile.in.
18361 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
18363         * test/automated/package-test.el (with-package-test):
18364         Kill Packages buffer.
18366         * lisp/emacs-lisp/package.el: Improve transaction y-or-n prompt.
18367         (package-menu--prompt-transaction-p): Prompt for "Delete" first,
18368         "Upgrade" last, and use capitalized instead of all-caps.
18370         * lisp/emacs-lisp/package.el: Completely silence async operations.
18371         (package--make-autoloads-and-stuff): Silence autoloads.
18372         (package--save-selected-packages): New function, silences
18373         `customize-save-variable'.
18374         (package--user-selected-p, package-install-from-buffer)
18375         (package-delete, package-install): Use it.
18376         (package-install-from-archive)
18377         (package-menu--perform-transaction): Silence.
18378         (package-menu-execute): Feedback when operation starts.
18380         Use delay-mode-hooks when visiting the init-file
18381         * lisp/emacs-lisp/package.el (package--ensure-init-file):
18382         delay-mode-hooks.
18383         * lisp/cus-edit.el (custom-save-all): delay-mode-hooks.
18385         * lisp/files.el: Only message when saving if save-silently is nil.
18386         (save-silently): New variable.
18387         (files--message): New function.
18388         (find-file-noselect, save-buffer, basic-save-buffer)
18389         (basic-save-buffer-2, save-some-buffers, not-modified)
18390         (append-to-file): Use them.
18392 2015-04-12  Johan Bockgård  <bojohan@gnu.org>
18394         Support debug declarations in pcase macros
18395         * lisp/emacs-lisp/pcase.el (pcase-MACRO): New edebug spec.
18396         (pcase-UPAT): Use it.  Remove "`".
18397         (pcase--edebug-match-macro): New function.
18398         (pcase-defmacro): Support debug declarations.
18399         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
18400         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>:
18401         * lisp/emacs-lisp/pcase.el (\`): <pcase-defmacro>:
18402         Add debug declaration.
18404         pcase.el: Edebug support for `app' and vector patterns
18405         * lisp/emacs-lisp/pcase.el (pcase-FUN): New edebug spec.
18406         (pcase-UPAT): Use it.  Support `app' patterns.
18407         (pcase-QPAT): Support vector patterns.
18409         edebug.el: Disambiguate vector specifications
18410         * lisp/emacs-lisp/edebug.el (edebug-match-list): Always treat
18411         `(vector ...)' as a vector specification, not as a sublist.
18413         (gnus-summary-refer-thread): Don't clobber unread articles
18414         This fixes a bug where `A T' causes "random" articles to become marked
18415         as read.
18416         * lisp/gnus/gnus-sum.el (gnus-summary-refer-thread): Make sure
18417         gnus-newsgroup-unreads remains sorted.
18419         mouse-sel.el: Fix mouse-sel-get-selection-function
18420         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
18421         Use gui--last-selected-text-primary instead of no longer existing
18422         gui-last-selected-text.
18424         * lisp/rect.el (delete-whitespace-rectangle-line): Don't cross EOL.
18426         * lisp/net/nsm.el (nsm-query-user): Use cursor-in-echo-area.
18428 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
18430         * lisp/emacs-lisp/package.el (list-packages): Avoid redundant generate.
18432         * lisp/emacs-lisp/package.el (list-packages): Call refresh in
18433         right buffer.
18435         * lisp/emacs-lisp/bytecomp.el: Silence noninteractive compilations.
18436         (byte-compile--interactive): New var.
18437         (byte-compile--message): New function.
18438         (byte-compile-log-1, byte-force-recompile)
18439         (byte-recompile-directory, byte-recompile-file)
18440         (byte-compile-file, compile-defun)
18441         (byte-compile-file-form-defmumble, byte-compile)
18442         (byte-compile-file-form-defalias, display-call-tree): Use it.
18444         * lisp/files.el: Don't message when nothing happened.
18445         (save-some-buffers, basic-save-buffer): Before messaging to say
18446         "nothing was saved" check if (called-interactively-p 'any).
18448 2015-04-12  João Távora  <joaotavora@gmail.com>
18450         Summary: Improve sexp-based movement in message-mode
18451         Works by giving citations and smileys a different syntax.  This helps
18452         modes like `show-paren-mode', `electric-pair-mode', and C-M-*
18453         sexp-based movement.
18454         * lisp/gnus/message.el (message--syntax-propertize): New function.
18455         (message-mode): Set syntax-related vars.
18456         (message-smileys): New variable.
18457         * test/automated/message-mode-tests.el: New file
18459 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
18461         Use bool for boolean in window.c
18462         * src/window.c: Omit unnecessary static function decls.
18463         (adjust_window_count, select_window, Fselect_window)
18464         (window_body_width, Fwindow_body_height, Fwindow_body_width)
18465         (set_window_hscroll, check_window_containing, Fwindow_at)
18466         (Fwindow_end, Fset_window_start, Fpos_visible_in_window_p)
18467         (unshow_buffer, replace_window, recombine_windows)
18468         (add_window_to_list, candidate_window_p, next_window)
18469         (Fnext_window, Fprevious_window, window_loop, check_all_windows)
18470         (Fget_buffer_window, Fdelete_other_windows_internal)
18471         (replace_buffer_in_windows_safely, set_window_buffer)
18472         (Fset_window_buffer, Fforce_window_update)
18473         (temp_output_buffer_show, make_parent_window)
18474         (window_resize_check, window_resize_apply, Fwindow_resize_apply)
18475         (resize_frame_windows, Fsplit_window_internal)
18476         (Fdelete_window_internal, grow_mini_window, shrink_mini_window)
18477         (Fresize_mini_window_internal, mark_window_cursors_off)
18478         (window_scroll, window_scroll_pixel_based)
18479         (window_scroll_line_based, scroll_command, Fscroll_other_window)
18480         (Fscroll_left, Fscroll_right, displayed_window_lines, Frecenter)
18481         (Fmove_to_window_line, Fset_window_configuration)
18482         (delete_all_child_windows, apply_window_adjustment)
18483         (set_window_fringes, set_window_scroll_bars)
18484         (Fset_window_vscroll, foreach_window, foreach_window_1)
18485         (compare_window_configurations, Fcompare_window_configurations):
18486         Prefer 'bool', 'true', and 'false' for booleans.
18487         * src/window.h (WINDOW_MODE_LINE_LINES)
18488         (WINDOW_HEADER_LINE_LINES): Omit unnecessary "!!" on bool value.
18490 2015-04-11  Artur Malabarba  <bruce.connor.am@gmail.com>
18492         Speed up byte-compilation and autoload generation by avoiding mode-hooks
18493         This prevents emacs-lisp-mode-hook from being run everytime an
18494         autoload file is generated, which can account for a fraction of
18495         package installation time depending on the hooks the user has
18496         configured.
18497         * lisp/emacs-lisp/bytecomp.el (byte-compile-file): Use delay-mode-hooks.
18498         * lisp/emacs-lisp/autoload.el (autoload-find-file)
18499         (autoload-find-generated-file): Use delay-mode-hooks.
18501         * lisp/emacs-lisp/package.el: Improve `package-menu-refresh'.
18502         (package-menu-refresh): Respect async and do new package checking.
18503         (list-packages): Use `package-menu-refresh' instead of repeating code.
18505         * lisp/emacs-lisp/package.el: Improve package-menu-quick-help.
18506         (package--quick-help-keys): New variable.
18507         (package--prettify-quick-help-key): New function.
18508         (package-menu-quick-help): Use it.
18510         * lisp/emacs-lisp/package.el: Fix initially wrong compat table.
18511         (package--build-compatibility-table): Require finder.
18513         * test/automated/package-test.el: Fix new test.
18515         * lisp/emacs-lisp/package.el: Silence async operations.
18516         (package--silence): New variable.
18517         (package--message): New function.
18518         (package-import-keyring, package-refresh-contents)
18519         (package-compute-transaction, package-install, package-delete)
18520         (package-menu--perform-transaction, package-menu-execute): Use it.
18522         * test/automated/package-test.el: Test async functionality.
18523         (package-test-update-archives-async): New test.
18525 2015-04-11  Daiki Ueno  <ueno@gnu.org>
18527         Utilize `make-process' in epg.el
18528         * lisp/epg.el (epg-error-output): Abolish.
18529         (epg-context): New slot `error-buffer'.
18530         (epg--start): Use `make-process' and `make-pipe-process'.
18531         (epg--process-filter): Remove code separating stderr from stdout.
18532         (epg-wait-for-completion): Simplify `error-output' handling.
18533         (epg-reset): Dispose error buffer.
18535 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
18537         * .gitignore: Ignore doc temps and outputs.
18539         Port commit-msg to MSYS Bash+Gawk
18540         See Eli Zaretskii in:
18541         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00610.html
18542         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format)
18543         (cent_sign, print_at_sign, at_sign): Revert previous change.
18544         (print_at_sign): Prepend "BEGIN".
18545         (at_sign): Redirect from /dev/null to be safer with pre-POSIX awk.
18547         Port commit-msg to broken MS-Windows shell
18548         * build-aux/git-hooks/commit-msg (cent_sign):
18549         Just use UTF-8 here rather than ASCII + printf, as the latter fails
18550         on a broken MS-Windows shell.  Reported by Eli Zaretskii in:
18551         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00592.html
18553 2015-04-11  Chris Zheng  <chriszheng99@gmail.com>  (tiny change)
18555         Support GnuTLS v3.4 and later on MS-Windows
18556         * src/gnutls.c (syms_of_gnutls) <libgnutls-version>: New DEFSYM.
18557         * lisp/term/w32-win.el (dynamic-library-alist): Determine which
18558         GnuTLS DLL to load according to value of libgnutls-version.
18559         (Bug#20294)
18561 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
18563         Minor quoting etc. fixes to misc manuals
18564         Fix some minor quoting and spacing issues.  Distinguish more
18565         clearly among grave accent and apostrophe (which are ASCII) and
18566         single quote (which is not).  Prefer the standard terms
18567         "apostrophe" and "grave accent" to alternative names that can be
18568         confusing.  Use apostrophes to single-quote ASCII text.
18569         * doc/misc/remember.texi: Spell the mystic's pseudonym in UTF-8
18570         rather than approximating it in ASCII with grave accent.
18572 2015-04-11  Daiki Ueno  <ueno@gnu.org>
18574         Respect more keyword args in `make-process'
18575         * src/process.c (Fmake_process): Respect `:sentinel' and `:filter'
18576         keywords as documented.
18578 2015-04-10  Dmitry Gutov  <dgutov@yandex.ru>
18580         Extract ChangeLog entries when committing a directory
18581         * lisp/vc/vc-dispatcher.el (vc-log-edit): Update FIXME comment.
18582         * lisp/vc/log-edit.el (log-edit-changelog-insert-entries):
18583         Add a FIXME comment.
18584         (log-edit-changelog-entries): Extract from
18585         `log-edit-changelog-entries', handle FILE being a directory
18586         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00555.html).
18588 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
18590         Fix problems found by --enable-gcc-warnings
18591         * src/process.c (create_process, Fmake_pipe_process)
18592         (Fmake_network_process): Omit unused locals.
18594         Fix commit-msg to handle scissors lines
18595         * build-aux/git-hooks/commit-msg:
18596         Ignore every line after a scissors line, such as a line generated
18597         by 'git commit -v'.  Problem reported by Johan Bockgård in:
18598         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00580.html
18600         port commit-msg to Gawk 3.0.4 (1999)
18601         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format, cent_sign)
18602         (print_at_sign, at_sign): New vars.  Use them to avoid problems
18603         Eli Zaretskii encountered with Gawk 3.0.4 (1999) on MSYS.  See:
18604         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
18606         Have commit-msg report commit failure
18607         * build-aux/git-hooks/commit-msg: If the commit is aborted,
18608         say so.  Simplify by doing this at the end.  Problem reported
18609         by Eli Zaretskii in:
18610         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
18612 2015-04-10  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
18614         Clean up LDAP Configuration section of EUDC manual
18615         * doc/misc/eudc.texi: Combine indices.
18616         (LDAP Configuration): Use command markup.  Add index entries.
18617         Change formatting.  Wrap long lines.  Add noindent markup.
18619 2015-04-10  Daiki Ueno  <ueno@gnu.org>
18621         Add facility to collect stderr of async subprocess
18622         * src/w32.h (register_aux_fd): New function declaration.
18623         * src/w32.c (register_aux_fd): New function.
18624         * src/process.h (struct Lisp_Process): New member stderrproc.
18625         * src/process.c (PIPECONN_P): New macro.
18626         (PIPECONN1_P): New macro.
18627         (Fdelete_process, Fprocess_status, Fset_process_buffer)
18628         (Fset_process_filter, Fset_process_sentinel, Fstop_process)
18629         (Fcontinue_process): Handle pipe process specially.
18630         (create_process): Respect p->stderrproc.
18631         (Fmake_pipe_process): New function.
18632         (Fmake_process): Add new keyword argument :stderr.
18633         (wait_reading_process_output): Specially handle a pipe process when
18634         it gets an EOF.
18635         (syms_of_process): Register Qpipe and Smake_pipe_process.
18636         * doc/lispref/processes.texi (Asynchronous Processes): Document
18637         `make-pipe-process' and `:stderr' keyword of `make-process'.
18638         * lisp/subr.el (start-process): Suggest to use `make-process' handle
18639         standard error separately.
18640         * test/automated/process-tests.el (process-test-stderr-buffer)
18641         (process-test-stderr-filter): New tests.
18642         * etc/NEWS: Mention new process type `pipe' and its usage with the
18643         `:stderr' keyword of `make-process'.
18645 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
18647         Minor quoting etc. fixes to lispref manual
18648         * doc/lispref/tips.texi (Documentation Tips):
18649         Distinguish more clearly among grave accent, apostrophe,
18650         and single quote.
18651         * doc/lispref/README, doc/lispref/buffers.texi:
18652         * doc/lispref/commands.texi, doc/lispref/control.texi:
18653         * doc/lispref/customize.texi, doc/lispref/display.texi:
18654         * doc/lispref/elisp.texi, doc/lispref/files.texi:
18655         * doc/lispref/frames.texi, doc/lispref/hash.texi:
18656         * doc/lispref/help.texi, doc/lispref/internals.texi:
18657         * doc/lispref/loading.texi, doc/lispref/makefile.w32-in:
18658         * doc/lispref/markers.texi, doc/lispref/modes.texi:
18659         * doc/lispref/nonascii.texi, doc/lispref/objects.texi:
18660         * doc/lispref/os.texi, doc/lispref/positions.texi:
18661         * doc/lispref/strings.texi, doc/lispref/syntax.texi:
18662         * doc/lispref/text.texi, doc/lispref/tips.texi:
18663         * doc/lispref/two-volume-cross-refs.txt, doc/lispref/windows.texi:
18664         Use American-style double quoting in ordinary text,
18665         and quote 'like this' when single-quoting in ASCII text.
18666         Also, fix some minor spacing issues.
18668 2015-04-10  Michael Albinus  <michael.albinus@gmx.de>
18670         Handle symlinked test directory in tramp-tests.el
18671         * test/automated/tramp-tests.el (tramp-test18-file-attributes)
18672         (tramp--test-check-files): Use `file-truename' for directories.
18674 2015-04-10  Eli Zaretskii  <eliz@gnu.org>
18676         Fix 'recenter' when visual-line-mode is turned on
18677         * src/window.c (Frecenter): Use the same code for GUI and TTY
18678         frames alike; use vmotion only for "initial" frames.  This is
18679         because vmotion doesn't support visual-line-mode.  Rewrite the
18680         'iarg >= 0' case to use move_it_* functions instead of using
18681         vmotion, for the same reason.  Fix the clipping of the argument
18682         value to support scroll-margin in all cases and avoid unwarranted
18683         recentering.  Reported by Milan Stanojević <milanst@gmail.com> in
18684         http://lists.gnu.org/archive/html/help-gnu-emacs/2015-04/msg00092.html,
18685         which see.
18687 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
18689         * lisp/abbrev.el (define-abbrev-table): Refine last change.
18691         * lisp/emacs-lisp/cl-lib.el: Partial revert of "2015-04-05 Rationalize
18692         use of c[ad]+r", so as to keep the "cl-" prefix on all
18693         cl-lib definitions.
18695         * lisp/progmodes/vhdl-mode.el (vhdl-prepare-search-2):
18696         Use inhibit-point-motion-hooks.
18698         * lisp/cedet/semantic: Remove some dead code.
18699         * lisp/cedet/semantic/util-modes.el
18700         (semantic-stickyfunc-header-line-format): Emacs<22 is not supported
18701         any more.
18702         * lisp/cedet/semantic/fw.el (semantic-buffer-local-value): Emacs<21 is
18703         not supported any more.
18704         (semantic-safe): Use `declare'.
18705         * lisp/cedet/semantic/decorate.el (semantic-set-tag-intangible)
18706         (semantic-tag-intangible-p): Remove unused functions.
18707         * lisp/cedet/semantic/complete.el (semantic-displayor-window-edges):
18708         Remove unused function.
18710         * lisp/gnus/gnus-art.el (gnus-hidden-properties): Simplify.
18711         (gnus-article-hide-text, gnus-article-unhide-text)
18712         (gnus-article-unhide-text-type): Remove special handling of
18713         `intangible' since that property is not used any more.
18714         (gnus-article-treat-body-boundary): Use gnus-hidden-properties.
18716 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
18718         Use the VC root in `log-edit-listfun'
18719         * lisp/vc/vc-dispatcher.el (vc-log-edit): Use the VC root in
18720         `log-edit-listfun'.
18722 2015-04-09  Jay Belanger  <jay.p.belanger@gmail.com>
18724         Fix description of Unix time, mention new function.
18725         * lisp/calc/calc-forms.el (calcFunc-unixtime): Fix adjustment for
18726         Unix time.
18727         * doc/misc/calc.texi (Date Forms): Fix description of Unix time.
18728         (Basic Operations on Units): Mention `calc-convert-exact-units'.
18730 2015-04-09  Artur Malabarba  <bruce.connor.am@gmail.com>
18732         * lisp/emacs-lisp/package.el: Use mode-line-process for notification.
18734 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
18736         * lisp/vc/log-edit.el (log-edit-insert-changelog-entries):
18737         Don't add newline after the last entry.
18739 2015-04-09  Simen Heggestøyl  <simenheg@gmail.com>
18741         css-mode.el: Add "not" pseudo-class
18742         (Bug#20267)
18743         * lisp/textmodes/css-mode.el (css-pseudo-class-ids): Add "not" to
18744         list of CSS pseudo-classes.
18746 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
18748         * etc/NEWS: Add missing entry for "Stop messing with the EMACS env var".
18750 2015-04-09  Michael Albinus  <michael.albinus@gmx.de>
18752         Stop messing with the EMACS env var
18753         * doc/emacs/misc.texi (Interactive Shell): Remove description of
18754         EMACS env var.
18756 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
18758         Adapt 'make change-history' to coding cookie
18759         * Makefile.in (change-history): Adjust to change of format of
18760         ChangeLog file, which now has a coding cookie before an indented
18761         copyright notice.
18763 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
18765         Adapt 'make change-history' to coding cookie
18766         * Makefile.in (change-history): Adjust to change of format of
18767         ChangeLog file, which now has a coding cookie before an indented
18768         copyright notice.
18770         gitlog-to-changelog coding cookie and mv -i
18771         * build-aux/gitlog-to-emacslog: Use ChangeLog.1, not Makefile.in,
18772         for copyright notice prototype, so that we get a proper "coding:"
18773         cookie.  Use 'mv -i' to avoid unconditionally overwriting an
18774         existing ChangeLog.  Problems reported by Eli Zaretskii in:
18775         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00504.html
18777         Merge from gnulib
18778         * build-aux/gitlog-to-changelog: Update from gnulib, incorporating:
18779         2015-04-09 gitlog-to-changelog: port to MS-Windows
18781 2015-04-09  Boruch Baum  <boruch_baum@gmx.com>  (tiny change)
18783         * lisp/bookmark.el (bookmark-bmenu-goto-bookmark): Don't inf-loop.
18784         (Bug#20212)
18786 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
18788         Stop messing with the EMACS env var
18789         (Bug#20202)
18790         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
18791         * lisp/comint.el (comint-exec-1):
18792         * lisp/term.el (term-exec-1): Don't set EMACS envvar.
18793         * lisp/progmodes/compile.el (compilation-start): Same and bring
18794         INSIDE_EMACS's format in line with other users.
18796         css-mode.el (css-smie-rules): Fix indentation after complex selectors
18797         (Bug#20282)
18798         * lisp/textmodes/css-mode.el (css-smie-rules): Don't get confused by
18799         inner structure of selectors.
18801 2015-04-08  Fabián Ezequiel Gallina  <fgallina@gnu.org>
18803         python.el: Indent docstring lines to base-indent
18804         (Bug#19595)
18805         Thanks to immerrr <immerrr@gmail.com> for reporting and providing
18806         an initial patch.
18807         * lisp/progmodes/python.el
18808         (python-indent-context): Add :inside-docstring context.
18809         (python-indent--calculate-indentation): Handle :inside-docstring.
18810         (python-indent-region): Re-indent docstrings.
18811         * test/automated/python-tests.el (python-indent-region-5)
18812         (python-indent-inside-string-2): Fix tests.
18814         python.el: Increase native completion robustness
18815         (Bug#19755)
18816         Thanks to Carlos Pita <carlosjosepita@gmail.com> for reporting
18817         this and providing useful ideas.
18818         * lisp/progmodes/python.el
18819         (python-shell-completion-native-output-timeout): Increase value.
18820         (python-shell-completion-native-try-output-timeout): New var.
18821         (python-shell-completion-native-try): Use it.
18822         (python-shell-completion-native-setup): New readline setup avoids
18823         polluting current context, ensures output when no-completions are
18824         available and includes output end marker.
18825         (python-shell-completion-native-get-completions): Trigger with one
18826         tab only.  Call accept-process-output until output end is found or
18827         python-shell-completion-native-output-timeout is exceeded.
18829 2015-04-08  Samer Masterson  <samer@samertm.com>
18831         * lisp/eshell: Make backslash a no-op in front of normal chars
18832         (Bug#8531)
18833         * lisp/eshell/esh-arg.el (eshell-parse-argument-hook): Update comment.
18834         (eshell-parse-backslash): Return escaped character after backslash
18835         if it is special.  Otherwise, if the backslash is not in a quoted
18836         string, ignore the backslash and return the character after; if
18837         the backslash is in a quoted string, return the backslash and the
18838         character after.
18839         * test/automated/eshell.el (eshell-test/escape-nonspecial)
18840         (eshell-test/escape-nonspecial-unicode)
18841         (eshell-test/escape-nonspecial-quoted)
18842         (eshell-test/escape-special-quoted): Add tests for new
18843         `eshell-parse-backslash' behavior.
18845 2015-04-08  Gustav Hållberg  <gustav@gmail.com>  (tiny change)
18847         * lisp/vc/diff-mode.el (diff-hunk-file-names): Don't require a TAB
18848         after the file name.
18849         (Bug#20276)
18851 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
18853         Minor quoting etc. fixes to Emacs manual
18854         * doc/emacs/Makefile.in, doc/emacs/ack.texi, doc/emacs/building.texi:
18855         * doc/emacs/calendar.texi, doc/emacs/cmdargs.texi:
18856         * doc/emacs/custom.texi, doc/emacs/dired.texi, doc/emacs/emacs.texi:
18857         * doc/emacs/files.texi, doc/emacs/glossary.texi, doc/emacs/gnu.texi:
18858         * doc/emacs/indent.texi, doc/emacs/macos.texi:
18859         * doc/emacs/maintaining.texi, doc/emacs/makefile.w32-in:
18860         * doc/emacs/programs.texi, doc/emacs/rmail.texi:
18861         * doc/emacs/search.texi, doc/emacs/trouble.texi:
18862         * doc/emacs/vc1-xtra.texi:
18863         Use American-style double quoting in ordinary text,
18864         and quote 'like this' when single-quoting in ASCII text.
18865         Also, fix some minor spacing issues.
18867         Minor quoting etc. fixes to elisp intro
18868         * doc/lispintro/emacs-lisp-intro.texi: Consistently use
18869         American-style double quoting in ordinary text.  In ASCII text,
18870         consistently quote 'like this' instead of `like this', unless
18871         Emacs requires the latter.
18873 2015-04-08  Dmitry Gutov  <dgutov@yandex.ru>
18875         * CONTRIBUTE: Mention log-edit-insert-changelog.
18877         * CONTRIBUTE: Emphasize creating the top-level ChangeLog file manually.
18879 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
18881         * doc/misc/calc.texi (Summary): Avoid '@:' when usurped.
18883 2015-04-08  Stefan Monnier  <monnier@iro.umontreal.ca>
18885         * lisp/emacs-lisp/eieio-core.el (eieio-copy-parents-into-subclass):
18886         Fix inheritance of initargs.  (Bug#20270)
18888 2015-04-08  Artur Malabarba  <bruce.connor.am@gmail.com>
18890         * lisp/emacs-lisp/package.el (package-menu-mode): Mode-line notification
18891         while dowloading information.
18893         * lisp/emacs-lisp/package.el: More conservative `ensure-init-file'
18894         (package--ensure-init-file): Check file contents before visiting.
18895         (package-initialize): Call it.
18896         (package-install-from-buffer, package-install): Don't call it.
18898 2015-04-08  Eli Zaretskii  <eliz@gnu.org>
18900         * src/eval.c (init_eval_once): Bump max_lisp_eval_depth to 800.
18901         (Bug#17517)
18903 2015-04-08  Michael Albinus  <michael.albinus@gmx.de>
18905         * lisp/net/tramp-cache.el (tramp-flush-file-property):
18906         Fix nasty scoping bug.
18908 2015-04-08  Tassilo Horn  <tsdh@gnu.org>
18910         Add notice to visual commands section
18911         * doc/misc/eshell.texi (Input/Output): Add notice that some tools
18912         such as git call less with its -F option which omits pagination if
18913         the contents is less than one page long.  This interferes with
18914         eshell's visual (sub-)commands.
18916 2015-04-07  Dmitry Gutov  <dgutov@yandex.ru>
18918         * lisp/ffap.el (ffap-string-at-point-mode-alist): Support
18919         environment variable expansion in file names.  (Bug#19839)
18921 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
18923         Prefer double-quote to accent-grave in man pages
18925 2015-04-07  Stefan Monnier  <monnier@iro.umontreal.ca>
18927         (Bug#20257)
18928         * lisp/files.el (set-visited-file-name): Clear auto-save if nil.
18930 2015-04-07  Ivan Shmakov  <ivan@siamics.net>
18932         Update etc/PROBLEMS.
18933         * etc/PROBLEMS: Mention visible-cursor; a few more mentions of
18934         ~/.Xresources and xrdb(1); refer to 'GNU Coreutils' and
18935         'X Window System' or 'X' (were: 'GNU Fileutils' and 'X Windows',
18936         respectively); other minor updates and tweaks.  (Bug#20011)
18938 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
18940         Add doc strings for some Isearch state vars
18941         * lisp/misearch.el (multi-isearch-buffer-list)
18942         (multi-isearch-file-list): Add doc strings.
18943         (Bug#20232)
18945 2015-04-07  Alan Mackenzie  <acm@muc.de>
18947         Always mark "<" and ">" in #include directives with text properties.
18948         * lisp/progmodes/c-fonts.el (c-cpp-matchers): Replace a font-lock
18949         "anchored matcher" with an invocation of
18950         c-make-font-lock-search-function to allow fontification when there's
18951         no trailing space on an "#include <..>" line.
18953 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
18955         Generate a ChangeLog file from commit logs
18956         * .gitignore: Add 'ChangeLog'.
18957         * build-aux/gitlog-to-changelog: New file, from Gnulib.
18958         * build-aux/gitlog-to-emacslog: New file.
18959         * CONTRIBUTE: Document the revised workflow.
18960         * Makefile.in (clean): Remove *.tmp and etc/*.tmp*
18961         instead of just special cases.
18962         (CHANGELOG_HISTORY_INDEX_MAX, CHANGELOG_N, gen_origin): New vars.
18963         (ChangeLog, unchanged-history-files, change-history)
18964         (change-history-commit): New rules.
18965         * admin/admin.el (make-manuals-dist--1):
18966         Don't worry about doc/ChangeLog.
18967         * admin/authors.el: Add a FIXME.
18968         * admin/make-tarball.txt:
18969         * lisp/calendar/icalendar.el:
18970         * lisp/gnus/deuglify.el:
18971         * lisp/obsolete/gulp.el:
18972         * lwlib/README:
18973         Adjust to renamed ChangeLog history files.
18974         * admin/merge-gnulib (GNULIB_MODULES): Add gitlog-to-changelog.
18975         * admin/notes/repo: Call it 'master' a la Git, not 'trunk' a la Bzr.
18976         Remove obsolete discussion of merging ChangeLog files.
18977         New section "Maintaining ChangeLog history".
18978         * build-aux/git-hooks/pre-commit:
18979         Reject attempts to commit files named 'ChangeLog'.
18980         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
18981         * make-dist: Make and distribute top-level ChangeLog if there's a
18982         .git directory.  Distribute the new ChangeLog history files
18983         instead of scattered ChangeLog files.  Distribute the new files
18984         gitlog-to-changelog and gitlog-to-emacslog.
18985         (Bug#19113)
18987         Rename ChangeLogs for gitlog-to-changelog
18988         This patch was implemented via the following shell commands:
18989         find * -name ChangeLog |
18990         sed 's,.*,git mv & &.1,
18991         s, lisp/ChangeLog\.1$, lisp/ChangeLog.17,
18992         s, lisp/erc/ChangeLog\.1$, lisp/erc/ChangeLog.09,
18993         s, lisp/gnus/ChangeLog\.1$, lisp/gnus/ChangeLog.3,
18994         s, lisp/mh-e/ChangeLog\.1$, lisp/mh-e/ChangeLog.2,
18995         s, src/ChangeLog\.1$, src/ChangeLog.13,' |
18996         sh
18997         git commit -am"[this commit message]"
18999 This file records repository revisions from
19000 commit 9d56a21e6a696ad19ac65c4b405aeca44785884a (exclusive) to
19001 commit ae0653b5ab9ee223751ec389b87011963e1cbbef (inclusive).
19002 See ChangeLog.1 for earlier changes.
19004 ;; Local Variables:
19005 ;; coding: utf-8
19006 ;; End:
19008   Copyright (C) 2015 Free Software Foundation, Inc.
19010   This file is part of GNU Emacs.
19012   GNU Emacs is free software: you can redistribute it and/or modify
19013   it under the terms of the GNU General Public License as published by
19014   the Free Software Foundation, either version 3 of the License, or
19015   (at your option) any later version.
19017   GNU Emacs is distributed in the hope that it will be useful,
19018   but WITHOUT ANY WARRANTY; without even the implied warranty of
19019   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
19020   GNU General Public License for more details.
19022   You should have received a copy of the GNU General Public License
19023   along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.