Add test targets without directory names.
[emacs.git] / ChangeLog.2
blobc7054ac0146dd1c77239d46b3f287c85d7311e28
1 2015-11-21  Wilson Snyder  <wsnyder@wsnyder.org>
3         verilog-mode.el: Commentary and fix pre-Emacs 21 behavior.
5         * verilog-mode.el (verilog-save-font-no-change-functions):
6         Commentary and fix pre-Emacs 21 behavior.
8 2015-11-19  Przemysław Wojnowski  <esperanto@cumego.com>
10         Use obarray functions from obarray.
12         * lisp/abbrev.el (copy-abbrev-table, abbrev-table-p, make-abbrev-table,
13           abbrev-table-get, abbrev-table-put, abbrev-table-empty-p,
14           clear-abbrev-table, define-abbrev, abbrev--symbol, abbrev-table-menu):
15           delegate to obarray.el functions.
16         * lisp/loadup.el: load obarray before abbrev
17         * test/automated/abbrev-tests.el: new tests
19 2015-11-18  Christian Schwarzgruber  <c.schwarzgruber.cs@gmail.com>  (tiny change)
21         epa.el: Add option to replace original text
23         * lisp/epa.el (epa-replace-original-text): New user option.
24         (Bug#21947)
26 2015-11-18  Mark Oteiza  <mvoteiza@udel.edu>
28         Add interactive seek command.
30         * lisp/mpc.el (mpc-cmd-seekcur): New function.
31         (mpc-seek-current): New command.
32         (mpc-mode-menu): Add entry for mpc-seek-current
33         (mpc-mode-map): Bind mpc-seek-current to "g"
35 2015-11-18  Mark Oteiza  <mvoteiza@udel.edu>
37         Fix issue where a new tempfile was created every refresh
39         * lisp/mpc.el (mpc-format): Leave dir as relative path
41 2015-11-18  Stefan Monnier  <monnier@iro.umontreal.ca>
43         * lisp/progmodes/cc-defs.el: Use with-silent-modifications
45         (c-save-buffer-state): Use with-silent-modifications when available.
46         (c--macroexpand-all): Check macroexpand-all directly rather than
47         c--mapcan-status.
49 2015-11-18  Stefan Monnier  <monnier@iro.umontreal.ca>
51         * lisp/loadup.el: Set max-lisp-eval-depth here
53         * lisp/Makefile.in (BIG_STACK_DEPTH, BIG_STACK_OPTS): Remove.
54         (BYTE_COMPILE_FLAGS): Adjust accordingly.
56 2015-11-17  João Távora  <joaotavora@gmail.com>
58         Minor fix to comment indentation and typo in last commit
60         * linum.el (linum-update-window): Fix comment indentation and a
61         typo.
63 2015-11-17  João Távora  <joaotavora@gmail.com>
65         linum-mode plays more nicely with other margin-setting extensions
67         linum.el will only modify the left margin if it needs to, and will
68         only reset the it back to 0 if it guesses that no-one has touched that
69         margin in the meantime.
71         As such, this is a more of a workaround than an actual fix, but fixes
72         the problems described in bug#20674 regarding the interaction with
73         modes such as darkroom-mode and olivetti-mode.
75         A similar fix was commited to nlinum.el in ELPA.git's
76         e7f5f549fbfb740b911fb7f33b42381ecece56d8
78         * linum.el (linum-delete-overlays): Restore margins more
79         criteriously.
80         (linum-update-window): Set margins more criteriously.
82 2015-11-16  Daiki Ueno  <ueno@gnu.org>
84         * lisp/image-mode.el: Support encrypted file
86         (image-toggle-display-image): Read content from the buffer instead
87         of the file, if the buffer holds a decrypted data.  (Bug#21870)
89 2015-11-15  Juanma Barranquero  <lekktu@gmail.com>
91         * lisp/progmodes/verilog-mode.el (verilog-save-buffer-state): Add backquote
93 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
95         * lisp/emacs-lisp/package.el: Fix a decoding issue
97         (package--with-response-buffer): Use `url-insert-buffer-contents'.
98         The previous code had some issues with decoding. Refactoring that
99         function allows us to use the decoding from url-handlers while still
100         treating both sync and async requests the same.
102         * lisp/url/url-handlers.el (url-insert-file-contents): Move some code to
103         `url-insert-buffer-contents'.
104         (url-insert-buffer-contents): New function
106 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
108         * lisp/emacs-lisp/package.el: Refactor -with-work-buffer-async
110         (package--with-work-buffer-async): Reimplement as
111         `package--with-response-buffer'.
112         (package--with-work-buffer): Mark obsolete.
113         (package--with-response-buffer): New macro. This is a more self
114         contained and less contrived version of
115         `package--with-work-buffer-async'.  It uses keyword arguments,
116         doesn't have async on the name, doesn't fallback on
117         `package--with-work-buffer', and has _much_ simpler error
118         handling.
120         (package--check-signature, package--download-one-archive)
121         (package-install-from-archive, describe-package-1): Use it.
123         (package--download-and-read-archives): Let
124         `package--download-one-archive' take care of calling
125         `package--update-downloads-in-progress'.
127 2015-11-15  Stefan Monnier  <monnier@iro.umontreal.ca>
129         * lisp/progmodes/verilog-mode.el: Use with-silent-modifications
131         (verilog-save-buffer-state): Use with-silent-modifications when available.
132         (verilog-save-font-no-change-functions): Don't bind
133         before/after-change-functions if it's not needed.
135 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
137         * CONTRIBUTE: Remove information about feature freeze.
139         Merge branch 'release-process-lowercase'
141 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
143         Document the release process
145         * admin/notes/versioning: Add information about RC releases.
146         * admin/release-process: Document the release process.
147         * admin/authors.el (authors-ignored-files):
148         * admin/README: Change FOR-RELEASE to release-process.
149         * CONTRIBUTE:
150         * admin/notes/bugtracker: Don't mention FOR-RELEASE.
152 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
154         * admin/release-process: Rename from admin/FOR-RELEASE.
156 2015-11-14  David Engster  <deng@randomsample.de>
158         gitmerge: Fix git log command
160         * admin/gitmerge.el (gitmerge-missing): Use '--left-only' since we
161         only want commits from the branch that is to be merged.
162         (gitmerge-setup-log-buffer): Use the same symmetric range as in
163         `gitmerge-missing'.
165 2015-11-14  David Engster  <deng@randomsample.de>
167         gitmerge: Try to detect cherry-picks
169         * admin/gitmerge.el (gitmerge-default-branch): Change to
170         origin/emacs-25.
171         (gitmerge-missing): Use symmetric difference ('...') between
172         branch and master so that cherry-picks can be detected.
174 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
176         Increment Emacs version on master branch
178         * lisp/cus-edit.el (customize-changed-options-previous-release):
179         Increase previous version to 24.5.
181         * configure.ac:
182         * msdos/sed2v2.inp: Bump version to 25.1.50.
184 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
186         Mention CONTRIBUTE in README, since it was moved from etc/ to root.
187         * etc/TODO: Remove the reference to `etc/CONTRIBUTE'.
188         * README: Mention CONTRIBUTE.
190 2015-11-13  Wilson Snyder  <wsnyder@wsnyder.org>
192         Update verilog-mode.el to 2015-11-09-b121d60-vpo
194         * verilog-mode.el (verilog-auto, verilog-delete-auto)
195         (verilog-modi-cache-results, verilog-save-buffer-state)
196         (verilog-save-font-no-change-functions): When internally suppressing
197         change functions, use `inhibit-modification-hooks' and call
198         `after-change-funtions' to more nicely work with user hooks.
199         Reported by Stefan Monnier.
200         (verilog-auto, verilog-delete-auto, verilog-delete-auto-buffer):
201         Create `verilog-delete-auto-buffer' to avoid double-calling
202         fontification hooks.
203         (verilog-restore-buffer-modified-p, verilog-auto)
204         (verilog-save-buffer-state): Prefer restore-buffer-modified-p over
205         set-buffer-modified-p.  Reported by Stefan Monnier.
206         (verilog-diff-auto, verilog-diff-buffers-p)
207         (verilog-diff-ignore-regexp): Add `verilog-diff-ignore-regexp'.
208         (verilog-auto-inst-port, verilog-read-sub-decls-expr): Fix
209         AUTOINST with unpacked dimensional parameters, bug981.  Reported by
210         by Amol Nagapurkar.
211         (verilog-read-decls, verilog-read-sub-decls-line): Avoid unneeded
212         properties inside internal structures.  No functional change
213         intended.
215 2015-11-13  Dmitry Gutov  <dgutov@yandex.ru>
217         Use generic dispatch for xref backends
219         * lisp/progmodes/xref.el (xref-backend-functions):
220         New variable.
221         (xref-find-function): Remove.
222         (xref-find-backend)
223         (xref--etags-backend): New functions.
224         (xref-identifier-at-point-function)
225         (xref-identifier-completion-table-function): Remove.
226         (xref-backend-definitions, xref-backend-references)
227         (xref-backend-apropos, xref-backend-identifier-at-point)
228         (xref-backend-identifier-completion-table):
229         New generic functions.
231         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
232         Add `elisp--xref-backend' to the beginning of
233         `xref-backend-functions', locally.  Delete references to
234         removed functions and vars.
235         (elisp-xref-find): Remove.
236         (elisp--xref-backend): New function.
237         (elisp--xref-find-references, elisp--xref-find-apropos)
238         (elisp--xref-identifier-completion-table):
239         Turn into appropriately named generic methods.
241         * lisp/progmodes/etags.el (etags-xref-find): Remove.
242         (xref-backend-identifier-completion-table)
243         (xref-backend-references, xref-backend-definitions)
244         (xref-backend-apropos): New generic methods.
246 2015-11-13  Juri Linkov  <juri@linkov.net>
248         Support rectangular regions for more commands
250         * lisp/simple.el (region-extract-function): Handle the arg
251         value ‘bounds’.
252         (region-insert-function): New function.
253         (shell-command-on-region): Add arg ‘region-noncontiguous-p’.
254         If non-nil, operate on multiple chunks.
255         (region-noncontiguous-p): New function.
257         * lisp/rect.el: Add function rectangle--insert-region
258         around region-insert-function.
259         (extract-rectangle-bounds): New function.
260         (rectangle--extract-region): Handle the arg value ‘bounds’.
261         (rectangle--insert-region): New function.
263         * lisp/emulation/cua-rect.el: Add function cua--insert-rectangle
264         around region-insert-function.
265         (cua--extract-rectangle-bounds): New function.
266         (cua--rectangle-region-extract): Handle the arg value ‘bounds’.
268         * lisp/replace.el (query-replace, query-replace-regexp): Add arg
269         ‘region-noncontiguous-p’.  Use ‘use-region-p’.
270         (query-replace-regexp-eval, map-query-replace-regexp)
271         (replace-string, replace-regexp): Use ‘use-region-p’.
272         (keep-lines, flush-lines, how-many): Use ‘use-region-p’.
273         (perform-replace): Add arg ‘region-noncontiguous-p’.
274         If non-nil, operate on multiple chunks.
276         * src/casefiddle.c (Fdowncase_region): Add arg ‘region-noncontiguous-p’.
277         If non-nil, operate on multiple chunks.  (Bug#19829)
279 2015-11-13  Dmitry Gutov  <dgutov@yandex.ru>
281         Handle multiple matches on the same line; add highlighting
283         * lisp/progmodes/xref.el (xref-location-marker): Interpret the
284         column value in characters.
285         (xref--collect-matches): Rename from `xref--collect-match'.
286         Search for all matches in the hit line.  Add `highlight' face to
287         the matched region in the summary.  Update both callers.
289 2015-11-13  Dmitry Gutov  <dgutov@yandex.ru>
291         Replace xref-match-bounds with xref-match-length
293         Relying on xref-location-marker to point to the beginning of the match
295         * lisp/progmodes/xref.el (xref-match-bounds): Remove.
296         (xref-match-length): Add.
297         (xref-make-match): Change the arguments.
298         (xref--match-buffer-bounds): Remove.
299         (xref-match-item): Store length, instead of end-column.
300         (xref-pulse-momentarily)
301         (xref--collect-match)
302         (xref--query-replace-1): Update accordingly.
303         (xref-query-replace): Ditto.  And check that the search results
304         are up-to-date.
306 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
308         Merge from gnulib
310         This incorporates:
311         2015-11-13 xalloc-oversized: improve performance with GCC 5
312         * lib/xalloc-oversized.h: Copy from gnulib.
314 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
316         Spruce up ftfont.c memory allocation
318         * src/ftfont.c (setup_otf_gstring):
319         Avoid O(N**2) behavior when reallocating.
320         (ftfont_shape_by_flt): Prefer xpalloc to xrealloc when
321         reallocating buffers; this simplifies the code.  Do not trust
322         mflt_run to leave the output areas unchanged on failure, as
323         this isn’t part of its interface spec.
325 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
327         Port recent XCB changes to 64-bit ‘long int’
329         For historical reasons, libX11 represents 32-bit values like Atoms as
330         ‘long int’ even on platforms where ‘long int’ is 64 bits.  XCB doesn’t
331         do that, so adapt the recent XCB code to behave properly on 64-bit
332         platforms.  Also, fix what appears to be a bug in the interpretation
333         of xcb_get_property_value_length, at least on my Fedora platform
334         which is running libxcb-1.11-5.fc21.
335         * src/xfns.c (x_real_pos_and_offsets):
336         * src/xterm.c (get_current_wm_state):
337         xcb_get_property_value_length returns a byte count, not a word count.
338         For 32-bit quantities, xcb_get_property_value returns a vector
339         of 32-bit words, not of (possibly 64-bit) long int.
341 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
343         * src/undo.c (run_undoable_change): Now static.
345 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
347         Remove support for ':timeout' from w32 tray notifications
349         * src/w32fns.c (Fw32_notification_notify): Delete the code that
350         supports ':timeout'.
351         (syms_of_w32fns): Don't DEFSYM ':timeout'.  This avoids clashes
352         with dbusbind.c when D-Bus is compiled in.
354         * doc/lispref/os.texi (Desktop Notifications): Don't mention
355         ':timeout'.
357 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
359         * test/automated/simple-test.el: Add test for bug#20698 (bug#21885)
360         (simple-test--transpositions): New macro.
361         (simple-transpose-subr): New test.
363 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
365         * lisp/progmodes/elisp-mode.el: Declare function `project-roots'
367 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
369         * src/undo.c: Small fixes for previous change
370         (run_undoable_change): Mark void argument list.
371         (record_property_change): Remove unused variable `boundary'.
373 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
375         Add a few more variables to redisplay--variables
377         * lisp/frame.el (redisplay--variables): Add bidi-paragraph-direction
378         and bidi-display-reordering to the list.
380 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
382         * lisp/loadup.el: Enlarge the size of the hash table to 80000.
384 2015-11-13  Eli Barzilay  <eli@barzilay.org>
386         Fix point positioning after transposing with negative arg
388         * lisp/simple.el (transpose-subr): When invoked with a negative
389         argument, move point to after the transposed text, like we do
390         when invoked with a positive argument.  (Bug#21885)
392 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
394         Fix last change in shr.el
396         * lisp/net/shr.el (shr--have-one-fringe-p): Rename from
397         have-fringes-p.  All callers changed.  Doc fix.  (Bug#21895)
399 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
401         Fix last change
403         * src/w32fns.c (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]:
404         Don't DEFSYM tray notification symbols if D-Bus is being used.
406 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
408         Another fix for MinGW64 and Cygwin builds due to notifications
410         * src/w32fns.c: Ifdef away tray notification code if D-Bus is
411         being compiled into Emacs.
412         (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]: Don't defsubr
413         Sw32_notification_notify and Sw32_notification_close if the code
414         is not compiled.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
416 2015-11-12  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
418         Remove intern calls and XXX comments from Fx_export_frames
420         * src/xfns.c (Fx_export_frames): Use Qpdf, Qpng, Qpostscript, and
421         Qsvg instead of intern calls.  Use "postscript" instead of "ps"
422         for consistency with image types.  Remove XXX comments.
423         (syms_of_xfns) <Qpdf>: DEFSYM it.
425 2015-11-12  Eric Hanchrow  <eric.hanchrow@gmail.com>
427         shr: don't invoke unbound function (Bug#21895)
429         * lisp/net/shr.el (have-fringes-p): New function.
430         (shr-insert-document, shr-fill-text): Use it.
432 2015-11-12  Juanma Barranquero  <lekktu@gmail.com>
434         * test/automated/keymaps-test.el: Fix test to make it repeatable
436         (keymap-store_in_keymap-FASTINT-on-nonchars): Reset Buffer-menu-mode-map
437         entry to its initial value to make the test repeatable in interactive
438         sessions (assuming it doesn't fail and crashes Emacs, of course).
440 2015-11-12  Artur Malabarba  <bruce.connor.am@gmail.com>
442         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors):
443         Small fix.
445 2015-11-12  Phillip Lord  <phillip.lord@newcastle.ac.uk>
447         The heuristic that Emacs uses to add an `undo-boundary' has been
448         reworked, as it interacts poorly with functions on `post-command-hook'
449         or `after-change-functions'.
451         * lisp/simple.el: New section added.
452         * src/cmds.c (remove_excessive_undo_boundaries): Now in lisp.
453         (self_insert_command): Calls simple.el to amalgamate.
454         (delete_char): Calls simple.el to amalgamate.
455         * src/keyboard.c (last_undo_boundary): Removed.
456         * src/undo.c (run_undoable_change): New function.
458 2015-11-12  Juri Linkov  <juri@linkov.net>
460         Bind [?\S-\ ] to previous line command in Dired-like modes
462         * lisp/arc-mode.el (archive-mode-map):
463         * lisp/dired.el (dired-mode-map):
464         * lisp/proced.el (proced-mode-map):
465         * lisp/vc/vc-dir.el (vc-dir-mode-map):
466         Bind [?\S-\ ] to previous line command.
467         (Bug#20790)
469 2015-11-12  Eli Zaretskii  <eliz@gnu.org>
471         Fix the MinGW64 and Cygwin-w32 builds
473         * src/w32fns.c (MYNOTIFYICONDATAW_V1_SIZE)
474         (MYNOTIFYICONDATAW_V2_SIZE, MYNOTIFYICONDATAW_V3_SIZE): Define and
475         use instead of the corresponding NOTIFYICONDATAW_Vn_SIZE macros,
476         which cause trouble with MinGW42 headers.  Ifdef away tray
477         notifications code for Cygwin.  Reported by Andy Moreton
478         <andrewjmoreton@gmail.com>.
480 2015-11-12  Simen Heggestøyl  <simenheg@gmail.com>
482         Enable sorting of JSON object keys when encoding
484         * lisp/json.el (json-encoding-object-sort-predicate): New variable
485         for specifying a sorting predicate for JSON objects during encoding.
486         (json--plist-to-alist): New utility function.
487         (json-encode-hash-table): Re-use `json-encode-alist' when object keys
488         are to be sorted.
489         (json-encode-alist): Sort output by
490         `json-encoding-object-sort-predicate, when set.
491         (json-encode-plist): Re-use `json-encode-alist' when object keys are
492         to be sorted.
493         (json-pretty-print-buffer-ordered): New command to pretty print the
494         buffer with object keys sorted alphabetically.
495         (json-pretty-print-ordered): New command to pretty print the region
496         with object keys sorted alphabetically.
498         * test/automated/json-tests.el (test-json-plist-to-alist)
499         (test-json-encode-plist, test-json-encode-hash-table)
500         (test-json-encode-alist-with-sort-predicate)
501         (test-json-encode-plist-with-sort-predicate): New tests.
503         * etc/NEWS: Add an entry for the new commands.
505 2015-11-12  Juanma Barranquero  <lekktu@gmail.com>
507         * test/automated/keymap-tests.el: New test file.
509 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
511         Speed up x_real_pos_and_offsets using XCB
513         * src/xfns.c (x_real_pos_and_offsets) [USE_XCB]: Add XCB flavors of
514         all X calls, and pipeline requests when possible, collecting results
515         later.  Eliminate use of x_catch_errors (and thus XSync) in XCB case.
517 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
519         Enable use of XCB for checking window manager state
521         * src/xterm.c (get_current_wm_state) [USE_XCB]: Use XCB calls instead
522         of XGetWindowProperty plus error-catching, since we can explicitly
523         check for errors in the XCB version.  This eliminates 3 XSync calls on
524         top of the round-trip actually fetching the information.
526 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
528         Detect XCB and save a connection handle
530         * configure.ac: If using X11, check for XCB libraries and header.
531         * src/Makefile.in (XCB_LIBS): Define.
532         (LIBX_EXTRA): Include it.
534         * src/xterm.h [USE_XCB]: Include X11/Xlib-xcb.h.
535         (struct x_display_info) [USE_XCB]: Add an XCB connection handle field.
536         * src/xterm.c (x_term_init) [USE_XCB]: Initialize the new field.
538 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
540         Reduce some data dependencies between X calls
542         Gains nothing in the traditional-Xlib code, but more closely aligns
543         with how the XCB version will work.
545         * src/xfns.c (x_real_pos_and_offsets): When translating coordinates,
546         send coordinates (0,0) to the X server and add in the real coordinates
547         after getting the response.  Move XGetGeometry for outer window inside
548         error-trapping block.  Use DPY variable more, since it's available.
550 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
552         Use color cache for creating bitmap
554         * src/image.c (x_create_bitmap_from_xpm_data) [ALLOC_XPM_COLORS]:
555         Set attributes to use the caching color allocator.  Initialize and
556         free the cache.
558 2015-11-12  Eli Barzilay  <eli@barzilay.org>
560         Add "^" to the interactive specs of `dired-next/previous-line'
562         * lisp/dired.el (dired-next-line, dired-previous-line): It makes sense
563         to bind these commands to the arrow keys, and that means that they work
564         better with a "^" in the `interactive' declaration so selection works
565         as expected.
567 2015-11-11  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
569         Sync with soap-client repository, version 3.0.2
571         * soap-client.el: Bump version to 3.0.2.
573         * soap-client.el (soap-warning): Use format, not format-message.
575         * soap-client.el: Add cl-lib to Package-Requires.  Require cl-lib.
576         (soap-validate-xs-simple-type): Use cl-labels instead of cl-flet.
578         * soap-client.el: Support Emacs versions that do not have
579         define-error.
581         * soap-inspect.el: Remove version header.
583         * soap-client.el, soap-inspect.el, jira2.el: Fix first line header
584         format.
586 2015-11-11  Alan Mackenzie  <acm@muc.de>
588         CC Mode: Respect users' settings of open-paren-in-column-0-is-defun-start
590         * lisp/progmodes/cc-engine.el (c-backward-single-comment)
591         (c-backward-comments, c-invalidate-state-cache-1, c-parse-state-1)
592         (c-guess-basic-syntax):
593         Remove bindings of open-paren-in-column-0-is-defun-start to nil.
594         (c-get-fallback-scan-pos): "New" function (existed several years ago).
595         (c-parse-state-get-strategy): Reintroduce the 'BOD strategy, using
596         c-get-fallback-scan-pos.
597         (c-parse-state-1): Handle 'BOD strategy.
599         * lisp/progmodes/cc-mode.el (c-before-change, c-after-change)
600         (c-font-lock-fontify-region): Remove bindings of
601         open-paren-in-column-0-is-defun-start to nil.
603         * doc/misc/cc-mode.texi (Performance Issues)
604         (Limitations and Known Bugs): Fix mix up between @chapter and @appendix.
606 2015-11-11  Artur Malabarba  <bruce.connor.am@gmail.com>
608         * lisp/obarray.el: Fix shadowed variables.
609         (obarray-map, obarray-remove, obarray-put, obarray-get):
610         Change OBARRAY arg to OB to avoid shadowing ‘obarray’.
612 2015-11-11  Eli Zaretskii  <eliz@gnu.org>
614         Avoid error in submitting a form with EWW
616         * lisp/gnus/mm-url.el (mm-url-form-encode-xwfu): Allow argument
617         CHUNK to be nil.  (Bug#21881)
619 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
621         Rename seq-p and map-p to seqp and mapp
623         * lisp/emacs-lisp/seq.el (seqp): New name.
624         * lisp/emacs-lisp/map.el (mapp): New name.
625         * doc/lispref/sequences.texi: Update the documentation for seqp.
626         * test/automated/map-tests.el: Update the tests for mapp.
628 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
630         Rename obarray-p to obarrayp
632         * lisp/obarray.el (obarrayp): New name.
633         * test/automated/obarray-tests.el: Update the tests.
635 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
637         Rename obarray-foreach to obarray-map
639         * lisp/obarray.el (obarray-map): New name.
640         * test/automated/obarray-tests.el: Update the corresponding tests.
642 2015-11-11  Przemysław Wojnowski  <esperanto@cumego.com>
644         New file with obarray functions
646         * lisp/obarray.el: Basic obarray functions extracted from abbrev.el.
647         * test/automated/obarray-tests.el: New file.
649 2015-11-11  Eli Zaretskii  <eliz@gnu.org>
651         Implement tray notifications for MS-Windows
653         * src/w32fns.c (MY_NOTIFYICONDATAW): New typedef.
654         (NOTIFYICONDATAW_V1_SIZE, NOTIFYICONDATAW_V2_SIZE)
655         (NOTIFYICONDATAW_V3_SIZE, NIF_INFO, NIIF_NONE, NIIF_INFO)
656         (NIIF_WARNING, NIIF_ERROR, EMACS_TRAY_NOTIFICATION_ID)
657         (EMACS_NOTIFICATION_MSG): New macros.
658         (NI_Severity): New enumeration.
659         (get_dll_version, utf8_mbslen_lim, add_tray_notification)
660         (delete_tray_notification, Fw32_notification_notify)
661         (Fw32_notification_close): New functions.
662         (syms_of_w32fns): Defsubr functions exposed to Lisp.  DEFSYM
663         keywords used by w32-notification-notify.
665         * doc/lispref/os.texi (Desktop Notifications): Describe the native
666         w32 tray notifications.
668 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
670         Optimize `file-equal-p' and `file-in-directory-p' in Tramp
672         * lisp/net/tramp.el (tramp-handle-file-equal-p)
673         (tramp-handle-file-in-directory-p): New defuns.  Suggested by
674         Harvey Chapman <hchapman@3gfp.com>.
676         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
677         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
678         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist):
679         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist): Use them.
681 2015-11-10  Karl Fogel  <kfogel@red-bean.com>
683         * CONTRIBUTE: Encourage adding tests.
685         Based on this post from John Wiegley:
687           From: "John Wiegley" <johnw@newartisans.com>
688           Subject: Re: [Emacs-diffs] master 1f02cbe: Fix bug#21766 and add test
689           To: Juanma Barranquero <lekktu@gmail.com>
690           Cc: emacs-diffs@gnu.org, bruce.connor.am@gmail.com,
691               emacs-devel <emacs-devel@gnu.org>
692           Date: Wed, 28 Oct 2015 18:45:29 -0700
693           Message-ID: <m2y4emqwg6.fsf@newartisans.com>
695           https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02372.html
697 2015-11-10  David Reitter  <david.reitter@gmail.com>
699         Avoid creating notification objects when possible
701         * src/nsterm.m (windowWillEnterFullScreen, windowWillExitFullScreen:)
702         (windowDidEnterFullScreen, windowDidExitFullScreen): Provide convenience
703         functions that do not require a notification object.  When needed,
704         define NSWindowDidEnterFullScreenNotification to allow for compilation
705         on OS X 10.6.8.
707 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
709         Move INTEGER_TO_CONS body out of .h file
711         * src/data.c (INTBIG_TO_LISP): New macro, with most
712         of the contents of the old INTEGER_TO_CONS.
713         (intbig_to_lisp, uintbig_to_lisp): New functions.
714         * src/lisp.h (INTEGER_TO_CONS):
715         Simplify by using EXPR_SIGNED and the new functions.
716         This shrinks code size a bit, and makes it easier to
717         put a breakpoint on handling of large integers.
719 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
721         Merge from gnulib
723         This incorporates:
724         2015-11-10 intprops: new public macro EXPR_SIGNED
725         2015-11-10 intprops: fix typo in clang port
726         * lib/intprops.h: Copy from gnulib.
728 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
730         Spelling fixes
732         * lisp/net/soap-inspect.el (soap-inspect-xs-simple-type):
733         Fix misspelling in output.
735 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
737         * doc/lispref/variables.texi (Directory Local Variables):
738         Document dir-locals wildcards.
740         * lisp/files.el (dir-locals-file): Point to Info node.
742         * doc/emacs/custom.texi (Directory Variables):
743         Document dir-locals wildcards.
745         * etc/NEWS: Document new functionality.
747 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
749         * lisp/files.el: Don't allow customization of dir-locals sorting.
750         In retrospect, this is not a good idea for the same reason that
751         `dir-locals-file' is a defconst, because it is important that this
752         behaviour be "uniform across different environments and users".
753         Sure, the user can still change the sorting with a hack, but we
754         shouldn't encourage them to change it.
755         (dir-locals--all-files): Return list in the order returned by
756         `file-expand-wildcards'.
757         (file-expand-wildcards): Document the sorting predicate used.
758         (dir-locals-sort-predicate): Delete variable.
760 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
762         * lisp/files.el (dir-locals-read-from-file): Better handle errors.
764         * lisp/isearch.el (search-default-regexp-mode): Change default value.
766 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
768         * lisp/files.el (dir-locals-find-file): Don't stop at unreadable files.
769         `locate-dominating-file' will now keep looking if the files it finds in
770         a given directory are unreadable (or not files).
772 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
774         * lisp/files.el (dir-locals-file): Allow wildcards.
775         (dir-locals-find-file, dir-locals-collect-variables)
776         (dir-locals-read-from-file): Update accordingly.
777         (hack-dir-local-variables): Rename a local variable.
779         * lisp/files-x.el (modify-dir-local-variable): Update accordingly.
781         * lisp/help-fns.el (describe-variable): Update accordingly.
783         * .gitignore: Add .dir-locals?.el.
785 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
787         * lisp/emacs-lisp/map.el (map-merge-with): New function.
789         * test/automated/map-tests.el (test-map-merge-with): New test.
791 2015-11-09  Karl Fogel  <kfogel@red-bean.com>
793         Fix some recently-perturbed bookmark autoloads
795         * lisp/bookmark.el (bookmark-set-internal): Remove unnecessary autoload.
796         (bookmark-set): Restore autoload.
797         (bookmark-set-no-overwrite): Add autoload.
799         Thanks to Juanma Barranquero for noticing the autoload problems
800         introduced by my recent commit adding/changing the above functions
801         (Sun Nov 8 14:16:43 2015 -0500, git commit 3812e17978).
803 2015-11-09  Noah Friedman  <friedman@splode.com>
805         * etc/emacs-buffer.gdb (ydump-buffer): Handle case where gap is at
806         the start of buffer.  I don't recall if older versions of gdb were
807         less strict but you cannot dump a 0-length range in gdb 7.9.1.
809 2015-11-09  Dmitry Gutov  <dgutov@yandex.ru>
811         * lisp/progmodes/project.el: Update Commentary.
813         Merge branch 'project-next'
815 2015-11-09  Dmitry Gutov  <dgutov@yandex.ru>
817         Fold `project-ask-user' into `project-current'
819         * lisp/progmodes/project.el (project-find-functions):
820         Remove `project-ask-user'.
821         (project-ask-user): Remove function and the corresponding
822         `project-roots' implementation.
823         (project-current): Add a new argument, MAYBE-PROMPT.  Prompt the
824         user in case there's no project in the current directory.  Update
825         all callers.
827 2015-11-09  Karl Fogel  <kfogel@red-bean.com>
829         When VC detects a conflict, specify which file
831         * lisp/vc/vc.el (vc-message-unresolved-conflicts): New function.
832         * lisp/vc/vc-svn.el (vc-svn-find-file-hook):
833         * lisp/vc/vc-hg.el (vc-hg-find-file-hook):
834         * lisp/vc/vc-bzr.el (vc-bzr-find-file-hook):
835         * lisp/vc/vc-git.el (vc-git-find-file-hook): Use above new function
836           to display a standard message that specifies the conflicted file.
838         Before this change, the message VC used for indicating a conflicted
839         file was just "There are unresolved conflicts in this file" without
840         naming the file (and this language was duplicated in several places).
841         After this change, it's "There are unresolved conflicts in file FOO"
842         (and this language is now centralized in one function in vc.el).
844         Justification: It's important for the message to name the conflicted
845         file because the moment when VC realizes a file is conflicted does not
846         always come interactively.  For example, some people automatically
847         find a set of Org Mode files on startup, and may keep those .org files
848         under version control.  If any of the files are conflicted, the user
849         just sees some messages fly by, and might later check the "*Messages*"
850         buffer to find out what files were conflicted.  I'm not saying this
851         happened to me or anything; it's a purely hypothetical example.
853 2015-11-09  Eli Zaretskii  <eliz@gnu.org>
855         Fix assertion violation in define-key
857         * src/keymap.c (store_in_keymap): Don't use XFASTINT on non-character
858         objects.  Reported by Drew Adams <drew.adams@oracle.com>
859         and Juanma Barranquero <lekktu@gmail.com>.
861 2015-11-09  Dima Kogan  <dima@secretsauce.net>
863         Fix a memory leak in GC of font cache
865         * src/alloc.c (compact_font_cache_entry): Don't GC unmarked font
866         entities if some of the fonts it references are marked.  This
867         plugs a memory leak.  (Bug#21556)
869 2015-11-09  Paul Eggert  <eggert@cs.ucla.edu>
871         Use INT_ADD_WRAPV etc. to check integer overflow
873         * src/alloc.c (xnmalloc, xnrealloc, xpalloc, Fmake_string):
874         * src/buffer.c (record_overlay_string, overlay_strings):
875         * src/casefiddle.c (casify_object):
876         * src/ccl.c (Fccl_execute_on_string):
877         * src/character.c (char_width, c_string_width, lisp_string_width)
878         (count_size_as_multibyte, string_escape_byte8):
879         * src/coding.c (coding_alloc_by_realloc, produce_chars):
880         * src/data.c (arith_driver):
881         * src/dispnew.c (realloc_glyph_pool, init_display):
882         * src/editfns.c (styled_format):
883         * src/fns.c (Ffillarray):
884         * src/ftfont.c (ftfont_shape_by_flt):
885         * src/gnutls.c (gnutls_hex_string):
886         * src/gtkutil.c (get_utf8_string):
887         * src/image.c (x_to_xcolors, x_detect_edges, png_load_body):
888         * src/keymap.c (Fkey_description):
889         * src/lisp.h (SAFE_ALLOCA_LISP):
890         * src/term.c (encode_terminal_code):
891         * src/tparam.c (tparam1):
892         * src/xselect.c (x_property_data_to_lisp):
893         * src/xsmfns.c (smc_save_yourself_CB):
894         * src/xterm.c (x_term_init):
895         When checking for integer overflow, prefer INT_MULTIPLY_WRAPV to
896         more-complicated code involving division and/or
897         INT_MULTIPLY_OVERFLOW, and similarly for INT_ADD_WRAPV and
898         subtraction and/or INT_ADD_OVERFLOW.
899         * src/casefiddle.c (casify_object): Simplify multibyte size check.
900         * src/character.c: Remove some obsolete ‘#ifdef emacs’s.
901         * src/data.c (arith_driver): Also check for division overflow,
902         as that’s now possible given that the accumulator can now contain
903         any Emacs integer.
904         * src/lisp.h (lisp_word_count): Remove; no longer used.
906 2015-11-08  Dmitry Gutov  <dgutov@yandex.ru>
908         Make sure that the ignore file exists
910         * lisp/vc/vc.el (vc-default-ignore-completion-table):
911         Make sure that the ignore file exists.
913 2015-11-08  Michael Sperber  <mike@xemacs.org>
915         * gnus-sum.el (gnus-summary-backend-map): Bind B-backspace to
916         `gnus-summary-delete-article` in a way that also works on XEmacs.
918 2015-11-08  Simen Heggestøyl  <simenheg@gmail.com>
920         Add support for retrieving paths to JSON elements
922         Add support for retrieving the path to a JSON element. This can for
923         instance be useful to retrieve paths in deeply nested JSON
924         structures.
926         * lisp/json.el (json-pre-element-read-function)
927         (json-post-element-read-function): New variables to hold pre- and post
928         read callback functions for `json-read-array' and `json-read-object'.
929         (json--path): New variable used internally by `json-path-to-position'.
930         (json--record-path, json--check-position): New functions used
931         internally by `json-path-to-position'.
932         (json-path-to-position): New function for retrieving the path to a
933         JSON element at a given position.
934         (json-read-object, json-read-array): Call
935         `json-pre-element-read-function' and `json-post-element-read-function'
936         when set.
938         * test/automated/json-tests.el (test-json-path-to-position-with-objects)
939         (test-json-path-to-position-with-arrays)
940         (test-json-path-to-position-no-match): New tests for
941         `json-path-to-position'.
943 2015-11-08  Karl Fogel  <kfogel@red-bean.com>
945         * etc/NEWS: Mention new `bookmark-set-no-overwrite'.
947         This really should been part of my previous commit
948         (Sun Nov 8 14:16:43 2015 -0500, git commit 3812e17978).
950 2015-11-08  Karl Fogel  <kfogel@red-bean.com>
952         Offer non-overwrite bookmark setter (Bug#15746)
954         * lisp/bookmark.el (bookmark-set-internal): New helper function to do
955         what `bookmark-set' used to do, but with more choices for overwrite
956         vs push, and with minor changes to the interactive prompt format.
957         (bookmark-set): Rewrite as wrapper around above.
958         If overwriting, inform the user of that in the prompt.
959         (bookmark-set-no-overwrite): New function, also done as wrapper.
960         Bind to "M" in `ctl-x-r-map' autoloads.
961         (bookmark-map): Similarly bind "M" here.
963 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
965         * src/unexelf.c (NEW_PROGRAM_H): Remove unused macro (Bug#20614).
967 2015-11-08  Alan Modra  <amodra@gmail.com>
969         ELF unexec: Don't insert a new section
971         Reuse the .bss section instead, making it SHT_PROGBITS.  This way we
972         don't need to mess with symbol st_shndx, or section sh_link and
973         sh_info.
975         This does lead to eu-elflint complaints about symbols defined in .bss
976         with a needed version, because normally it is undefined symbols that
977         have needed versions;  Defined symbols have version definitions.
978         The exception is symbols defined by the linker in .dynbss for
979         variables copied from a shared library in order to avoid text
980         relocations, with copy relocs to copy their initial values from the
981         shared library.  These symbols are both defined and have needed
982         versions, and eu-elflink only expects to see them in SHT_NOBITS
983         sections.  Of course there is no real problem with having such symbols
984         in SHT_PROGBITS sections.  glibc ld.so handles them fine.
986         * src/unexelf.c: Delete outdated comments.
987         (PATCH_INDEX): Delete.
988         (find_section): Delete.
989         (unexec): Don't add a new section.  Instead reuse the last bss
990         section, extending it to cover dumped data.  Make bss sections
991         SHT_PROGBITS.  Remove all patching of sh_link, sh_info and
992         st_shndx.  Rename bss sections.
994 2015-11-08  Alan Modra  <amodra@gmail.com>
996         ELF unexec: Drive from PT_LOAD header rather than sections
998         This rewrites bss handling in the ELF unexec code.  Finding bss
999         sections by name results in complicated code that
1000         - does not account for all names of possible bss sections,
1001         - assumes specific ordering of bss sections,
1002         - can wrongly choose a SHT_NOBITS section not in the bss segment,
1003         - incorrectly calculates bss size (no accounting for alignment gaps),
1004         - assumes .data and .bss are in the same segment.
1006         All of these problems and more are solved by finding the bss segment
1007         in PT_LOAD headers, ie. the address range included in p_memsz but not
1008         p_filesz of the last PT_LOAD header, then matching SHT_NOBITS sections
1009         in that address range.
1011         * src/unexelf.c: Delete old ppc comment.
1012         (OLD_PROGRAM_H): Define.
1013         (round_up): Delete.
1014         (unexec): Don't search for bss style sections by name.  Instead,
1015         use the last PT_LOAD header address range covered by p_memsz
1016         but not p_filesz and match any SHT_NOBITS section in that
1017         address range.  Simplify initialisation of section header vars.
1018         Don't assume that section headers are above bss segment.  Move
1019         copying of bss area out of section loop.  Align .data2 section
1020         to 1, since it now covers the entire bss area.  For SHT_NOBITS
1021         sections in the bss segment, leave sh_addr and sh_addralign
1022         unchanged, but correct sh_offset.  Clear memory corresponding
1023         to SHT_NOBITS .plt section.  Delete comment and hacks for
1024         sections partly overlapping bss range now that the full range
1025         is properly calculated.  Delete now dead .sbss code.
1026         (Bug#20614)
1028 2015-11-08  Alan Modra  <amodra@gmail.com>
1030         ELF unexec: R_*_NONE relocs
1032         These should be ignored on all targets.
1034         * src/unexelf.c (unexec): Ignore R_*_NONE relocs for any target,
1035         not just Alpha.  Comment on reloc size assumption.
1037 2015-11-08  Alan Modra  <amodra@gmail.com>
1039         ELF unexec: _OBJC_ symbols in bss sections
1041         This code assumed that there was only one bss section.  Rather than
1042         checking for a particular index, check the section type.  Also, handle
1043         the possibility that the section was SHT_NOBITS originally and is
1044         unchanged, in which case no clearing is needed (and sh_offset isn't
1045         necessarily valid, which can lead to a wild memset).
1047         * src/unexelf.c (unexec): Properly handle _OBJC_ symbols in
1048         bss sections.
1050 2015-11-08  Alan Modra  <amodra@gmail.com>
1052         ELF unexec: Symbol table patching
1054         No st_shndx value larger than SHN_LORESERVE should be changed.
1055         * src/unexelf.c (unexec): Don't adjust any st_shndx larger than
1056         SHN_LORESERVE.  Error on SHN_XINDEX.
1058 2015-11-08  Alan Modra  <amodra@gmail.com>
1060         ELF unexec: Merge Alpha and MIPS COFF debug handling
1062         * src/unexelf.c (unexec): Merge Alpha and MIPS COFF debug handling.
1063         Don't find .mdebug section index, find the section in the loop.
1064         Allow for unlikely possibility that .mdebug is located at sh_offset
1065         before bss segment, by calculating move from difference in
1066         sh_offset rather than just assuming new_data2_size.  Simplify
1067         cbLineOffset handling.
1069 2015-11-08  Alan Modra  <amodra@gmail.com>
1071         ELF unexec: Tidy code
1073         Separate out some of the more mechanical changes so following patches
1074         are smaller.
1076         * src/unexelf.c (unexec): Rearrange initialisation of program
1077         header vars.  Use pointer vars in loops rather than indexing
1078         section header array via macros.  Simplify _OBJC_ sym code
1079         and reloc handling code.
1081 2015-11-08  Alan Modra  <amodra@gmail.com>
1083         ELF unexec: Correct section header index
1085         First a small fix.  The code incorrectly uses "NEW_SECTION_H (n)" when
1086         it should have been using "NEW_SECTION_H (nn)" to find the name of the
1087         section currently being processed.  Of course, before the bss
1088         sections, n and nn have the same value, so this doesn't matter except
1089         in the case of .sbss.  For .sbss this probably meant .bss (most likely
1090         the next section) was copied from memory.  A later patch removes the
1091         bogus .sbss handling anyway.
1093         * src/unexelf.c (unexec): Use correct index to look up names.
1095 2015-11-08  Michael Albinus  <michael.albinus@gmx.de>
1097         Fix Bug#21841
1099         * lisp/filenotify.el (file-notify--rm-descriptor):
1100         Use `descriptor' instead of computing its value.
1101         (file-notify--descriptor): Additional argument FILE.  Adapt all callees.
1102         (file-notify-rm-watch): Use `descriptor' when calling file name handler.
1103         (Bug#21841)
1105 2015-11-08  Dmitry Gutov  <dgutov@yandex.ru>
1107         Remove dirs in vc project roots from the the vc project library roots
1109         * lisp/progmodes/project.el (project-library-roots):
1110         Remove directories inside the project roots from the result.
1111         (http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg00536.html)
1113 2015-11-07  Dmitry Gutov  <dgutov@yandex.ru>
1115         Move and rename xref-find-regexp to the project package
1117         * lisp/progmodes/project.el (project-find-regexp)
1118         (project--read-regexp)
1119         (project--find-regexp-in): New functions.
1121         * lisp/progmodes/xref.el (xref--find-xrefs): Extract from
1122         xref--show-xrefs.  Use in existing callers in place of that
1123         function.
1124         (xref--show-xrefs): Only do the "show" part.
1125         (xref-find-regexp): Rename, more or less, to
1126         project-or-libraries-find-regexp.
1128 2015-11-06  Dmitry Gutov  <dgutov@yandex.ru>
1130         Abolish temporary buffer management for xref
1132         * lisp/progmodes/xref.el (xref--temporary-buffers)
1133         (xref--current)
1134         (xref--inhibit-mark-current)
1135         (xref--mark-selected): Remove.  Remove all references.
1136         (xref--show-xrefs): Do not construct the
1137         list of the temporary buffers, nor pass it along.
1139 2015-11-06  Dmitry Gutov  <dgutov@yandex.ru>
1141         Rename "search path" to "library roots"
1143         * lisp/emacs-lisp/cl-seq.el (cl-set-difference): Retain the order
1144         of the elements from CL-LIST1.
1146         * test/automated/cl-lib-tests.el (cl-lib-test-set-functions):
1147         Update WRT to the above change.
1149         * lisp/progmodes/project.el (project-search-path-function): Rename
1150         to project-library-roots-function, update the documentation and
1151         references.
1152         (project-search-path): Likewise, to project-library-roots.
1153         (project-roots): Clarify documentation.
1154         (project-vc-search-path): Likewise, to project-vc-library-roots.
1155         (project-library-roots): In addition to the renames, thread the
1156         results through file-name-as-directory.
1157         (project-prune-directories): Accept a variable number of
1158         arguments.  Rename to project-combine-directories.
1159         (project-subtract-directories): New function.
1161         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
1162         Append project-roots and project-library-roots together.
1164         * lisp/progmodes/etags.el (etags--xref-find-references): Ditto.
1166 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
1168         Prefer xpalloc to doubling buffers by hand
1170         * src/lread.c (grow_read_buffer): New function, which uses xpalloc.
1171         (read1): Use it for simplicity.
1172         * src/macros.c (store_kbd_macro_char):
1173         * src/minibuf.c (read_minibuf_noninteractive):
1174         * src/term.c (encode_terminal_code):
1175         * src/xrdb.c (magic_db):
1176         Prefer xpalloc to growing buffers by hand.
1177         This doesn’t fix any bugs, but simplifies the code a bit.
1179 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
1181         Merge from gnulib
1183         This incorporates:
1184         2015-11-05 timespec-sub: fix overflow bug; add tests
1185         2015-11-04 intprops: revise _WRAPV macros, revert _OVERFLOW
1186         2015-11-03 intprops: add parentheses
1187         * lib/intprops.h, lib/timespec-add.c, lib/timespec-sub.c:
1188         Copy from gnulib.
1190 2015-11-07  David Reitter  <david.reitter@gmail.com>
1192         Provide NS notification objects where required to eliminate warnings
1194         * nsterm.m (windowDidResize:, toggleFullScreen:):
1195         Call notification functions with notification objects
1196         as per delegate APIs.
1198 2015-11-07  Noam Postavsky  <npostavs@users.sourceforge.net>
1200         Add test for bug #21824
1202         * test/automated/buffer-tests.el: New file.
1203         (overlay-modification-hooks-message-other-buf): New test.
1205 2015-11-07  Kelvin White  <kwhite@gnu.org>
1207         * lisp/erc/erc-pcomplete.el (pcomplete-erc-nicks): Fix bug#18771.
1209 2015-11-07  David Reitter  <david.reitter@gmail.com>
1211         Ignore fullscreen exit notifications on NS when frame is dead
1213         * nsterm.m (windowDidResize:, windowWillExitFullScreen:)
1214         (windowDidExitFullScreen:): Return if frame is dead.
1215         These functions may be called when a fullscreen frame
1216         is closed; they are called before, not after.
1218         May address Bug#21428.
1220 2015-11-07  Eli Zaretskii  <eliz@gnu.org>
1222         Speed up lookup in redisplay--variables
1224         * lisp/frame.el (redisplay--variables): Make it a hash-table.
1226         * src/xdisp.c (maybe_set_redisplay): Access redisplay--variables
1227         as a hash-table.  This speeds up this function by an order of
1228         magnitude: where previously a setq was slowed down by 100% by
1229         introducing the maybe_set_redisplay test, it is now only 5%
1230         slower.
1231         (syms_of_xdisp) <redisplay--variables>: Doc fix.
1233 2015-11-07  Artur Malabarba  <bruce.connor.am@gmail.com>
1235         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Fix a bug.
1237         The defsubst was being created as:
1238             (cl-defsubst name (args) ("DOC") ...)
1240         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors):
1241         Add test.
1243 2015-11-07  Mihai Olteanu  <mihai_olteanu@fastmail.fm>  (tiny change)
1245         Update doc string of hexl-mode
1247         * lisp/hexl.el (hexl-mode): Doc fix.  (Bug#21800)
1249 2015-11-07  Eli Zaretskii  <eliz@gnu.org>
1251         Fix error in copy-abbrev-table
1253         * lisp/abbrev.el (define-abbrev): Don't erase the :abbrev-table-modiff
1254         property of the abbrev-table.  (Bug#21828)
1256         * test/automated/abbrev-tests.el: New file.
1258 2015-11-07  Michael Albinus  <michael.albinus@gmx.de>
1260         Add test to auto-revert-tests.el for Bug#21841
1262         * test/automated/auto-revert-tests.el
1263         (auto-revert-test01-auto-revert-several-files): New test.
1264         (auto-revert-test02-auto-revert-tail-mode)
1265         (auto-revert-test03-auto-revert-mode-dired): Rename them.
1267 2015-11-07  Martin Rudalics  <rudalics@gmx.at>
1269         * doc/lispref/windows.texi (Coordinates and Windows): Fix typo.
1271 2015-11-07  Martin Rudalics  <rudalics@gmx.at>
1273         In x_consider_frame_title don't set title of tooltip frames
1275         * src/xdisp.c (x_consider_frame_title): Return immediately for
1276         tooltip frames to avoid displaying empty tooltips.
1278 2015-11-06  Anders Lindgren  <andlind@gmail.com>
1280         Fixed NextStep fullscreen problem (bug#21770).
1282         * src/nsterm.m (ns_constrain_all_frames): Don't constrain
1283         fullscreen frames.
1285 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
1287         Ensure redisplay after evaluation
1289         * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp):
1290         Revert last change.
1291         * lisp/frame.el (redisplay--variables): Populate the
1292         redisplay--variables list.
1293         * src/xdisp.c (maybe_set_redisplay): New function.
1294         (syms_of_xdisp) <redisplay--variables>: New variable.
1295         * src/window.h (maybe_set_redisplay): Declare prototype.
1296         * src/data.c (set_internal): Call maybe_set_redisplay.  (Bug#21835)
1298 2015-11-06  Artur Malabarba  <bruce.connor.am@gmail.com>
1300         * test/automated/subr-tests.el (subr-test-when): Fix again.
1302 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
1304         Don't invoke overlay modification hooks in wrong buffer
1306         * src/buffer.c (report_overlay_modification): When called with
1307         AFTER non-zero, don't invoke overlay modification hooks if the
1308         buffer recorded in last_overlay_modification_hooks is different
1309         from the current buffer.  (Bug#21824)
1311 2015-11-06  Juanma Barranquero  <lekktu@gmail.com>
1313         * admin/notes/repo: Fix a few obsolete references to Bazaar.
1315 2015-11-06  Artur Malabarba  <bruce.connor.am@gmail.com>
1317         * test/automated/subr-tests.el (subr-test-when): Fix test.
1319 2015-11-06  Martin Rudalics  <rudalics@gmx.at>
1321         Avoid division by zero crash observed by Yuan MEI
1323         See http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg00194.html.
1325         * src/dispnew.c (required_matrix_height, required_matrix_width):
1326         Avoid division by zero.
1327         * src/xterm.c (x_term_init): Init dpyinfo->smallest_font_height and
1328         dpyinfo->smallest_char_width to 1.
1330 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
1332         Ensure redisplay after "C-x C-e"
1334         * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp): Make sure
1335         redisplay happens to account for any side effects of the evaluated
1336         sexp.  (Bug#21835)
1338 2015-11-06  Michael Albinus  <michael.albinus@gmx.de>
1340         Skip some file notification tests for cygwin
1342         * test/automated/file-notify-tests.el (file-notify--test-with-events):
1343         Remove argument TIMEOUT.  Adapt all callees.
1344         (file-notify-test02-events, file-notify-test04-file-validity):
1345         Skip for cygwin.  (Bug#21804)
1347 2015-11-05  Stephen Leake  <stephen_leake@stephe-leake.org>
1349         * lisp/progmodes/xref.el: Require semantic/symref during compilation.
1351 2015-11-05  Daiki Ueno  <ueno@gnu.org>
1353         Suppress redundant Pinentry startup messages
1355         * lisp/net/pinentry.el (pinentry-start): Add optional QUIET argument.
1356         * lisp/epg.el: Declare `pinentry-start'.
1357         (epg--start): Call `pinentry-start' with QUIET argument set.
1359 2015-11-05  Xue Fuqiao  <xfq.free@gmail.com>
1361         * doc/emacs/ack.texi (Acknowledgments): Updates.
1363 2015-11-05  Juanma Barranquero  <lekktu@gmail.com>
1365         * test/automated/elisp-mode-test.el: Silence some run-time warnings.
1366         (xref-elisp-deftest): Bind `find-file-suppress-same-file-warnings' to t.
1368 2015-11-05  Tassilo Horn  <tsdh@gnu.org>
1370         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
1371         Add prettification support for \times.
1373 2015-11-05  Juanma Barranquero  <lekktu@gmail.com>
1375         * test/automated/process-tests.el: Skip tests when bash is unavailable.
1376         (process-test-sentinel-accept-process-output)
1377         (process-test-sentinel-sit-for): skip-unless bash executable found.
1379 2015-11-05  Eli Zaretskii  <eliz@gnu.org>
1381         Add test for bug #21831
1383         * test/automated/process-tests.el
1384         (start-process-should-not-modify-arguments): New test.  (Bug#21831)
1385         Suggested by Nicolas Richard <youngfrog@members.fsf.org>
1387 2015-11-04  Stefan Monnier  <monnier@iro.umontreal.ca>
1389         * lisp/emacs-lisp/eieio-compat.el: Typo caught by tests.
1391         (eieio--generic-static-object-generalizer): Fix typo.
1392         * test/automated/eieio-tests.el: Byte-compile it again.  It looks
1393         like the underlying cause of bug#17852 was fixed in the mean time.
1395 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
1397         Revert "* lisp/subr.el (when): Use `macroexp-progn'"
1399         This reverts commit 8e843831eaf271801836b7a3e4dd3b4fb0bb72b8.
1400         It breaks bootstrapping (duh).
1402 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
1404         * lisp/files.el (report-errors): Obsolete.
1406         (normal-mode, hack-local-variables, dir-locals-find-file):
1407         Use `with-demoted-errors' instead.
1409 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
1411         * lisp/subr.el (when): Use `macroexp-progn'.
1413         * test/automated/subr-tests.el (subr-test-when): New test.
1415 2015-11-04  Juanma Barranquero  <lekktu@gmail.com>
1417         * lisp/progmodes/xref.el: Doc fixes.
1418         (xref-make-file-location, xref-make-buffer-location, xref-make)
1419         (xref-make-bogus-location, xref-make-match): Add cross-references.
1420         (xref--insert-xrefs): Fix typo in docstring.
1422 2015-11-04  Anders Lindgren  <andlind@gmail.com>
1424         Render fringe bitmaps correctly on NextStep (bug#21301)
1426         The fringe bitmaps were inverted, the background was not transparent,
1427         the image data was horizontally mirrored, and periodic fringe bitmaps
1428         were not supported.
1430         * src/nsimage.m ([EmacsImage initFromXBM:width:height:fg:bg:]):
1431         When both background and foreground colors are 0, set the background
1432         alpha channel to 0 (making the background transparent).  When
1433         copying the image data, do this from the most significant bit
1434         (leftmost) to the least (rightmost), to avoid mirroring.
1435         * src/nsterm.m (ns_draw_fringe_bitmap): Don't invert the image bits.
1436         Add support for periodic images (e.g. the empty line indicator).
1438 2015-11-03  Michael Heerdegen  <michael_heerdegen@web.de>
1440         * lisp/emacs-lisp/pcase.el (pcase): Tweak docstring.
1442 2015-11-03  Nicolas Petton  <nicolas@petton.fr>
1444         * admin/MAINTAINERS: Add seq-tests.el, map-tests.el, and thunk-tests.el.
1446         * admin/MAINTAINERS: Add thunk.el.
1448 2015-11-03  Jay Belanger  <jay.p.belanger@gmail.com>
1450         * lisp/calc/calc (calc-bug-address): Change maintainer address.
1452 2015-11-03  Michael Albinus  <michael.albinus@gmx.de>
1454         Fix a stupid error in gfilenotify.c
1456         * src/gfilenotify.c (dir_monitor_callback): Cancel monitor only,
1457         if we've got a `deleted' signal AND the file name is the watched one.
1459 2015-11-03  Stephen Leake  <stephen_leake@stephe-leake.org>
1461         Fix Bug#21816; case insensitive file system in elisp-mode-tests.el
1463         * test/automated/elisp-mode-tests.el (xref-elisp-test-run):
1464         Use case-insensitive string compare for file names.
1465         (emacs-test-dir): Add 'downcase' to cause case differences (at
1466         least on my system).
1468 2015-11-02  Juanma Barranquero  <lekktu@gmail.com>
1470         flymake-tests.el (warning-predicate-rx-gcc): Fix check
1472         * test/automated/flymake-tests.el (warning-predicate-rx-gcc):
1473         Also check that "make" is available, not just "gcc".
1475 2015-11-02  Ken Brown  <kbrown@cornell.edu>
1477         Document behavior of collation on Cygwin
1479         * test/automated/fns-tests.el (fns-tests-collate-sort): Mark as
1480         expected failure on Cygwin.
1481         * doc/lispref/strings.texi (Text Comparison): Document that
1482         punctuation and whitespace are not ignored for sorting on Cygwin.
1484 2015-11-02  Dani Moncayo  <dmoncayo@gmail.com>
1486         * build-aux/msys-to-w32: Prevent double slashes in w32 path list.
1488 2015-11-01  Glenn Morris  <rgm@gnu.org>
1490         * lisp/progmodes/f90.el (f90-no-block-limit): Add associate.
1491         (Bug#21794)
1492         * test/automated/f90.el (f90-test-bug21794): New test.
1494 2015-11-01  Juanma Barranquero  <lekktu@gmail.com>
1496         Fix incompatibility with TCC in test for bug#18745
1498         * test/automated/process-tests.el (process-test-quoted-batfile):
1499         Remove spaces unrelated to the bug being tested.
1501 2015-11-01  Michael Albinus  <michael.albinus@gmx.de>
1503         Improve completion in tramp-gvfs.el
1505         * lisp/net/tramp-gvfs.el (tramp-zeroconf-parse-device-names):
1506         Rename from `tramp-zeroconf-parse-service-device-names'.
1507         (tramp-zeroconf-parse-webdav-device-names): Remove.  Code merged
1508         with `tramp-zeroconf-parse-device-names'.
1509         (tramp-gvfs-parse-device-names): New defun.
1510         (top): Use it when `tramp-zeroconf-parse-device-names' is not
1511         applicable.
1513         * lisp/net/tramp.el (tramp-set-completion-function): The argument
1514         could also be a zeroconf service type.
1516 2015-10-31  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
1518         * lisp/net/ntlm.el: Change version to 2.0.0.
1520 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
1522         Fix bug#21762
1523         * lisp/progmodes/python.el (python-syntax-closing-paren-p): Check with
1524         `eql' instead of `=' to accommodate the case that (syntax-after (point))
1525         returns nil.
1526         * test/automated/python-tests.el (python-indent-inside-paren-7):
1527         New test.
1529 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
1531         * test/automated/python-tests.el: Avoid warnings.
1532         (python-tests-with-temp-buffer, python-tests-with-temp-file):
1533         Bind `python-indent-guess-indent-offset' to nil.
1535 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
1537         * src/alloc.c: Silence compiler warnings.
1538         (pointers_fit_in_lispobj_p, mmap_lisp_allowed_p): #ifdef DOUG_LEA_MALLOC.
1540 2015-10-31  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
1542         * etc/NEWS: Fix js-jsx-mode entry punctuation.
1544 2015-10-31  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
1546         Add JSX indentation via js-jsx-mode  (Bug#21799)
1548         * progmodes/js.el: Add JSX indentation support.
1549         (js--jsx-end-tag-re)
1550         (js--jsx-after-tag-re): New variables.
1551         (js--jsx-find-before-tag)
1552         (js--jsx-indented-element-p)
1553         (js--as-sgml)
1554         (js--expression-in-sgml-indent-line)
1555         (js-jsx-indent-line)
1556         (js-jsx-mode): New functions.
1557         * test/indent/js-jsx.el: New file.
1558         * etc/NEWS: Add information about js-jsx-mode.
1560 2015-10-31  Michael Albinus  <michael.albinus@gmx.de>
1562         Minor fix in filenotify.el
1564         * lisp/filenotify.el (file-notify--event-file-name)
1565         (file-notify--event-file1-name): Normalize result with
1566         `directory-file-name'.
1568 2015-10-31  Eli Zaretskii  <eliz@gnu.org>
1570         Avoid errors in redisplay--pre-redisplay-functions
1572         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect): Don't
1573         use 'bobp', instead compare window-point with 1.  (Bug#21730)
1575 2015-10-30  Paul Eggert  <eggert@cs.ucla.edu>
1577         Merge from gnulib
1579         This incorporates:
1580         2015-10-30 intprops: add WRAPV and const flavors for GCC 5
1581         2015-10-25 stdalign: port to Sun C 5.9
1582         * doc/misc/texinfo.tex, lib/intprops.h, lib/stdalign.in.h:
1583         Copy from gnulib.
1585 2015-10-30  Eli Zaretskii  <eliz@gnu.org>
1587         * src/w32proc.c (_NLSCMPERROR): Fix a typo in the name of this macro.
1588         (w32_compare_strings): Adjust for the correction.
1590 2015-10-30  Michael Albinus  <michael.albinus@gmx.de>
1592         * test/automated/vc-tests.el (vc-test--state)
1593         (vc-test--working-revision, vc-test--checkout-model):
1594         Add result messages.
1596 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
1598         * test/automated/faces-tests.el: Add another test
1600 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
1602         * lisp/faces.el (faces--attribute-at-point): Fix bug
1603         introduced by previous commit.
1605 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
1607         * test/automated/faces-tests.el: New file.
1609 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
1611         * lisp/faces.el: Refactor common code and fix a bug.
1612         (faces--attribute-at-point): New function.  Fix a bug when the
1613         face at point is a list of faces and the desired attribute is not
1614         on the first one.
1615         (foreground-color-at-point, background-color-at-point): Use it.
1617 2015-10-30  Przemysław Wojnowski  <esperanto@cumego.com>
1619         * etc/tutorials/TUTORIAL.translators: Fix PL names.
1621 2015-10-30  Juanma Barranquero  <lekktu@gmail.com>
1623         * lisp/character-fold.el: Provide `character-fold'.
1625 2015-10-30  Tassilo Horn  <tsdh@gnu.org>
1627         * etc/themes/tsdh-dark-theme.el (tsdh-dark): Add more faces
1628         for Gnus and ivy.
1630 2015-10-30  Michael Albinus  <michael.albinus@gmx.de>
1632         Some minor fixes for tramp-gvfs.el
1634         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
1635         An attribute returned by gvfs-info might be empty.  In case of
1636         undetermined uid or gid, return "UNKNOWN" or -1, respectively.
1637         (tramp-zeroconf-parse-service-device-names): New defun.
1638         Derived from `tramp-zeroconf-parse-workstation-device-names'.
1639         (top): Add completion functions for "afp" and "smb" methods.
1641 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
1643         * test/automated/character-fold-tests.el: New file
1645 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
1647         * test/automated/sort-tests.el: New file.
1648         Tests in this file are randomly generated and then tested with
1649         regular, reverse, and case-fold sorting.
1651 2015-10-30  Eli Zaretskii  <eliz@gnu.org>
1653         Describe known problems with pinning Emacs to taskbar
1655         * etc/PROBLEMS: Describe the problem with pinning Emacs to taskbar
1656         on Windows 10.  For the details, see the discussion starting at
1657         http://lists.gnu.org/archive/html/help-emacs-windows/2015-09/msg00000.html.
1659 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
1661         * lisp/isearch.el: Avoid an error that blocks isearch.
1662         (isearch-update): Don't error if `isearch--current-buffer' has
1663         been killed.
1665         * test/automated/isearch-tests.el (isearch--test-update):
1666         New file.
1668 2015-10-30  Phil Sainty  <psainty@orcon.net.nz>
1670         Fix documentation of 'beginning/end-of-buffer'
1672         * lisp/simple.el (beginning-of-buffer, end-of-buffer): Clarify
1673         conditions under which the mark will be pushed at the previous
1674         position.  (Bug#21748)
1676 2015-10-30  Tassilo Horn  <tsdh@gnu.org>
1678         Add RefTeX feature idea: editing RefTeX TOC buffers
1680         More face defs for ivy, swiper, ace-window, eshell
1682 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
1684         * lisp/gnus/auth-source.el: Silence lexical-binding warnings.
1685         (auth-source-netrc-use-gpg-tokens): Simplify (symbol-value 'VAR) to
1686         just VAR.
1687         (auth-source-backend-parse): Use make-instance.
1688         (auth-source-search): Remove unused key args.
1689         Remove unused vars `accessor-key' and `backend'.  Avoid `eval'.
1690         (auth-source-search-backends): Use slot names rather than their initarg.
1691         (auth-source-netrc-create):
1692         (auth-source-delete):
1693         (auth-source-secrets-create, auth-source-plstore-search)
1694         (auth-source-macos-keychain-create, auth-source-macos-keychain-search)
1695         (auth-source-plstore-create, auth-source-netrc-search)
1696         (auth-source-netrc-parse): Remove unused key args.
1697         (auth-source-forget+): Simplify the arglist.
1698         (auth-source-macos-keychain-search-items)
1699         (auth-source-token-passphrase-callback-function): Mark unused args.
1700         (auth-source-epa-extract-gpg-token): Remove unused var `plain'.
1701         (pp-escape-newlines): Declare.
1702         (auto-source--symbol-keyword): New function.
1703         (auth-source-plstore-create, auth-source-netrc-create)
1704         (auth-source-netrc-normalize): Use it.
1705         (auth-source-netrc-search): Don't pass :delete to
1706         auth-source-netrc-parse since it doesn't use it.
1707         (auth-source-plstore-create, auth-source-netrc-create): Use plist-get
1708         symbol-value to index in keyword args.
1709         (auth-source-macos-keychain-result-append): Avoid setq.
1710         (auth-source-netrc-create): Remove unused vars `file' and `add'.
1711         (auth-source-user-or-password): Remove unused var `cname'.
1713 2015-10-29  Juri Linkov  <juri@linkov.net>
1715         * lisp/dired.el (dired-unmark-all-files-query): Declare.
1716         (dired-unmark-all-files): Let-bind it and use instead of ‘query’.
1717         (Bug#21746)
1719 2015-10-29  Juri Linkov  <juri@linkov.net>
1721         * lisp/ielm.el (ielm-indent-line): Use non-nil arg of comint-bol
1722         to go to the beginning of text line instead of command line.
1723         http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02360.html
1725 2015-10-29  Eli Zaretskii  <eliz@gnu.org>
1727         Fix encoding of saving *Help* buffers
1729         * lisp/help-fns.el (describe-function-1): If we use curved quotes,
1730         set help buffer's buffer-file-coding-system to UTF-8.  (Bug#21780)
1732 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
1734         * lisp/emacs-lisp/cl-generic.el: Add (major-mode MODE) context.
1735         (cl--generic-derived-specializers): New function.
1736         (cl--generic-derived-generalizer): New generalizer.
1737         (cl-generic-generalizers): New specializer (derived-mode MODE).
1738         (cl--generic-split-args): Apply the rewriter, if any.
1739         (cl-generic-define-context-rewriter): New macro.
1740         (major-mode): Use it to define a new context-rewriter, so we can write
1741         `(major-mode MODE)' instead of `(major-mode (derived-mode MODE))'.
1743         * lisp/frame.el (window-system): New context-rewriter so we can write
1744         `(window-system VAL)' instead of (window-system (eql VAL)).
1745         (cl--generic-split-args): Apply the rewriter, if any.
1746         (frame-creation-function): Use the new syntax.
1748         * lisp/term/x-win.el (window-system-initialization)
1749         (handle-args-function, frame-creation-function)
1750         (gui-backend-set-selection, gui-backend-selection-owner-p)
1751         (gui-backend-selection-exists-p, gui-backend-get-selection):
1752         * lisp/term/w32-win.el (window-system-initialization)
1753         (handle-args-function, frame-creation-function)
1754         (gui-backend-set-selection, gui-backend-get-selection)
1755         (gui-backend-selection-owner-p, gui-backend-selection-exists-p):
1756         * lisp/term/pc-win.el (gui-backend-get-selection)
1757         (gui-backend-selection-exists-p, gui-backend-selection-owner-p)
1758         (gui-backend-set-selection, window-system-initialization)
1759         (frame-creation-function, handle-args-function):
1760         * lisp/term/ns-win.el (window-system-initialization)
1761         (handle-args-function, frame-creation-function)
1762         (gui-backend-set-selection, gui-backend-selection-exists-p)
1763         (gui-backend-get-selection):
1764         * lisp/startup.el (handle-args-function):
1765         * lisp/term/xterm.el (gui-backend-get-selection)
1766         (gui-backend-set-selection): Use the new syntax.
1768 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
1770         * test/indent/css-mode.css: Add tests for url(...) syntax.
1772 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
1774         * lisp/emacs-lisp/smie.el: Use `declare' for `pure'.
1775         (smie-precs->prec2, smie-merge-prec2s, smie-bnf->prec2)
1776         (smie-prec2->grammar): Use `declare'.
1778 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
1780         * lisp/emacs-lisp/cl-generic.el: Accommodate future changes.
1781         (cl--generic-generalizer): Add `name' field.
1782         (cl-generic-make-generalizer): Add corresponding `name' argument.
1783         (cl-generic-define-generalizer): New macro.
1784         (cl--generic-head-generalizer, cl--generic-eql-generalizer)
1785         (cl--generic-struct-generalizer, cl--generic-typeof-generalizer)
1786         (cl--generic-t-generalizer): Use it.
1787         (cl-generic-ensure-function): Add `noerror' argument.
1788         (cl-generic-define): Use it so we don't follow aliases.
1789         (cl-generic-define-method): Preserve pre-existing ordering of methods.
1790         (cl--generic-arg-specializer): New function.
1791         (cl--generic-cache-miss): Use it.
1792         (cl-generic-generalizers): Only fset a temporary definition
1793         during bootstrap.
1794         (cl--generic-struct-tag, cl--generic-struct-specializers):
1795         Allow extra arguments.
1797         * lisp/emacs-lisp/eieio-compat.el
1798         (eieio--generic-static-symbol-generalizer)
1799         (eieio--generic-static-object-generalizer):
1800         Use cl-generic-define-generalizer.
1801         (eieio--generic-static-symbol-specializers): Allow extra arguments.
1803         * lisp/emacs-lisp/eieio-core.el (eieio--generic-generalizer)
1804         (eieio--generic-subclass-generalizer):
1805         Use cl-generic-define-generalizer.
1806         (eieio--generic-subclass-specializers): Allow extra arguments.
1808 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
1810         * lisp/emacs-lisp/bytecomp.el (compile-defun): Add defvars in scope.
1812 2015-10-29  Michael Albinus  <michael.albinus@gmx.de>
1814         Add "afp" method to Tramp
1816         * doc/misc/tramp.texi (GVFS based methods): Describe `afp' method.
1818         * lisp/net/tramp-gvfs.el (tramp-gvfs-methods): Add "afp" method.
1819         (tramp-gvfs-handle-expand-file-name)
1820         (tramp-gvfs-handler-mounted-unmounted)
1821         (tramp-gvfs-connection-mounted-p, tramp-gvfs-mount-spec)
1822         (tramp-gvfs-maybe-open-connection): Support also "afp".
1823         (tramp-gvfs-handle-file-attributes): Handle the case of empty
1824         "owner::user" and "owner::group" entries.
1826 2015-10-29  Andy Moreton  <andrewjmoreton@gmail.com>
1828         Handle negative coordinates in ‘x_calc_absolute_position’
1830         * src/w32term.c (x_calc_absolute_position): Find display origin to
1831         allow for negative coordinates.
1833 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
1835         (internal--syntax-propertize): Save match-data here (bug#21766)
1837         * lisp/emacs-lisp/syntax.el (internal--syntax-propertize): Save match-data.
1838         * lisp/simple.el (delete-trailing-whitespace): Undo last change.
1840 2015-10-28  Dmitry Gutov  <dgutov@yandex.ru>
1842         Don't require default-directory to end with a slash
1844         * doc/lispref/files.texi (Magic File Names): Document the change
1845         in unhandled-file-name-directory.
1847         * lisp/url/url-handlers.el
1848         (url-handler-unhandled-file-name-directory): Update accordingly.
1850         * src/buffer.c (default-directory): Update the docsting.
1852         * src/fileio.c (unhandled-file-name-directory): Default to calling
1853         `file-name-as-directory'
1854         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02294.html).
1856 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
1858         * lisp/isearch.el: Delete some outdated comments.
1860 2015-10-28  Vibhav Pant  <vibhavp@gmail.com>
1862         Fix eshell/clear not working if the output has a small line count
1864         * lisp/eshell/esh-mode.el (eshell/clear): Use (window-size) as the
1865         number of newlines to be inserted. This fixes the issue where
1866         eshell/clear wouldn't work if the prompt was not at the bottom of the
1867         window, and the output wasn't too long.
1869 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
1871         * lisp/files.el (write-file): Use vc-refresh-state.
1873         * lisp/autorevert.el (auto-revert-handler): Use vc-refresh-state.
1875         * lisp/vc/pcvs.el (cvs-revert-if-needed): Use vc-refresh-state.
1877 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
1879         * lisp/emacs-lisp/macroexp.el: Tweak macroexp-if optimizations.
1880         (macroexp-unprogn): Make sure we never return an empty list.
1881         (macroexp-if): Remove unused (and unsafe) optimization.
1882         Optimize (if A T (if B T E)) into (if (or A B) T E) instead, which does
1883         occur occasionally.
1885 2015-10-28  Juanma Barranquero  <lekktu@gmail.com>
1887         Fix bug#21766 and add test
1888         * lisp/simple.el (delete-trailing-whitespace): Save match data when
1889         calling `skip-syntax-backward'.
1890         * test/automated/simple-test.el (simple-delete-trailing-whitespace):
1891         New test.
1893 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
1895         * doc/lispref/sequences.texi (Sequence Functions): Fix typo.
1897 2015-10-28  Paul Eggert  <eggert@cs.ucla.edu>
1899         * src/dispnew.c (init_display): Simplify overflow checking.
1901 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
1903         * lisp/character-fold.el (character-fold-to-regexp): Fix case
1904         where string ends in space
1906 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
1908         * lisp/emacs-lisp/seq.el (seq-mapn): New function.
1910         * doc/lispref/sequences.texi (Sequence Functions): Document seq-mapn.
1912 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
1914         * lisp/character-fold.el: Make compatible with lax-whitespace.
1915         (character-fold-to-regexp): Rework internals to play nice with
1916         lax-whitespacing.
1918         When the user types a space, we want to match the table entry for
1919         ?\s, which is generally a regexp like "[ ...]".  However, the
1920         `search-spaces-regexp' variable doesn't "see" spaces inside these
1921         regexp constructs, so we need to use "\\( \\|[ ...]\\)" instead (to
1922         manually expose a space).
1924         Furthermore, the lax search engine acts on a bunch of spaces, not
1925         on individual spaces, so if the string contains sequential spaces
1926         like "  ", we need to keep them grouped together like this:
1927         "\\(  \\|[ ...][ ...]\\)".
1929 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
1931         * lisp/isearch.el: Refactor momentary messages.
1932         (isearch--momentary-message): New function.
1933         (isearch-toggle-lax-whitespace, isearch-toggle-case-fold)
1934         (isearch-toggle-invisible): Use it.
1936 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
1938         * lisp/isearch.el: Define all toggles with `isearch-define-mode-toggle'.
1939         (isearch-define-mode-toggle): New macro.
1940         (isearch-toggle-invisible): Rename to
1941         `isearch-define-mode-toggle'.
1942         (isearch-toggle-case-fold, isearch-toggle-invisible)
1943         (isearch-toggle-regexp, isearch-toggle-lax-whitespace): Define
1944         with `isearch-define-mode-toggle'.
1946 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
1948         Avoid using `add-to-list' on a let-local var in tramp-smb.el
1950         * lisp/net/tramp-compat.el (tramp-compat-delete-dups): New defun.
1951         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files): Use it.
1953 2015-10-28  Anders Lindgren  <andlind@gmail.com>
1955         Merge branch 'master' of /Volumes/HD2/build/emacs-git-ssh
1957         Merge branch 'master' of ssh://git.sv.gnu.org/srv/git/emacs
1959         Merge branch 'master' of /Volumes/HD2/build/emacs-git-ssh
1961 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
1963         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files):
1964         Revert 692bce5b9eccfae19ae2a5a23a9ccd8d6bf86076, `delete-dups'
1965         does not exist in XEmacs 21.4.
1967 2015-10-28  Anders Lindgren  <andlind@gmail.com>
1969         Fixed OS X startup crash
1971         Input events started to arrive before ns_term_init() was finished.
1972         Solved by blocking input.  This also seems to correct the "You
1973         can't open the application "Emacs" because it may be damaged or
1974         incomplete" error issued when double-clicking on the Emacs
1975         application.
1977         * nsterm.m (ns_constrain_all_frames, ns_init_term): Block input.
1978         * nsterm.m (ns_send_appdefined, EmacsApp): Trace output.
1980 2015-10-28  Anders Lindgren  <andlind@gmail.com>
1982         Merge branch 'master' of ssh://git.sv.gnu.org/srv/git/emacs
1984 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
1986         * src/process.c (Fget_buffer_process): Improve docstring.
1987         Document the fact that it doesn't return dead processes.
1989 2015-10-28  Anders Lindgren  <andlind@gmail.com>
1991         Fix incorrect NextStep tool-bar-mode -- wrong number of rows in frame.
1993         * nsterm.h (struct ns_output): New flag, in_animation.
1994         * nsfns.m (Fx_create_frame): Initialize in_animation flag.
1995         * nsmenu.m (free_frame_tool_bar, update_frame_tool_bar): Set
1996         in_animation flag around call to "setVisible". Set new tool bar
1997         height before call to setVisible.
1998         * nsterm.m (x_set_window_size): Don't call [view setRow:
1999         andColumns:] as this fools the subsequent call to updateFrameSize
2000         from performing the real resize.
2001         (windowDidResize): Don't update anything when in_animation is
2002         non-zero.
2004         Trace output.
2006         * nsmenu.m (free_frame_tool_bar, update_frame_tool_bar)
2007         (EmacsToolbar):
2008         * nsterm.m (x_set_window_size, updateFrameSize)
2009         ([EmacsView setRows: andColumns:])
2011 2015-10-28  Nicolas Petton  <nicolas@petton.fr>
2013         * lisp/emacs-lisp/thunk.el (thunk-delay): Fix the macro.
2015 2015-10-28  Tassilo Horn  <tsdh@gnu.org>
2017         Prettify TeX macros not ending in a word char
2019         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
2020         Prettify macros which don't end in a word character.
2022 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
2024         Pipe Hg commit descriptions through 'tabindent'
2026         * lisp/vc/vc-hg.el (vc-hg-log-format): Pipe commit description
2027         through 'tabindent'.
2028         (vc-hg-log-view-mode): Set tab-width to 2 locally.
2029         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02259.html)
2031 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
2033         * lisp/net/tramp-smb.el: Avoid using `add-to-list' on a let-local var.
2034         (tramp-smb-handle-directory-files): Use `delete-dups'.
2036         * lisp/net/tramp.el (auto-save-file-name-transforms): Declare.
2038 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
2040         * lisp/international/ccl.el: Use lexical-binding.
2041         (ccl-compile-if): Remove unused var `false-ic'.
2042         (ccl-compile-write-repeat): Remove unused var `i'.
2043         (ccl-compile-map-single): Remove unused var `id'.
2044         (ccl-dump, ccl-dump-binary): Use explicit let-binding to bind the
2045         dynamic var `ccl-code'.
2047 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
2049         * lisp/json.el (json-new-object): Optimize trivial `list' call.
2051 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
2053         * lisp/help.el: Fix bug with incorrect arglist string.
2054         (help-add-fundoc-usage): Don't mistake a mis-formatted string
2055         for a list.
2057 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
2059         * lisp/gnus/gnus-topic.el: Silence some warnings.
2060         (gnus-topic-prepare-topic): Remove unused var `topic'.
2061         (gnus-topic-remove-topic): Mark unused arg `hide'.
2062         (gnus-tmp-header): Declare.
2063         (gnus-topic-goto-missing-group): Remove unused var `entry'.
2064         (gnus-topic-unmark-topic): Mark unused arg `dummy'.
2065         (gnus-topic-copy-matching): Mark unused arg `copyp'.
2066         Move initialization of `topic' into its declaration.
2068 2015-10-27  Stephen Leake  <stephen_leake@stephe-leake.org>
2070         Minor CEDET fixes
2072         * lisp/cedet/cedet-global.el (cedet-gnu-global-gtags-call):
2073         Handle warnings from gtags about invalid options.
2074         (cedet-gnu-global-create/update-database): Do incremental update
2075         properly.
2077         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
2078         Get monotone root right.
2080 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
2082         Fall back to polling in autorevert when needed
2084         * lisp/autorevert.el (auto-revert-notify-handler): When a
2085         `stopped' event arrives from file notification, fall back to polling.
2087         * test/automated/file-notify-tests.el
2088         (file-notify-test03-autorevert): Extend test for polling when file
2089         notification ceases to work.
2091 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
2093         Show full commit messages in 'hg log' when appropriate
2095         * lisp/vc/vc-hg.el (vc-hg-log-format): New variable.
2096         (vc-hg-print-log, vc-hg-expanded-log-entry): Use it.
2097         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02191.html)
2099 2015-10-27  Nicolas Petton  <nicolas@petton.fr>
2101         Use a plain SVG file for the icon
2103         * etc/images/icons/hicolor/scalable/apps/emacs.svg: Use a plain SVG
2104           format instead of the Inkscape SVG format.
2106 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
2108         Fix subtle bug in auto-revert-tests.el
2110         * test/automated/auto-revert-tests.el
2111         (auto-revert-test02-auto-revert-mode-dired): Narrow *Messages*
2112         buffer where it belongs to.  (Bug#21668)
2114 2015-10-26  Nicolas Petton  <nicolas@petton.fr>
2116         * lisp/emacs-lisp/map.el: Better docstrings.
2118         * lisp/emacs-lisp/seq.el: Better docstrings.
2120         * lisp/emacs-lisp/seq.el: Rename all seq arguments to sequence.
2122 2015-10-26  Phillip Lord  <phillip.lord@russet.org.uk>
2124         * lisp/emacs-lisp/ert.el: Print results without newline escaping.
2126 2015-10-26  Stephen Leake  <stephen_leake@stephe-leake.org>
2128         Clarify that load-path contents should be directory file names
2130         * doc/lispref/files.texi (Directory Names): Define and use "directory
2131         file name".  Recommend `expand-file-name'.
2133         * src/lread.c (load-path): Fix doc string; elements are directory file
2134         names.
2136 2015-10-26  Eli Zaretskii  <eliz@gnu.org>
2138         Fix simple-test.el test
2140         * test/automated/simple-test.el (simple-test--dummy-buffer):
2141         Make sure indentation doesn't use TABs, otherwise the 6th test
2142         might fail.
2144 2015-10-26  Mark Oteiza  <mvoteiza@udel.edu>
2146         * lisp/net/eww.el (eww-bookmark-prepare): Use truncate-string-to-width.
2147         `substring' does not account for full width characters.
2149 2015-10-26  Michael Albinus  <michael.albinus@gmx.de>
2151         Further work on `stopped' events in filenotify.el
2153         * doc/lispref/os.texi (File Notifications): Rework examples.
2155         * lisp/filenotify.el (file-notify--rm-descriptor): Optional parameter.
2156         (file-notify--rm-descriptor, file-notify-callback): Improve check
2157         for sending `stopped' event.
2158         (file-notify-add-watch): Check for more events for `inotify'.
2160         * test/automated/file-notify-tests.el
2161         (file-notify--test-expected-events): New defvar.
2162         (file-notify--test-with-events): Use it.
2163         (file-notify--test-cleanup): Make it more robust when deleting
2164         directories.
2165         (file-notify--test-event-test): Check also for watched directories.
2166         (file-notify--test-event-handler): Suppress temporary .#files.
2167         (file-notify-test02-events, file-notify-test04-file-validity):
2168         Rework `stopped' events.
2169         (file-notify-test05-dir-validity): Wait for events when appropriate.
2171 2015-10-26  Artur Malabarba  <bruce.connor.am@gmail.com>
2173         * src/keyboard.c (post-command-hook): Shorten docstring.
2175 2015-10-26  Tassilo Horn  <tsdh@gnu.org>
2177         Fix infinite loop in sh-script's SMIE code
2179         * lisp/progmodes/sh-script.el (sh-smie-sh-forward-token): Fix infinite
2180         loop (bug#21747).
2182 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
2184         * lisp/isearch.el (search-default-regexp-mode): Revert to nil.
2185         Character-fold search _still_ doesn't play well with
2186         lax-whitespace.  So disable it by default (again) for now.
2188 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
2190         * lisp/isearch.el: No visual feedback for default search mode.
2191         During an isearch where character-folding is the default, we don't
2192         want to take up minibuffer space just to tell the user that
2193         "Char-fold " is on.  The same goes for other modes, if the user
2194         changes the default.  In contrast, if the user toggles OFF the
2195         default mode, they should see "Literal", to distinguish it from
2196         the default mode.
2197         (isearch--describe-regexp-mode): Return "" if describing the
2198         default mode, and return "literal " if describing a plain search
2199         and it is not default.
2201 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
2203         * test/automated/simple-test.el: New file.
2204         Define tests for `newline' and `open-line'.
2206 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
2208         * lisp/simple.el (open-line): Integrate with electric-indent-mode.
2209         Also run `post-self-insert-hook' when called interactively.
2211 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
2213         * lisp/simple.el (open-line): Fix docstring.
2214         Also explain apparently redundant line.
2216 2015-10-25  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
2217             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
2219         Sync with soap-client repository, version 3.0.1
2221         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
2222         Bump version to 3.0.1.
2224         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Update home page.
2226 2015-10-25  Eli Zaretskii  <eliz@gnu.org>
2228         * lisp/progmodes/grep.el (grep): Doc fix.  (Bug#21754)
2230 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
2232         * src/keyboard.c (post-command-hook): Extend the docstring.
2233         Mainly, explain how to use it without hanging Emacs, or giving the
2234         impression that it is hanging.  Also mention `pre-command-hook'.
2235         (pre-command-hook): Mention `post-command-hook'.
2237 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
2239         * lisp/custom.el (custom-declare-variable): Shorten code again.
2240         Without using pcase this time.  We can't use pcase because it is
2241         loaded after custom in loadup.el.  Also add a comment explaining
2242         this to future dummies like me.
2244 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
2246         * doc/lispref/os.texi (File Notifications): Document `stopped event'.
2248 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
2250         Introduce `stopped' event in file notification
2252         * lisp/filenotify.el (file-notify--rm-descriptor): New defun.
2253         (file-notify-rm-watch): Use it.
2254         (file-notify-callback): Implement `stopped' event.
2255         (file-notify-add-watch): Mention `stopped' in the docstring.
2256         Check, that upper directory exists.
2258         * test/automated/file-notify-tests.el (file-notify-test01-add-watch):
2259         Add two test cases.
2260         (file-notify-test02-events): Handle also `stopped' event.
2261         (file-notify-test04-file-validity): Add another test case.
2263 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
2265         Revert commit that broke 'make bootstrap'
2267         * lisp/custom.el (custom-declare-variable): Revert commit
2268         79fac080d277fed07b3c192890ad59d36d9f83b6.  custom.el needs to work
2269         even when pcase has not been defined yet, when doing bootstrapping.
2271 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
2273         Port recent inline functions fix to Standard C
2275         * src/lisp.h (LISP_MACRO_DEFUN, LISP_MACRO_DEFUN_VOID): Remove.
2276         All uses rewritten to define the function directly rather than to
2277         use a macro to define the function.  This conforms to Standard C,
2278         which does not allow stray semicolons at the top level.  I hope it
2279         also avoids the problems with TAGS.  Those macros, though clever,
2280         were pretty confusing anyway, and it wasn’t clear they were worth
2281         the aggravation even without the TAGS problem.
2283 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
2285         * lisp/isearch.el: Make character-fold search the default again.
2287 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
2289         * lisp/character-fold.el: Many improvements.
2290         (character-fold-search-forward, character-fold-search-backward):
2291         New command.
2292         (character-fold-to-regexp): Remove lax-whitespace hack.
2293         (character-fold-search): Remove variable.  Only isearch and
2294         query-replace use char-folding, and they both have their own
2295         variables to configure that.
2297 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
2299         * lisp/isearch.el: Generalize definition of regexp-function toggles.
2300         (isearch-specify-regexp-function): New macro for specifying
2301         possible values of `isearch-regexp-function'.
2302         (isearch-toggle-character-fold, isearch-toggle-symbol)
2303         (isearch-toggle-word): Define with `isearch-specify-regexp-function'.
2305 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
2307         * lisp/isearch.el (search-default-regexp-mode): New variable.
2308         (isearch-mode): Use it.
2310 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
2312         * lisp/isearch.el (search-exit-option, search-slow-window-lines)
2313         (search-slow-speed, search-upper-case)
2314         (search-nonincremental-instead, search-whitespace-regexp)
2315         (search-invisible, isearch-hide-immediately)
2316         (isearch-resume-in-command-history, search-ring-max)
2317         (regexp-search-ring-max, search-ring-update, search-highlight)
2318         (isearch-fail): Delete :group entries.
2320 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
2322         * lisp/custom.el (custom-declare-variable): Shorten code a bit.
2324 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
2326         addpm.c: Silence some warnings.
2328         * nt/addpm.c (DdeCommand): Cast pData argument of DdeClientTransaction
2329         to LPBYTE.
2330         (add_registry): Pass NULL to optional lpClass argument of
2331         RegCreateKeyEx, not an empty string.
2333 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
2335         addpm.c: Do not add obsolete GTK libraries to the path.
2337         * nt/addpm.c (REG_GTK, REG_RUNEMACS_PATH): Delete.
2338         (add_registry): Remove variables `size' and `gtk_key'.
2339         Do not add the GTK DLL directory to the library search path; it is
2340         confusing behavior (in particular, the same Emacs version with and
2341         without invoking addpm will use a different path), and the GTK image
2342         libraries are obsolete anyway.
2344 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
2346         addpm.c: Replace existing registry entries, but do not create new ones
2348         * nt/addpm.c (add_registry): If the Emacs registry key exists, replace
2349         existing values from previous versions, but do not add new ones; the
2350         key could exist for other reasons unrelated to old Emacsen, like X-style
2351         resources, or to set some environment variables like HOME or LANG, and
2352         in that case we don't want to populate it with obsolete values.
2354 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
2356         * nt/addpm.c (add_registry): Do not compute unused return value.
2358 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
2360         addpm.c: Don't pass REG_OPTION_NON_VOLATILE to RegOpenKeyEx
2362         * nt/addpm.c (add_registry): Pass 0 to ulOptions argument of
2363         RegOpenKeyEx, not REG_OPTION_NON_VOLATILE.  This doesn't change
2364         current behavior because REG_OPTION_NON_VOLATILE is defined to
2365         be 0L anyway, but that option is actually documented only for
2366         RegCreateKeyEx.
2368 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
2370         * src/w32notify.c (Fw32notify_add_watch): Fix version check.
2372 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
2374         Update frame title when redisplay scrolls selected window
2376         * src/xdisp.c (redisplay_window): Reconsider the frame's title
2377         when the mode-line of the frame's selected window needs to be
2378         updated.
2380 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
2382         Update frame title when scrolling the selected window
2384         * src/window.c (wset_update_mode_line): New function, sets either
2385         the window's update_mode_line flag or the global update_mode_lines
2386         variable.
2387         (Fset_window_start, set_window_buffer, window_scroll_pixel_based)
2388         (window_scroll_line_based): Call it instead of only setting the
2389         window's update_mode_line flag.
2391 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
2393         An even better fix for bug#21739
2395         * src/window.c (set_window_buffer): If the window is the frame's
2396         selected window, set update_mode_lines, not the window's
2397         update_mode_line flag.
2398         * src/buffer.c (Fkill_buffer): Undo last change.
2399         (set_update_modelines_for_buf): Function deleted.
2401 2015-10-24  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
2402             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
2404         Sync with soap-client repository, version 3.0.0
2406         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
2407         Bump version to 3.0.0.
2409         * lisp/net/soap-inspect.el: Merge in changes from Emacs master branch.
2411         * lisp/net/soap-client.el: Merge in changes from Emacs master branch.
2413         * lisp/net/soap-inspect.el: Shorten first line description.
2415         * lisp/net/soap-client.el: Make a small whitespace fix.
2417         * lisp/net/soap-inspect.el: Update copyright years.
2419         * lisp/net/soap-client.el (soap-encoded-namespaces): Move above
2420         first use in soap-encode-xs-element.
2422         * lisp/net/soap-client.el (soap-type-is-array?): new defun
2423         (soap-encode-xs-element): handle array elements in this function
2424         (soap-encode-xs-complex-type): flag error if asked to encode an
2425         array type, this is handled in `soap-encode-xs-element'
2427         * lisp/net/soap-inspect.el (soap-inspect-xs-attribute-group):
2428         Do not print type for attribute group.
2430         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute-group)
2431         New function.
2432         (soap-inspect-xs-attribute-group): Likewise.
2434         * lisp/net/soap-inspect.el
2435         (soap-resolve-references-for-xs-attribute-group): Resolve
2436         references of attributes in an attribute group.
2438         * lisp/net/soap-client.el (soap-decode-xs-attributes): Process attribute
2439         type directly, not through soap-wsdl-get.
2441         * lisp/net/soap-client.el (soap-xs-parse-attribute): Leave reference
2442         nil if reference attribute is nil.
2444         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
2445         Convert XML schema attributes to xsd:string.
2447         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute):
2448         New function.
2449         (soap-sample-value-for-xs-simple-type): Prepend attributes to result.
2450         (soap-sample-value-for-xs-complex-type): Likewise.
2451         (soap-inspect-xs-attribute): New function.
2452         (soap-inspect-xs-simple-type): Print attributes.
2453         (soap-inspect-xs-complex-type): Likewise.
2455         * lisp/net/soap-inspect.el (soap-resolve-references-for-xs-simple-type):
2456         Resolve references for attributes.
2457         (soap-resolve-references-for-xs-complex-type): Likewise.
2459         * lisp/net/soap-client.el (soap-xml-node-find-matching-child):
2460         Rename from soap-xml-node-first-child.
2461         (soap-xs-parse-attribute): Call soap-xml-node-find-matching-child.
2462         (soap-xs-parse-simple-type): Likewise.
2464         * lisp/net/soap-client.el (soap-invoke-async): Add error checking.
2466         * lisp/net/soap-client.el (soap-invoke-internal): New function.
2467         (soap-invoke-async): Call soap-invoke-internal.
2468         (soap-invoke): Likewise.
2470         * lisp/net/soap-client.el (soap-invoke-async): Ensure buffer passed to
2471         url-retrieve callback is killed.
2473         * lisp/net/soap-client.el (soap-parse-wsdl-phase-validate-node):
2474         Rename function.
2475         (soap-parse-wsdl-phase-fetch-imports): Likewise.
2476         (soap-parse-wsdl-phase-parse-schema): Likewise.
2477         (soap-parse-wsdl-phase-fetch-schema): Likewise.
2478         (soap-parse-wsdl-phase-finish-parsing): Likewise.
2479         (soap-parse-wsdl): Update calls.
2481         * lisp/net/soap-client.el (soap-invoke-async): Fix callback invocation.
2483         * lisp/net/soap-client.el (soap-invoke-async): New function.
2484         (soap-invoke): Reimplement using soap-invoke-async.
2486         * lisp/net/soap-client.el (soap-parse-server-response):
2487         Improve docstring.
2488         (soap-invoke): Inline call to soap-parse-server-response.
2490         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
2491         Prevent incorrect warning.
2493         * lisp/net/soap-client.el (soap-parse-server-response):
2494         Rename soap-process-url-response.  Destroy the mime part.
2495         (soap-invoke): Call soap-parse-server-response.
2497         * lisp/net/soap-client.el: Update copyright date.
2499         * lisp/net/soap-client.el: Fix checkdoc issues.
2501         * lisp/net/soap-client.el: Fix indentation and long lines.
2503         * lisp/net/soap-client.el (soap-time-format): Remove variable.
2504         (soap-encode-xs-basic-type): Simplify date-time format detection.
2505         (soap-decode-xs-basic-type): Remove soap-time-format support.
2507         * lisp/net/soap-client.el (soap-process-url-response): New function.
2508         (soap-fetch-xml-from-url): Call soap-process-url-response.
2509         (soap-parse-wsdl-phase-1): New function.
2510         (soap-parse-wsdl-phase-2): Likewise.
2511         (soap-parse-wsdl-phase-3): Likewise.
2512         (soap-parse-wsdl-phase-4): Likewise.
2513         (soap-parse-wsdl-phase-5): Likewise.
2514         (soap-parse-wsdl): Call phase functions.
2516         * lisp/net/soap-client.el (soap-decode-xs-basic-type):
2517         Remove one-argument and call.
2519         * lisp/net/soap-client.el (soap-decode-date-time): Improve docstring.
2521         * lisp/net/soap-client.el (soap-xmlschema-imports): Remove variable.
2522         (soap-parse-schema): Add wsdl argument.  Look up XML schema
2523         imports from wsdl.
2524         (soap-load-wsdl): Do not set soap-xmlschema-imports.
2525         (soap-parse-wsdl): Get XML schema imports from wsdl.
2527         * lisp/net/soap-client.el (soap-current-file): Remove variable.
2528         (soap-wsdl): Add current-file slot.
2529         (soap-fetch-xml-from-url): Add wsdl argument.  Look up current
2530         file from wsdl.
2531         (soap-fetch-xml-from-file): Likewise.
2532         (soap-fetch-xml): Likewise.
2533         (soap-load-wsdl): Always create wsdl object first.
2534         (soap-parse-wsdl): Pass wsdl to soap-fetch-xml.
2536         * lisp/net/soap-client.el (soap-xs-element): Add is-group slot.
2537         (soap-xs-parse-element): Set is-group slot.
2538         (soap-resolve-references-for-xs-element): Skip is-group elements.
2539         (soap-xs-complex-type): Add is-group slot.
2540         (soap-xs-parse-complex-type): Set is-group slot.
2541         (soap-xs-parse-sequence): Parse xsd:group elements.
2542         (soap-resolve-references-for-xs-complex-type): Inline elements
2543         from referenced xsd:group nodes.
2544         (soap-parse-schema): Parse xsd:group nodes.
2546         * lisp/net/soap-client.el (soap-invoke):
2547         Don't set url-http-version to 1.0.
2549         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
2550         Allow choice nodes to accept multiple values.
2552         * lisp/net/soap-client.el (soap-encode-body): Check parameters argument
2553         for extra header values.
2555         * lisp/net/soap-client.el (soap-well-known-xmlns):
2556         Add wsa and wsaw tags.
2557         (soap-operation): Add input-action and output-action slots.
2558         (soap-parse-operation): Parse wsaw:Action nodes.
2559         (soap-encode-body): Encode service-url for WS-Addressing.
2560         (soap-create-envelope): Likewise.
2561         (soap-invoke): Update soap-create-envelope call to provide
2562         service-url argument.
2564         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
2565         Support xsi:type override attribute.
2566         (soap-decode-array): Likewise.
2568         * lisp/net/soap-client.el (soap-parse-schema):
2569         Handle location attribute.
2571         * lisp/net/soap-client.el (soap-decode-type): Check that multiRef
2572         matched validation regexp.
2574         * lisp/net/soap-client.el (soap-encode-xs-simple-type):
2575         Encode xsd:list nodes.
2576         (soap-decode-xs-simple-type): Decode xsd:list nodes.
2578         * lisp/net/soap-client.el (soap-get-candidate-elements):
2579         Fix reference handling.
2581         * lisp/net/soap-client.el (soap-xs-simple-type): Add is-list slot.
2582         (soap-xs-parse-simple-type): Call soap-xs-add-list for xsd:list nodes.
2583         (soap-xs-add-list): New function.
2585         * lisp/net/soap-client.el (soap-encode-xs-element): When a boolean is
2586         expected, interpret nil as "false".
2588         * lisp/net/soap-client.el (soap-make-xs-basic-types): Add gYearMonth,
2589         gYear, gMonthDay, gDay and gMonth.
2591         * lisp/net/soap-client.el (soap-time-format): New variable.
2592         (soap-encode-xs-basic-type): Handle dateTime, time, date,
2593         gYearMonth, gYear, gMonthDay, gDay and gMonth.
2594         (soap-decode-date-time): New function.
2595         (soap-decode-xs-basic-type): Use soap-decode-date-time.
2597         * lisp/net/soap-client.el (soap-encode-xs-basic-type): Validate value
2598         after encoding.
2599         (soap-decode-xs-basic-type): Validate value before decoding.
2601         * lisp/net/soap-client.el (soap-validate-xs-basic-type): New function.
2602         (soap-validate-xs-simple-type): Call soap-validate-xs-basic-type.
2604         * lisp/net/soap-client.el (soap-xs-add-union): Append result to base
2605         instead of overwriting it.
2606         (soap-validate-xs-simple-type): Add union support.
2608         * lisp/net/soap-client.el (soap-xs-add-restriction): Translate pattern
2609         to Emacs regexp using xsdre-translate.
2610         (soap-validate-xs-simple-type): Validate value against pattern.
2612         * lisp/net/soap-client.el (soap-xs-add-union): Preserve WSDL order of
2613         inline simpleType nodes.
2614         (soap-decode-type): Handle union types.
2616         * lisp/net/soap-client.el (soap-decode-xs-attributes): Decode basic-type
2617         attributes.
2619         * lisp/net/soap-client.el (soap-get-xs-attributes-from-groups): Rename
2620         from soap-xs-attribute-group-consolidate, all callers updated
2621         (soap-get-xs-attributes): Rename from
2622         soap-xs-attributes-consolidate, all callers updated
2624         * lisp/net/soap-client.el (soap-xs-type): Add attribute-group slot.
2625         (soap-xs-attribute-group): New type.
2626         (soap-xs-parse-attribute-group): New function.
2627         (soap-resolve-references-for-xs-attribute-group): Likewise.
2628         (soap-xs-add-extension): Handle attribute groups.
2629         (soap-resolve-references-for-xs-simple-type): Likewise.
2630         (soap-xs-parse-complex-type): Likewise.
2631         (soap-xs-parse-extension-or-restriction): Likewise.
2632         (soap-resolve-references-for-xs-complex-type): Likewise.
2633         (soap-xs-attribute-group-consolidate): New function.
2634         (soap-xs-attributes-consolidate): Handle attribute groups.
2635         (soap-parse-schema): Likewise.
2637         * lisp/net/soap-client.el (soap-encode-xs-basic-type):
2638         Fix boolean encoding.
2640         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Print ref
2641         element names in warnings.
2643         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Fix splicing.
2645         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
2646         Eliminate invalid warnings for choice types.
2648         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
2649         Also encode base type attributes.
2651         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Fix compilation
2652         warning.  Print e-name in warnings, or element if e-name is nil.
2654         * lisp/net/soap-client.el (soap-xs-element): Add alternatives slot.
2655         (soap-xs-parse-element): Set substitution-group.
2656         (soap-resolve-references-for-xs-element): Populate alternatives slot.
2657         (soap-get-candidate-elements): New function.
2658         (soap-encode-xs-complex-type): Iterate through all candidate elements.
2659         Handle types with nil type indicator.  Fix warning logic.
2661         * lisp/net/soap-client.el (soap-current-wsdl): Move declaration
2662         earlier in the file to prevent compiler warning.
2664         * lisp/net/soap-client.el (soap-node-optional): New function.
2665         (soap-node-multiple): Likewise.
2666         (soap-xs-parse-element): Call soap-node-optional and
2667         soap-node-multiple.
2668         (soap-xs-complex-type): Add optional? and multiple? slots.
2669         (soap-xml-get-children-fq): New function.
2670         (soap-xs-element-get-fq-name): Likewise.
2671         (soap-xs-complex-type-optional-p): Likewise.
2672         (soap-xs-complex-type-multiple-p): Likewise.
2673         (soap-xs-attributes-consolidate): Likewise.
2674         (soap-decode-xs-attributes): Likewise.
2675         (soap-decode-xs-complex-type): Decode types with nil type indicator.
2676         Support children that use local namespaces.  Decode attributes.
2677         Add type considerations to optional? and multiple? warnings.
2679         * lisp/net/soap-client.el (soap-xs-parse-extension-or-restriction):
2680         Store parsed attributes.
2681         (soap-encode-xs-complex-type-attributes): Encode custom attributes.
2683         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
2684         Don't add the xsi:type attribute (Exchange refuses requests which have
2685         this attribute).
2687         * lisp/net/soap-client.el, soap-inspect.el: Convert to lexical binding,
2688         correct compiler warnings about unused function arguments and
2689         local variables.
2691         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Handle nil
2692         type indicator.
2693         (soap-parse-envelope): Handle response headers.
2694         (soap-parse-response): Likewise.  Only return non-nil decoded values.
2696         * lisp/net/soap-client.el (soap-validate-xs-simple-type):
2697         Return validated value.
2699         * lisp/net/soap-client.el (soap-xs-parse-element)
2700         (soap-xs-parse-simple-type)
2701         (soap-xs-parse-complex-type)
2702         (soap-parse-message)
2703         (soap-parse-operation): Add the current namespace to the element
2704         being created.
2705         (soap-resolve-references-for-xs-element)
2706         (soap-resolve-references-for-xs-simple-type)
2707         (soap-resolve-references-for-xs-complex-type)
2708         (soap-resolve-references-for-operation): Resolve the namespace to
2709         the namespace tag.
2710         (soap-make-wsdl): specify a namespace tag when creating the xsd
2711         and soapenc namespaces
2712         (soap-wsdl-resolve-references): don't update namespace tags in
2713         elements here
2714         (soap-parse-port-type): bind the urn: to soap-target-xmlns
2715         (soap-encode-body): don't add nil namespace tags to
2716         soap-encoded-namespaces
2718         * lisp/net/soap-inspect.el: Use `soap-make-wsdl` to construct the object
2719         for registering the soap-inspect method.  Make debbugs tests pass.
2720         * lisp/net/soap-client.el (soap-decode-any-type): Use soap-l2fq on the
2721         type name, also skip string only nodes when decoding a structure.
2722         (soap-xs-parse-complex-type): (BUG) Dispatch parsing for choice
2723         types too.
2724         (soap-encode-body): Grab the header value from the param table.
2726         * lisp/net/soap-client.el (soap-should-encode-value-for-xs-element):
2727         New function.
2728         (soap-encode-xs-element): Don't encode nil value unless needed.
2730         * lisp/net/soap-client.el (soap-bound-operation): New slot `soap-body`.
2731         (soap-parse-binding): Parse the message parts required in the body.
2732         (soap-encode-body): Encode only the parts that are declared to be
2733         part of the body.
2735         * lisp/net/soap-client.el (soap-encode-xs-element): use the fq name
2736         when writing out the tag.
2737         (soap-encode-body): Remove hack that inserts the xmlns in the
2738         element attributes list.
2740         * lisp/net/soap-client.el (soap-xs-attribute): Add "default" slot.
2741         (soap-xs-parse-attribute): Default slot is set from the XML
2742         "fixed" attribute.
2743         (soap-encode-xs-complex-type-attributes): Encode any attributes
2744         that have a default value.  Also, don't put the xsi:nil attribute
2745         when the complex type has no content anyway.
2747         * lisp/net/soap-client.el (soap-well-known-xmlns):
2748         Add the xml namespace.
2749         (soap-local-xmlns): Start with the xml namespace.
2750         (soap-xml-node-first-child): Skip xsd:annotation nodes too.
2751         (soap-make-xs-basic-types): More xsd types added.
2752         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
2753         Handle "language", "time", "date", "nonNegativeInteger".
2754         (soap-resolve-references-for-xs-element): Don't signal an error if
2755         the element does not have a type.
2756         (soap-xs-parse-simple-type): Subtypes are handled with ecase,
2757         added stum for xsd:list.
2758         (soap-xs-add-union): Call soap-l2fq on all union members.
2759         (soap-xs-add-extension): Call soap-l2fq on the base member.
2760         (soap-resolve-references-for-xs-simple-type): Don't signal an
2761         error if the simple type has no base.
2762         (soap-resolve-references-for-xs-simple-type): Bugfix, call
2763         soap-wsdl-get on each type of the base.
2765         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
2766         Referenced type can be eiher a simple type or a basic type.
2767         (soap-xs-add-restriction)
2768         (soap-xs-parse-extension-or-restriction): Use `soap-l2fq' on base.
2769         (soap-make-xs-basic-types)
2770         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
2771         Add support for more XMLSchema basic types.
2772         (soap-current-file, soap-xmlschema-imports): New defvars.
2773         (soap-parse-schema): Add locations from xsd:import tags to
2774         `soap-xmlschema-imports'.
2775         (soap-wsdl): Make destructor private.
2776         (soap-make-wsdl): New defun, SOAP-WSDL object constructor.
2777         (soap-wsdl-add-alias): Check if we try to replace aliases.
2778         (soap-fetch-xml-from-url, soap-fetch-xml-from-file)
2779         (soap-fetch-xml): New defuns.
2780         (soap-load-wsdl): Update to load the WSDL from either a file or
2781         an url.
2782         (soap-load-wsdl-from-url): Now an alias to `soap-load-wsdl'.
2783         (soap-parse-wsdl): Process wsdl:import tags and imports from
2784         `soap-xmlschema-imports'.
2785         * lisp/net/soap-client.el (soap-l2wk): Bugfix: call symbolp instead of
2786         symbol-name.
2787         (soap-l2fq): Make the name part always a string.
2788         (soap-name-p): New defun, used for name tests.
2790         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-complex-type):
2791         Supply sample values for choice types with a special tag.
2792         * lisp/net/soap-client.el (soap-encode-xs-complex-type):
2793         Handle anonymous elements correctly.
2794         (soap-encode-value): Accept nodes that have no namespace tag.
2796         * lisp/net/soap-client.el (soap-invoke): Encode the string for
2797         `url-request-data' as UTF-8.  Fixes issue 16.
2799 2015-10-24  Nicolas Petton  <nicolas@petton.fr>
2801         Update the new icon
2803         Move the E slightly to the right in the circle.
2805         * etc/images/icons/hicolor/128x128/apps/emacs.png:
2806         * etc/images/icons/hicolor/16x16/apps/emacs.png:
2807         * etc/images/icons/hicolor/24x24/apps/emacs.png:
2808         * etc/images/icons/hicolor/32x32/apps/emacs.png:
2809         * etc/images/icons/hicolor/48x48/apps/emacs.png:
2810         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
2811         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
2812         * nt/icons/emacs.ico: New icom update.
2814 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
2816         Avoid missing inline functions from lisp.h in TAGS
2818         * src/lisp.h (LISP_MACRO_DEFUN): Mention in the commentary the
2819         need to end each invocation with a semi-colon.
2820         Add a semi-colon at the end of each invocation of LISP_MACRO_DEFUN
2821         and LISP_MACRO_DEFUN_VOID.  This is to avoid missing in TAGS
2822         inline functions defined immediately after each invocation, and
2823         also avoid tagging every invocation of these macros.
2825 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
2827         A better fix for bug#21739
2829         * src/buffer.c (set_update_modelines_for_buf): New function.
2830         (Fkill_buffer): Use it to set the global variable
2831         update_mode_lines if the killed buffer was displayed in some
2832         window.  Don't set windows_or_buffers_changed.  This is a better
2833         fix for bug#21739 than the previous fix, since it will cause only
2834         redisplay of mode lines, not of entire windows, but will still
2835         catch attention of x_consider_frame_title in xdisp.c, which
2836         redraws the frame title.
2838 2015-10-24  Tassilo Horn  <tsdh@gnu.org>
2840         * lisp/dired-aux.el (dired-compress-files-alist): Add support for
2841         tar.bz2 and tar.xz archives.
2843 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
2845         Fix infloop in redisplay introduced by a recent change
2847         * src/xdisp.c (redisplay_internal): Avoid inflooping when
2848         redisplaying the selected window sets the selected frame's
2849         redisplay flag.  (Bug#21745)
2851 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
2853         * lisp/emacs-lisp/thunk.el: Better documentation.
2855 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
2857         Replace the old icon for Windows and Mac OSX
2859         * nt/icons/emacs.ico:
2860         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
2861         Use the new icons.
2863 2015-10-23  Stephen Leake  <stephen_leake@stephe-leake.org>
2865         * lisp/emacs-lisp/package.el (package-autoload-ensure-default-file):
2866         `load-path' should contain only directory names.
2868 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
2870         New library thunk.el
2872         thunk.el is extracted from stream.el in ELPA, with additional tests.
2874         * lisp/emacs-lisp/thunk.el: New file.
2875         * test/automated/thunk-tests.el: New file.
2876         * etc/NEWS: Add information about thunk.el
2878 2015-10-23  Michael Albinus  <michael.albinus@gmx.de>
2880         Fix bug#21669
2882         * lisp/filenotify.el (file-notify-rm-watch): Improve check for
2883         calling low-level functions.
2885         * test/automated/file-notify-tests.el (file-notify--test-timeout):
2886         Decrase to 6 seconds for remote directories.
2887         (file-notify-test02-events): Expect different number of
2888         `attribute-changed' events for the local and remote cases.  Apply
2889         short delays between the operations, in order to receive all
2890         events in the remote case.  Combine `attribute-change' tests.
2891         (Bug#21669)
2893 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
2895         Decode the HTML source when displaying it in EWW
2897         * lisp/net/eww.el (eww-view-source): Decode the HTML source
2898         according to its headers.
2900 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
2902         New default icon
2904         * etc/images/icons/hicolor/128x128/apps/emacs23.png:
2905         * etc/images/icons/hicolor/16x16/apps/emacs23.png:
2906         * etc/images/icons/hicolor/24x24/apps/emacs23.png:
2907         * etc/images/icons/hicolor/32x32/apps/emacs23.png:
2908         * etc/images/icons/hicolor/48x48/apps/emacs23.png:
2909         * etc/images/icons/hicolor/scalable/apps/emacs23.svg:
2910         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document23.svg:
2911         Move the old logo files to emacs23.*.
2912         * etc/images/icons/hicolor/128x128/apps/emacs.png:
2913         * etc/images/icons/hicolor/16x16/apps/emacs.png:
2914         * etc/images/icons/hicolor/24x24/apps/emacs.png:
2915         * etc/images/icons/hicolor/32x32/apps/emacs.png:
2916         * etc/images/icons/hicolor/48x48/apps/emacs.png:
2917         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
2918         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document.svg:
2919         New files.
2920         * etc/images/icons/README: Update the copyright information.
2922 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
2924         Fix redisplay of frame title when current buffer is killed
2926         * src/buffer.c (Fkill_buffer): Set windows_or_buffers_changed to a
2927         non-zero value, to redisplay more than just the affected windows.
2928         (Bug#21739)
2930 2015-10-23  Anders Lindgren  <andlind@gmail.com>
2932         NextStep maximization and NSTRACE rewrite
2934         Full-height, full-width, and maximized windows now cover the
2935         entire screen (except the menu bar), including the part where the
2936         system dock is placed.  The system zoom animation is no longer
2937         used.
2939         Made NonMaximized->FullWidth->FullHeight->NonMaximized restore the
2940         original size.
2942         * src/nsterm.m (ns_menu_bar_height): New function, return height of
2943         the menu bar, or 0 when it's hidden.
2944         (constrain_frame_rect): New function for constraining a frame.
2945         (ns_constrain_all_frames): Set frame size explicitly rather than
2946         relying on the system doing it for us by writing back the current
2947         frame size.
2948         (windowWillUseStandardFrame): Register non-maximized width or
2949         height as new user size.  When entering full width or height,
2950         the other size component is taken from the user size.
2951         (fullscreenState): New method for accessing the fullscreen state.
2952         (constrainFrameRect): Restrict frame to be placed under the menu bar,
2953         if present.  The old version, sometimes, restricted the height of a
2954         frame to the screen, this version never does this.
2955         (zoom): Perform zoom by setting the frame to the full size of the
2956         screen (minus the menu bar).  The default system function, with the
2957         zoom animation, is no longer used, as the final frame size doesn't
2958         cover the entire screen.
2960         Rework how to constrain resizing to the character grid.  The old
2961         system used "resizeIncrements" in NSWindows.  However, once a frame
2962         was resized so that it was not aligned to the text grid, it
2963         remained unaligned even after a resize.  In addition, it conflicted
2964         when resizing a fullheight window.
2966         * src/nsterm.m (windowWillResize): Restrict frame size to text grid,
2967         unless when pixelwise frame resizing is enabled.
2968         (updateFrameSize, initFrameFromEmacs)
2969         (toggleFullScreen, handleFS): Don't set resizeIncrements.
2971         Redesign the NS trace system.  The call structure is represented
2972         using indentations and vertical lines.  The NSTRACE macro accepts
2973         printf-style arguments.  New macros for printing various
2974         information.
2976         * src/nsterm.h (NSTRACE_ENABLED): Macro to enable trace system.
2977         (NSTRACE, NSTRACE_WHEN, NSTRACE_UNLESS): Macros to start a new
2978         block (typically a function), accept printf-style arguments.
2979         (NSTRACE_MSG): Macro for extra information, accepts
2980         printf-style arguments.
2981         (NSTRACE_what): Macros for printing various types.
2982         (NSTRACE_FMT_what): Macro with printf format string snippets.
2983         (NSTRACE_ARG_what): Macros for passing printf-style arguments,
2984         corresponds to NSTRACE_FMT_what.
2985         (NSTRACE_RETURN): Macro to print return value, accept
2986         printf-style arguments.
2987         (NSTRACE_RETURN_what): Macros to print return value for
2988         various types.
2990         * nsterm.m: Remove old NSTRACE macro
2991         * src/nsterm.m (nstrace_num): Trace counter.
2992         (nstrace_depth): Current call depth.
2993         (nstrace_leave): NSTRACE support function, called when the
2994         local variable "nstrace_enabled" goes out of scope using the
2995         "cleanup" extension.
2996         (ns_print_fullscreen_type_name): NSTRACE_FSTYPE support function.
2997         (constrain_frame_rect, ns_constrain_all_frames)
2998         (ns_update_auto_hide_menu_bar, ns_update_begin)
2999         (ns_update_window_begin, update_window_end, ns_update_end)
3000         (ns_focus, ns_unfocus, ns_ring_bell, ns_frame_raise_lower)
3001         (ns_frame_rehighlight, x_make_frame_visible)
3002         (x_make_frame_invisible, x_iconify_frame, x_free_frame_resources)
3003         (x_destroy_window, x_set_offset, x_set_window_size)
3004         (ns_fullscreen_hook, ns_lisp_to_color, ns_color_to_lisp)
3005         (ns_defined_color, frame_set_mouse_pixel_position)
3006         (note_mouse_movement, ns_mouse_position, ns_frame_up_to_date)
3007         (ns_define_frame_cursor, x_get_keysym_name, ns_redraw_scroll_bars)
3008         (ns_clear_frame, ns_clear_frame_area, ns_scroll_run)
3009         (ns_after_update_window_line, ns_shift_glyphs_for_insert)
3010         (dumpcursor, ns_draw_vertical_window_border)
3011         (ns_draw_window_divider, ns_draw_relief)
3012         (ns_dumpglyphs_box_or_relief, ns_maybe_dumpglyphs_background)
3013         (ns_dumpglyphs_image, ns_draw_glyph_string, ns_send_appdefined)
3014         (ns_read_socket, ns_select, ns_set_vertical_scroll_bar)
3015         (ns_set_horizontal_scroll_bar, ns_condemn_scroll_bars)
3016         (ns_redeem_scroll_bar, ns_judge_scroll_bars, ns_delete_terminal)
3017         (ns_create_terminal, ns_term_init, sendEvent)
3018         (applicationDidFinishLaunching, applicationDidBecomeActive)
3019         (timeout_handler, fd_handler, EmacsView_dealloc, changeFont)
3020         (acceptsFirstResponder, resetCursorRects, keyDown, mouseDown)
3021         (deltaIsZero, rightMouseDown, otherMouseDown, mouseUp)
3022         (rightMouseUp, otherMouseUp, scrollWheel, mouseMoved)
3023         (mouse_autoselect_window, in_window, mouseDragged)
3024         (rightMouseDragged, otherMouseDragged, windowShouldClose)
3025         (updateFrameSize, windowWillResize, windowDidResize)
3026         (windowDidBecomeKey, windowDidResignKey, windowWillMiniaturize)
3027         (initFrameFromEmacs, windowDidMove, windowDidDeminiaturize)
3028         (windowDidExpose, windowDidMiniaturize, windowWillEnterFullScreen)
3029         (windowDidEnterFullScreen, windowWillExitFullScreen)
3030         (windowDidExitFullScreen, toggleFullScreen, handleFS, setFSValue)
3031         (mouseEntered, mouseExited, menuDown, toolbarClicked, drawRect)
3032         (draggingEntered, performDragOperation, validRequestorForSendType)
3033         (setMiniwindowImage, constrainFrameRect, performZoom, zoom)
3034         (EmacsScroller_initFrame, EmacsScroller_setFrame)
3035         (EmacsScroller_dealloc, condemn, reprieve, judge)
3036         (resetCursorRects, setPosition, EmacsScroller_mouseDown)
3037         (EmacsScroller_mouseDragged, syms_of_nsterm): Use new trace system.
3039         * nsfns.m: Remove old NSTRACE macro
3040         * src/nsfns.m (x_set_icon_name, ns_set_name, x_explicitly_set_name)
3041         (x_implicitly_set_name, x_set_title, ns_set_name_as_filename)
3042         (ns_implicitly_set_icon_type, x_set_icon_type): Use new trace system.
3044         * nsimage.m: Remove old NSTRACE macro
3045         * src/nsimage.m (ns_image_from_XBM, ns_image_for_XPM)
3046         (ns_image_from_bitmap_file, ns_load_image): Use new trace system.
3048         * nsmenu.m: Remove old NSTRACE macro
3049         * src/nsmenu.m (ns_update_menubar, ns_menu_show, ns_popup_dialog):
3050         Use new trace system.
3052 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
3054         No need to use eval-and-compile
3056         * lisp/gnus/auth-source.el: Do require epg (when compiling) before
3057         autoload epg functions.
3059 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
3061         Fix auth-source-epa-make-gpg-token compilation (bug#21724)
3063         * lisp/gnus/auth-source.el: Add eval-and-compile to autoloads for
3064         epg-context-set-passphrase-callback, epg-decrypt-string, and
3065         epg-encrypt-string; require epg when compiling for the setf-method
3066         for epg-context-armor. (bug#21724)
3068 2015-10-22  Eli Zaretskii  <eliz@gnu.org>
3070         Include file cleanup for w32 files in src directory
3072         * src/w32xfns.c: Don't include keyboard.h, window.h, charset.h,
3073         fontset.h, blockinput.h.
3074         * src/w32uniscribe.c: Don't include dispextern.h, character.h,
3075         charset.h, fontset.h.
3076         * src/w32term.c: Don't include systty.h, systime.h, charset.h,
3077         character.h, ccl.h, dispextern.h, disptab.h, intervals.h,
3078         process.h, atimer.h, keymap.h, w32heap.h.  Include bitmap/gray.xbm
3079         in an ifdef-ed away block.
3080         Include fcntl.h for CYGWIN.
3081         (set_frame_param): Remove unused function.
3082         * src/w32select.c: Don't include charset.h and composite.h.
3083         (setup_config, Fw32_get_clipboard_data): Avoid compiler warnings
3084         due to pointer signedness mismatches.
3085         * src/w32reg.c (w32_get_string_resource): Avoid compiler warnings
3086         due to pointer signedness mismatches.
3087         * src/w32proc.c: Include unistd.h.  Don't include systime.h,
3088         process.h, dispextern.h.
3089         (sys_spawnve, Fw32_short_file_name, Fw32_long_file_name)
3090         (Fw32_application_type): Avoid compiler warnings due to pointer
3091         signedness mismatches.
3092         * src/w32menu.c: Don't include keymap.h, termhooks.h, window.h,
3093         character.h, charset.h, dispextern.h.
3094         (simple_dialog_show, add_menu_item): Avoid compiler warnings due
3095         to pointer signedness mismatches.
3096         * src/w32inevt.c: Don't include dispextern.h, window.h,
3097         termhooks.h, w32heap.h.
3098         * src/w32font.c: Don't include dispextern.h, character.h,
3099         charset.h, fontset.h, font.h.
3100         (intern_font_name, add_font_entity_to_list)
3101         (registry_to_w32_charset, w32_to_x_charset, fill_in_logfont)
3102         (list_all_matching_fonts): Avoid compiler warnings due to pointer
3103         signedness mismatches.
3104         * src/w32fns.c: Don't include character.h, intervals.h,
3105         dispextern.h, epaths.h, charset.h, ccl.h, fontset.h, systime.h,
3106         termhooks.h, w32heap.h, bitmap/gray.xbm, font.h, w32font.h.
3107         (w32_color_map_lookup, add_system_logical_colors_to_map)
3108         (x_decode_color, x_set_name, FPRINTF_WM_CHARS, Fxw_color_defined_p)
3109         (Fxw_color_values, x_display_info_for_name, Fset_message_beep)
3110         (x_create_tip_frame, Fx_file_dialog, Fsystem_move_file_to_trash)
3111         (w32_parse_hot_key, Ffile_system_info, w32_kbd_patch_key): Avoid
3112         compiler warnings, mainly due to pointer signedness mismatches.
3113         (unwind_create_frame_1): Remove unused function.
3114         * src/w32console.c: Don't include character.h, disptab.h, frame.h,
3115         window.h, termhooks.h, dispextern.h.
3116         (w32con_write_glyphs, w32con_write_glyphs_with_face): Fix pointer
3117         signedness mismatch.
3118         * src/w32.c: Include c-strcase.h and systty.h.  Don't include
3119         w32heap.h.
3121 2015-10-22  Tassilo Horn  <tsdh@gnu.org>
3123         Improve doc-view wrt. auto-revert-mode
3125         * lisp/doc-view.el (doc-view-revert-buffer): Don't revert when file
3126         is corrupted (bug#21729).
3127         (doc-view-mode): Set doc-view-revert-buffer as revert-buffer-function.
3129 2015-10-22  Oleh Krehel  <ohwoeowho@gmail.com>
3131         Describe dired-do-compress-to in the manual
3133         * etc/NEWS: Update.
3135         * lisp/dired-aux.el: Fix typo.
3137         * doc/emacs/dired.texi: Add entry.
3139 2015-10-22  Jürgen Hötzel  <juergen@archlinux.org>
3141         Further fix for proper locale handling in tramp-gvfs.el
3143         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
3144         Just suppress LC_MESSAGES locale category settings.
3146 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
3148         New lispref section “Security Considerations”
3150         This attempts to document some of the issues recently discussed
3151         on emacs-devel, and to indicate other such issues.  The section
3152         could be a lot longer.
3153         * doc/lispref/os.texi (Security Considerations):
3154         New node.
3155         * doc/lispref/elisp.texi (Top):
3156         * doc/lispref/processes.texi (Shell Arguments):
3157         * lisp/subr.el (shell-quote-argument):
3158         * src/callproc.c (syms_of_callproc):
3159         Reference it.
3161 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
3163         Merge from gnulib
3165         This incorporates:
3166         2015-10-18 stdalign: work around pre-4.9 GCC x86 bug
3167         2015-10-18 time_rz: avoid warning from bleeding-edge gcc's -Wnonnull
3168         * doc/misc/texinfo.tex, lib/stdalign.in.h, lib/time_rz.c:
3169         Copy from gnulib.
3171 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
3173         * lisp/gnus/mailcap.el (mailcap-mime-data): Remove fboundp checks.
3174         (mailcap-viewer-passes-test): Do it instead.  Thanks to Stefan Monnier.
3176 2015-10-21  Ken Brown  <kbrown@cornell.edu>
3178         Further include-file cleanup
3180         * src/sheap.c: Include stdlib.h.
3181         * src/unexcw.c: Include string.h.
3183 2015-10-21  Eli Zaretskii  <eliz@gnu.org>
3185         Fix logic in 'server-kill-emacs-query-function'
3187         * lisp/server.el (server-kill-emacs-query-function): Correct the
3188         logic that controls whether the user is asked for confirmation.
3189         (Bug#21723)
3191 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
3193         * lisp/isearch.el (isearch-search-fun-default): Simplify logic.
3194         (isearch--lax-regexp-function-p): New function.
3196 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
3198         * lisp/isearch.el: Support lax-whitespace in regexp-function searches.
3199         (isearch-search-fun-default): Let-bind `search-spaces-regexp'
3200         around `isearch-regexp-function'.
3202 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
3204         * lisp/isearch.el: Rename word search to regexp-function search.
3205         `isearch-word' went well beyond its original purpose, and the name
3206         no longer makes sense.  It is now called
3207         `isearch-regexp-function', and its value should always be a function
3208         that converts a string to a regexp (though setting it to t is still
3209         supported for now).
3210         (isearch-word): Make obsolete.
3211         (isearch-regexp-function): New variable.
3212         (isearch-mode, isearch-done, isearch--state, isearch--set-state)
3213         (with-isearch-suspended, isearch-toggle-regexp)
3214         (isearch-toggle-word, isearch-toggle-symbol)
3215         (isearch-toggle-character-fold, isearch-query-replace)
3216         (isearch-occur, isearch-highlight-regexp)
3217         (isearch-search-and-update, isearch-message-prefix)
3218         (isearch-search-fun-default, isearch-search)
3219         (isearch-lazy-highlight-new-loop, isearch-lazy-highlight-search):
3220         Use it.
3221         (isearch-lazy-highlight-regexp-function): New var.
3222         (isearch-lazy-highlight-word): Make obsolete.
3223         (isearch--describe-regexp-mode): New function.
3224         (isearch--describe-word-mode): Make obsolete.
3226         * lisp/info.el (Info-isearch-search):
3227         * lisp/replace.el (replace-search, replace-highlight):
3228         * lisp/obsolete/longlines.el (longlines-search-function):
3229         * lisp/hexl.el (hexl-isearch-search-function):
3230         * lisp/cedet/semantic/senator.el (senator-isearch-search-fun):
3231         Use the new var.
3233 2015-10-21  Oleh Krehel  <ohwoeowho@gmail.com>
3235         Add dired-do-compress-to command bound to "c"
3237         * lisp/dired-aux.el (dired-shell-command): Use the caller's
3238           `default-directory', return the result of `process-file'.
3239         (dired-compress-file-suffixes): Add comment on why "tar -zxf" isn't
3240         used by default.
3241         (dired-compress-files-alist): New defvar.
3242         (dired-do-compress-to): New command.
3244         * lisp/dired.el (dired-mode-map): Bind `dired-do-compress-to' to "c".
3245         (dired-do-compress-to): Add an autoload entry.
3247         * etc/NEWS: Add two entries.
3249 2015-10-21  Tassilo Horn  <tsdh@gnu.org>
3251         Make RefTeX work with LaTeX subfiles package
3253         * lisp/textmodes/reftex.el (reftex-TeX-master-file): Recognize subfiles
3254         document class argument as master file for referencing purposes.
3256 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
3258         * lisp/gnus/mailcap.el (mailcap-mailcap-entry-passes-test): Doc fix.
3260 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
3262         Include-file cleanup for src directory
3264         Omit ‘#include "foo.h"’ unless the file needs foo.h (Bug#21707).
3265         In a few cases, add ‘#include "foo.h"’ if the file needs foo.h
3266         but does not include it directly.  As a general rule, a source
3267         file should include foo.h if it needs the interfaces that foo.h
3268         defines.
3269         * src/alloc.c: Don’t include process.h.  Include dispextern.h,
3270         systime.h.
3271         * src/atimer.c: Don’t include blockinput.h.
3272         * src/buffer.c: Include coding.h, systime.h.  Don’t include
3273         keyboard.h, coding.h.
3274         * src/callint.c: Don’t include commands.h, keymap.h.
3275         * src/callproc.c: Don’t include character.h, ccl.h, composite.h,
3276         systty.h, termhooks.h.
3277         * src/casetab.c: Don’t include character.h.
3278         * src/category.c: Don’t include charset.h, keymap.h.
3279         * src/ccl.h: Don’t include character.h.
3280         * src/character.c: Don’t include charset.h.
3281         * src/charset.c: Don’t include disptab.h.
3282         * src/chartab.c: Don’t include ccl.h.
3283         * src/cm.c: Don’t include frame.h, termhooks.h.
3284         * src/cmds.c: Don’t include window.h, dispextern.h.
3285         * src/coding.c: Don’t include window.h, frame.h.
3286         * src/composite.c: Include composite.h.  Don’t include window.h,
3287         font.h.
3288         * src/data.c: Don’t include syssignal.h, termhooks.h, font.h.
3289         * src/dbusbind.c: Don’t include frame.h.
3290         * src/decompress.c: Don’t include character.h.
3291         * src/dired.c: Don’t include character.h, commands.h, charset.h.
3292         * src/dispnew.c: Don’t include character.h, indent.h, intervals.h,
3293         process.h, timespec.h.  Include systime.h.
3294         * src/doc.c: Include coding.h.  Don’t include keyboard.h.
3295         * src/editfns.c: Include composite.h.  Don’t include frame.h.
3296         * src/emacs.c: Include fcntl.h, coding.h.  Don’t include
3297         commands.h, systty.h..
3298         * src/fileio.c: Don’t include intervals.h, dispextern.h.
3299         Include composite.h.
3300         * src/filelock.c: Don’t include character.h, systime.h.
3301         * src/fns.c: Don’t include time.h, commands.h, keyboard.h,
3302         keymap.h, frame.h, blockinput.h, xterm.h.  Include composite.h.
3303         * src/font.c: Include termhooks.h.
3304         * src/font.h: Don’t include ccl.h, frame.h.  Add forward decls of
3305         struct composition_it, struct face, struct glyph_string.
3306         * src/fontset.c: Don’t include buffer.h, ccl.h, keyboard.h,
3307         intervals.h, window.h, termhooks.h.
3308         * src/frame.c: Don’t include character.h, commands.h, font.h.
3309         * src/frame.h: Don’t include dispextern.h.
3310         * src/fringe.c: Don’t include character.h.
3311         * src/ftcrfont.c: Don’t include dispextern.h, frame.h,
3312         character.h, charset.h, fontset.h.
3313         * src/ftfont.c: Don’t include frame.h, blockinput.h, coding.h,
3314         fontset.h.
3315         * src/ftxfont.c: Don’t include dispextern.h, character.h,
3316         charset.h, fontset.h.
3317         * src/gfilenotify.c: Don’t include frame.h, process.h.
3318         * src/gtkutil.c: Include dispextern.h, frame.h, systime.h.
3319         Don’t include syssignal.h, buffer.h, charset.h, font.h.
3320         * src/gtkutil.h: Don’t include frame.h.
3321         * src/image.c: Include fcntl.h and stdio.h instead of sysstdio.h.
3322         Don’t include character.h.
3323         * src/indent.c: Don’t include keyboard.h, termchar.h.
3324         * src/inotify.c: Don’t include character.h, frame.h.
3325         * src/insdel.c: Include composite.h.  Don’t include blockinput.h.
3326         * src/intervals.c: Don’t include character.h, keyboard.h.
3327         * src/intervals.h: Don’t include dispextern.h, composite.h.
3328         * src/keyboard.c: Don’t include sysstdio.h, disptab.h, puresize.h.
3329         Include coding.h.
3330         * src/keyboard.h: Don’t incldue systime.h.
3331         * src/keymap.c: Don’t include charset.h, frame.h.
3332         * src/lread.c: Include dispextern.h and systime.h.
3333         Don’t include frame.h.  Include systime.h.
3334         * src/macros.c: Don’t include commands.h, character.h, buffer.h.
3335         * src/menu.c: Include character.h, coding.h.  Don’t include
3336         dispextern.h.
3337         * src/menu.h: Don’t include systime.h.
3338         * src/minibuf.c: Don’t include commands.h, dispextern.h, syntax.h,
3339         intervals.h, termhooks.h.
3340         * src/print.c: Include coding.h.  Don’t include keyboard.h,
3341         window.h, dispextern.h, termchar.h, termhooks.h, font.h.
3342         Add forward decl of struct terminal.
3343         * src/process.c: Don’t include termhooks.h, commands.h,
3344         dispextern.h, composite.h.
3345         * src/region-cache.c: Don’t include character.h.
3346         * src/scroll.c: Don’t include keyboard.h, window.h.
3347         * src/search.c: Don’t include category.h, commands.h.
3348         * src/sound.c: Don’t include dispextern.h.
3349         * src/syntax.c: Don’t include command.h, keymap.h.
3350         * src/sysdep.c: Don’t include window.h, dispextern.h.
3351         * src/systime.h: Use ‘#ifdef emacs’, not ‘#ifdef EMACS_LISP_H’,
3352         * src/term.c: Don’t include systty.h, intervals.h, xterm.h.
3353         * src/terminal.c: Include character.h.
3354         Don’t include charset.h, coding.h.
3355         * src/textprop.c: Don’t include character.h.
3356         * src/undo.c: Don’t include character.h, commands.h, window.h.
3357         * src/unexsol.c: Don’t include character.h, charset.h.
3358         * src/widget.c: Include widget.h.  Don’t include keyboard.h,
3359         window.h, dispextern.h, blockinput.h, character.h, font.h.
3360         * src/widgetprv.h: Don’t include widget.h.
3361         * src/window.c: Don’t include character.h, menu.h, intervals.h.
3362         * src/xdisp.c: Include composite.h, systime.h.  Don’t include
3363         macros.h, process.h.
3364         * src/xfaces.c: Don’t include charset.h, keyboard.h, termhooks.h,
3365         intervals.h.
3366         * src/xfns.c: Don’t include menu.h, character.h, intervals.h,
3367         epaths.h, fontset.h, systime.h, atimer.h, termchar.h.
3368         * src/xfont.c: Don’t include dispextern.h, fontset.h, ccl.h.
3369         * src/xftfont.c: Don’t include dispextern.h, character.h, fontset.h.
3370         * src/xgselect.c: Don’t include timespec.h, frame.h.
3371         Include systime.h.
3372         * src/xgselect.h: Don’t include time.h.
3373         Use a forward decl to struct timespec instead.
3374         * src/xmenu.c: Don’t include keymap.h, character.h, charset.h,
3375         dispextern.h.  Include systime.h.
3376         * src/xml.c: Don’t include character.h.
3377         * src/xrdb.c [USE_MOTIF]: Don’t include keyboard.h.
3378         * src/xselect.c: Don’t include dispextern.h, character.h,
3379         buffer.h, process.h.
3380         * src/xsmfns.c: Don’t include systime.h, sysselect.h.
3381         * src/xterm.c: Don’t include syssignal.h, charset.h, disptab.h,
3382         intervals.h process.h, keymap.h, xgselect.h.  Include composite.h.
3384 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
3386         (/ N) now returns the reciprocal of N
3388         This is more compatible with Common Lisp and XEmacs (Bug#21690).  See:
3389         http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg01053.html
3390         * lisp/color.el (color-hue-to-rgb, color-hsl-to-rgb)
3391         (color-xyz-to-srgb, color-xyz-to-lab):
3392         * lisp/emacs-lisp/cl-extra.el (cl-float-limits):
3393         * lisp/net/shr-color.el (shr-color-hue-to-rgb)
3394         (shr-color-hsl-to-rgb-fractions):
3395         Exploit the change to simplify the code a bit.
3396         * lisp/emacs-lisp/bytecomp.el (byte-compile-quo):
3397         Don’t complain about single-argument calls to ‘/’.
3398         * src/data.c (arith_driver, float_arith_driver):
3399         Implement the change.
3401 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
3403         Call vc-dir-refresh after stash operations
3405         * lisp/vc/vc-git.el (vc-git-stash-apply-at-point)
3406         (vc-git-stash-pop-at-point): Call vc-dir-refresh (bug#13960).
3408         * lisp/vc/vc-dir.el (vc-dir-resynch-file): Expand FNAME as well,
3409         since it can be abbreviated (as returned by vc-find-root).
3411 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
3413         * lisp/vc/vc-svn.el:
3414         * lisp/vc/vc-mtn.el:
3415         * lisp/vc/vc-hg.el:
3416         * lisp/vc/vc-cvs.el:
3417         * lisp/vc/vc-git.el:
3418         * lisp/vc/vc-bzr.el: Don't declare vc-exec-after anymore.
3419         Its usages have been replaced with vc-run-delayed.
3421 2015-10-20  Dima Kogan  <dima@secretsauce.net>
3423         Fix memory leak in fontset handling
3425         * src/font.c (copy_font_spec): Make a deep copy of the input
3426         argument FONT.  (Bug#21651)
3428 2015-10-20  Michael Sperber  <mike@xemacs.org>
3430         * lisp/gnus/mailcap.el (mailcap-mime-data):
3431         Conditonalize `doc-view-mode', which does not exist on XEmacs.
3433 2015-10-20  Oleh Krehel  <ohwoeowho@gmail.com>
3435         Update the way directories are compressed
3437         * lisp/dired-aux.el (dired-compress-file-suffixes): Update the recipe
3438         for *.tar.gz decompression to use a pipe.
3439         Add an entry for the default directory compression (to *.tar.g).
3440         (dired-compress-file): Update.
3442         See https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg00949.html.
3444 2015-10-20  Michael Sperber  <mike@xemacs.org>
3446         Unbreak `group' option for `mail-sources'
3448         * nnml.el (nnml-retrieve-groups, nnml-request-scan):
3449         * nnmail.el (nnmail-get-new-mail-per-group)
3450         (nnmail-get-new-mail-1): Unbreak `group' option for `mail-sources'.
3452 2015-10-19  Nicolas Petton  <nicolas@petton.fr>
3454         New function seq-position
3456         * lisp/emacs-lisp/seq.el (seq-position): New function.
3457         * test/automated/seq-tests.el: New tests for seq-position.
3458         * doc/lispref/sequences.texi: Add documentation for `seq-position'.
3460 2015-10-19  Ken Brown  <kbrown@cornell.edu>
3462         Enable --with-wide-int build on 32-bit Cygwin
3464         * src/sheap.c (STATIC_HEAP_SIZE): Remove distinction between x86
3465         and x86_64 to enable --with-wide-int build on 32-bit Cygwin.
3467 2015-10-19  Glenn Morris  <rgm@gnu.org>
3469         * doc/emacs/ack.texi (Acknowledgments): Small, sad, update.
3471 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
3473         Resurrect image loading under auto-image-file-mode
3475         * src/image.c (x_find_image_fd): Handle the case of -2 returned by
3476         'openp' specially.  This special case was lost in the changes on
3477         2015-08-18.  (Bug#21685)
3479 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
3481         Fix return value of 'set-file-extended-attributes'
3483         * lisp/files.el (set-file-extended-attributes): Return non-nil
3484         when setting either ACLs or SELinux context succeeds.  Document
3485         the return value.  (Bug#21699)
3487         * doc/lispref/files.texi (Changing Files): Document the return
3488         value of set-file-extended-attributes.
3490 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
3492         Improve documentation of functions that change files
3494         * doc/lispref/files.texi (Changing Files): Document that these
3495         functions signal an error on failure.
3497 2015-10-18  Eli Zaretskii  <eliz@gnu.org>
3499         Fix doc string of 'shell-quote-argument'
3501         * lisp/subr.el (shell-quote-argument): Doc fix.  (Bug#21702)
3503 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
3505         Some minor Tramp changes
3507         * doc/misc/tramp.texi (Obtaining Tramp): Add http git cloning.
3509         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
3510         Expand `tramp-auto-save-directory'.
3512 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
3514         Minor edits in Tramp
3516         * lisp/net/tramp-adb.el (directory-listing-before-filename-regexp):
3517         Declare it.
3519         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
3520         Remove declaration.
3522 2015-10-17  Mark Oteiza  <mvoteiza@udel.edu>
3524         * lisp/emacs-lisp/eldoc.el: Add back-to-indentation to the command list.
3526 2015-10-17  Eli Zaretskii  <eliz@gnu.org>
3528         Avoid crashes when redisplayng a window changes faces or fonts
3530         * src/xdisp.c (redisplay_internal): If redisplaying the selected
3531         window or one of the frames turns on the frame's 'redisplay' flag,
3532         redisplay again.  (Bug#21428)
3534         * src/frame.c (x_set_font): Set the frame's 'fonts_changed' flag.
3536 2015-10-17  Michael Albinus  <michael.albinus@gmx.de>
3538         Solve timimg issues in file-notify-tests.el
3540         * test/automated/file-notify-tests.el (file-notify-test02-events):
3541         Rectify `attribute-change' tests.  There are timing issues with
3542         gfilenotify.  (Bug#21669)
3544 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
3546         Fix quoting of data within htmlfontify doc
3548         * doc/misc/htmlfontify.texi (Data Structures, Customization):
3549         Fix quoting of data structures.  A Lisp quote is needed only
3550         when data appears within Lisp code.
3552 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
3554         * lisp/emacs-lisp/package.el: Reload archive-contents if
3555         priorities change.
3556         (package--old-archive-priorities): New variable.
3557         (package-read-all-archive-contents, package-menu--refresh): Use it
3558         to decide when the `package-archive-contents' needs to be read
3559         again.
3561 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
3563         Make src headers idempotent and standalone
3565         Redo src/*.h so that each include file is idempotent (that is, can
3566         be included multiple times with the latter inclusions having no
3567         effect) and standalone (that is, can be included by itself,
3568         with no include file other than config.h needed as a prerequisite).
3569         This is standard practice in GNU programs nowadays.
3570         * lwlib/lwlib-widget.h, src/buffer.h, src/category.h, src/character.h:
3571         * src/charset.h, src/coding.h, src/commands.h, src/disptab.h:
3572         * src/fontset.h, src/gnutls.h, src/indent.h, src/keymap.h, src/macros.h:
3573         * src/regex.h [emacs]:
3574         * src/syntax.h, src/systty.h, src/termhooks.h:
3575         Include lisp.h, for Lisp_Object.
3576         * src/buffer.h, src/category.h, src/cm.h, src/commands.h, src/disptab.h:
3577         * src/indent.h, src/intervals.h, src/keyboard.h, src/macros.h:
3578         * src/process.h, src/puresize.h, src/region-cache.h, src/syntax.h:
3579         * src/syssignal.h, src/sysstdio.h, src/systty.h, src/termchar.h:
3580         * src/termopts.h, src/tparam.h, src/unexec.h:
3581         Protect against multiple inclusion.
3582         * src/buffer.h: Include character.h, for STRING_CHAR.
3583         * src/emacsgtkfixed.h (struct frame):
3584         * src/fontset.h (struct face):
3585         * src/region-cache.h (struct buffer):
3586         * src/termhooks.h (struct glyph):
3587         * src/xsettings.h (struct x_display_info):
3588         Add possibly-forward decl.
3589         * src/syntax.h: Include buffer.h, for BVAR.
3590         * src/sysselect.h: Include lisp.h, for eassume.
3591         * src/termchar.h: Include <stdio.h>, for FILE.
3592         * src/widget.h: Include <X11/IntrinsicP.h>, for Widget.
3593         * src/xsettings.h: Include <X11/Xlib.h>, for XEvent.
3595 2015-10-16  Jürgen Hötzel  <juergen@archlinux.org>
3597         Handle symlink targets containing spaces in tramp-gvfs.el
3599         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
3600         Handle symlink targets containing spaces.
3602 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
3604         * lisp/custom.el (custom-theme-load-path): Demote to defvar.
3606         `custom-theme-load-path' was a defcustom, but it shouldn't be for the
3607         same reason that `load-path' shouldn't.  Setting it via the customize
3608         interface is a trap for the user.
3610         Installed themes commonly add themselves to this variable, which means
3611         its value is not fit for being saved (it will permanently remember dirs
3612         that don't exist anymore).
3614         This is aggravated by the fact that Emacs always applies the `user'
3615         theme on top of any theme that's loaded, since this will apply the old
3616         variable value and remove any new directories that had been recently
3617         added by themes themselves.
3619         Not to mention, we already have `custom-theme-directory', which is safe
3620         to customize.
3622 2015-10-16  Stefan Monnier  <monnier@iro.umontreal.ca>
3624         * lisp/mpc.el: Rename the new toggling commands.
3625         (mpc-toggle-consume, mpc-toggle-repeat, mpc-toggle-single)
3626         (mpc-toggle-shuffle): Add "-toggle" in the name.
3628 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
3630         Improve the doc string of 'completion-boundaries'
3632         * lisp/minibuffer.el (completion-boundaries): Rename the argument
3633         TABLE to COLLECTION, for consistency with other high-level
3634         completion functions.  Document how COLLECTION is called if it
3635         is a function.  (Bug#21644)
3637 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
3639         * lisp/dired-aux.el (dired-shell-command): Fix compile warning.
3641 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
3643         Make dired-do-compress work for *.zip files
3645         * lisp/dired-aux.el (dired-check-process): Transform the top-level
3646           comment into a docstring.
3647         (dired-shell-command): New command.  This mirrors
3648         `dired-check-process', but is more user-friendly for passing
3649         arguments.
3650         (dired-compress-file-suffixes): Allow to specify the command switches
3651         along with input (%i) and output (%o) inside the PROGRAM part.
3652         Add an entry for *.zip files, and update the entry for *.tar.gz files
3653         to the new style.  Update the docstring.
3654         (dired-compress-file): When PROGRAM matches %i or %o, use the new
3655         logic.
3656         (dired-update-file-line): Avoid an error when at end of buffer.
3658         Fixes bug#21637.
3660 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
3662         Minor improvement in documentation of internals
3664         * doc/lispref/internals.texi (Writing Emacs Primitives): Document QUIT.
3666 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
3668         Improve documentation of COLLECTION in completion functions
3670         * doc/lispref/minibuf.texi (Minibuffer Completion): Add a
3671         cross-reference to "Programmed Completion".
3673         * src/minibuf.c (Fcompleting_read): Improve the doc string.
3674         (Bug#21644)
3676 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
3678         Add more release info to etc/HISTORY
3680         * etc/HISTORY: Add more release information about 19.x and 20.x
3681         versions.
3683 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
3685         New file etc/HISTORY
3687         * admin/FOR-RELEASE: Procedure for etc/HISTORY.
3688         * etc/HISTORY: New file.
3689         * etc/NEWS: Mention it.
3691 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
3693         js-mode: Don't misindent generator methods
3695         * lisp/progmodes/js.el (js--looking-at-operator-p): Distinguish
3696         generator methods from multiplication operator
3697         (https://github.com/mooz/js2-mode/issues/275).
3699 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
3701         Fix animation timeout delay calculation
3703         * lisp/image.el (image-animate-timeout):
3704         Don’t assume speed is floating-point.
3706 2015-10-15  Mark Oteiza  <mvoteiza@udel.edu>
3708         Add commands for controlling MPD modes
3710         * lisp/mpc.el (mpc-cmd-consume, mpc-cmd-random, mpc-cmd-repeat)
3711         (mpc-cmd-single): New functions.
3712         (mpc-consume, mpc-repeat, mpc-single, mpc-shuffle): New commands.
3713         (mpc-mode-menu): Add new commands as menu items.
3715 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
3717         Refer to `(elisp)Basic Completion' in completing-read docstring
3719         * src/minibuf.c (Fcompleting_read): Refer to `(elisp)Basic
3720         Completion' in the docstring (bug#21644).
3722 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
3724         * lisp/mpc.el (mpc-format): Always push form to pred
3726 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
3728         Spelling fixes
3730         * configure.ac (bitmapdir): Fix misspelling of bmd_acc.
3731         * test/automated/coding-tests.el (ert-test-coding-bogus-coding-systems):
3732         Fix misspelling of nonexistent file name.
3734 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
3736         * lisp/mpc.el (mpc-mode-menu, mpc-toggle-play): Fix docstrings
3738 2015-10-14  Michael Albinus  <michael.albinus@gmx.de>
3740         Some editing fixes in Tramp
3742         * lisp/net/tramp-gvfs.el:
3743         * doc/misc/tramp.texi: "customer option" -> "custom option".
3745         * lisp/net/tramp.el (tramp-completion-function-alist): Fix docstring.
3747 2015-10-14  Jürgen Hötzel  <juergen@archlinux.org>
3749         Use proper localization in tramp-gvfs.el
3751         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
3752         Suppress localized settings in order to proper parse gfvs output.
3754 2015-10-14  Warren Lynn  <wrn.lynn@gmail.com>  (tiny change)
3756         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band):
3757         Quote argument in proper order.  (Bug#21562)
3759 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
3761         Fix typos in docstrings
3763         * lisp/emacs-lisp/map.el:
3764         * lisp/emacs-lisp/seq.el: Fix typos in the docstrings of the pcase
3765           macros.
3767 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
3769         * lisp/mpc.el (mpc-volume-refresh): Check if buffer is live.
3771 2015-10-14  Oleh Krehel  <ohwoeowho@gmail.com>
3773         Make dired-jump work with tar-subfile-mode
3775         * lisp/dired-x.el (dired-jump): When in `tar-subfile-mode', instead of
3776           emitting an error, switch to `tar-superior-buffer'.
3778 2015-10-14  Juanma Barranquero  <lekktu@gmail.com>
3780         * .gitignore: Add build-aux/ar-lib.
3782 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
3784         Better docstrings in seq.el and map.el
3786         * lisp/emacs-lisp/map.el:
3787         * lisp/emacs-lisp/seq.el: Improve the docstring for the pcase patterns.
3789 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
3791         Merge from gnulib
3793         This incorporates:
3794         2015-10-13 binary-io, u64, unistd: port to strict C
3795         2015-09-26 c-ctype: do not worry about EBCDIC + char signed
3796         2015-09-25 c-ctype: port better to z/OS EBCDIC
3797         2015-09-25 gnulib-common.m4: fix gl_PROG_AR_RANLIB/AM_PROG_AR clash
3798         * doc/misc/texinfo.tex, lib/binary-io.c, lib/c-ctype.h, lib/u64.c:
3799         * lib/unistd.c, m4/gnulib-common.m4, m4/gnulib-comp.m4:
3800         Copy from gnulib.
3802 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
3804         Take XPNTR private
3806         * src/alloc.c (PURE_POINTER_P): Remove.
3807         All uses replaced with PURE_P.
3808         (XPNTR_OR_SYMBOL_OFFSET): New function.
3809         (XPNTR): Move here from lisp.h.
3810         Reimplement in terms of XPNTR_OR_SYMBOL_OFFSET.
3811         (mark_maybe_object, valid_lisp_object_p, survives_gc_p):
3812         Remove unnecessary cast.
3813         (purecopy): Use XPNTR_OR_SYMBOL_OFFSET instead of XPNTR,
3814         to avoid an unnecessary runtime test for symbols.
3815         * src/lisp.h (lisp_h_XPNTR, XPNTR): Remove, moving XPNTR to alloc.c.
3816         Only alloc.c needs XPNTR now.
3818 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
3820         Add MPC play/pause command
3822         * lisp/mpc.el (mpc-toggle-play): New command.
3823         (mpc-mode-map): Bind it to "s".
3824         (mpc-mode-menu): Add corresponding menu item.
3826 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
3828         Add bindings and menu items for prev and next tracks
3830         * lisp/mpc.el (mpc-mode-map): Bind ">" to mpc-next,
3831         "<" to mpc-prev.
3832         (mpc-mode-menu): Add corresponding menu items
3834 2015-10-13  Ken Raeburn  <raeburn@raeburn.org>
3836         Reduce face-related consing during frame creation.
3838         * faces.el (face--attributes-unspecified): Compute the "unspecified"
3839         attribute list once.
3840         (face-spec-reset-face): Use it instead of building the list.
3842 2015-10-13  Ken Raeburn  <raeburn@permabit.com>
3844         Do process ConfigureNotify events indicating size changes.
3846         * src/xterm.c (handle_one_xevent): If consecutive ConfigureNotify
3847         events don't have the same size, process each one.
3849 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
3851         Derive mpc-mode from special-mode
3853         lisp/mpc.el (mpc-mode-map): Make from sparse keymap.  Unbind g.
3854         (mpc-mode): Derive from special mode.
3855         (mpc-songs-mode-map): Don't set parent keymap.
3857 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
3859         Fix error messages for when covers are not found.
3861         The last change to mpc-format let the binding to file call
3862         mpc-file-local-copy with nil argument.  Instead, employ if-let here
3863         so nil bindings don't result in needless computation and errors.
3864         * lisp/mpc.el: Require 'subr-x at compile time.
3865         * lisp/mpc.el (mpc-format): Use if-let.
3867 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
3869         Make dired-do-compress work for *.tar.gz files
3871         * lisp/dired-aux.el (dired-compress-file-suffixes): Associate
3872           "tar -zxvf" to *.tar.gz; update docstring.
3874         (dired-compress-file): Allow to specify switches after the command in
3875         `dired-compress-file-suffixes'.
3877 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
3879         Make dired-do-compress work for directories
3881         * lisp/dired-aux.el (dired-compress-file): When FILE is a directory,
3882           instead of emitting an error, call "tar -czf FILE.tar.gz FILE".
3883         Also convert the top comment into a docstring.
3885 2015-10-13  Stefan Monnier  <monnier@iro.umontreal.ca>
3887         * lisp/mpc.el (mpc-songs-refresh): Don't side-effect `active'
3889         ... since it might come straight from the memoizing table.
3891 2015-10-13  Juanma Barranquero  <lekktu@gmail.com>
3893         * src/w32fns.c (x_change_tool_bar_height): Remove unused variable frame.
3895 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
3897         Use special-mode in eww list modes
3899         * lisp/net/eww.el (eww-bookmark-mode, eww-history-mode)
3900         (eww-buffers-mode): Derive from special-mode and remove redundant
3901         setting of buffer-read-only.
3902         (eww-mode-map): Remove redundant keymap parent setting.
3903         (eww-bookmark-mode-map, eww-history-mode-map, eww-buffers-mode-map):
3904         Remove redundant keymap suppressions and mappings.
3906 2015-10-13  Martin Rudalics  <rudalics@gmx.at>
3908         Allow setting frame pixel sizes from frame parameters (Bug#21415)
3910         Also fix some misfeatures in frame (re-)sizing code, add more
3911         debugging information and remove some dead code.
3913         * lisp/frame.el (frame-notice-user-settings, make-frame): Change
3914         parameter names when setting `frame-size-history'.
3915         (frame--size-history): New function.
3917         * src/frame.c (frame_inhibit_resize): If frame has not been made
3918         yet, return t if inhibit_horizontal_resize or
3919         inhibit_vertical_resize bit have been set.
3920         (adjust_frame_size): Simplify.
3921         (make_frame): Initialize inhibit_horizontal_resize,
3922         inhibit_vertical_resize, tool_bar_redisplayed, tool_bar_resized.
3923         (Fframe_after_make_frame): Reset inhibit_horizontal_resize and
3924         inhibit_vertical_resize slots.
3925         (x_set_frame_parameters): Handle `text-pixels' specification for
3926         width and height parameters.  Don't consider new_height or
3927         new_width changes.  Call adjust_frame_size instead of
3928         Fset_frame_size.
3929         (x_figure_window_size): Two new arguments x_width and y_width
3930         returning frame's figures width and height.  Calculate tool bar
3931         height before frame sizes so SET_FRAME_HEIGHT can pick it up.
3932         Handle `text-pixels' specification for width and height
3933         parameters.
3934         (Qtext_pixels, Qx_set_frame_parameters, Qset_frame_size)
3935         (Qx_set_window_size_1, Qx_set_window_size_2)
3936         (Qx_set_window_size_3, Qx_set_menu_bar_lines)
3937         (Qupdate_frame_menubar, Qfree_frame_menubar_1)
3938         (Qfree_frame_menubar_2): New symbols.
3939         * src/frame.h (structure frame): New booleans
3940         tool_bar_redisplayed, tool_bar_resized,
3941         inhibit_horizontal_resize, inhibit_vertical_resize.
3942         (x_figure_window_size): Update external declaration.
3943         * src/gtkutil.c (xg_frame_set_char_size): Set size hints before
3944         calling gtk_window_resize.
3945         (update_frame_tool_bar): Make inhibiting of frame resizing more
3946         discriminative.  Set tool_bar_resized bit.
3947         * src/nsfns.m (x_set_tool_bar_lines): Make inhibiting of frame
3948         resizing more discriminative.  Call adjust_frame_size instead of
3949         x_set_window_size.
3950         (Fx_create_frame): Handle x_width and x_height if
3951         set by x_figure_window_size.
3952         * src/nsterm.m (x_set_window_size): For GNUSTEP build don't
3953         subtract 3 from tool bar height.
3954         (x_set_window_size): Add frame_size_history_add call.
3955         (x_new_font): Call adjust_frame_size instead of
3956         x_set_window_size.
3957         * src/w32fns.c (x_change_tool_bar_height): Reset
3958         tool_bar_redisplayed and tool_bar_resized bits when adding tool
3959         bar.  Make inhibiting of frame resizing more discriminative.
3960         (w32_wnd_proc): Remove dead code in WM_WINDOWPOSCHANGING case.
3961         (Fx_create_frame): Handle x_width and x_height if set by
3962         x_figure_window_size.  Set size hints before adjusting frame size.
3963         (x_create_tip_frame): Adjust x_figure_window_size call.
3964         * src/w32term.c (x_set_window_size): Add frame_size_history_add
3965         call.
3966         * src/widget.c (set_frame_size): Remove dead code.  Add
3967         frame_size_history_add call.  When frame_resize_pixelwise is t
3968         use FRAME_PIXEL_WIDTH and FRAME_PIXEL_HEIGHT instead of
3969         pixel_width and pixel_height.
3970         (update_various_frame_slots): Remove dead code.
3971         (EmacsFrameResize): Add more information in
3972         frame_size_history_add call.
3973         (EmacsFrameQueryGeometry): Round only when frame_resize_pixelwise
3974         is not set.
3975         * src/xdisp.c (redisplay_tool_bar): Set tool_bar_redisplayed bits.
3976         * src/xfns.c (x_set_menu_bar_lines): Change argument name.
3977         (x_change_tool_bar_height): Reset tool_bar_redisplayed and
3978         tool_bar_resized bits when adding tool bar.  Make inhibiting of
3979         frame resizing more discriminative.
3980         (Fx_create_frame): Handle x_width and x_height if set by
3981         x_figure_window_size.  Set size hints before adjusting frame size.
3982         (x_create_tip_frame): Adjust x_figure_window_size call.
3983         * src/xmenu.c (update_frame_menubar): Don't handle Lucid specially.
3984         (set_frame_menubar): On Lucid never add core-border-width to
3985         avoid that adding XtNinternalBorderWidth adds it again.
3986         (free_frame_menubar): Handle frame_inhibit_resize true for Motif.
3987         * src/xterm.c (x_new_font): In non-toolkit case handle size
3988         change of menu bar.
3989         (x_set_window_size_1): Fix calls to frame_size_history_add.
3990         (x_wm_set_size_hint): Remove dead code.  Set
3991         size_hints.min_width and size_hints.min_height to base_width and
3992         base_height.
3994 2015-10-13  Michael Albinus  <michael.albinus@gmx.de>
3996         * test/automated/file-notify-tests.el (file-notify--test-timeout):
3997         Add docstring.  Increase to 10 seconds for remote
3998         directories.  (Bug#21669)
4000 2015-10-12  Paul Eggert  <eggert@cs.ucla.edu>
4002         Unmacroize ebrowse.c and etags.c a bit
4004         * lib-src/ebrowse.c (READ_CHUNK_SIZE): Now an enum constant.
4005         (streq, filename_eq, set_flag, has_flag): Now inline functions.
4006         (set_flag): First arg is now an address, not an lvalue.
4007         All callers changed.
4008         (filename_eq, set_flag, has_flag):
4009         Rename from FILENAME_EQ, SET_FLAG, HAS_FLAG.
4010         All callers changed.
4011         * lib-src/etags.c (streq, strcaseeq, strneq, strncaseeq):
4012         Now inline functions.  Remove asserts that are unnecessary these
4013         days (and in some cases were too-generous anyway).
4015 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
4017         Use highlight for current items
4019         * lisp/mpc.el (mpc-select-make-overlay, mpc-tagbrowser-all-select):
4020         Apply highlight face instead of region face.
4022 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
4024         Search for more cover image names in MPC
4026         * lisp/mpc.el (mpc-format): Also look for .folder.jpg or folder.jpg
4027         case insensitively
4029 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
4031         Remove or comment out unused variables
4033         * src/w32fns.c (x_set_mouse_color): Comment out variables cursor,
4034         nontext_cursor, mode_cursor, hand_cursor and count.
4035         (x_change_tool_bar_height): Remove variable old_text_height.
4036         (deliver_wm_chars): Remove variable strip_Alt.
4037         (Fw32_shell_execute): Remove variable document_a.
4038         (Fw32_frame_geometry): Remove variable fullboth.
4039         * src/w32term.c (w32_setup_relief_color): Comment out variable
4040         w32_display_info.
4041         (w32_horizontal_scroll_bar_handle_click): Remove variables start, end.
4042         (w32_read_socket): Comment out variables rows, columns.
4043         * src/w32uniscribe.c (uniscribe_check_otf_1): Remove variable rest.
4045 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
4047         * src/w32proc.c (sys_select): Fix bitwise test.
4049 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
4051         Minor typo corrections in doc strings
4053         * lisp/menu-bar.el (popup-menu, popup-menu-normalize-position):
4054         Doc fixes.
4056 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
4058         * nt/INSTALL: Recommend MSYS Automake/Autoconf from ezwinports.
4060 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
4062         Attempt to avoid crashes in plist-member
4064         * src/fns.c (Fplist_member): Don't call QUIT between a CONSP test
4065         and a call to XCDR.  (Bug#21655)
4067 2015-10-12  Mike FABIAN  <mfabian@redhat.com>
4069         * lisp/select.el (gui-get-primary-selection): In
4070         gui-get-primary-selection use gui--selection-value-internal (Bug#20906)
4072 2015-10-12  Tassilo Horn  <tsdh@gnu.org>
4074         Support RTF in doc-view
4076         * lisp/doc-view.el (doc-view-set-doc-type): Add entry for RTF extension.
4078 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
4080         * src/w32fns.c (get_wm_chars): Increment counter, not pointer.
4082 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
4084         Replace the usage of an obsolete function in auth-source.el
4086         * lisp/gnus/auth-source.el (auth-source-epa-make-gpg-token):
4087         Replace an usage of `epg-context-set-armor' with `setf'.
4089 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
4091         * lisp/gnus/auth-source.el: Use sharp-quoting with functions.
4093 2015-10-11  Jay Belanger  <jay.p.belanger@gmail.com>
4095         Have calc-yank recognize numbers in different bases.
4097         * lisp/calc/calc-yank.el (math-number-regexp): New function.
4098         (calc-yank): Use `math-number-regexp' to recognize numbers.
4100 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
4102         Handle an opaque-move X11 window manager operation more efficiently
4104         * src/xterm.c (handle_one_xevent): If a ConfigureNotify event is
4105         followed by more ConfigureNotify events for the same window, process
4106         only the last one.
4108 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
4110         Fix cursor setting for tip frame; re-enable cursor generation
4112         * src/xfns.c (x_create_tip_frame): Include the cursor in the window
4113         attributes sent when creating the new X window.  Don't skip setting
4114         the pointerColor parameter.
4116 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
4118         Rewrite x_set_mouse_color to sync less
4120         We can track serial numbers of X requests and correlate error events
4121         with the associated requests.  This way we can identify errors for
4122         specific calls without having to use XSync after every one.
4124         * src/xfns.c (enum mouse_cursor): New type.
4125         (struct mouse_cursor_types, struct mouse_cursor_data): New types.
4126         (mouse_cursor_types): New array listing the Lisp variables and default
4127         cursor appearances for each cursor type.
4128         (x_set_mouse_color_handler): New function; checks error event serial
4129         number against submitted requests.
4130         (x_set_mouse_color): Updated to use the new error handler callback,
4131         and to be more table-driven, to simplify repetitious code.
4133 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
4135         Add x_catch_errors_with_handler
4137         * src/xterm.c (struct x_error_message_stack): Add new fields for a
4138         callback function and associated data pointer.
4139         (x_error_catcher): If the callback function is set, call it after
4140         saving the error message string.
4141         (x_catch_errors_with_handler): Renamed from x_catch_errors but now
4142         accepts a callback function and data pointer.
4143         (x_catch_errors): Now a wrapper function.
4144         * src/xterm.h (x_special_error_handler): New typedef.
4145         (x_catch_errors_with_handler): Declare.
4147 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
4149         Introduce x_uncatch_errors_after_check to reduce XSync calls
4151         Both x_had_errors_p and x_check_errors call XSync, so if they're
4152         immediately followed by x_uncatch_errors, its XSync call will be
4153         redundant, resulting in a wasted round trip to the X server.
4155         * src/xterm.c (x_uncatch_errors_after_check): New routine; a copy of
4156         x_uncatch_errors without the XSync call.
4157         (XTmouse_position, x_wm_supports):
4158         * src/xfns.c (x_set_mouse_color):
4159         * src/xmenu.c (Fx_menu_bar_open_internal):
4160         * src/xselect.c (x_own_selection, x_get_foreign_selection):
4161         (Fx_get_atom_name): Call it instead of x_uncatch_errors.
4162         * src/xterm.h (x_uncatch_errors_after_check): Declare.
4164 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
4166         Document the optional prefix to `calc-yank'
4168         * doc/misc/calc.texi (Yanking into the Stack): Document the optional
4169         prefix to `calc-yank'.
4170         * lisp/calc/calc-yank.el (calc-yank): Ensure that things killed from
4171         the Calc buffer are yanked back unchanged.
4173 2015-10-10  Mark Oteiza  <mvoteiza@udel.edu>
4175         * lisp/calendar/calendar.el: Display buffer before executing body.
4177         In each use of this macro, the modeline is derived from a window width
4178         calculation, which will be wrong if (display-buffer) splits the window
4179         horizontally.
4181 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
4183         Use ‘echo’ safely with ‘\’ or leading ‘-’
4185         POSIX says that ‘echo FOO’ produces implementation-defined output
4186         if FOO contains leading ‘-’, or ‘\’ anywhere, so don’t assume GNU
4187         behavior in that case.
4188         * Makefile.in (removenullpaths): Remove.
4189         (epaths-force): Rewrite to avoid the need for ‘echo’.
4190         (install-etc): Be clearer about escaping the shell metacharacters
4191         ‘\’ and ‘$’.
4192         * Makefile.in (install-arch-indep, install-etcdoc):
4193         * admin/charsets/mapconv, admin/merge-gnulib, admin/merge-pkg-config:
4194         * admin/quick-install-emacs, build-aux/gitlog-to-emacslog:
4195         * configure.ac, lib-src/rcs2log, make-dist:
4196         * src/Makefile.in (lisp.mk):
4197         Don’t assume ‘echo’ outputs ‘\’ and leading ‘-’ unscathed.
4198         For example, use ‘printf '%s\n' "$foo"’ rather than ‘echo "$foo"’
4199         if $foo can contain arbitrary characters.
4200         * lisp/Makefile.in (TAGS): Use ‘ls’, not ‘echo’, to avoid ‘\’ issues.
4201         * doc/lispref/two-volume.make (vol1.pdf):
4202         * test/etags/make-src/Makefile (web ftp publish):
4203         Use ‘printf’ rather than ‘echo -e’.
4205 2015-10-10  Kaushal Modi  <kaushal.modi@gmail.com>
4207         Allow numbers with different radixes to be yanked.
4209         * lisp/calc/calc-yank.el (calc-yank): Allow radixes besides the
4210         default base 10.
4212 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
4214         Improve CHECK_IMPURE and PURE_P speedup
4216         * src/data.c (Faset): Use XVECTOR and XSTRING rather than XPNTR.
4218 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
4220         Use events instead of chars to keep track of steps.
4222         * lisp/calc/calc-prog.el (calc-kbd-loop): Use events instead of chars
4223         to keep track of steps.
4225 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
4227         Fix --enable-gcc-warnings problem with older GCC
4229         * src/puresize.h: Add INLINE_HEADER_BEGIN, INLINE_HEADER_END.
4230         This is for building with --enable-gcc-warnings with
4231         GCC 4.6 through 5.0.
4233 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
4235         Fix vertical-motion in truncated lines that end in a stretch
4237         * src/indent.c (Fvertical_motion): Expect overshoot when point is
4238         beyond window margin and lines are truncated, even if we have a
4239         stretch at point.  (Bug#21468)
4241 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
4243         Avoid link-time errors due to inline functions
4245         * src/emacs.c: Include puresize.h, to avoid link-time errors in
4246         unoptimized builds due to PURE_P and CHECK_IMPURE, which are now
4247         inline functions.
4249 2015-10-10  Andreas Schwab  <schwab@linux-m68k.org>
4251         * src/data.c (Faset): Fix last change.
4253 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
4255         CHECK_IMPURE and PURE_P speedup
4257         * src/intervals.c (create_root_interval):
4258         Do CHECK_IMPURE only for strings; not needed for buffers.
4259         Prefer ! STRINGP to BUFFERP, for a tad more speed.
4260         * src/puresize.h (CHECK_IMPURE, PURE_P):
4261         Now inline functions instead of macros.
4262         (PURE_P): Don’t use XPNTR; that is now the caller’s responsibility.
4263         All callers changed.
4264         (CHECK_IMPURE): New argument PTR, to save us the work of running XPNTR.
4265         All callers changed.
4267 2015-10-09  Noah Friedman  <friedman@splode.com>
4269         (tramp-open-connection-setup-interactive-shell): Send -onlcr as well.
4271 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
4273         * lisp/progmodes/cc-mode.el (c-after-font-lock-init): Only *move*
4275         our after-change-function, rather than re-adding it if it was removed.
4277 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
4279         * lisp/cedet/ede: Silence some compiler warnings
4281         * lisp/cedet/ede.el: Require cl-lib.  Silence some compiler warnings.
4282         (ede-menu-obj-of-class-p): Use cl-some rather than `eval'.
4283         (ede-apply-object-keymap, ede-reset-all-buffers)
4284         (ede-auto-add-to-target): Use dolist.
4285         (ede-new, ede-flush-deleted-projects, ede-global-list-sanity-check):
4286         Use field names rather than initarg names in `oref'.
4287         (ede-load-project-file): Remove unused var `file'.
4288         (ede-map-any-target-p): Use cl-some rather than ede-map-targets.
4289         (ede-set): Remove unused var `a'.
4291         * lisp/cedet/ede/emacs.el: Silence some compiler warnings.
4292         (ede-project-autoload): Avoid the old-style "name" argument.
4293         (ede-emacs-find-matching-target): Use field names rather than initarg
4294         names in `oref'.
4296         * lisp/cedet/ede/linux.el: Silence some compiler warnings.
4297         (ede-linux-load, ede-project-autoload): Avoid the old-style
4298         "name" argument.
4299         (ede-linux-find-matching-target): Use field names rather than initarg
4300         names in `oref'.
4302 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
4304         * lisp/textmodes/reftex.el: Silence byte-compiler warnings.
4306 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
4308         * lisp/progmodes/prolog.el (prolog-smie-rules): Try and avoid
4309         indenting too far after ":-".
4311 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
4313         Update case-table and categories of recently added characters
4315         * lisp/international/characters.el: Update information about Latin
4316         Extended-C, Latin Extended-D, Latin Extended-E, Cyrillic Extended,
4317         Georgian, Glagolitic, Deseret, Old Hungarian, and Warang Citi
4318         blocks.  (Byug#21654)
4320 2015-10-09  Martin Rudalics  <rudalics@gmx.at>
4322         * src/frame.c (adjust_frame_size): In minibuffer-only windows
4323         don't count minibuffer height twice.  (Bug#21643)
4325 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
4327         Avoid inflooping in font-lock
4329         * lisp/font-lock.el (font-lock-extend-region-wholelines): Bind
4330         inhibit-field-text-motion around the call to
4331         line-beginning-position, to avoid inflooping.  (Bug#21615)
4333 2015-10-09  Tassilo Horn  <tsdh@gnu.org>
4335         Refactor duplicated code; ensure default is in completions
4337         * lisp/textmodes/reftex-cite.el (reftex--query-search-regexps):
4338         New function.
4339         (reftex-extract-bib-entries): Use it.
4340         (reftex-extract-bib-entries-from-thebibliography): Use it.
4342 2015-10-09  Vincent Belaïche  <vincentb1@users.sourceforge.net>
4344         * doc/misc/autotype.texi (Skeletons as Abbrevs): "if" -> "ifst"
4345         in the example.
4347 2015-10-08  Stefan Monnier  <monnier@iro.umontreal.ca>
4349         * lisp/calc/calc.el: Silence byte-compiler warnings.
4350         (calc-scan-for-dels): Use ignore-errors.
4351         (calc-dispatch, calc-do-dispatch): Make unused arg optional.
4352         (calc-read-key-sequence): Remove unused var `prompt2'.
4353         (calc-kill-stack-buffer): Remove unused var `buflist'.
4354         (calc): Remove unused var `oldbuf'.
4355         (calc-refresh): Use inhibit-read-only.
4356         (calc-can-abbrev-vectors): Declare.
4357         (calc-record): Remove unused var `mainbuf'.
4358         (math-sub-bignum): Remove unused var `sum'.
4359         (math-svo-c, math-svo-wid, math-svo-off): Declare.
4361 2015-10-08  Daiki Ueno  <ueno@gnu.org>
4363         Use g_clear_error instead of g_error_free
4365         * src/image.c: Define g_clear_error instead of g_error_free.
4366         (init_svg_functions): Resolve symbol g_clear_error instead of
4367         g_error_free.
4368         (svg_load_image): Use g_clear_error instead of g_error_free, to
4369         suppress GLib warnings when ERR is not set.  See bug#21641.
4371 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
4373         * src/image.c (image_size_error): Simplify.
4375 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
4377         Fix problems caught with --enable-gcc-warnings
4379         * src/image.c (lookup_rgb_color):
4380         * src/xfns.c (x_defined_color):
4381         * src/xterm.c (x_parse_color):
4382         Remove unused locals.
4384 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
4386         * lisp/calc/calc.el (calc-digit-start-entry): Fix typo.
4388 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
4390         Format initial input uniformly
4392         * lisp/calc/calc.el (calc-digit-start-entry): New function.
4393         * lisp/calc/calc.el (calcDigit-start):
4394         * lisp/calc/calc-aent.el (calc-alg-digit-entry):
4395         Use `calc-digit-start-entry' to format input.
4397 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
4399         Disable non-working pointerColor setting for X tooltip frame
4401         It generates a bunch of server traffic, but there's some bug wherein
4402         the new mouse cursor settings don't seem to get used.  In most
4403         situations the cursor isn't likely to be seen anyway, so it's not
4404         urgent to fix.
4406         * src/xfns.c (x_create_tip_frame): Don't set pointerColor.
4408 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
4410         Reduce some unnecessary X calls
4412         * src/xfns.c (x_real_pos_and_offsets): Remove a redundant XGetGeometry
4413         call.  If border width is wanted, get it from the XGetGeometry call
4414         instead of calling XGetWindowAttributes on the same window.  Skip some
4415         X calls if we've already detected an error from the X server.
4416         * src/xterm.c (x_wm_supports): Delete x_sync before x_had_errors_p.
4417         (handle_one_xevent): Delete XSync call before x_uncatch_errors.
4419 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
4421         Reduce color allocation/query traffic in the TrueColor case
4423         When working with an X visual with TrueColor class, pixel values can
4424         be generated from the RGB values according to mask value provided by
4425         the server on connection.  Some of the image-handling code was already
4426         doing this.
4428         * src/xterm.h (x_make_truecolor_pixel): New function; code taken from
4429         lookup_rgb_color.
4430         (x_mutable_colormap): New function.
4431         * src/image.c (lookup_rgb_color): Move pixel composition code to
4432         x_make_truecolor_pixel.
4433         (x_kill_gs_process): Call x_mutable_colormap.
4434         * src/xfaces.c (x_free_colors, x_free_dpy_colors): Call
4435         x_mutable_colormap.
4436         * src/xftfont.c (xftfont_get_colors): Call x_query_colors.
4437         * src/xterm.c (x_query_colors): For a TrueColor display, decompose the
4438         pixel value into RGB values directly, and don't send a request to the
4439         server.
4440         (x_alloc_nearest_color): For a TrueColor display, construct the pixel
4441         value with x_make_truecolor_pixel.
4442         (x_copy_color): For an immutable color map, just return the provided
4443         pixel value.
4445 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
4447         Cache XParseColor results in the X display info structure
4449         With repeated lookups of foreground and background colors for multiple
4450         faces per frame, we issue a lot of redundant color name lookups to the
4451         X server, waiting every time for the response.  On a remote network
4452         with, say, 30ms round-trip time, this can add nearly a full second to
4453         creation of a new frame.
4455         * src/gtkutil.c (xg_check_special_colors): Call x_parse_color.
4456         * src/image.c (get_spec_bg_or_alpha_as_argb):
4457         (xpm_init_color_cache, xpm_lookup_color):
4458         * src/xfns.c (x_defined_color):
4459         * src/xterm.c (x_parse_color): New function; caches color names not
4460         starting with "#" in the display-info structure.
4461         (x_delete_display): Delete the cache content.
4462         * src/xterm.h (struct color_name_cache_entry): New type.
4463         (x_parse_color): Declare.
4464         (struct x_display_info): Add a new field for the cache.
4466 2015-10-07  Stefan Monnier  <monnier@iro.umontreal.ca>
4468         * src/syntax.c (syms_of_syntax): Make syntax-propertize--done local.
4470 2015-10-07  Eli Zaretskii  <eliz@gnu.org>
4472         Fix segfault in image_size_error
4474         * src/image.c (image_size_error): Pass a Lisp string to
4475         image_error, not a C string.  (Bug#21641)
4477 2015-10-07  Simen Heggestøyl  <simenheg@gmail.com>
4479         Highlight CSS variable definitions
4481         * lisp/textmodes/css-mode.el (css-nmstart-re): Tweak regexp to accept
4482         CSS variables.  (Bug#21638)
4484 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
4486         * test/automated/tabulated-list-test.el: New file.
4487         Test bug#21639 and some basic functionality.
4489 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
4491         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-sort):
4492         Check if column can be sorted before trying.  (Bug#21639)
4494 2015-10-07  Nicolas Richard  <youngfrog@members.fsf.org>
4496         Add test for `self-insert-command' (bug#21633)
4498         * test/automated/cmds-tests.el: New file.
4500 2015-10-07  Martin Rudalics  <rudalics@gmx.at>
4502         * src/window.c (resize_frame_windows): Don't set root window's
4503         top position when resizing horizontally.
4505 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
4507         * lisp/progmodes/prog-mode.el (prettify-symbols-alist):
4508         Document more possible values.
4510 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
4512         * lisp/textmodes/tex-mode.el: Use lexical-binding.
4514 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
4516         * lisp/indent.el (indent--default-inside-comment): New function.
4517         (indent-for-tab-command): Use it for `noindent' indentation.
4519 2015-10-06  Paul Eggert  <eggert@cs.ucla.edu>
4521         Fix bug in GC_CHECK_MARKED_OBJECTS check
4523         * src/alloc.c (mark_object): Fix bug in checking code.
4524         When GC_CHECK_MARKED_OBJECTS is defined, the bug caused
4525         CHECK_ALLOCATED_AND_LIVE_SYMBOL to repeatedly do the
4526         CHECK_ALLOCATED and CHECK_LIVE tests for the first symbol in each
4527         bucket.  The bug did not affect behavior either in the normal case
4528         where GC_CHECK_MARKED_OBJECTS is not defined, or where Emacs does
4529         not have an internal error that a properly-written
4530         CHECK_ALLOCATED_AND_LIVE_SYMBOL would detect.
4532 2015-10-06  Tassilo Horn  <tsdh@gnu.org>
4534         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
4535         Add prettified version for \\Bbb{Q}.
4537 2015-10-06  Artur Malabarba  <bruce.connor.am@gmail.com>
4539         * test/automated/package-test.el (package-test-install-single):
4540         Add a test for bug#21625.
4542 2015-10-06  Aaron Ecay  <aaronecay@gmail.com>
4544         * lisp/emacs-lisp/package.el (package-install): Fix error when pkg is
4545           not a package-desc object.  Also clarify documentation.  (Bug#21625)
4547 2015-10-06  Eli Zaretskii  <eliz@gnu.org>
4549         Fix display of characters adjacent to ZWJ and ZWNJ
4551         * src/bidi.c (bidi_resolve_neutral): Treat all Bn (a.k.a. "control")
4552         characters the same as directional formatting controls.
4553         (bidi_level_of_next_char): Include all Bn characters in rule L1,
4554         as mandated by the UBA.
4556 2015-10-06  Andreas Schwab  <schwab@suse.de>
4558         * src/cmds.c (Fself_insert_command): Don't use XFASTINT on a negative
4559         number.  (Bug#21633)
4561 2015-10-05  Xue Fuqiao  <xfq.free@gmail.com>
4563         * doc/lispref/objects.texi (Window Type): Add a cross reference.
4565         * src/buffer.c (syms_of_buffer): Typo fix.  (Bug#21622)
4567 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
4569         * lisp/language/misc-lang.el (composition-function-table):
4570         Fix entries for Arabic and Syriac.
4572 2015-10-05  Damien Cassou  <damien@cassou.me>
4574         Add first unit tests for auth-source.el
4576         * test/automated/auth-source-tests.el: New file.
4578 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
4580         Remove redundant redisplay code
4582         * src/xdisp.c (redisplay_internal, try_cursor_movement)
4583         (try_window_reusing_current_matrix, try_window_id): Remove
4584         redundant restrictions on redisplay optimizations based on the
4585         frame's 'redisplay' flag.  See
4586         http://osdir.com/ml/general/2015-10/msg02110.html for the relevant
4587         discussions.
4589 2015-10-04  Stefan Monnier  <monnier@iro.umontreal.ca>
4591         * src/xdisp.c (windows_or_buffers_changed): Improve docstring.
4593 2015-10-04  Xue Fuqiao  <xfq.free@gmail.com>
4595         Update tutorials/TUTORIAL.cn
4597         * etc/tutorials/TUTORIAL.cn: Improve translation.
4599 2015-10-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
4601         * src/macfont.m (macfont_encode_char, syms_of_macfont):
4602         Remove unused vars.
4604 2015-10-04  Stefan Merten  <stefan@merten-home.de>
4606         Pull in version numbers from rst.el upstream release.
4608         * lisp/textmodes/rst.el (rst-cvs-header, rst-svn-rev)
4609         (rst-svn-timestamp, rst-official-version)
4610         (rst-official-cvs-rev, rst-package-emacs-version-alist):
4611         Update version numbers.
4613 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
4615         * test/automated/coding-tests.el: New file.
4617 2015-10-04  Michael Albinus  <michael.albinus@gmx.de>
4619         Improve XEmacs compatibility of Tramp
4621         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
4622         Declare if it doesn't exist.
4623         (file-remote-p): Remove defalias, which was necessary for GNU Emacs 21.
4624         (redisplay): Make it an alias if it doesn't exist.
4626         * lisp/net/tramp.el (tramp-get-remote-tmpdir): Don't use
4627         `file-remote-p' (due to XEmacs compatibility).
4629         * lisp/net/trampver.el (locate-dominating-file)
4630         (tramp-compat-replace-regexp-in-string): Autoload.
4631         (tramp-repository-get-version): Do not dupe byte-compiler.
4633 2015-09-02  K. Handa  <handa@gnu.org>
4635         fix for the case that M17N_FLT_USE_NEW_FEATURE is not defined
4637         * src/ftfont.c (ftfont_drive_otf) [not M17N_FLT_USE_NEW_FEATURE]:
4638         Adjusted for the change of type of elements in the array
4639         MFLTGlyphString.glyphs.
4641 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
4642             Michael Heerdegen  <michael_heerdegen@web.de>
4644         shr: fix too long lines in rendered buffers (Bug#21012)
4646         * lisp/net/shr.el (shr-insert-document, shr-fill-text):
4647         Correct calculation of available width.
4648         (shr-find-fill-point): Don't overflow window edge if shr-kinsoku-shorten
4649         is nil.
4651 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
4653         Restore blank line before next section, erroneously erased
4654         in my previous commit
4656         * etc/compilation.txt (symbol ant): Add an additional trailing blank
4657         line to this section, so that there are two of them immediately before
4658         the next section.
4660 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
4662         Support MSW filename style for ant compilation error regexp
4664         * etc/compilation.txt (symbol ant):
4665         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
4666         Support MSW filename style.
4668 2015-10-03  Paul Eggert  <eggert@cs.ucla.edu>
4670         * nt/INSTALL: Minor spelling and quote fixes.
4672         * lisp/ibuffer.el: Fix docstring length (Bug#21541).
4674 2015-10-03  Simen Heggestøyl  <simenheg@gmail.com>
4676         Maintain ordering of JSON object keys by default
4678         * lisp/json.el (json-object-type): Mention order handling in doc-string.
4679         (json--plist-reverse): New utility function.
4680         (json-read-object): Maintain ordering for alists and plists.
4681         (json-pretty-print): Ensure that ordering is maintained.
4683         * test/automated/json-tests.el (test-json-plist-reverse): New test for
4684         `json--plist-reverse'.
4685         (json-read-simple-alist): Update test to accommodate for changes in
4686         `json-read-object'.
4688         * etc/NEWS: Document the new behavior of the pretty printing functions.
4690 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
4692         * src/coding.c (complement_process_encoding_system): Revert last change.
4694 2015-10-03  Ulf Jasper  <ulf.jasper@web.de>
4696         * admin/MAINTAINERS: Add entry for Ulf Jasper.
4698 2015-10-03  Xue Fuqiao  <xfq.free@gmail.com>
4700         Doc fix for `defmacro'
4702         * doc/lispref/objects.texi (Macro Type): `defmacro' is a macro now.
4704 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
4706         More validatation of coding systems
4708         * src/fileio.c (Finsert_file_contents): Remove redundant
4709         coding-system check.
4710         (choose_write_coding_system): Likewise.
4711         * src/coding.c (complement_process_encoding_system): Check argument
4712         for valid coding system.
4714 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
4716         Avoid crashes in coding_inherit_eol_type
4718         * src/coding.c (coding_inherit_eol_type): Check the validity of
4719         the arguments.  Suggested by Andreas Schwab <schwab@linux-m68k.org>.
4720         (Bug#21602)
4722 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
4724         More validatation of coding system in 'write-region'
4726         * src/coding.c (choose_write_coding_system): More validation of
4727         coding-system from various sources.  Suggested by Andreas Schwab
4728         <schwab@linux-m68k.org>.  (Bug#21602)
4730 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
4732         Avoid crashes due to invalid coding-system
4734         * src/fileio.c (choose_write_coding_system)
4735         (Finsert_file_contents): Check validity of coding-system-for-write
4736         and coding-system-for-read bound by the caller.  (Bug#21602)
4738 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
4740         Adapt to new prettify-symbols-unprettify-at-point default
4742         * etc/NEWS: Mention that unprettication of symbol at point is off
4743         by default.
4745 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
4747         Revert my two recent process.c changes
4749         Revert "Improve last commit to process.c" and "Remove callback-handled
4750         channels from Available set" because they did not fix bug#21313.
4752         This reverts commits bfa1aa8e2bdaf14adbbf1e9e824051d3f740694c and
4753         27f871907cc24f33a7d12ac3a4ab71a88f0bc554.
4755 2015-10-02  Markus Triska  <triska@metalevel.at>
4757         * lisp/progmodes/prolog.el: Update and extend operator table.
4758         (prolog-smie-grammar): Add multifile, public etc.
4760 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
4762         Allow autogen even when Git is not installed
4764         * autogen.sh: Test ‘git status’ before trying to use Git.
4766 2015-10-02  Stefan Monnier  <monnier@iro.umontreal.ca>
4768         * lisp/vc/vc-git.el (vc-git-region-history): Handle local changes.
4769         Adjust lto/lfrom when we have uncommitted changes.
4771 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
4773         Fix problems found by clang 3.5.0
4775         * src/cmds.c (Fdelete_char): Don’t assume XINT returns int.
4776         * src/font.c (font_parse_family_registry):
4777         Use &"str"[X] instead of "str"+X, to pacify clang -Wstring-plus-int.
4779 2015-10-02  Eli Zaretskii  <eliz@gnu.org>
4781         * nt/INSTALL: Update instructions for running autogen.sh.
4783         * nt/INSTALL: Point to ezwinports for libXpm binaries.
4785 2015-10-02  Daniel Colascione  <dancol@dancol.org>
4787         Fix winner in cl-lib not loaded case
4789         * lisp/winner.el (winner-change-fun): Don't use cl-lib functions
4790         without requiring CL
4792 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
4794         Fix a few problems with directed quotes
4796         This is in response to a problem report by Kaushal Modi in:
4797         http://bugs.gnu.org/21588#25
4798         * lisp/cedet/mode-local.el (describe-mode-local-overload):
4799         * lisp/emacs-lisp/bytecomp.el (byte-compile-fix-header):
4800         * lisp/info-xref.el (info-xref-check-all-custom):
4801         * lisp/mail/emacsbug.el (report-emacs-bug-hook):
4802         Prefer directed to undirected single quotes in diagnostics.
4804 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
4806         Revert "Attempt to fix slow redisplay caused by last changes"
4808         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
4809         (try_cursor_movement): Don't relax requirements for redisplay
4810         optimizations for the selected frame.  (Bug#21597)
4812         This reverts commit c4c1fb97727ff52bcfa83ad5ed94a64a93d12e59.
4814 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
4816         Fix slow redisplay when daemon frame exists
4818         * src/xdisp.c (redisplay_internal): Don't consider daemon frames
4819         when looking for frames that need to be redisplayed.  (Bug#21597)
4821 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
4823         Attempt to fix slow redisplay caused by last changes
4825         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
4826         (try_cursor_movement): Relax requirements for redisplay
4827         optimizations for the selected frame.  (Bug#21597)
4829 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
4831         * src/dired.c (Ffile_name_completion, Ffile_name_all_completions):
4832         Improve doc string.
4834 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
4836         * lisp/minibuffer.el (minibuffer-completion-help):
4837         Set default base-size, in case completion table does not set it.
4839 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
4841         Fix GUD display of GDB output with non-ASCII text
4843         * lisp/progmodes/gdb-mi.el (gdb-mi-decode-strings): New defcustom.
4844         (gdb-mi-decode): New function.
4845         (gud-gdbmi-marker-filter): If gdb-mi-decode-strings is non-nil,
4846         decode octal escapes in GDB output.  (Bug#21572)
4848 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
4850         * nt/INSTALL: Document where to find XPM support files.
4852 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
4854         Un- and re-prettification are not exclusive
4856         * lisp/progmodes/prog-mode.el (prettify-symbols--post-command-hook):
4857         Re-apply prettification to previous symbol also when unprettifying
4858         next one.
4860 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
4862         Don't unprettify symbol at point by default
4864         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
4865         Default to disabled (nil).
4867 2015-09-30  Artur Malabarba  <bruce.connor.am@gmail.com>
4869         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
4870         Support unprettifying when point is after a symbol.
4872         * etc/NEWS: Document `prettify-symbols-unprettify-at-point'.
4874 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
4876         Avoid assertion violations in push_prefix_prop
4878         * src/xdisp.c (push_prefix_prop): Avoid assertion violations when
4879         a line that has a line-prefix defined starts with an image.  (Bug#21428)
4881 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
4883         Disable some display optimizations when frames need redisplay
4885         These optimizations were previously disabled by the
4886         windows_or_buffers_changed flag, which now is not set
4887         when only some frames need to be redrawn.
4888         * src/xdisp.c (redisplay_internal): Redisplay any frame whose
4889         'redisplay' flag is set.
4890         (try_window_reusing_current_matrix, try_window_id)
4891         (try_cursor_movement): Disable these optimizations when the
4892         frame's 'redisplay' flag is set.
4894 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
4896         Don't modify buffer by unprettification
4898         * lisp/progmodes/prog-mode.el (prettify-symbols--compose-symbol):
4899         (prettify-symbols--post-command-hook, prettify-symbols-mode): Don't
4900         modify buffer when setting/removing custom prettify-symbols-start/end
4901         text properties.  Add them to font-lock-extra-managed-props, too.
4903 2015-09-30  Stefan Monnier  <monnier@iro.umontreal.ca>
4905         Try to avoid redisplaying all frames when creating a new one
4907         * src/xfns.c (x_set_menu_bar_lines, x_change_tool_bar_height):
4908         * src/xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
4909         (Finternal_set_lisp_face_attribute, update_face_from_frame_parameter):
4910         * src/frame.c (x_set_screen_gamma): Set the specific frame's
4911         `redisplay' bit rather than windows_or_buffers_changed.
4913         * src/window.c (apply_window_adjustment): Remove redundant setting of
4914         windows_or_buffers_changed.
4916         * src/xdisp.c (redisplay_internal): Set the specific frame's
4917         `redisplay' bit rather than update_mode_lines in response to
4918         cursor_type_changed.
4919         (syms_of_xdisp): Use hash-tables for redisplay_*_cause tables.
4920         (AINC): Adjust accordingly.
4922 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
4924         Implement unprettification of symbol at point
4926         * lisp/progmodes/prog-mode.el: Implement feature for unprettifying the
4927         symbol at point.
4928         (prettify-symbols--current-symbol-bounds): New variable.
4929         (prettify-symbols--post-command-hook): New function.
4930         (prettify-symbols-unprettify-at-point): New defcustom.
4931         (prettify-symbols-mode): Use it.
4932         (prettify-symbols--compose-symbol): Use them.
4934 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
4936         * src/macfont.m (mac_font_descriptor_supports_languages):
4937         Regard "zh" as synonym of "zh-Hans".
4939 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
4941         Work around crash when displaying etc/HELLO on OS X 10.11
4943         * src/macfont.m (mac_font_get_weight)
4944         (mac_font_descriptor_get_adjusted_weight): New functions.
4945         (macfont_store_descriptor_attributes): Adjust weight.
4947 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
4949         * src/macfont.m: Fix compilation with USE_CT_GLYPH_INFO.
4951 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
4953         * lisp/arc-mode.el (archive-rar-summarize): Better alignment
4954         of the columns.
4956 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
4958         Use unar and lsar to handle RAR archives in arc-mode
4960         * lisp/arc-mode.el (archive-rar-extract, archive-extract-by-file): Rely
4961         on unar and lsar instead of unrar-free for RAR archives (bug#17663).
4963 2015-09-30  Wieland Hoffmann  <themineo@gmail.com>  (tiny change)
4965         Clarify :create in auth-source's docs
4967         * lisp/gnus/auth-source.el (auth-source-search):
4968         Clarify :create's meaning.
4970 2015-09-30  Phil Sainty  <psainty@orcon.net.nz>
4972         Avoid empty -path arguments in rgrep
4974         * lisp/progmodes/grep.el (rgrep-default-command): Remove nil from
4975         the list produced according to grep-find-ignored-directories,
4976         before passing it to Find/Grep invocation.  (Bug#21548)
4978 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
4980         Clarify documentation of pos-visible-in-window-p
4982         * src/window.c (Fpos_visible_in_window_p): Clarify the meaning of
4983         t for POS.  See
4984         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg01040.html
4985         for the original report.
4987         * doc/lispref/windows.texi (Window Start and End): Clarify the
4988         meaning of t for the POSITION argument of pos-visible-in-window-p.
4990 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
4992         * lisp/progmodes/prolog.el: Fix various indentation cases.
4993         (prolog-operator-chars): New const (add \\).
4994         (prolog-smie-forward-token, prolog-smie-backward-token): Use it.
4995         (prolog-smie-rules): Add rules according to bug#21526.
4997 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
4999         * lisp/progmodes/sh-script.el: Old "dumb" continued line indent.
5000         (sh-indent-after-continuation): Add new value `always' (bug#17620)
5001         (sh-smie-sh-rules): Remove old handling of continued lines.
5002         (sh-smie--indent-continuation): New function.
5003         (sh-set-shell): Use it.
5005 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
5007         * lisp/progmodes/octave.el: Use grammar more; Handle enumeration fun.
5008         Remove redundant :group keyword args.
5009         (octave-begin-keywords, octave-else-keywords, octave-end-keywords):
5010         Remove variables.
5011         (octave-operator-table, octave-smie-bnf-table): Use let-when-compile to
5012         turn them into compile-time variables.
5013         Auto-generate the "foo ... end" rules from the "foo ... endfoo" rules.
5014         Add rules for break, continue, return, global, and persistent.
5015         Refine the rule for "until".
5016         (octave-smie--funcall-p, octave-smie--end-index-p)
5017         (octave-smie--in-parens-p): New functions.
5018         (octave-smie-backward-token, octave-smie-forward-token): Use them to
5019         distinguish the "enumeration" function and the "end" index from
5020         their corresponding keywords.
5021         (octave--block-offset-keywords): New constant.
5022         (octave-smie-rules): Use it.  Adjust rules for new global/persistent
5023         parsing.
5024         (octave-reserved-words): Redefine using octave-smie-grammar.
5025         (octave-font-lock-keywords): Use octave-smie--funcall-p and
5026         octave-smie--end-index-p.
5028 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
5030         * lisp/emacs-lisp/lisp-mode.el (let-when-compile): Work like let*.
5032 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
5034         * nt/INSTALL: Remove references to GTK site.
5035         That site no longer offers Windows downloads.
5037 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
5039         * nt/INSTALL: Add instructions for installing Git.
5041 2015-09-29  Katsumi Yamaoka  <yamaoka@jpl.org>
5043         * lisp/net/shr.el (shr-colorize-region): Allow 88-color tty to
5044         use colors.  Suggested by Eli Zaretskii.
5046 2015-09-28  Katsumi Yamaoka  <yamaoka@jpl.org>
5048         * lisp/net/shr.el (shr-colorize-region): Don't do it on a system
5049         not supporting 256 above colors (bug#21557).
5051 2015-09-28  Dmitry Gutov  <dgutov@yandex.ru>
5053         Revert "Don't rely on defaults in decoding UTF-8 encoded Lisp files"
5055         This reverts commit db828f62f6f17414fbbc3206dac123dc73dd6055.
5057 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
5059         Add documentation for seq.el
5061         * doc/lispref/sequences.texi: Add documentation regarding extending
5062         seq.el, as well as missing documentation for seq-elt, seq-length, seq-p,
5063         seq-do and seq-map.
5065 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
5067         Better documentation for seq-some
5069         * doc/lispref/sequences.texi:
5070         * lisp/emacs-lisp/seq.el: Update the documentation of seq-some to
5071         guarantee that the returned value is the first non-nil value that
5072         resulted from applying the predicate.
5074 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
5076         * lisp/arc-mode.el: Sharp-quote function arguments.
5078 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
5080         Avoid redisplay error in ediff-regions-wordwise
5082         * lisp/vc/ediff-util.el
5083         (ediff-clone-buffer-for-region-comparison): Make sure the mark is
5084         set before activating it.  (Bug#21567)
5086 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
5088         Another attempt to fix crashes due to prematurely freed faces
5090         * src/xdisp.c (redisplay_internal): Inhibit freeing of realized
5091         faces for as long as we might have desired matrices that reference
5092         those faces.  (Bug#21428)
5094 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
5096         Add auctex development list email address
5098 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
5100         * admin/MAINTAINERS: Add entries for AUCTeX team and myself.
5102 2015-09-28  Arash Esbati  <esbati@gmx.de>  (tiny change)
5104         Improve wrapfig package support and caption parsing
5106         * lisp/textmodes/reftex-vars.el (reftex-label-alist-builtin):
5107         Correct description string and add wraptable environment.
5108         (reftex-default-context-regexps): Improve caption regexp.
5110 2015-09-28  Anders Lindgren  <andlind@gmail.com>
5112         Respect value of frame_resize_pixelwise when handling fullscreen state
5114         * src/nsterm.m (handleFS): Respect frame_resize_pixelwise when
5115         setting size increments.
5117 2015-09-27  Michael Albinus  <michael.albinus@gmx.de>
5119         * src/gfilenotify.c (Fgfile_add_watch): Cleanup temporary variable.
5121 2015-09-27  Simen Heggestøyl  <simenheg@gmail.com>
5123         Add prettify-symbols-alist for js-mode
5125         * lisp/progmodes/js.el (js--prettify-symbols-alist): New defconst.
5126         (js-mode): Use it.
5128 2015-09-27  Eli Zaretskii  <eliz@gnu.org>
5130         * nt/subdirs.el: File deleted (no longer used).
5132 2015-09-26  Alan Mackenzie  <acm@muc.de>
5134         Fix follow-scroll-up/down, making them replacements for scroll-up/down
5136         1. Allow point to move between follow windows in scroll operations.
5137         2. Fix bug where `right-char' just before EOB caused spurious scrolling,
5138         when EOB was isolated in the last follow window.
5140         * lisp/follow.el (follow-fixed-window): New variable.
5141         (follow-get-scrolled-point): New function.
5142         (follow-scrol-up, follow-scroll-down): Add autoload cookies.
5143         Reformulate the code.  Put `scroll-command' properties on the functions.
5144         Correct minor errors in ...-down's doc string and code.
5145         (follow-calc-win-end): Amend incomplete doc string.  Use
5146         `pos-visible-in-window-p' to check whether EOB is in the window.
5147         (follow-estimate-first-window-start): Correct an off-by-1 error.
5148         (follow-adjust-window): Add handling for explicit scrolling operations.
5150 2015-09-26  Paul Eggert  <eggert@cs.ucla.edu>
5152         * admin/MAINTAINERS: Add self, plus list some more files
5153         sans maintaners.
5155 2015-09-26  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
5157         New DWIM commands for changing letter-case
5159         * lisp/simple.el (upcase-dwim, downcase-dwim, capitalize-dwim):
5160         New functions.  (Bug#21501)
5162 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
5164         * etc/PROBLEMS: Document problems with pasting on MS-Windows.
5166 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
5168         Make face realization be more frame-specific
5170         * src/frame.h (struct f): New flag face_change.
5171         * src/xfaces.c (Finternal_make_lisp_face)
5172         (Finternal_copy_lisp_face, Finternal_set_lisp_face_attribute)
5173         (update_face_from_frame_parameter): Set the face_change flag only
5174         for the frame whose faces are affected.
5175         * src/xdisp.c (init_iterator): If a frame's face_change flag is
5176         set, free faces only on that frame.
5177         (redisplay_internal): Disable "display optimization 1" if the
5178         frame's face_change flag is set.
5179         (redisplay_window): Don't allow skipping a window's redisplay if
5180         its frame's face_change flag is set.
5181         * src/frame.c (x_set_screen_gamma): Instead of calling
5182         Fclear_face_cache, call clear_face_cache and set
5183         windows_or_buffers_changed to a non-zero value.  This avoids
5184         setting the global face_change flag that triggers face realization
5185         on all frames and thorough redisplay of all of them.
5187         * lisp/term/tty-colors.el (tty-register-default-colors): Don't
5188         clear face cache if the selected frame is a GUI frame.
5190 2015-09-26  Tassilo Horn  <tsdh@gnu.org>
5192         Remove font-latex specific check
5194         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
5195         Use syntax-ppss data to identify verbatim contents.
5197 2015-09-25  Tassilo Horn  <tsdh@gnu.org>
5199         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
5200         Fix some false negatives.
5202 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
5204         Reorder Windows version in Emacs manifests
5206         * nt/emacs-x64.manifest:
5207         * nt/emacs-x86.manifest: Reorder Windows version from lowest to
5208         highest.
5210 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
5212         Update Emacs manifest files for Windows 10
5214         * nt/emacs-x86.manifest:
5215         * nt/emacs-x64.manifest: Declare compatibility with Windows 10.
5217 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
5219         Avoid non-ASCII decoding errors in C src files
5221         * src/nsterm.m:
5222         * src/lisp.h:
5223         * src/editfns.c:
5224         * src/doprnt.c: Add 'coding' cookies -- these files include
5225         Unicode characters and should be decoded as UTF-8.
5227 2015-09-25  Alan Mackenzie  <acm@muc.de>
5229         Resurrect edebug-set-initial-mode, repurposing it to set the global mode
5231         * lisp/emacs-lisp/edebug.el (edebug-initial-mode-alist): Uncomment, and
5232         amend to match current modes and functions.
5233         (edebug-set-initial-mode): Uncomment and change from setting a defun's
5234         `edebug-initial-mode''s property to setting the variable
5235         `edebug-initial-mode'.
5236         (top level): Create new binding C-x C-a C-m for
5237         `edebug-set-initial-mode'.
5239         * doc/lispref/edebug.texi (Edebug Execution Modes): Document
5240         `edebug-set-initial-mode' and its new key binding.
5241         (Edebug Options): Mention the new command in the pertinent place.
5243         * etc/NEWS: Write entry for this change.
5245 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
5247         Avoid non-ASCII decoding errors in Texinfo files
5249         * doc/misc/tramp.texi:
5250         * doc/lispref/strings.texi:
5251         * doc/lispref/positions.texi:
5252         * doc/lispref/help.texi:
5253         * doc/lispref/functions.texi:
5254         * doc/lispintro/emacs-lisp-intro.texi:
5255         * doc/emacs/text.texi:
5256         * doc/emacs/modes.texi:
5257         * doc/emacs/mini.texi:
5258         * doc/emacs/display.texi:
5259         * doc/emacs/custom.texi:
5260         * doc/emacs/basic.texi: Add 'coding' cookies -- these files use
5261         Unicode characters and should be decoded as UTF-8.
5262         * doc/lispref/frames.texi (Size Parameters): Don't use a non-ASCII
5263         apostrophe unnecessarily.
5265 2015-09-25  Paul Eggert  <eggert@cs.ucla.edu>
5267         Merge from gnulib
5269         This incorporates:
5270         2015-09-25 c-ctype: rewrite to use inline functions
5271         2015-09-24 maint: add coding cookies to non-ASCII sources
5272         2015-09-24 gitlog-to-changelog: trim only trailing whitespaces
5273         * build-aux/gitlog-to-changelog, doc/misc/texinfo.tex:
5274         * lib/acl-internal.c, lib/acl-internal.h, lib/c-ctype.c:
5275         * lib/c-ctype.h, lib/get-permissions.c, lib/qcopy-acl.c:
5276         * lib/set-permissions.c:
5277         Copy from gnulib.
5279 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
5281         Update publicsuffix.txt from upstream
5283         * etc/publicsuffix.txt: Update from
5284         https://publicsuffix.org/list/effective_tld_names.dat
5285         dated 2015-09-24 17:29:21 UTC.
5287 2015-09-24  Eli Zaretskii  <eliz@gnu.org>
5289         Prevent timers from messing up TTY menus
5291         * src/term.c (tty_menu_activate): Inhibit redisplay for as long as
5292         the TTY menu is open.  (Bug#21530)
5294 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
5296         No need to mention K&R C in c-mode intro
5298 2015-09-24  Stefan Monnier  <monnier@iro.umontreal.ca>
5300         Fix recent bootstrap problems
5302         * src/syntax.c (parse_sexp_propertize): Fix last fix.
5303         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): Fix paren typo.
5304         * lisp/emacs-lisp/lisp-mode.el: Require cl-lib for cl-progv.
5306 2015-09-24  Michael Albinus  <michael.albinus@gmx.de>
5308         * src/gfilenotify.c (Fgfile_add_watch): Decrease polling rate.
5310 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
5312         Properly quote nested xml comments (Bug#6267) (Bug#20001)
5314         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): New function.
5315         (nxml-mode): Set comment-quote-nested-function.
5317 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
5319         Allow major-modes full control over quoting nested comments
5321         * lisp/newcomment.el (comment-quote-nested-function): New variable.
5322         (comment-quote-nested-default): New function.
5323         (comment-quote-nested): Use `comment-quote-nested-function'.
5325 2015-09-23  Paul Eggert  <eggert@cs.ucla.edu>
5327         Prefer CALLN in a few more places
5329         * src/macfont.m (macfont_set_family_cache):
5330         * src/nsterm.m (append2):
5331         * src/xterm.c (x_cr_export_frames):
5332         Prefer CALLN to allocating the arg arrays by hand.
5334 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
5336         Adapt file-notify-test02-events test case
5338         * test/automated/file-notify-tests.el (file-notify-test02-events):
5339         Create a new watch for every test.
5341 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
5343         Continue gfilenotify.c implementation of missing parts
5345         * lisp/filenotify.el (file-notify-add-watch): Append `flags' to
5346         `gfile-add-watch' call.
5347         (file-notify-rm-watch): Modify `file-notify-descriptors' only
5348         after calling the low level functions.
5350         * src/gfilenotify.c (dir_monitor_callback): Check, whether
5351         event_type is expected.
5352         (Fgfile_add_watch): Allow also `change'and `attribute-change' for FLAGS.
5353         (Fgfile_rm_watch): Fix typo.
5354         (syms_of_gfilenotify): Declare Qchange and Qattribute_change.
5356 2015-09-23  Stefan Monnier  <monnier@iro.umontreal.ca>
5358         * src/syntax.c (parse_sexp_propertize): Handle spurious
5359         e_property_truncated flag.
5360         (update_syntax_table_forward): Remove invalid assertion.
5362 2015-09-23  Eli Zaretskii  <eliz@gnu.org>
5364         * src/xdisp.c (produce_stretch_glyph): Support ':relative-width'
5365         space display spec on text-mode terminals, by calling
5366         PRODUCE_GLYPHS instead of x_produce_glyphs.  Remove the
5367         HAVE_WINDOW_SYSTEM guards from the supporting code, as well as the
5368         test for a GUI frame.
5370 2015-09-23  Oleh Krehel  <ohwoeowho@gmail.com>
5372         Move let-when-compile to lisp-mode.el
5374         This fixes the bootstrapping problem of `let-when-compile' using
5375         `cl-progv' while being in subr.el (i.e. before cl stuff was loaded).
5377 2015-09-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
5379         * lisp/url/url-http.el (url-http-parse-headers): Do not
5380         automatically include Authorization header in redirect.
5381         (Bug#21350)
5383 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
5385         Clarify documentation of ':relative-width'
5387         * doc/lispref/display.texi (Specified Space): Document that
5388         ':relative-width' is only supported on GUI frames.
5390 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
5392         Fix 'current-column' in presence of :relative-width
5394         * src/indent.c (check_display_width): Support ':relative-width'
5395         in a display spec that specifies a stretch glyph.  (Bug#21533)
5397 2015-09-22  Ken Manheimer  <ken.manheimer@gmail.com>
5399         Reformat the pdbtrack remote-file fix ChangeLog.2 entry
5401         ... to conform better to CONTRIBUTE guidelines.
5403 2015-09-22  Stefan Monnier  <monnier@iro.umontreal.ca>
5405         * lisp/progmodes/prolog.el: Fix indentation of empty line
5407         * lisp/emacs-lisp/smie.el (smie-rules-function): Document new
5408         `empty-line-token' element.
5409         (smie-indent-empty-line): New function.
5410         (smie-indent-functions): Add it.
5412         * lisp/progmodes/prolog.el (prolog-smie-rules): Fix :list-intro
5413         behavior and use the new `empty-line-token' element (bug#21526).
5414         (prolog-mode-variables): Fix comment-start-skip setting to match
5415         comment-start.
5417         * test/indent/prolog.prolog: Add nested indentation tests.
5419         * lisp/newcomment.el (comment-normalize-vars): Fix default value of
5420         comment-start-skip not to misuse submatch 1.
5422 2015-09-22  Alan Mackenzie  <acm@muc.de>
5424         Make description of `edebug-initial-mode' user friendly
5426         Fixes bug#21365.
5428         * dec/lispref/edebug.texi (Edebug Execution Modes): Change the
5429         description of `edebug-initial-mode' from that of its implementation
5430         to that of its visual effect and use.  Move the paragraph higher up.
5432 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
5434         lisp/progmodes/gud.el (gud-format-command): Fix last commit
5436         * lisp/progmodes/gud.el (gud-format-command): Don't use Tramp internal
5437         functions 'tramp-file-name-localname' and 'tramp-dissect-file-name'.
5439 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
5441         Improve last commit to process.c
5443 2015-09-22  Michael Albinus  <michael.albinus@gmx.de>
5445         Implement gfile-valid-p
5447         * lisp/filenotify.el (file-notify-callback): Fix typo.
5448         (gfile-valid-p): Remove defalias.
5450         * src/gfilenotify.c (dir_monitor_callback): Cancel the monitor if
5451         the file or directory to be watched is deleted.
5452         (Fgfile_add_watch): Make watch_object a triple.
5453         (Fgfile_rm_watch): Check, whether watch is cancelled already.
5454         (Fgfile_valid_p): New defun.
5455         (syms_of_gfilenotify): Declare Sgfile_valid_p.
5457 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
5459         Remove callback-handled channels from Available set
5461         * src/process.c (wait_reading_process_output): Remove channel from
5462         Available set if it is handled by a callback, e.g., dbus or
5463         inotify (bug#21313).
5465 2015-09-21  Mark Oteiza  <mvoteiza@udel.edu>
5467         Use lunate epsilon for TeX \epsilon
5469         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
5470         Add \varepsilon using GREEK SMALL LETTER EPSILON, and change
5471         \epsilon to use GREEK LUNATE EPSILON SYMBOL
5473 2015-09-21  Stefan Monnier  <monnier@iro.umontreal.ca>
5475         * lisp/progmodes/prolog.el: Fix nested electric if-then-else
5477         * lisp/progmodes/prolog.el (prolog-find-unmatched-paren): Use innermost
5478         rather than outermost paren (bug#21526).
5480 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
5482         Improve git diff hunk headers for .el, .texi
5484         Problem reported by Alan Mackenzie in:
5485         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00826.html
5486         * .gitattributes (*.el, *.texi): New patterns.
5487         * autogen.sh: Configure diff.elisp.xfuncname and
5488         diff.texinfo.xfuncname if using Git.
5490 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
5492         Don't rely on defaults in decoding UTF-8 encoded Lisp files
5494         * lisp/replace.el:
5495         * lisp/textmodes/rst.el:
5496         * lisp/whitespace.el: Add an explicit UTF-8 encoding tag.
5498 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
5500         Clarify or replace a few \u escapes
5502         * doc/lispref/nonascii.texi (Character Properties)
5503         More-detailed commentary for \u escapes.
5504         * lisp/progmodes/python.el (python--prettify-symbols-alist):
5505         * lisp/replace.el (query-replace-from-to-separator):
5506         * lisp/textmodes/rst.el (rst-bullets, rst-re-alist-def)
5507         (rst-mode-syntax-table):
5508         * lisp/whitespace.el (whitespace-display-mappings):
5509         Prefer actual character to \u escape when this makes the code
5510         easier to follow in the usual case where Unicode chars can be
5511         displayed.
5513 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
5515         Pacify GCC -Wmaybe-uninitialized in xdisp.c
5517         * src/xdisp.c (face_before_or_after_it_pos): Use do-while rather
5518         than while loop to avoid GCC -Wmaybe-uninitialized diagnostic with
5519         charpos.  The loop should always execute at least once anyway.
5521 2015-09-21  Tassilo Horn  <tsdh@gnu.org>
5523         Signal error on invalid regexp
5525         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
5526         Signal an error when the user tries searching with a regexp
5527         matching the empty string.
5529 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
5531         Another fix of file-notify-tests for w32notify
5533         * test/automated/file-notify-tests.el (file-notify-test02-events):
5534         Further adaptation for w32notify: reduce the number of expected
5535         'changed' events.  (Bug#21435)
5537 2015-09-21  Michael Albinus  <michael.albinus@gmx.de>
5539         Adapt tests and manual for w32notify
5541         * doc/lispref/os.texi (File Notifications): w32notify does not
5542         send `attribute-changed' events.
5544         * test/automated/file-notify-tests.el (file-notify--test-with-events):
5545         Simplify parameters.  Adapt all callees.
5546         (file-notify-test02-events): w32notify does not send
5547         `attribute-changed' events.
5548         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
5549         Do not skip in case of w32notify.  Simply ignore this part of the test.
5551 2015-09-21  Dima Kogan  <dima@secretsauce.net>
5553         Fix setting breakpoints when remote-debugging
5555         * lisp/progmodes/gud.el (gud-format-command): Send localized file
5556         names to the debugger running on the remote.  (Bug#13304)
5558 2015-09-21  Nicolas Petton  <nicolas@petton.fr>
5560         Better docstring and parameter name for seq-find
5562         * lisp/emacs-lisp/seq.el (seq-find): Improve the docstring and rename
5563         the parameter `sentinel' to `default'.
5565         * doc/lispref/sequences.texi (Sequence Functions): Update the
5566           documentation for `seq-find' accordingly.
5568 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
5570         Avoid infinite recursion while displaying box face
5572         * src/xdisp.c (face_before_or_after_it_pos): Fix calculation of
5573         the previous string/buffer character position under bidi
5574         iteration.  (Bug#21428)
5576 2015-09-21  Anders Lindgren  <andlind@gmail.com>
5578         Keep upper edge unchanged when changing size of NS frame
5580         * src/nsterm.m (x_set_window_size): Keep upper frame edge unchanged
5581         (Bug#21415).
5583 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
5585         * lisp/progmodes/prolog.el: Improve handling of if/then/else.
5586         (prolog-smie-rules): Accommodate standard if/then/else special
5587         indentation.
5588         (prolog-mode): Add . to electric-indent-chars.
5589         (prolog-electric--if-then-else): Re-indent the line before adding space
5590         after the new char (bug#21526).
5592 2015-09-20  Mark Oteiza  <mvoteiza@udel.edu>
5594         Add prettify symbols to python-mode
5596         * lisp/progmodes/python.el (python-prettify-symbols-alist):
5597         New variable.
5598         (python-mode): Use it
5600 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
5602         * lisp/emacs-lisp/syntax.el (syntax-begin-function): Make obsolete.
5604 2015-09-20  Jostein Kjønigsen  <jostein@secure.kjonigsen.net>  (tiny change)
5606         (compilation-error-regexp-alist-alist): Tone down guile-file
5608         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
5609         Make guile-file a bit less enthusiastic (bug#21496).
5611 2015-09-20  Drew Csillag  <drew@thecsillags.com>
5613         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords):
5614         Fix m4_* highlighting.
5616         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords): Fix recognition
5617         of commands when they have a "m4_" prefix.
5619 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
5621         '.' -> `.' in doc string
5623         * lisp/emacs-lisp/timer.el (run-at-time): In doc string, quote
5624         individual chars with grave quotes instead of straight quotes, as
5625         this works better when they are translated to curved quotes.
5627 2015-09-20  Michael Albinus  <michael.albinus@gmx.de>
5629         Improve file notifications, especially for Tramp
5631         * doc/lispref/files.texi (Magic File Names):
5632         Mention `file-notify-valid-p'.
5634         * doc/lispref/os.texi (File Notifications):
5635         Describe `file-notify-valid-p'.
5637         * etc/NEWS: Add `file-notify-valid-p'.
5639         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch):
5640         Improve implementation.
5641         (tramp-gvfs-monitor-file-process-filter): Rename from
5642         `tramp-gvfs-file-gvfs-monitor-file-process-filter'.  Delete
5643         process if appropriate.
5645         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
5646         Improve implementation.
5647         (tramp-sh-gvfs-monitor-dir-process-filter): Rename from
5648         `tramp-sh-file-gvfs-monitor-dir-process-filter'.  Delete process
5649         if appropriate.
5650         (tramp-sh-inotifywait-process-filter): Rename from
5651         `tramp-sh-file-inotifywait-process-filter'.  Delete process if
5652         appropriate.
5654         * lisp/net/tramp.el (tramp-handle-file-notify-rm-watch):
5655         Use `delete-process'.
5656         (tramp-handle-file-notify-valid-p): Check also, that file or
5657         directory to be watched still exists.
5659         * test/automated/file-notify-tests.el (file-notify--test-timeout):
5660         New defun.  Use it at all places a timeout is needed.
5661         (file-notify--test-cleanup): Delete directories recursively.
5662         Cleanup also Tramp connections.
5663         (file-notify-test02-events): Add tests for `attribute-change'.
5664         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
5665         Add tests for `file-notify-rm-watch'.
5667 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
5669         Use %s to format strings instead of splicing them
5671         If FOO might contain quotes that are part of a file or variable
5672         name, the quotes should not be translated when showing FOO’s name
5673         in a diagnostic.  So, for example, (message (concat (FOO ": bar")))
5674         is not quite right, as it would translate FOO’s quotes.
5675         Change it to (message "%s: bar" FOO) instead.
5676         * lisp/allout.el (allout-process-exposed):
5677         * lisp/calc/calc-ext.el (calc-do-prefix-help):
5678         * lisp/calc/calc-store.el (calc-store-into):
5679         * lisp/calendar/todo-mode.el (todo-category-completions):
5680         * lisp/cedet/semantic/complete.el (semantic-completion-message):
5681         * lisp/org/ob-latex.el (convert-pdf):
5682         * lisp/org/org-crypt.el (org-crypt-check-auto-save):
5683         * lisp/org/ox-latex.el (org-latex-compile):
5684         * lisp/org/ox-man.el (org-man-compile):
5685         * lisp/org/ox-odt.el (org-odt--export-wrap):
5686         * lisp/org/ox-texinfo.el (org-texinfo-compile):
5687         * lisp/progmodes/ruby-mode.el (ruby-in-ppss-context-p):
5688         * lisp/progmodes/verilog-mode.el (verilog-batch-execute-func)
5689         (verilog-signals-combine-bus, verilog-read-defines)
5690         (verilog-getopt-file, verilog-expand-dirnames)
5691         (verilog-modi-lookup, verilog-modi-modport-lookup-one):
5692         * lisp/term/ns-win.el (ns-spi-service-call):
5693         Use %s to avoid translating quotes of file names etc. in diagnostics.
5695 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
5697         * lisp/progmodes/js.el (js--syntax-begin-function): Remove.
5698         (js-mode): Don't set syntax-begin-function.
5700 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
5702         * lisp/font-lock.el (font-lock-compile-keywords): Don't assume
5703         syntax-begin-function is a symbol.
5705 2015-09-20  Eli Zaretskii  <eliz@gnu.org>
5707         Improve documentation of 'run-at-time'
5708         * lisp/emacs-lisp/timer.el (run-at-time): Improve the doc string.
5709         In particular, don't refer to 'diary-entry-time', because it is
5710         unavailable until diary-lib is loaded.  Also, refer to
5711         'timer-duration-words', not 'timer-duration', as the latter's doc
5712         string says nothing about the accepted strings.
5714 2015-09-19  Jay Belanger  <jay.p.belanger@gmail.com>
5716         * lisp/calc/calc-ext.el (calc-do-prefix-help): Tidy up error message.
5718 2015-09-19  Ken Manheimer  <ken.manheimer@gmail.com>
5720         Repair pdbtrack remote file tracking
5721         * lisp/progmodes/python.el (python-pdbtrack-set-tracked-buffer):
5722         Rectify pdbtrack so it follows transitions from one remote source
5723         file to the next.
5725 2015-09-19  Artur Malabarba  <bruce.connor.am@gmail.com>
5727         * lisp/emacs-lisp/timer.el (run-at-time): Docstring formatting.
5729 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
5731         Adapt vc-src to the old-new vc-checkin API
5732         * lisp/vc/vc-src.el (vc-src-checkin): Accept and ignore an
5733         additional optional parameter.
5735 2015-09-19  Simen Heggestøyl  <simenheg@gmail.com>
5737         Add overflow module to CSS property list
5738         * lisp/textmodes/css-mode.el (css-property-ids): Add properties
5739         from CSS Overflow Module Level 3.
5741 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
5743         Fix documentation of "C-u C-x v v"
5744         * doc/emacs/maintaining.texi (Advanced C-x v v): Make the
5745         documentation of "C-u C-x v v" match what the code does.
5747         Resurrect the ability to specify a revision in vc-next-action
5748         * lisp/vc/vc-bzr.el (vc-bzr-checkin):
5749         * lisp/vc/vc-dav.el (vc-dav-checkin):
5750         * lisp/vc/vc-git.el (vc-git-checkin):
5751         * lisp/vc/vc-hg.el (vc-hg-checkin):
5752         * lisp/vc/vc-mtn.el (vc-mtn-checkin): Accept and silently ignore
5753         an additional optional argument, the revision to checkin.
5754         * lisp/vc/vc-sccs.el (vc-sccs-checkin):
5755         * lisp/vc/vc-cvs.el (vc-cvs-checkin):
5756         * lisp/vc/vc-rcs.el (vc-rcs-checkin): Allow to optionally specify
5757         a revision to checkin.
5758         * lisp/vc/vc.el (vc-next-action): Allow to optionally specify the
5759         revision when checking in files.
5760         See http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00688.html
5761         for the details.
5763 2015-09-18  Wilson Snyder  <wsnyder@wsnyder.org>
5765         * lisp/progmodes/verilog-mode.el (verilog-forward-sexp-function)
5766         (verilog-decls-princ, verilog-modport-princ)
5767         (verilog-modi-modport-lookup-one): Fix checkdoc warnings.
5769 2015-09-17  Jay Belanger  <jay.p.belanger@gmail.com>
5771         Fix the routine for help on Calc's prefixes
5772         * lisp/calc/calc-ext.el (calc-prefix-help-retry): New variable.
5773         (calc-do-prefix-help): Use `read-char' to determine the next Calc
5774         command.
5776 2015-09-17  Stefan Monnier  <monnier@iro.umontreal.ca>
5778         * lisp/font-lock.el (font-lock-beginning-of-syntax-function): Remove.
5779         (font-lock-fontify-block): Don't let-bind it.
5780         (font-lock-compile-keywords): Don't use it.
5781         (font-lock-set-defaults): Don't set it.  Allow the variable alist to
5782         start one slot earlier, instead.
5783         * lisp/emacs-lisp/syntax.el (font-lock-beginning-of-syntax-function):
5784         Don't declare.
5785         (syntax-ppss): Don't use it either.
5786         * lisp/font-core.el (font-lock-defaults): Remove SYNTAX-BEGIN
5787         from docstring.
5788         * doc/emacs/display.texi (Font Lock): Don't mention
5789         font-lock-beginning-of-syntax-function.
5790         * doc/lispref/modes.texi (Font Lock Basics): Update description of
5791         font-lock-defaults.
5792         (Syntactic Font Lock): Remove font-lock-beginning-of-syntax-function.
5793         * lisp/loadhist.el (unload-feature-special-hooks):
5794         Remove font-lock-beginning-of-syntax-function.
5795         * lisp/obsolete/lazy-lock.el (lazy-lock-fontify-region):
5796         * lisp/emacs-lisp/lisp.el (beginning-of-defun-raw): Don't let-bind
5797         font-lock-beginning-of-syntax-function.
5799 2015-09-17  Paul Eggert  <eggert@cs.ucla.edu>
5801         Backslash cleanup in Elisp source files
5802         This patch should not change behavior.  It typically omits backslashes
5803         where they are redundant (e.g., in the string literal "^\$").
5804         In a few places, insert backslashes where they make regular
5805         expressions clearer: e.g., replace "^\*" (equivalent to "^*") with
5806         "^\\*", which has the same effect as a regular expression.
5807         Also, use ‘\ %’ instead of ‘\%’ when avoiding confusion with SCCS IDs,
5808         and similarly use ‘\ $’ instead of ‘\$’ when avoiding confusion with
5809         RCS IDs, as that makes it clearer that the backslash is intended.
5811         Some more minor backslash fixes
5812         * test/automated/compile-tests.el (compile-tests--test-regexps-data):
5813         * test/automated/info-xref.el (info-xref-test-write-file):
5814         Double backslashes in strings.
5816         Fix several backslash typos in Elisp strings
5817         * lisp/calendar/todo-mode.el (todo-files, todo-rename-file)
5818         (todo-find-filtered-items-file, todo-reset-nondiary-marker)
5819         (todo-reset-done-string, todo-reset-comment-string)
5820         (todo-reset-highlight-item):
5821         * lisp/erc/erc-networks.el (erc-networks-alist):
5822         * lisp/gnus/gnus-art.el (gnus-button-handle-library):
5823         * lisp/gnus/gnus-group.el (gnus-read-ephemeral-gmane-group-url):
5824         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
5825         (nntp-telnet-shell-prompt):
5826         * lisp/gnus/spam-report.el (spam-report-gmane-regex):
5827         * lisp/image-dired.el (image-dired-rotate-original):
5828         (image-dired-get-exif-file-name):
5829         * lisp/international/latin1-disp.el (latin1-display-ucs-per-lynx):
5830         * lisp/mail/undigest.el (rmail-digest-parse-rfc1153strict):
5831         * lisp/mh-e/mh-letter.el (mh-file-is-vcard-p):
5832         * lisp/mh-e/mh-mime.el (mh-file-mime-type-substitutions):
5833         * lisp/net/shr-color.el (shr-color->hexadecimal):
5834         * lisp/org/org-bibtex.el (org-bibtex-fields):
5835         * lisp/org/org-docview.el (org-docview-export):
5836         * lisp/org/org-entities.el (org-entities):
5837         * lisp/org/ox-icalendar.el (org-icalendar-cleanup-string):
5838         * lisp/progmodes/cperl-mode.el (cperl-indent-exp):
5839         * lisp/progmodes/ebnf2ps.el (ebnf-file-suffix-regexp)
5840         (ebnf-style-database):
5841         * lisp/progmodes/idlw-help.el (idlwave-do-context-help1):
5842         * lisp/progmodes/ruby-mode.el (ruby-imenu-create-index-in-block):
5843         * lisp/progmodes/sql.el (sql-product-alist):
5844         * lisp/progmodes/verilog-mode.el (verilog-error-regexp-emacs-alist)
5845         (verilog-error-font-lock-keywords)
5846         (verilog-assignment-operator-re):
5847         * lisp/progmodes/vhdl-mode.el (vhdl-compiler-alist):
5848         * lisp/textmodes/reftex-parse.el (reftex-parse-from-file):
5849         * lisp/vc/add-log.el (change-log-version-number-regexp-list):
5850         Fix typo by replacing ‘\’ with ‘\\’ in a string literal.
5851         For example, to get the regular expression ‘\.’ use the string
5852         literal "\\.", not "\." (which is equivalent to ".").
5853         * lisp/emulation/viper-util.el (viper-glob-unix-files):
5854         Remove stray ‘\j’ from string.
5855         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
5856         (nntp-telnet-shell-prompt):
5857         Treat > like $ when matching a shell prompt.
5858         * lisp/progmodes/make-mode.el (makefile-browse):
5859         Properly quote a diagnostic.
5861         Fix minor quoting problems in diagnostics
5862         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
5863         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
5864         Follow text-quoting-style in diagnostic, and quote a file name.
5866 2015-09-17  Eli Zaretskii  <eliz@gnu.org>
5868         * doc/lispref/frames.texi (Cursor Parameters):
5869         Document 'x-stretch-cursor'.
5871 2015-09-16  Paul Eggert  <eggert@cs.ucla.edu>
5873         Omit unnecessary \ before paren in C docstrings
5874         Although \( is needed in docstrings in Elisp code, it is not needed in
5875         docstrings in C code, since C function definitiions do not start with
5876         a parenthesis.  The backslashes made the docstrings a bit harder to
5877         read and to format in columns.  Also, some C docstrings had ( in
5878         column 1 and this did not appear to be causing any problems.  So,
5879         simplify C docstrings by replacing \( with ( and \) with ).
5881         A few more minor quoting fixes in a script and a text file
5883         Minor quoting fixes in scripts and doc
5884         Prefer straight quotes in random script files, as they are not
5885         converted.  Prefer grave quotes in a couple of places in the manual
5886         that were missed earlier, as these quotes are converted.
5888         Minor backslash fixes in manuals and scripts
5889         * Makefile.in (install-arch-indep):
5890         * admin/charsets/compact.awk:
5891         * admin/charsets/gb180302.awk (gb_to_index):
5892         * admin/charsets/gb180304.awk (gb_to_index):
5893         Avoid undefined behavior in Awk regular expression backslashes.
5894         * doc/misc/efaq.texi (Matching parentheses):
5895         Omit unnecessary backslashes.
5896         * doc/misc/gnus-faq.texi (FAQ 5-8):
5897         Avoid undefined behavior in suggested sed backslash usage.
5899         Add -Wswitch to --enable-gcc-warnings
5900         Make --enable-gcc-warnings a bit pickier, by also using -Wswitch.
5901         * configure.ac (WERROR_CFLAGS): Don’t add -Wno-switch.
5902         * lib-src/etags.c (main, consider_token, C_entries):
5903         * src/coding.c (encode_invocation_designation):
5904         * src/data.c (Ftype_of):
5905         * src/eval.c (Fdefvaralias, default_toplevel_binding)
5906         (Fbacktrace__locals, mark_specpdl):
5907         * src/lisp.h (record_xmalloc):
5908         * src/syntax.c (scan_lists, scan_sexps_forward):
5909         * src/window.c (window_relative_x_coord):
5910         * src/xdisp.c (push_it, pop_it):
5911         * src/xterm.c (xg_scroll_callback, x_check_fullscreen):
5912         Error out or do nothing (as appropriate) if a switch statement
5913         with an enum value does not cover all of the enum.
5914         * src/dispextern.h (struct iterator_stack_entry.u.comp):
5915         Remove unused member discovered by using -Wswitch.
5916         * src/lisp.h (record_xmalloc): Add a ‘+ 0’ to pacify -Wswitch.
5917         * src/vm-limit.c (check_memory_limits):
5918         Simplify warning-diagnostic computation by using a table.
5920         etags ‘fatal’ function is now printf-like
5921         * lib-src/etags.c (fatal): Now printf-like.  All callers changed.
5922         Also, now static; not clear why it needed to be extern.
5923         (verror): New function, with most of the old contents of ‘error’.
5924         (fatal, error): Use it.
5926 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
5928         More adaptations in file-notify-tests.el
5929         * test/automated/file-notify-tests.el
5930         (file-notify-test05-dir-validity): Skip for w32notify in
5931         batch-mode.  (Bug#21432)
5933 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
5935         Adapt test in file-notify-tests.el
5936         * test/automated/file-notify-tests.el
5937         (file-notify-test04-file-validity): Skip for w32notify in
5938         batch-mode.  Add test lost last commit.
5940 2015-09-16  Dima Kogan  <dima@secretsauce.net>
5942         winner no longer holds on to dead frames
5943         * lisp/winner.el (winner-change-fun): Cull dead frames.
5944         This prevents a potentially massive memory leak.  See:
5945         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00619.html
5947 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
5949         Use common report_file_notify_error function
5950         * src/fileio.c (report_file_notify_error): New function.
5951         * src/inotify.c (report_inotify_error): Remove function.
5952         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
5953         (Finotify_rm_watch): Use report_file_notify_error.
5954         * src/lisp.h (report_file_notify_error): Declare external function.
5955         * src/w32notify.c (report_w32notify_error): Remove function.
5956         (Fw32notify_add_watch, Fw32notify_rm_watch):
5957         Use report_file_notify_error.
5959 2015-09-16  Jay Belanger  <jay.p.belanger@gmail.com>
5961         Fix documentation.
5962         * doc/misc/calc.texi (Single-Variable Statistics): Fix the wording of
5963         the documentation of the root mean square.
5965 2015-09-16  Martin Rudalics  <rudalics@gmx.at>
5967         Remove tool_bar_redisplayed_once and associated code.
5968         * src/frame.h (tool_bar_redisplayed_once): Remove slot.
5969         * src/frame.c (make_frame, x_set_font): Remove initialization of
5970         f->tool_bar_redisplayed_once.
5971         * src/w32fns.c (x_change_tool_bar_height):
5972         * src/xfns.c (x_change_tool_bar_height): Don't check for
5973         f->tool_bar_redisplayed_once.
5974         * src/xdisp.c (redisplay_internal): Remove handling of
5975         f->tool_bar_redisplayed_once.
5977 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
5979         Restore some of the quoting in the manuals
5980         * doc/lispref/windows.texi (Coordinates and Windows)
5981         (Coordinates and Windows):
5982         * doc/lispref/variables.texi (Lexical Binding)
5983         (File Local Variables):
5984         * doc/lispref/text.texi (Format Properties):
5985         * doc/lispref/symbols.texi (Symbol Components):
5986         * doc/lispref/strings.texi (Creating Strings):
5987         * doc/lispref/sequences.texi (Sequence Functions):
5988         * doc/lispref/searching.texi (Regexp Special, Regexp Search)
5989         (Search and Replace):
5990         * doc/lispref/processes.texi (Bindat Spec):
5991         * doc/lispref/os.texi (Idle Timers):
5992         * doc/lispref/objects.texi (Basic Char Syntax):
5993         * doc/lispref/numbers.texi (Float Basics, Random Numbers):
5994         * doc/lispref/nonascii.texi (Character Properties):
5995         * doc/lispref/modes.texi (Major Mode Conventions, Mode Hooks)
5996         (Mode Line Variables):
5997         * doc/lispref/minibuf.texi (Text from Minibuffer):
5998         * doc/lispref/loading.texi (Autoload):
5999         * doc/lispref/keymaps.texi (Controlling Active Maps):
6000         * doc/lispref/frames.texi (Frame Layout, Size and Position)
6001         (Size Parameters, Implied Frame Resizing):
6002         * doc/lispref/files.texi (Changing Files, Magic File Names):
6003         * doc/lispref/eval.texi (Self-Evaluating Forms):
6004         * doc/lispref/display.texi (Progress, Abstract Display)
6005         (Abstract Display Example, Bidirectional Display):
6006         * doc/lispref/commands.texi (Event Mod):
6007         * doc/emacs/windows.texi (Displaying Buffers):
6008         * doc/emacs/trouble.texi (Bug Criteria, Checklist):
6009         * doc/emacs/text.texi (Enriched Text):
6010         * doc/emacs/programs.texi (MixedCase Words):
6011         * doc/emacs/picture-xtra.texi (Insert in Picture)
6012         (Tabs in Picture):
6013         * doc/emacs/misc.texi (Emacs Server, Printing):
6014         * doc/emacs/mini.texi (Minibuffer History):
6015         * doc/emacs/maintaining.texi (Old Revisions, VC Change Log)
6016         (Pulling / Pushing):
6017         * doc/emacs/killing.texi (Yanking, Cut and Paste, Clipboard):
6018         * doc/emacs/help.texi (Help, Help Echo):
6019         * doc/emacs/glossary.texi (Glossary):
6020         * doc/emacs/frames.texi (Mouse Commands, Creating Frames)
6021         (Frame Commands):
6022         * doc/emacs/files.texi (Reverting, Saving, Directories):
6023         * doc/emacs/entering.texi (Exiting):
6024         * doc/emacs/emacs.texi (Top):
6025         * doc/emacs/cmdargs.texi (Window Size X, Icons X):
6026         * doc/emacs/anti.texi (Antinews): Restore quoting of text where
6027         appropriate or replace quoting with @dfn.
6028         * doc/misc/ediff.texi (Window and Frame Configuration):
6029         * doc/lispref/processes.texi (Network Feature Testing):
6030         * doc/lispref/display.texi (Display Margins): Quote the phrase
6031         after "a.k.a." where appropriate.
6033 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
6035         Clarify reftex-extra-bindings docs
6036         * lisp/textmodes/reftex-vars.el (reftex-extra-bindings):
6037         * doc/misc/reftex.texi (Key Bindings): Document that the variable
6038         only has an effect at load-time.
6040 2015-09-16  Daniel McClanahan  <danieldmcclanahan@gmail.com>  (tiny change)
6042         * lisp/emacs-lisp/lisp-mode.el (lisp--el-match-keyword): Fix
6043         search argument.  (Bug#21492) (Bug#21493)
6045 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
6047         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
6048         Add pretty symbols for \qquad and \varrho.
6050 2015-09-15  Jay Belanger  <jay.p.belanger@gmail.com>
6052         Add new functions for the root mean square of a (Calc) vector
6053         * lisp/calc/calc-stats.el (calcFunc-rms, calc-vector-rms):
6054         New functions.
6055         * lisp/calc/calc-ext.el (calc-init-extensions): Add keybinding for
6056         `calc-vector-rms', add autoloads for `calc-vector-rms' and
6057         `calcFunc-rms'.
6058         * lisp/calc/calc-map.el (calc-u-oper-keys): Add entry for
6059         `calcFunc-rms'.
6060         * lisp/calc/calc-menu.el (calc-vectors-menu): Add entry for
6061         `calc-vector-rms'.
6062         * doc/misc/calc.texi (Single-Variable Statistics): Document the rms
6063         command.
6065 2015-09-15  Stephen Leake  <stephen_leake@stephe-leake.org>
6067         Add monotone EDE generic project
6068         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
6069         Add monotone generic project.
6071         Revert premature commit
6072         * doc/lispref/files.texi: Revert premature commit of change to
6073         file-name-all-completions.
6075         Fix a bug in elisp--xref-find-definitions related to cl-generic defaults
6076         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions): Fix bug
6077         with cl-generic defaults.
6078         (elisp--xref-find-references): Add doc string.
6079         * test/automated/elisp-mode-tests.el (xref-elisp-generic-*): Improve
6080         tests to find bug.
6082         Fix bugs in eieio-oref-default related to class symbols
6083         * lisp/emacs-lisp/eieio-core.el (class-p): Handle symbol properly.
6084         (eieio-oref-default): Handle class properly.
6086 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
6088         Quote “fullboth” when defining it
6089         * doc/lispref/frames.texi (Size Parameters): Use @dfn for “fullboth”
6090         and rewrite the containing paragraph, which was awkward.  (Bug#21472).
6092 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
6094         Minor doc fix in emacs/ack.texi
6095         * doc/emacs/ack.texi (Acknowledgments): Fix an xref missing the
6096         first argument.
6098 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
6100         Adapt tests in auto-revert-tests.el
6101         * test/automated/auto-revert-tests.el (auto-revert--timeout):
6102         Make it a defconst.
6103         (auto-revert--wait-for-revert): New defun.
6104         (auto-revert-test00-auto-revert-mode)
6105         (auto-revert-test01-auto-revert-tail-mode)
6106         (auto-revert-test02-auto-revert-mode-dired): Use it.
6108 2015-09-15  Stefan Monnier  <monnier@iro.umontreal.ca>
6110         * lisp/emacs-lisp/lisp-mode.el (lisp-mode-symbol-regexp): New const.
6111         Use it everywhere "\\(\\sw\\|\\s_\\|\\\\.\\)+" was used.
6112         (cl-lib-fdefs): Add defgeneric.
6113         (cl-kw): Add all elements of eieio-kw and cl-lib-kw.
6114         (eieio-kw, cl-lib-kw, el-kw): Remove.
6116 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
6118         Quote less in manuals
6119         The manuals often used quotes ``...'' when it is better to use @dfn or
6120         @code or capitalized words or no quoting at all.  For example, there is
6121         no need for the `` and '' in “if a variable has one effect for
6122         @code{nil} values and another effect for ``non-@code{nil}'' values”.
6123         Reword the Emacs, Lisp intro, and Lisp reference manuals to eliminate
6124         unnecessary quoting like this, and to use @dfn etc. instead when called
6125         for (Bug#21472).
6127 2015-09-15  Mark Oteiza  <mvoteiza@udel.edu>
6129         * lisp/custom.el (load-theme): Only compute hash when needed.
6131 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
6133         Pacify --enable-gcc-warnings
6134         * src/inotify.c (report_inotify_error): Declare it _Noreturn.
6136 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
6138         Improve error reports in inotify.c
6139         * src/inotify.c (report_inotify_error): New function.  Clone of
6140         report_w32notify_error.
6141         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
6142         (Finotify_rm_watch): Use it.
6144 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
6146         Fix the file-notify tests for watch validation on w32
6147         * test/automated/file-notify-tests.el
6148         (file-notify-test04-file-validity): Move the directory deletion
6149         out of the file-notify--test-with-events macro.
6150         (file-notify-test04-file-validity)
6151         (file-notify-test05-dir-validity): Enlarge the timeout of
6152         read-event to 0.5, as 0.1 is borderline on w32.  (Bug#21432)
6154 2015-09-15  Tassilo Horn  <tsdh@gnu.org>
6156         Use OPEN BOX instead of space for \quad.
6157         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist): Use OPEN BOX
6158         character for \quad instead of a space.
6160 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
6162         Add missing *.pbm images
6163         * etc/images/connect.pbm: New file.
6164         * etc/images/custom/down-pushed.pbm: New file.
6165         * etc/images/custom/down.pbm: New file.
6166         * etc/images/custom/right-pushed.pbm: New file.
6167         * etc/images/custom/right.pbm: New file.
6168         * etc/images/describe.pbm: New file.
6169         * etc/images/disconnect.pbm: New file.
6170         * etc/images/ezimage/bits.pbm: New file.
6171         * etc/images/ezimage/bitsbang.pbm: New file.
6172         * etc/images/ezimage/box-minus.pbm: New file.
6173         * etc/images/ezimage/box-plus.pbm: New file.
6174         * etc/images/ezimage/box.pbm: New file.
6175         * etc/images/ezimage/checkmark.pbm: New file.
6176         * etc/images/ezimage/dir-minus.pbm: New file.
6177         * etc/images/ezimage/dir-plus.pbm: New file.
6178         * etc/images/ezimage/dir.pbm: New file.
6179         * etc/images/ezimage/doc-minus.pbm: New file.
6180         * etc/images/ezimage/doc-plus.pbm: New file.
6181         * etc/images/ezimage/doc.pbm: New file.
6182         * etc/images/ezimage/info.pbm: New file.
6183         * etc/images/ezimage/key.pbm: New file.
6184         * etc/images/ezimage/label.pbm: New file.
6185         * etc/images/ezimage/lock.pbm: New file.
6186         * etc/images/ezimage/mail.pbm: New file.
6187         * etc/images/ezimage/page-minus.pbm: New file.
6188         * etc/images/ezimage/page-plus.pbm: New file.
6189         * etc/images/ezimage/page.pbm: New file.
6190         * etc/images/ezimage/tag-gt.pbm: New file.
6191         * etc/images/ezimage/tag-minus.pbm: New file.
6192         * etc/images/ezimage/tag-plus.pbm: New file.
6193         * etc/images/ezimage/tag-type.pbm: New file.
6194         * etc/images/ezimage/tag-v.pbm: New file.
6195         * etc/images/ezimage/tag.pbm: New file.
6196         * etc/images/ezimage/unlock.pbm: New file.
6197         * etc/images/gnus/important.pbm: New file.
6198         * etc/images/gnus/mail-send.pbm: New file.
6199         * etc/images/gnus/receipt.pbm: New file.
6200         * etc/images/gnus/toggle-subscription.pbm: New file.
6201         * etc/images/gnus/unimportant.pbm: New file.
6202         * etc/images/gud/all.pbm: New file.
6203         * etc/images/gud/rcont.pbm: New file.
6204         * etc/images/gud/recstart.pbm: New file.
6205         * etc/images/gud/recstop.pbm: New file.
6206         * etc/images/gud/rfinish.pbm: New file.
6207         * etc/images/gud/rnext.pbm: New file.
6208         * etc/images/gud/rnexti.pbm: New file.
6209         * etc/images/gud/rstep.pbm: New file.
6210         * etc/images/gud/rstepi.pbm: New file.
6211         * etc/images/gud/thread.pbm: New file.
6212         * etc/images/lock-broken.pbm: New file.
6213         * etc/images/lock-ok.pbm: New file.
6214         * etc/images/lock.pbm: New file.
6215         * etc/images/mail/copy.pbm: New file.
6216         * etc/images/mail/forward.pbm: New file.
6217         * etc/images/mail/not-spam.pbm: New file.
6218         * etc/images/mail/outbox.pbm: New file.
6219         * etc/images/mail/preview.pbm: New file.
6220         * etc/images/mail/save-draft.pbm: New file.
6221         * etc/images/mh-logo.pbm: New file.
6222         * etc/images/mpc/add.pbm: New file.
6223         * etc/images/mpc/ffwd.pbm: New file.
6224         * etc/images/mpc/next.pbm: New file.
6225         * etc/images/mpc/pause.pbm: New file.
6226         * etc/images/mpc/play.pbm: New file.
6227         * etc/images/mpc/prev.pbm: New file.
6228         * etc/images/mpc/rewind.pbm: New file.
6229         * etc/images/mpc/stop.pbm: New file.
6230         * etc/images/redo.pbm: New file.
6231         * etc/images/smilies/braindamaged.pbm: New file.
6232         * etc/images/smilies/cry.pbm: New file.
6233         * etc/images/smilies/dead.pbm: New file.
6234         * etc/images/smilies/evil.pbm: New file.
6235         * etc/images/smilies/forced.pbm: New file.
6236         * etc/images/smilies/grin.pbm: New file.
6237         * etc/images/smilies/indifferent.pbm: New file.
6238         * etc/images/sort-ascending.pbm: New file.
6239         * etc/images/sort-column-ascending.pbm: New file.
6240         * etc/images/sort-criteria.pbm: New file.
6241         * etc/images/sort-descending.pbm: New file.
6242         * etc/images/sort-row-ascending.pbm: New file.
6243         * etc/images/unchecked.pbm: New file.
6244         * etc/images/zoom-in.pbm: New file.
6245         * etc/images/README: Update instructions for PBM files.
6247         Add separator.pbm tool-bar image
6248         * etc/images/separator.pbm: New file.  Having it avoids the side
6249         effect of changing the tool-bar height when the default font's size
6250         changes and XPM image support is not available, due to the SPC
6251         characters that are left in the Lisp string used to display the tool
6252         bar, because there are no images to display instead of those SPC
6253         characters.
6255         Make show-paren-match face visible on mono-color displays
6256         * lisp/faces.el (show-paren-match): Use the underline face for
6257         mono-color displays.  (Bug#21481)
6259 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
6261         Don’t double-encode non-ASCII mail clipboard
6262         * lisp/mail/mailclient.el (mailclient-send-it):
6263         Also fix the case when mailclient-place-body-on-clipboard-flag
6264         is non-nil.  Problem reported by Eli Zaretskii (Bug#21471#37).
6266 2015-09-14  Michael Albinus  <michael.albinus@gmx.de>
6268         Adapt file-notify-tests.el test cases
6269         * lisp/filenotify.el (file-notify-rm-watch): Ignore `file-notify-error'.
6270         * src/inotify.c (Finotify_valid_p): Adapt docstring.
6271         * test/automated/file-notify-tests.el
6272         (file-notify-test03-autorevert)
6273         (file-notify-test04-file-validity)
6274         (file-notify-test04-file-validity-remote)
6275         (file-notify-test05-dir-validity)
6276         (file-notify-test05-dir-validity-remote): Adapt docstring.
6277         (file-notify-test04-file-validity): Let events arrive before
6278         calling final `file-notify-valid-p'.  Do not ignore errors.
6279         (file-notify-test05-dir-validity): Do not manipulate
6280         `temporary-file-directory', it isn't necessary.  Let events arrive
6281         before calling final `file-notify-valid-p'.  Do not ignore errors.
6283 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
6285         Don’t double-encode non-ASCII for mail client
6286         * lisp/mail/mailclient.el (mailclient-encode-string-as-url):
6287         Use RFC 6068’s list of unreserved characters.
6288         (mailclient-send-it): When encoding the body as a URL,
6289         first decode it as per Content-Type: and Content-Transfer-Encoding:,
6290         as URLs must use percent-encoded UTF-8 (Bug#21471).
6291         * doc/misc/url.texi (mailto): Update RFC number.
6293 2015-09-14  Stefan Monnier  <monnier@iro.umontreal.ca>
6295         * lisp/progmodes/cc-langs.el (c-make-init-lang-vars-fun): Use dolist.
6297 2015-09-14  Alan Mackenzie  <acm@muc.de>
6299         Replace `cadar' with `cadr/car', since `cadar' is problematic on Emacs
6300         (c-make-init-lang-vars-fun): Replace two occurrences of `cadar' with
6301         `cadr/car'.
6303 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
6305         Clarify documentation of char-table extra slots
6306         * doc/lispref/sequences.texi (Char-Tables): Clarify that extra
6307         slot numbers are zero-based.  (Bug#21467)
6309 2015-09-14  Alan Mackenzie  <acm@muc.de>
6311         Elisp mode: Make font-lock and imenu handle escaped characters in symbols
6312         Fixes bug#21449.
6313         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression)
6314         (lisp--el-match-keyword, lisp-el-font-lock-keywords-1)
6315         (lisp-cl-font-lock-keywords-1, lisp-el-font-lock-keywords-2)
6316         (lisp-cl-font-lock-keywords-2, lisp-string-in-doc-position-p):
6317         Insert "\\|\\\\." into regexps which match symbols.
6319 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
6321         Improve the doc string of w32notify-valid-p
6322         * src/w32notify.c (Fw32notify_valid_p): Mention in the doc string
6323         that removing a watch makes its object invalid.
6325 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
6327         Fix tests for file-notify-valid-p
6328         * test/automated/file-notify-tests.el (file-notify--test-cleanup):
6329         Use delete-directory to delete file-notify--test-tmpfile if it is
6330         a directory.  Likewise for file-notify--test-tmpfile1.
6331         (file-notify-test04-file-validity)
6332         (file-notify-test05-dir-validity): Delete the parent directory of
6333         the test.  Ignore errors when cleaning up after the test.
6335 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
6337         Report file-notify-error in w32notify.c
6338         * src/w32notify.c (report_w32notify_error): New function.
6339         (Fw32notify_add_watch, Fw32notify_rm_watch): Use it to report
6340         errors, instead of calling report_file_error.  (Bug#21432)
6342         Implement w32notify-valid-p
6343         * src/w32notify.c (Fw32notify_valid_p): New function.  (Bug#21432)
6344         * lisp/filenotify.el (w32notify-valid-p): No longer an alias for
6345         'identity'.
6347 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
6349         Test file-notify-valid-p
6350         * test/automated/file-notify-tests.el
6351         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
6352         New tests.
6354 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
6356         Fix markup in ELisp manual
6357         * doc/lispref/frames.texi (Font and Color Parameters): Fix markup
6358         of the 'alpha' parameter value.  (Bug#21470)
6360 2015-09-13  Michael Albinus  <michael.albinus@gmx.de>
6362         Introduce `file-notify-valid-p'
6363         * lisp/filenotify.el (file-notify-valid-p): New defun.
6364         (gfile-valid-p, w32notify-valid-p): Make them an alias to `identity'.
6365         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist)
6366         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist)
6367         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist)
6368         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
6369         <file-notify-valid-p>: Add handler.
6370         * lisp/net/tramp.el (tramp-file-name-for-operation):
6371         Add `file-notify-valid-p'.
6372         (tramp-handle-file-notify-valid-p): New defun.
6373         * src/inotify.c (Finotify_valid_p): New defun.
6374         (syms_of_inotify): Declare Sinotify_valid_p.
6376 2015-09-13  Paul Eggert  <eggert@cs.ucla.edu>
6378         Port Unicode char detection to FreeBSD+svgalib
6379         Problem reported by Ashish SHUKLA in:
6380         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00531.html
6381         * configure.ac: Check for struct unipair.unicode instead of for
6382         <linux/kd.h>, since that’s more specific to what the code
6383         actually needs.
6384         * src/terminal.c: Use HAVE_STRUCT_UNIPAIR_UNICODE, not HAVE_LINUX_KD_H.
6386         * src/indent.c (Fvertical_motion): Simplify bugfix (Bug#21468).
6388 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
6390         Fix vertical cursor motion across overlay strings with newlines
6391         * src/indent.c (Fvertical_motion): Don't leave point in the middle
6392         of an overlay string with newlines, as that will position the
6393         cursor after the string at whatever column is there.  (Bug#21468)
6395 2015-09-12  Michael Albinus  <michael.albinus@gmx.de>
6397         Fix tests in file-notify-tests.el
6398         * test/automated/file-notify-tests.el: Remove Tramp declarations.
6399         (file-notify-test00-availability): Print remote command w/o Tramp
6400         internal functions.
6401         (file-notify-test02-events, file-notify-test02-events-remote):
6402         Adapt docstring.
6403         (file-notify-test03-autorevert): Use `format-message' when
6404         inspecting *Messages* buffer.
6406 2015-09-12  Stefan Monnier  <monnier@iro.umontreal.ca>
6408         Bind inhibit-modification-hooks rather than a/b-c-f
6409         * lisp/wid-edit.el (widget-editable-list-insert-before)
6410         (widget-editable-list-delete-at):
6411         * lisp/progmodes/cperl-mode.el (cperl-find-pods-heres)
6412         (cperl-font-lock-unfontify-region-function):
6413         * lisp/progmodes/antlr-mode.el (save-buffer-state-x):
6414         * lisp/obsolete/longlines.el (longlines-mode):
6415         * lisp/obsolete/fast-lock.el (save-buffer-state):
6416         * lisp/mouse.el (mouse-save-then-kill-delete-region):
6417         * lisp/gnus/message.el (message-hide-headers):
6418         * lisp/eshell/esh-mode.el (eshell-send-input, eshell-output-filter):
6419         * lisp/ibuffer.el (ibuffer-update-title-and-summary)
6420         (ibuffer-redisplay-engine): Bind inhibit-modification-hooks to t rather
6421         than after/before-change-functions to nil.
6423 2015-09-11  Stefan Monnier  <monnier@iro.umontreal.ca>
6425         (jit-lock-deferred-fontify): Pay attention to skipped redisplays
6426         * lisp/jit-lock.el (jit-lock-deferred-fontify): Make sure we refresh
6427         the buffers, even if the forced redisplay is interrupted.
6429         * lisp/emacs-lisp/eieio-core.el (class-p): Accept class objects
6431         Merge syntax-propertize--done and parse-sexp-propertize-done
6432         * lisp/emacs-lisp/syntax.el (syntax-propertize--done): Remove.
6433         (syntax-propertize): Set syntax-propertize--done even if
6434         syntax-propertize-function is nil.  Avoid recursive invocations.
6435         (syntax-propertize-chunks): New var.
6436         (internal--syntax-propertize): Use it.  Rename from syntax--jit-propertize.
6437         Simplify.
6438         (parse-sexp-propertize-function): Don't set any more.
6439         * src/syntax.c (SETUP_SYNTAX_TABLE): Call parse_sexp_propertize as needed.
6440         (parse_sexp_propertize): Don't assume charpos is not yet propertized.
6441         Call Qinternal__syntax_propertize instead of
6442         Vparse_sexp_propertize_function.  Truncate e_property if needed.
6443         (update_syntax_table_forward): Streamline.
6444         (syms_of_syntax): Define Qinternal__syntax_propertize.
6445         (syntax_propertize__done): Rename from parse_sexp_propertize_done.
6447 2015-09-11  Paul Eggert  <eggert@cs.ucla.edu>
6449         Prefer straight quoting in some text files
6450         Mostly this just changes ` to ' in static text.  Some exceptions:
6451         * INSTALL.REPO: Use curved quotes, as the diagnostic in question
6452         typically does that now.
6453         * admin/quick-install-emacs (TRY, top level):
6454         Use straight quoting in diagnostics.
6455         * src/README: Fix working-directory confusion.
6457         * CONTRIBUTE: Move send-email here from git-workflow.
6459 2015-09-11  Michael Albinus  <michael.albinus@gmx.de>
6461         Improve file notifications in Tramp
6462         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
6463         Set proper events to watch for.
6464         (tramp-sh-file-gvfs-monitor-dir-process-filter): Report only
6465         watched events.
6467 2015-09-11  Eli Zaretskii  <eliz@gnu.org>
6469         Fix NS build with --enable-checking='glyphs'
6470         * src/nsfns.m (unwind_create_frame): Make the preprocessor
6471         conditionals for referencing 'dpyinfo' consistent throughout the
6472         function.  (Bug#21426)
6474 2015-09-10  Nicolas Petton  <nicolas@petton.fr>
6476         Add seq-find
6477         This function is similar to `seq-some' but returns the found element.
6478         In the cases where nil can be the found element, a sentinel optional
6479         argument can be provided to avoid ambiguities.
6480         * lisp/emacs-lisp/seq.el (seq-find): New function.
6481         * test/automated/seq-tests.el (test-seq-find): Add tests for `seq-find'.
6482         * doc/lispref/sequences.texi (Sequence Functions): Add documentation for
6483         seq-find.
6485 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
6487         Document file-notify--test-with-events.
6488         * test/automated/file-notify-tests.el (file-notify--test-with-events):
6489         Add docstring.
6491 2015-09-10  Michael Albinus  <michael.albinus@gmx.de>
6493         Report used native library in file-notify-tests.el
6494         * test/automated/file-notify-tests.el
6495         (tramp-get-remote-gvfs-monitor-dir)
6496         (tramp-get-remote-inotifywait): Declare them.
6497         (file-notify-test00-availability): Print used native library.
6499 2015-09-10  Mark Oteiza  <mvoteiza@udel.edu>
6501         * lisp/mpc.el (mpc--proc-connect): Use file-name-absolute-p.
6502         (mpc-file-local-copy): Check for absolute path.  Check more config
6503         locations.
6505 2015-09-10  Eli Zaretskii  <eliz@gnu.org>
6507         Improve documentation of categories
6508         * doc/lispref/syntax.texi (Categories): Clarify the example of
6509         using define-category and modify-category-entry.  (Bug#21448)
6511 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
6513         Revert some stray curved quotes I missed earlier
6514         Problem reported by David Kastrup in:
6515         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00440.html
6516         * lisp/international/mule-cmds.el (leim-list-header):
6517         Use format-message with an ASCII-only format.
6519         Prefer NUMBERP to spelling it out
6520         * src/editfns.c (styled_format):
6521         * src/frame.h (NUMVAL):
6522         * src/image.c (parse_image_spec):
6523         * src/lisp.h (CHECK_NUMBER_OR_FLOAT)
6524         (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER):
6525         * src/process.c (Fsignal_process):
6526         * src/xdisp.c (calc_pixel_width_or_height, on_hot_spot_p):
6527         * src/xfaces.c (check_lface_attrs):
6528         * src/xselect.c (x_fill_property_data, x_send_client_event):
6529         Use NUMBERP rather than INTEGERP || FLOATP.
6531 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
6533         Improve file-notify-tests
6534         * test/automated/file-notify-tests.el: Use lexical-binding.
6535         (file-notify--test-cleanup): New function.
6536         (file-notify-test00-availability, file-notify-test01-add-watch)
6537         (file-notify-test02-events, file-notify-test03-autorevert): Use it.
6538         (file-notify--test-with-events): New macro.
6539         (file-notify-test02-events): Use it.
6541 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
6543         Add patch-sending instructions to git-workflow
6544         From a suggestion by Mitchel Humpherys in:
6545         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00421.html
6546         * admin/notes/git-workflow (Sending patches): New section.
6548         Port to GIFLIB 5.0.6 and later
6549         Problem reported by Mitchel Humpherys in:
6550         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00420.html
6551         * src/image.c (HAVE_GIFERRORSTRING) [HAVE_GIF]: New macro.
6552         (GifErrorString, init_gif_functions) [HAVE_GIF && WINDOWSNT]:
6553         (gif_load) [HAVE_GIF]: Use it.
6555 2015-09-10  Glenn Morris  <rgm@gnu.org>
6557         * lisp/cedet/ede/auto.el (ede-project-autoload): Doc fix.
6559 2015-09-09  Glenn Morris  <rgm@gnu.org>
6561         * test/automated/file-notify-tests.el (file-notify-test02-events):
6562         Fix recent change.
6564 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
6566         Refix movemail GCC pacification
6567         Problem reported by Ken Brown in:
6568         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00406.html
6569         * lib-src/movemail.c (main): Fix previous change.
6571 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
6573         * lisp/calendar/time-date.el (time-to-seconds, time-less-p):
6574         Mark unused vars with underscore.
6576         * src/syntax.c (SETUP_SYNTAX_TABLE): Move truncation...
6577         (parse_sexp_propertize): ...from here.
6579         * lisp/filenotify.el: Use lexical-binding
6580         (file-notify-add-watch): Avoid add-to-list.
6582 2015-09-09  Tassilo Horn  <tsdh@gnu.org>
6584         Start checking event types in file-notify tests
6585         * test/automated/file-notify-tests.el (file-notify--test-events):
6586         New variable.
6587         (file-notify--test-event-handler): Append received event to
6588         file-notify--test-events for later analysis.
6589         (file-notify-test02-events): Assert that the expected notifications have
6590         arrived in the expected order.
6592 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
6594         Merge from gnulib and texinfo
6595         This incorporates:
6596         2015-08-03 Improve port of stdalign to C++11
6597         * lib/stdalign.in.h: Copy from gnulib.
6598         * doc/misc/texinfo.tex: Copy from texinfo.
6600 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
6602         Make syntax.c call syntax-propertize on demand
6603         * lisp/emacs-lisp/syntax.el (syntax--jit-propertize): New function.
6604         (parse-sexp-propertize-function): Use it.
6605         (syntax-propertize): Disable parse-sexp-propertize-function.
6606         * src/syntax.c (parse_sexp_propertize, update_syntax_table_forward):
6607         New functions.
6608         (syms_of_syntax): New vars `parse-sexp-propertize-done' and
6609         `parse-sexp-propertize-function'.
6610         * src/syntax.h (struct gl_state_s): Add `e_property_truncated' field.
6611         (UPDATE_SYNTAX_TABLE_FORWARD): Use update_syntax_table_forward.
6612         (SETUP_BUFFER_SYNTAX_TABLE): Set e_property_truncated.
6613         * lisp/progmodes/elisp-mode.el (elisp-byte-code-syntax-propertize):
6614         Don't assume `point' is set.
6616 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
6618         Fix indentation of an @example in ELisp manual
6619         * doc/lispref/syntax.texi (Categories): Untabify the example.
6620         (Bug#21448)
6622 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
6624         Define internal-char-font even if --without-x
6625         The function is used now even in non-graphical environments.
6626         Problem reported by Glenn Morris in:
6627         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00401.html
6628         * src/font.c (Finternal_char_font): Move here ...
6629         * src/fontset.c (Finternal_char_font): ... from here.
6631 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
6633         * lisp/emacs-lisp/cl-generic.el (cl-generic-generalizers):
6634         Remove warning.
6636 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
6638         Fix display of complex local data types in GDB-MI
6639         * lisp/progmodes/gdb-mi.el (gdb-locals-handler-custom): If a
6640         variable has no value, display "<complex data type>" as a
6641         placeholder, instead of a confusing "nil".  (Bug#21438)
6643 2015-09-09  Oleh Krehel  <ohwoeowho@gmail.com>
6645         Remove redundant redefinition of seq-drop-while from seq.el
6646         * lisp/emacs-lisp/seq.el (seq-drop-while): Define only once.
6648 2015-09-09  Phil Sainty  <psainty@orcon.net.nz>
6650         * lisp/emacs-lisp/package.el (package--ensure-init-file):
6651         More robust check for `package-initialize' calls in init file.
6652         This function accepts an optional argument, but calls passing
6653         an argument would not have been detected.
6655 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
6657         Port movemail to RHEL 6 with --enable-gcc-warnings
6658         * lib-src/movemail.c (main): Declare local only if needed.
6660         Port recent Linux console changes to RHEL 6
6661         * src/terminal.c [HAVE_LINUX_KD_H]: Include <sys/ioctl.h>.
6663         Improvements for curved quotes on Linux consule
6664         This should help Emacs work better out-of-the-box on Linux consoles,
6665         which have only limited support for displaying Unicode characters.
6666         Also, undo the recent change that caused text-quoting-style to
6667         affect quote display on terminals, so that the two features are
6668         independent.  See Alan Mackenzie in:
6669         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00244.html
6670         Finally, add a style parameter to startup--setup-quote-display,
6671         so that this function can also be invoked after startup, with
6672         different styles depending on user preference at the time.
6673         * configure.ac: Check for linux/kd.h header.
6674         * doc/emacs/display.texi (Text Display): Document quote display.
6675         * doc/lispref/display.texi (Active Display Table):
6676         * etc/NEWS:
6677         * lisp/startup.el (startup--setup-quote-display, command-line):
6678         text-quoting-style no longer affects quote display.
6679         * doc/lispref/frames.texi (Terminal Parameters): Fix typo.
6680         * lisp/international/mule-util.el (char-displayable-p):
6681         * lisp/startup.el (startup--setup-quote-display):
6682         On a text terminal supporting glyph codes, use the reported
6683         glyph codes instead of the terminal coding system, as this
6684         is more accurate on the Linux console.
6685         * lisp/startup.el (startup--setup-quote-display):
6686         New optional arg STYLE.
6687         * src/fontset.c (Finternal_char_font):
6688         Report glyph codes for a text terminal, if they are available.
6689         Currently this is supported only for the Linux console.
6690         * src/termhooks.h (struct terminal): New member glyph-code-table.
6691         * src/terminal.c [HAVE_LINUX_KD_H]: Include <errno.h>, <linux/kd.h>.
6692         (calculate_glyph_code_table) [HAVE_LINUX_KD_H]: New function.
6693         (terminal_glyph_code): New function.
6695 2015-09-08  Juri Linkov  <juri@linkov.net>
6697         * lisp/info.el (Info-fontify-node): Don't stop at the non-title
6698         underline.  (Bug#21433)
6700 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
6702         * lisp/calendar/time-date.el (with-decoded-time-value): Fix debug spec.
6704 2015-09-08  Tassilo Horn  <tsdh@gnu.org>
6706         Fix double-reporting of rename events with inotify
6707         * lisp/filenotify.el (file-notify-callback): Fix double-reporting
6708         of rename events with inotify (bug#21435).
6710 2015-09-08  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
6712         * lisp/play/tetris.el (tetris-move-down): New command (bug#21360).
6713         (tetris-mode-map): Use it.
6715 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
6717         Remove a few simple cases of global redisplay
6718         * src/dispnew.c (redraw_frame): Don't redisplay all frames.
6719         * src/xdisp.c (echo_area_display): Set the frame's `redisplay' bit
6720         rather than returning a "resized_p" boolean.
6721         (redisplay_internal): Adjust call accordingly.
6722         * src/xfaces.c (free_realized_faces): Don't redisplay all frames.
6723         (free_all_realized_faces): Set windows_or_buffers_changed so as to ease
6724         tracking of this undesirable situation.
6726         * src/process.c (status_notify): Avoid global redisplay (bug#11822)
6727         * src/process.c (status_notify): Only set the update_mode_line on the
6728         relevant buffers rather than setting it globally.
6730 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
6732         * lisp/electric.el (electric-quote-post-self-insert-function):
6733         Don't use syntax-ppss if comment-use-syntax is nil (e.g. message-mode).
6734         (electric-quote-mode): Activate everywhere in message-mode.
6736 2015-09-07  Paul Eggert  <eggert@cs.ucla.edu>
6738         Go back to grave quoting in source-code docstrings etc.
6739         This reverts almost all my recent changes to use curved quotes
6740         in docstrings and/or strings used for error diagnostics.
6741         There are a few exceptions, e.g., Bahá’í proper names.
6742         * admin/unidata/unidata-gen.el (unidata-gen-table):
6743         * lisp/abbrev.el (expand-region-abbrevs):
6744         * lisp/align.el (align-region):
6745         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet)
6746         (outlineify-sticky):
6747         * lisp/apropos.el (apropos-library):
6748         * lisp/bookmark.el (bookmark-default-annotation-text):
6749         * lisp/button.el (button-category-symbol, button-put)
6750         (make-text-button):
6751         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
6752         * lisp/calc/calc-embed.el (calc-do-embedded):
6753         * lisp/calc/calc-ext.el (calc-user-function-list):
6754         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
6755         * lisp/calc/calc-help.el (calc-describe-key)
6756         (calc-describe-thing, calc-full-help):
6757         * lisp/calc/calc-lang.el (calc-c-language)
6758         (math-parse-fortran-vector-end, math-parse-tex-sum)
6759         (math-parse-eqn-matrix, math-parse-eqn-prime)
6760         (calc-yacas-language, calc-maxima-language, calc-giac-language)
6761         (math-read-giac-subscr, math-read-math-subscr)
6762         (math-read-big-rec, math-read-big-balance):
6763         * lisp/calc/calc-misc.el (calc-help, report-calc-bug):
6764         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
6765         (calc-auto-recompute):
6766         * lisp/calc/calc-prog.el (calc-fix-token-name)
6767         (calc-read-parse-table-part, calc-user-define-invocation)
6768         (math-do-arg-check):
6769         * lisp/calc/calc-store.el (calc-edit-variable):
6770         * lisp/calc/calc-units.el (math-build-units-table-buffer):
6771         * lisp/calc/calc-vec.el (math-read-brackets):
6772         * lisp/calc/calc-yank.el (calc-edit-mode):
6773         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
6774         * lisp/calendar/appt.el (appt-display-message):
6775         * lisp/calendar/diary-lib.el (diary-check-diary-file)
6776         (diary-mail-entries, diary-from-outlook):
6777         * lisp/calendar/icalendar.el (icalendar-export-region)
6778         (icalendar--convert-float-to-ical)
6779         (icalendar--convert-date-to-ical)
6780         (icalendar--convert-ical-to-diary)
6781         (icalendar--convert-recurring-to-diary)
6782         (icalendar--add-diary-entry):
6783         * lisp/calendar/time-date.el (format-seconds):
6784         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
6785         (timeclock-make-hours-explicit, timeclock-log-data):
6786         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
6787         (todo-item-mark, todo-check-format)
6788         (todo-insert-item--next-param, todo-edit-item--next-key)
6789         (todo-mode):
6790         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
6791         * lisp/cedet/mode-local.el (describe-mode-local-overload)
6792         (mode-local-print-binding, mode-local-describe-bindings-2):
6793         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
6794         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
6795         * lisp/cus-start.el (standard):
6796         * lisp/cus-theme.el (describe-theme-1):
6797         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
6798         (custom--sort-vars-1, load-theme):
6799         * lisp/descr-text.el (describe-text-properties-1, describe-char):
6800         * lisp/dired-x.el (dired-do-run-mail):
6801         * lisp/dired.el (dired-log):
6802         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
6803         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
6804         (ad-disable-advice, ad-remove-advice, ad-set-argument)
6805         (ad-set-arguments, ad--defalias-fset, ad-activate)
6806         (ad-deactivate):
6807         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
6808         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
6809         (byte-optimize-while, byte-optimize-apply):
6810         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
6811         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
6812         (byte-compile-log-file, byte-compile-format-warn)
6813         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
6814         (byte-compile-cl-warn)
6815         (byte-compile-warn-about-unresolved-functions)
6816         (byte-compile-file, byte-compile--declare-var)
6817         (byte-compile-file-form-defmumble, byte-compile-form)
6818         (byte-compile-normal-call, byte-compile-check-variable)
6819         (byte-compile-variable-ref, byte-compile-variable-set)
6820         (byte-compile-subr-wrong-args, byte-compile-setq-default)
6821         (byte-compile-negation-optimizer)
6822         (byte-compile-condition-case--old)
6823         (byte-compile-condition-case--new, byte-compile-save-excursion)
6824         (byte-compile-defvar, byte-compile-autoload)
6825         (byte-compile-lambda-form)
6826         (byte-compile-make-variable-buffer-local, display-call-tree)
6827         (batch-byte-compile):
6828         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use):
6829         * lisp/emacs-lisp/chart.el (chart-space-usage):
6830         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
6831         (check-declare-warn, check-declare-file)
6832         (check-declare-directory):
6833         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
6834         (checkdoc-message-text-engine):
6835         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer)
6836         (cl--describe-class):
6837         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
6838         (cl--generic-describe, cl-generic-generalizers):
6839         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
6840         (cl-symbol-macrolet):
6841         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
6842         * lisp/emacs-lisp/copyright.el (copyright)
6843         (copyright-update-directory):
6844         * lisp/emacs-lisp/edebug.el (edebug-read-list):
6845         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
6846         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
6847         (eieio-oref):
6848         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
6849         * lisp/emacs-lisp/eieio-speedbar.el:
6850         (eieio-speedbar-child-make-tag-lines)
6851         (eieio-speedbar-child-description):
6852         * lisp/emacs-lisp/eieio.el (defclass, change-class):
6853         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
6854         (elint-init-form, elint-check-defalias-form)
6855         (elint-check-let-form):
6856         * lisp/emacs-lisp/ert.el (ert-get-test, ert-results-mode-menu)
6857         (ert-results-pop-to-backtrace-for-test-at-point)
6858         (ert-results-pop-to-messages-for-test-at-point)
6859         (ert-results-pop-to-should-forms-for-test-at-point)
6860         (ert-describe-test):
6861         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
6862         (find-function-library):
6863         * lisp/emacs-lisp/generator.el (iter-yield):
6864         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
6865         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
6866         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
6867         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
6868         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
6869         (advice--make, define-advice):
6870         * lisp/emacs-lisp/package-x.el (package-upload-file):
6871         * lisp/emacs-lisp/package.el (package-version-join)
6872         (package-disabled-p, package-activate-1, package-activate)
6873         (package--download-one-archive)
6874         (package--download-and-read-archives)
6875         (package-compute-transaction, package-install-from-archive)
6876         (package-install, package-install-selected-packages)
6877         (package-delete, package-autoremove, describe-package-1)
6878         (package-install-button-action, package-delete-button-action)
6879         (package-menu-hide-package, package-menu--list-to-prompt)
6880         (package-menu--perform-transaction)
6881         (package-menu--find-and-notify-upgrades):
6882         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
6883         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
6884         * lisp/emacs-lisp/ring.el (ring-previous, ring-next):
6885         * lisp/emacs-lisp/rx.el (rx-check, rx-anything)
6886         (rx-check-any-string, rx-check-any, rx-check-not, rx-=)
6887         (rx-repeat, rx-check-backref, rx-syntax, rx-check-category)
6888         (rx-form):
6889         * lisp/emacs-lisp/smie.el (smie-config-save):
6890         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
6891         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
6892         * lisp/emacs-lisp/testcover.el (testcover-1value):
6893         * lisp/emacs-lisp/timer.el (timer-event-handler):
6894         * lisp/emulation/viper-cmd.el (viper-toggle-parse-sexp-ignore-comments)
6895         (viper-toggle-search-style, viper-kill-buffer)
6896         (viper-brac-function):
6897         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
6898         * lisp/env.el (setenv):
6899         * lisp/erc/erc-button.el (erc-nick-popup):
6900         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login, english):
6901         * lisp/eshell/em-dirs.el (eshell/cd):
6902         * lisp/eshell/em-glob.el (eshell-glob-regexp)
6903         (eshell-glob-entries):
6904         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
6905         * lisp/eshell/esh-opt.el (eshell-show-usage):
6906         * lisp/facemenu.el (facemenu-add-new-face)
6907         (facemenu-add-new-color):
6908         * lisp/faces.el (read-face-name, read-face-font, describe-face)
6909         (x-resolve-font-name):
6910         * lisp/files-x.el (modify-file-local-variable):
6911         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
6912         (set-auto-mode, hack-one-local-variable--obsolete)
6913         (dir-locals-set-directory-class, write-file, basic-save-buffer)
6914         (delete-directory, copy-directory, recover-session)
6915         (recover-session-finish, insert-directory)
6916         (file-modes-char-to-who, file-modes-symbolic-to-number)
6917         (move-file-to-trash):
6918         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer):
6919         * lisp/find-cmd.el (find-generic, find-to-string):
6920         * lisp/finder.el (finder-commentary):
6921         * lisp/font-lock.el (font-lock-fontify-buffer):
6922         * lisp/format.el (format-write-file, format-find-file)
6923         (format-insert-file):
6924         * lisp/frame.el (get-device-terminal, select-frame-by-name):
6925         * lisp/fringe.el (fringe--check-style):
6926         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
6927         * lisp/help-fns.el (help-fns--key-bindings)
6928         (help-fns--compiler-macro, help-fns--parent-mode)
6929         (help-fns--obsolete, help-fns--interactive-only)
6930         (describe-function-1, describe-variable):
6931         * lisp/help.el (describe-mode)
6932         (describe-minor-mode-from-indicator):
6933         * lisp/image.el (image-type):
6934         * lisp/international/ccl.el (ccl-dump):
6935         * lisp/international/fontset.el (x-must-resolve-font-name):
6936         * lisp/international/mule-cmds.el (prefer-coding-system)
6937         (select-safe-coding-system-interactively)
6938         (select-safe-coding-system, activate-input-method)
6939         (toggle-input-method, describe-current-input-method)
6940         (describe-language-environment):
6941         * lisp/international/mule-conf.el (code-offset):
6942         * lisp/international/mule-diag.el (describe-character-set)
6943         (list-input-methods-1):
6944         * lisp/mail/feedmail.el (feedmail-run-the-queue):
6945         * lisp/mouse.el (minor-mode-menu-from-indicator):
6946         * lisp/mpc.el (mpc-playlist-rename):
6947         * lisp/msb.el (msb--choose-menu):
6948         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
6949         * lisp/net/imap.el (imap-interactive-login):
6950         * lisp/net/mairix.el (mairix-widget-create-query):
6951         * lisp/net/newst-backend.el (newsticker--sentinel-work):
6952         * lisp/net/newst-treeview.el (newsticker--treeview-load):
6953         * lisp/net/rlogin.el (rlogin):
6954         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
6955         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
6956         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
6957         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
6958         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
6959         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
6960         (org-babel-goto-named-result):
6961         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
6962         * lisp/org/ob-ref.el (org-babel-ref-resolve):
6963         * lisp/org/org-agenda.el (org-agenda-prepare):
6964         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
6965         (org-clock-resolve):
6966         * lisp/org/org-ctags.el (org-ctags-ask-rebuild-tags-file-then-find-tag):
6967         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
6968         * lisp/org/org-habit.el (org-habit-parse-todo):
6969         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
6970         (org-mouse-context-menu):
6971         * lisp/org/org-table.el (org-table-edit-formulas):
6972         * lisp/org/ox.el (org-export-async-start):
6973         * lisp/proced.el (proced-log):
6974         * lisp/progmodes/ada-mode.el (ada-get-indent-case)
6975         (ada-check-matching-start, ada-goto-matching-start):
6976         * lisp/progmodes/ada-prj.el (ada-prj-display-page):
6977         * lisp/progmodes/ada-xref.el (ada-find-executable):
6978         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
6979         * lisp/progmodes/etags.el (etags-tags-apropos-additional):
6980         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
6981         (flymake-start-syntax-check-process):
6982         * lisp/progmodes/python.el (python-shell-get-process-or-error)
6983         (python-define-auxiliary-skeleton):
6984         * lisp/progmodes/sql.el (sql-comint):
6985         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
6986         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate):
6987         * lisp/recentf.el (recentf-open-files):
6988         * lisp/replace.el (query-replace-read-from)
6989         (occur-after-change-function, occur-1):
6990         * lisp/scroll-bar.el (scroll-bar-columns):
6991         * lisp/server.el (server-get-auth-key):
6992         * lisp/simple.el (execute-extended-command)
6993         (undo-outer-limit-truncate, list-processes--refresh)
6994         (compose-mail, set-variable, choose-completion-string)
6995         (define-alternatives):
6996         * lisp/startup.el (site-run-file, tty-handle-args, command-line)
6997         (command-line-1):
6998         * lisp/subr.el (noreturn, define-error, add-to-list)
6999         (read-char-choice, version-to-list):
7000         * lisp/term/common-win.el (x-handle-xrm-switch)
7001         (x-handle-name-switch, x-handle-args):
7002         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
7003         * lisp/textmodes/reftex-ref.el (reftex-label):
7004         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
7005         * lisp/textmodes/two-column.el (2C-split):
7006         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
7007         (tutorial--find-changed-keys):
7008         * lisp/type-break.el (type-break-noninteractive-query):
7009         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
7010         (wdired-do-perm-changes):
7011         * lisp/whitespace.el (whitespace-report-region):
7012         Prefer grave quoting in source-code strings used to generate help
7013         and diagnostics.
7014         * lisp/faces.el (face-documentation):
7015         No need to convert quotes, since the result is a docstring.
7016         * lisp/info.el (Info-virtual-index-find-node)
7017         (Info-virtual-index, info-apropos):
7018         Simplify by generating only curved quotes, since info files are
7019         typically that ways nowadays anyway.
7020         * lisp/international/mule-diag.el (list-input-methods):
7021         Don’t assume text quoting style is curved.
7022         * lisp/org/org-bibtex.el (org-bibtex-fields):
7023         Revert my recent changes, going back to the old quoting style.
7025 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
7027         * lisp/emacs-lisp/package.el: Reduce autoloading before compiling.
7028         (package--autoloads-file-name)
7029         (package--activate-autoloads-and-load-path): New function.
7030         (package-activate-1): Delegate autoloading and load-path
7031         configuration to `package--activate-autoloads-and-load-path'.
7032         (package--compile): Before compilation, call
7033         `package--activate-autoloads-and-load-path' instead of
7034         `package-activate-1'.
7036 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
7038         * src/keyboard.c (read_key_sequence): Complete last fix (bug#21403).
7040 2015-09-07  Eli Zaretskii  <eliz@gnu.org>
7042         Fix deletion of symlinks to directories on MS-Windows
7043         * src/w32.c (sys_unlink): If 'unlink' fails, and the argument is a
7044         symlink to a directory, try again with 'rmdir'.
7045         (is_symlink): If the argument is a symlink to a directory, set a
7046         bit in the return value to indicate that fact.
7048 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
7050         * lisp/emacs-lisp/package.el (package-initialize): Set enable-at-startup
7051         When `package-initialize' is called as part of loading the init file,
7052         the user probably doesn't want it to be called again afterwards.
7053         In this situation, `package-initialize' now sets
7054         `package-enable-at-startup' to nil to prevent that.  The user can have
7055         the old behavior by setting this variable to t after the call to
7056         `package-initialize'.  (Bug#21423)
7057         * doc/emacs/package.texi (Package Installation): Document it.
7058         * doc/lispref/package.texi (Packaging Basics): Document it.
7059         * etc/NEWS: Document it.
7061 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
7063         Bump version of ntlm.el to 2.00
7064         * lisp/net/ntlm.el: Bump version to 2.00.  New maintainer.
7065         Add comm keyword.
7067 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
7069         * doc/misc/gnus.texi (Mail Source Specifiers):
7070         Allow :mailbox to be a list.
7072 2015-09-06  Dmitry Gutov  <dgutov@yandex.ru>
7074         * lisp/progmodes/etags.el (etags-tags-completion-table):
7075         Allow even one non-regular character before the implicit tag name.
7076         Reported at http://emacs.stackexchange.com/questions/15269/.
7078 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
7080         Add support for NTLMv2 authentication
7081         * lisp/net/ntlm.el (ntlm): New customization group.
7082         (ntlm-compatibility-level): New defcustom.
7083         (ntlm-compute-timestamp): New function.
7084         (ntlm-generate-nonce): Likewise.
7085         (ntlm-build-auth-response): Add support for NTLMv2 authentication.
7087 2015-09-06  Artur Malabarba  <bruce.connor.am@gmail.com>
7089         * lisp/emacs-lisp/package.el: Rename custom faces.
7090         All of the recently introduced faces, like `package-name-face', have
7091         been renamed to no end in `-face' to comply with the convention
7092         described in (info "(elisp) Defining Faces").
7093         (package-name, package-description)
7094         (package-status-built-in, package-status-external)
7095         (package-status-available, package-status-new)
7096         (package-status-held, package-status-disabled)
7097         (package-status-installed, package-status-dependency)
7098         (package-status-unsigned, package-status-incompat)
7099         (package-status-avail-obso): New faces.
7100         (package-menu--print-info-simple): Use them.
7102 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
7104         mail-source.el: Make the imap mail-source's :mailbox handle a list
7105         * lisp/gnus/mail-source.el (mail-source-fetch-imap):
7106         Allow :mailbox to be  a list.
7108 2015-09-06  Eric Abrahamsen  <eric@ericabrahamsen.net>
7110         nnimap.el: Handle nil arg to nnimap-request-group
7111         * lisp/gnus/nnimap.el (nnimap-request-group): Handle nil "info" arg.
7112         This arg isn't always passed in, check it's not nil before making it
7113         into a list.  The active arg will also be nil if the group is new,
7114         check for that.
7116 2015-09-06  Michael Albinus  <michael.albinus@gmx.de>
7118         File notifications: Support renaming over directory boundaries
7119         * lisp/filenotify.el (file-notify-handle-event):
7120         (file-notify--pending-event): Adapt docstring.
7121         (file-notify--descriptor, file-notify-callback): Reimplement in
7122         order to support renaming over directory boundaries.
7123         (file-notify-add-watch): Adapt `file-notify--descriptor' call.
7124         * doc/lispref/os.texi (File Notifications): Remove limitation of
7125         file renaming to the same directory.
7127 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
7129         Spelling fix (Bug#21420)
7131 2015-09-05  Nicolas Petton  <nicolas@petton.fr>
7133         Improve the semantic of map-some
7134         Update map-some to return the returned by the predicate, similar to
7135         seq-some.
7136         * lisp/emacs-lisp/map.el (map-some): Update the function to return the
7137           return value of the predicate.
7138         * test/automated/map-tests.el (test-map-some): Update the test to check
7139           for non-nil values only.
7141         Rename map-contains-key-p and map-some-p
7142         Remove the "-p" suffix from both function names.
7143         * lisp/emacs-lisp/map.el (map-contains-key, map-some):
7144           Rename the functions.
7145         * test/automated/map-tests.el (test-map-contains-key, test-map-some):
7146           Update both test functions.
7148         Improve the semantic of seq-some
7149         Update seq-some to return non-nil if the predicate returns non-nil for
7150         any element of the seq, in which case the returned value is the one
7151         returned by the predicate.
7152         * lisp/emacs-lisp/seq.el (seq-some): Update the function and its
7153           docstring.
7154         * test/automated/seq-tests.el (test-seq-some): Add a regression test.
7155         * doc/lispref/sequences.texi (Sequence Functions): Update the
7156           documentation for seq-some.
7158         Rename seq-some-p to seq-some and seq-contains-p to seq-contains
7159         * lisp/emacs-lisp/seq.el (seq-some, seq-contains): Rename the functions
7160           without the "-p" prefix.
7161         * test/automated/seq-tests.el (test-seq-some, test-seq-contains): Update
7162           the tests accordingly.
7163         * doc/lispref/sequences.texi (Sequence Functions): Update the
7164           documentation for seq.el.
7166 2015-09-05  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
7168         text-quoting-style for usage of fn names with ‘’
7169         * lisp/help.el (help--docstring-quote): Don’t assume
7170         text-quoting-style is ‘curve’ when generating usage strings for
7171         functions whose names contain curved quotes.
7173 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
7175         Fix fix for describe-function keybinding confusion
7176         This fixes a bug introduced by the previous patch.
7177         * lisp/help-fns.el (help-fns--signature):
7178         Last arg of help-fns--signature is now a buffer, or nil if a
7179         raw signature is wanted.  All callers changed.
7180         (describe-function-1): Use this to do the right thing with signatures.
7182 2015-09-05  Johan Bockgård  <bojohan@gnu.org>
7184         * doc/lispref/frames.texi (Mouse Tracking): Fix typo.
7186         Use PAT rather than UPAT in pcase macros
7187         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
7188         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>: Use PAT rather
7189           than UPAT.
7191 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
7193         Fix describe-function keybinding confusion
7194         * lisp/help-fns.el (describe-function-1): Compute signature
7195         in the original buffer, not in standard-output, so that
7196         substitute-command-keys uses the proper keybindings.
7197         This fixes Bug#21412, introduced in commit
7198         2015-06-11T10:23:46-0700!eggert@cs.ucla.edu.
7200 2015-09-05  Xue Fuqiao  <xfq.free@gmail.com>
7202         * doc/emacs/programs.texi (Program Modes): Remove an index entry.
7204 2015-09-05  Robert Pluim  <rpluim@gmail.com>  (tiny change)
7206         Avoid read error messages from 'inotify'
7207         * src/process.c (wait_reading_process_output): Add a
7208         'tls_available' set and manipulate it instead of 'Available' when
7209         checking TLS inputs.  Assign the value to 'Available' only if we
7210         find any TLS data waiting to be read.  This avoids error messages
7211         from 'inotify' that tries to read data it shouldn't.  (Bug#21337)
7213 2015-09-05  Eli Zaretskii  <eliz@gnu.org>
7215         Avoid errors in thing-at-point with 2nd argument non-nil
7216         * lisp/thingatpt.el (thing-at-point): Only call 'length' on
7217         sequences.  (Bug#21391)
7219 2015-09-05  Philip  <pipcet@gmail.com>  (tiny change)
7221         Fix segfaults due to using a stale face ID
7222         * src/xdisp.c (forget_escape_and_glyphless_faces): New function.
7223         (display_echo_area_1, redisplay_internal): Call it to avoid
7224         reusing stale face IDs for 'escape-glyph' and 'glyphless-char'
7225         faces, which could case a segfault if the frame's face cache was
7226         freed since the last redisplay.  (Bug#21394)
7227         * src/xfaces.c (free_realized_faces):
7228         Call forget_escape_and_glyphless_faces.
7229         * src/dispextern.h (forget_escape_and_glyphless_faces): Add prototype.
7231 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
7233         Fix minor problems with " in manual
7235 2015-09-04  Michael Albinus  <michael.albinus@gmx.de>
7237         * doc/misc/tramp.texi (Frequently Asked Questions): New item for ad-hoc
7238         multi-hop files.
7240 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
7242         Support automated ‘make check’ in non-C locale
7243         This lets the builder optionally test Emacs behavior in other locales.
7244         The C locale is still the default for tests.
7245         * test/automated/Makefile.in (TEST_LOCALE): New macro.
7246         (emacs): Use it.
7247         * test/automated/flymake-tests.el (flymake-tests--current-face):
7248         Use C locale for subprocesses so that tests behave as expected.
7249         * test/automated/python-tests.el:
7250         (python-shell-prompt-validate-regexps-1)
7251         (python-shell-prompt-validate-regexps-2)
7252         (python-shell-prompt-validate-regexps-3)
7253         (python-shell-prompt-validate-regexps-4)
7254         (python-shell-prompt-validate-regexps-5)
7255         (python-shell-prompt-validate-regexps-6)
7256         (python-shell-prompt-set-calculated-regexps-1):
7257         Adjust expected output to match locale.
7258         * test/automated/tildify-tests.el (tildify-test--test)
7259         (tildify-space-test--test, tildify-space-undo-test--test):
7260         This test assumes UTF-8 encoding.
7262 2015-09-03  Paul Eggert  <eggert@cs.ucla.edu>
7264         Fix some more docstring etc. quoting problems
7265         Mostly these fixes prevent the transliteration of apostrophes
7266         that should stay apostrophes.  Also, prefer curved quotes in
7267         Bahá’í proper names, as that’s the preferred Bahá’í style and
7268         these names are chock-full of non-ASCII characters anyway.
7269         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-autoload)
7270         (eieio-defclass-internal):
7271         * lisp/emacs-lisp/eieio.el (defclass):
7272         * lisp/hi-lock.el (hi-lock-mode):
7273         Don’t transliterate Lisp apostrophes when generating a
7274         doc string or diagnostic.
7275         * lisp/international/mule-diag.el (list-coding-systems-1):
7276         * lisp/international/ogonek.el (ogonek-jak, ogonek-how):
7277         * lisp/mail/sendmail.el (sendmail-query-user-about-smtp):
7278         * lisp/vc/ediff-mult.el (ediff-redraw-registry-buffer):
7279         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
7280         Substitute quotes before putting them in the help buffer.
7282 2015-09-03  Stefan Monnier  <monnier@iro.umontreal.ca>
7284         Re-add the notion of echo_prompt lost in the translation
7285         * src/keyboard.h (struct kboard): Replace echo_after_prompt with new
7286         echo_prompt which contains the actual string.  Update all uses.
7287         * src/keyboard.c (kset_echo_prompt): New function.
7288         (echo_update): Add echo_prompt at the very beginning.
7289         (read_char): Remove workaround for bug#19875, not needed any more.
7290         (read_key_sequence): Set echo_prompt rather than echo_string
7291         (bug#21403).
7292         (mark_kboards): Mark echo_prompt.
7294         Fix disassembly of non-compiled lexical functions (bug#21377)
7295         * lisp/emacs-lisp/bytecomp.el (byte-compile): Handle `closure' arg.
7296         * lisp/emacs-lisp/disass.el: Use lexical-binding.
7297         (disassemble): Recognize `closure's as well.
7298         (disassemble-internal): Use indirect-function and
7299         help-function-arglist, and accept `closure's.
7300         (disassemble-internal): Use interactive-form.
7301         (disassemble-1): Use functionp.
7303         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
7304         Don't compose inside verbatim blocks!
7306 2015-09-03  Mark Oteiza  <mvoteiza@udel.edu>
7308         * lisp/thingatpt.el (thing-at-point-uri-schemes): Add "man:"
7309         (bug#19441).
7311         * lisp/mpc.el (mpc--proc-connect): Handle unix sockets (bug#19394).
7313 2015-09-03  Dmitry Gutov  <dgutov@yandex.ru>
7315         vc-git-mode-line-string: Explicitly re-apply the face
7316         * lisp/vc/vc-git.el (vc-git-mode-line-string): Explicitly re-apply
7317         the face (bug#21404).
7319 2015-09-02  Paul Eggert  <eggert@cs.ucla.edu>
7321         Treat initial-scratch-message as a doc string
7322         * doc/emacs/building.texi (Lisp Interaction):
7323         * doc/lispref/os.texi (Startup Summary):
7324         * etc/NEWS: Document this.
7325         * lisp/startup.el (initial-scratch-message):
7326         Look up find-file’s key rather than hardcoding it.
7327         (command-line-1): Substitute the doc string.
7328         This also substitutes the quotes, which will help test display
7329         quoting at startup.
7331         Fix describe-char bug with glyphs on terminals
7332         * lisp/descr-text.el (describe-char): Terminals can have glyphs in
7333         buffers too, so don’t treat them differently from graphic displays.
7334         Without this fix, describe-char would throw an error on a terminal
7335         if given a glyph with a non-default face.
7337         Follow text-quoting-style in display table init
7338         This attempts to fix a problem reported by Alan Mackenzie in:
7339         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00112.html
7340         * doc/lispref/display.texi (Active Display Table):
7341         Mention how text-quoting-style affects it.
7342         * doc/lispref/help.texi (Keys in Documentation):
7343         Say how to set text-quoting-style in ~/.emacs.
7344         * etc/NEWS: Document the change.
7345         * lisp/startup.el (startup--setup-quote-display):
7346         Follow user preference if text-quoting-style is set.
7347         (command-line): Setup quote display again if user expresses
7348         a preference in .emacs.
7350 2015-09-02  K. Handa  <handa@gnu.org>
7352         Fix typo
7353         * src/ftfont.c (ftfont_drive_otf): otf_positioning_type_components_mask
7354         -> OTF_positioning_type_components_mask.
7356         Fix previous change
7357         * src/ftfont.c (ftfont_drive_otf): Remember some bits of
7358         OTF_Glyph->positioning_type in MFLTGlyphFT->libotf_positioning_type.
7360 2015-09-01  David Caldwell  <david@porkrind.org>  (tiny change)
7362         * lisp/vc/vc-hooks.el (vc-refresh-state): New command.
7363         Rename from vc-find-file-hook and make interactive.
7364         (vc-find-file-hook): Redefine as obsolete alias.
7366 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
7368         Escape ` and ' in doc
7369         Escape apostrophes and grave accents in docstrings if they are
7370         are supposed to stand for themselves and are not quotes.  Remove
7371         apostrophes from docstring examples like ‘'(calendar-nth-named-day
7372         -1 0 10 year)’ that confuse source code with data.  Do some other
7373         minor docstring fixups as well, e.g., insert a missing close quote.
7375 2015-09-01  Stefan Monnier  <monnier@iro.umontreal.ca>
7377         Generalize the prefix-command machinery of C-u
7378         * lisp/simple.el (prefix-command-echo-keystrokes-functions)
7379         (prefix-command-preserve-state-hook): New hooks.
7380         (internal-echo-keystrokes-prefix): New function.
7381         (prefix-command--needs-update, prefix-command--last-echo): New vars.
7382         (prefix-command-update, prefix-command-preserve): New functions.
7383         (reset-this-command-lengths): New compatibility definition.
7384         (universal-argument--mode): Call prefix-command-update.
7385         (universal-argument, universal-argument-more, negative-argument)
7386         (digit-argument): Call prefix-command-preserve-state.
7387         * src/keyboard.c: Call internal-echo-keystrokes-prefix to build
7388         the "prefix argument" to echo.
7389         (this_command_key_count_reset, before_command_key_count)
7390         (before_command_echo_length): Delete variables.
7391         (echo_add_key): Always add a space.
7392         (echo_char): Remove.
7393         (echo_dash): Don't give up when this_command_key_count is 0, since that
7394         is now the case after a prefix command.
7395         (echo_update): New function, extracted from echo_now.
7396         (echo_now): Use it.
7397         (add_command_key, read_char, record_menu_key): Remove old disabled code.
7398         (command_loop_1): Don't refrain from pushing an undo boundary when
7399         prefix-arg is set.  Remove other prefix-arg special case, now handled
7400         directly in the prefix commands instead.  But call echo_now if there's
7401         a prefix state to echo.
7402         (read_char, record_menu_key): Use echo_update instead of echo_char.
7403         (read_key_sequence): Use echo_now rather than echo_dash/echo_char.
7404         (Freset_this_command_lengths): Delete function.
7405         (syms_of_keyboard): Define Qinternal_echo_keystrokes_prefix.
7406         (syms_of_keyboard): Don't defsubr Sreset_this_command_lengths.
7407         * lisp/simple.el: Use those new hooks for C-u.
7408         (universal-argument--description): New function.
7409         (prefix-command-echo-keystrokes-functions): Use it.
7410         (universal-argument--preserve): New function.
7411         (prefix-command-preserve-state-hook): Use it.
7412         (command-execute): Call prefix-command-update if needed.
7413         * lisp/kmacro.el (kmacro-step-edit-prefix-commands)
7414         (kmacro-step-edit-prefix-index): Delete variables.
7415         (kmacro-step-edit-query, kmacro-step-edit-insert): Remove ad-hoc
7416         support for prefix arg commands.
7417         (kmacro-step-edit-macro): Don't bind kmacro-step-edit-prefix-index.
7418         * lisp/emulation/cua-base.el (cua--prefix-override-replay)
7419         (cua--shift-control-prefix): Use prefix-command-preserve-state.
7420         Remove now unused arg `arg'.
7421         (cua--prefix-override-handler, cua--prefix-repeat-handler)
7422         (cua--shift-control-c-prefix, cua--shift-control-x-prefix):
7423         Update accordingly.
7424         (cua--prefix-override-timeout): Don't call reset-this-command-lengths
7425         any more.
7426         (cua--keep-active, cua-exchange-point-and-mark): Don't set mark-active
7427         if the mark is not set.
7429 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
7431         Rework quoting in Emacs Lisp Introduction
7432         * doc/lispintro/emacs-lisp-intro.texi (Sample let Expression)
7433         (if in more detail, type-of-animal in detail, else): Rework the
7434         early example to use " rather than ' so that we don’t burden
7435         complete novices with the low-priority detail of text quoting style.
7436         (Complete zap-to-char, kill-region, Complete copy-region-as-kill)
7437         (kill-new function, kill-ring-yank-pointer)
7438         (Complete forward-sentence, Loading Files)
7439         (Code for current-kill, Code for current-kill, yank):
7440         Resurrect the Emacs 22 versions of the code, which uses grave
7441         quoting style in doc strings.
7442         (Complete zap-to-char): Mention how quoting works in doc strings.
7444         Setup quote display only if interactive
7445         * lisp/startup.el (command-line):
7446         Skip call to startup--setup-quote-display if noninteractive.
7447         Without this change, python-shell-prompt-validate-regexps-1
7448         fails in test/automated/python-tests.el when run in an
7449         en_US.utf8 locale on Fedora.
7451 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
7453         Use defalias at the top level
7454         * lisp/gnus/gnus-util.el (gnus-format-message):
7455         * lisp/net/tls.el (tls-format-message): Use defalias at the top level
7456         so as to make eval-and-compile unnecessary.  Thanks to Stefan Monnier.
7458 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
7460         terminal-init-w32console mimicks command-line
7461         Problem reported by Eli Zaretskii.
7462         * lisp/startup.el (startup--setup-quote-display):
7463         New function, refactored from a part of ‘command-line’.
7464         (command-line): Use it.
7465         * lisp/term/w32console.el (terminal-init-w32console):
7466         Use it, so that this function stays consistent with ‘command-line’.
7468         Display replacement quotes with shadow glyphs
7469         * lisp/startup.el (command-line): When displaying ASCII
7470         replacements for curved quotes, use a shadow glyph instead of a
7471         regular one, to avoid ambiguity.
7473 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
7475         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Mask "Password:".
7477 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
7479         Docstring fixes re quotes in C code
7480         Fix some docstring quoting problems, mostly by escaping apostrophe.
7482 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
7484         Some Tramp password fixes
7485         * lisp/net/tramp.el (tramp-clear-passwd): Clear also the passwords
7486         of the hops.
7487         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Move "-p" "Password:"
7488         at the beginning of the command.  Otherwise, it could be
7489         interpreted as password prompt if the remote host echoes the
7490         command.
7491         (tramp-remote-coding-commands): Add "openssl enc -base64".
7493 2015-09-01  Dmitry Gutov  <dgutov@yandex.ru>
7495         Make vc-git-working-revision always return the commit hash
7496         * lisp/vc/vc-git.el (vc-git-working-revision):
7497         Return the commit hash (bug#21383).
7498         (vc-git--symbolic-ref): New function, extracted from above.
7499         (vc-git-mode-line-string): Use it.
7501 2015-09-01  K. Handa  <handa@gnu.org>
7503         Use the new type MFLTGlyphFT for MFLTGlyphString.glyphs
7504         * src/ftfont.c (MFLTGlyphFT): New type.
7505         (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_drive_otf)
7506         (ftfont_shape_by_flt): Make MFLTGlyphFT the actual type of
7507         elements in the array MFLTGlyphString.glyphs.
7509 2015-09-01  Stephen Leake  <stephen_leake@stephe-leake.org>
7511         Improve comments in elisp-mode.el, elisp-mode-tests.el
7512         * lisp/progmodes/elisp-mode.el: Clean up FIXMEs, comments.
7514         Delete Emacs 25 test in mode-local.el
7515         * lisp/cedet/mode-local.el (describe-mode-local-overload):
7516         Fix missed an edit in previous commit.
7518         Show all known mode-local overrides in *Help*
7519         * lisp/cedet/mode-local.el (describe-mode-local-overload):
7520         Assume Emacs 25. Add all known mode-local overrides.
7522 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
7524         * lisp/gnus/gnus-sum.el (gnus-summary-search-article):
7525         Ensure that the article where the search word is found is displayed
7526         and pointed to in the summary buffer.
7528 2015-08-31  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
7530         * lisp/newcomment.el (comment-dwim): Use `use-region-p'.
7531         When the region is active, but is empty (length 0), act as though
7532         the region was not active; that is, put a comment at the end of
7533         the line.  (Bug#21119)
7535 2015-08-31  Katsumi Yamaoka  <yamaoka@jpl.org>
7537         Port tls.el to older Emacs
7538         * lisp/net/tls.el (tls-format-message):
7539         Alias to format-message, or format if not available.
7540         (open-tls-stream): Use it.
7542 2015-08-31  Rüdiger Sonderfeld  <ruediger@c-plusplus.net>
7544         hideif.el: Recognize .h++ as C++ header
7545         * lisp/progmodes/hideif.el (hide-ifdef-header-regexp): Add .h++.
7547         isearch: Document character folding mode
7548         * lisp/isearch.el (isearch-forward):
7549         Mention `isearch-toggle-character-fold' in doc string.
7551 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
7553         Quoting fixes in ERC and Eshell
7554         * lisp/erc/erc-autoaway.el (erc-autoaway-set-away):
7555         * lisp/erc/erc-backend.el (define-erc-response-handler):
7556         * lisp/erc/erc-fill.el (erc-fill-static-center):
7557         * lisp/eshell/em-dirs.el (eshell-save-some-last-dir):
7558         * lisp/eshell/em-glob.el (eshell-glob-entries):
7559         * lisp/eshell/em-hist.el (eshell-save-some-history):
7560         * lisp/eshell/em-unix.el (eshell-remove-entries, eshell/rm)
7561         (eshell-shuffle-files):
7562         * lisp/eshell/esh-cmd.el (eshell-do-eval):
7563         * lisp/eshell/esh-proc.el (eshell-process-interact)
7564         (eshell-query-kill-processes):
7565         Respect ‘text-quoting-style’ in diagnostics and doc strings.
7567         Quoting fixes in Gnus
7568         * lisp/gnus/gnus-agent.el:
7569         (gnus-agent-possibly-synchronize-flags-server):
7570         * lisp/gnus/gnus-art.el (gnus-article-browse-delete-temp-files):
7571         * lisp/gnus/gnus-eform.el (gnus-edit-form):
7572         * lisp/gnus/gnus-group.el (gnus-group-edit-group)
7573         (gnus-group-nnimap-edit-acl):
7574         * lisp/gnus/gnus-topic.el (gnus-topic-edit-parameters):
7575         * lisp/gnus/mail-source.el (mail-source-delete-old-incoming):
7576         * lisp/gnus/message.el (message-strip-subject-encoded-words)
7577         (message-check-recipients, message-send-form-letter):
7578         * lisp/gnus/mm-decode.el (mm-display-part):
7579         * lisp/gnus/mm-uu.el (mm-uu-pgp-signed-extract-1):
7580         * lisp/gnus/mml-smime.el (mml-smime-get-dns-cert)
7581         (mml-smime-get-ldap-cert):
7582         * lisp/gnus/spam-report.el (spam-report-process-queue):
7583         Respect ‘text-quoting-style’ in diagnostics.
7584         * lisp/gnus/gnus-art.el (article-display-face)
7585         * lisp/gnus/gnus-fun.el (gnus-display-x-face-in-from):
7586         Use straight quoting in email.
7587         * lisp/gnus/rfc2231.el (rfc2231-decode-encoded-string):
7588         Escape apostrophes in doc strings.
7590         Quoting fixes in lisp mail, mh-e, net, url
7591         * lisp/mail/emacsbug.el (report-emacs-bug)
7592         (report-emacs-bug-hook): Use straight quotes in outgoing email,
7593         * lisp/mail/feedmail.el (feedmail-message-action-help-blat):
7594         * lisp/mail/rmail.el (rmail-unknown-mail-followup-to):
7595         * lisp/mail/rmailout.el (rmail-output-read-file-name):
7596         * lisp/net/imap.el (imap-interactive-login):
7597         * lisp/net/tls.el (open-tls-stream):
7598         * lisp/url/url-auth.el (url-register-auth-scheme):
7599         Respect ‘text-quoting-style’ in diagnostics.
7600         * lisp/mh-e/mh-e.el (mh-sortm-args):
7601         Quote docstring example using text quotes, not as a Lisp quote.
7603 2015-08-31  Stephen Leake  <stephen_leake@stephe-leake.org>
7605         Fix some byte-compiler warnings in EDE
7606         This fixes a bug that caused ede-generic-new-autoloader to overwrite the
7607         existing autoloader list, rather than add to it.
7608         * lisp/cedet/ede/auto.el (ede-project-class-files): Delete obsolete name
7609         argument to eieio class constructor.
7610         (ede-show-supported-projects): New.
7611         (ede-add-project-autoload): Replace obsolete `eieio-object-name-string'
7612         with (oref ... name).
7613         (ede-auto-load-project): Use slot name, not initarg key.
7614         * lisp/cedet/ede/generic.el (ede-generic-load)
7615         (ede-generic-find-matching-target): Use slot name, not initarg key.
7616         (ede-find-target): Use oref-default on class name.
7617         (ede-generic-new-autoloader): Delete obsolete name argument to eieio
7618         class constructor.
7619         (ede-enable-generic-projects): Make project type names unique.
7621 2015-08-31  Eli Zaretskii  <eliz@gnu.org>
7623         Fix directory accessibility tests for w32 network volumes
7624         * src/w32.c (faccessat): Don't fail with network volumes without a
7625         share.
7626         (w32_accessible_directory_p): Handle network volumes without a
7627         share.
7629         Fix handling long file names in readdir on MS-Windows
7630         * src/w32.c (sys_readdir): Append "\*" to the directory after
7631         converting it to UTF-16/ANSI, not before, to avoid overflowing the
7632         260-character limit on file names in filename_to_utf16/ansi.
7634         Make file-accessible-directory-p reliable on MS-Windows
7635         * src/w32.c (w32_accessible_directory_p): New function.
7636         * src/w32.h (w32_accessible_directory_p): Add prototype.
7637         * src/fileio.c (file_accessible_directory_p) [WINDOWSNT]: Call
7638         w32_accessible_directory_p to test a directory for accessibility
7639         by the current user.  (Bug#21346)
7640         (Ffile_accessible_directory_p): Remove the w32 specific caveat
7641         from the doc string.
7643 2015-08-31  Martin Rudalics  <rudalics@gmx.at>
7645         Don't call do_pending_window_change in signal handlers (Bug#21380)
7646         * src/gtkutil.c (xg_frame_resized):
7647         * src/xterm.c (x_set_window_size):
7648         * src/w32term.c (x_set_window_size): Don't call
7649         do_pending_window_change.
7651 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
7653         Quoting fixes in lisp/org
7654         * lisp/org/org-agenda.el (org-search-view, org-todo-list)
7655         (org-tags-view):
7656         * lisp/org/org-capture.el (org-capture-mode)
7657         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
7658         (org-ctags-ask-append-topic):
7659         * lisp/org/org.el (org-time-string-to-time)
7660         (org-time-string-to-absolute):
7661         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
7662         (org-ctags-ask-append-topic):
7663         * lisp/org/org.el (org-time-string-to-time)
7664         (org-time-string-to-absolute):
7665         Respect ‘text-quoting-style’ in diagnostics.
7666         * lisp/org/org-agenda.el (org-agenda-custom-commands)
7667         (org-agenda-dim-blocked-tasks): Plural of TODO is TODOs, not TODO’s.
7668         * lisp/org/org-capture.el (org-capture-fill-template):
7669         Avoid contraction in output file that might be ASCII.
7670         * lisp/org/org-compat.el (format-message):
7671         Define if not already defined, for backward compatibility.
7672         * lisp/org/org-src.el (org-edit-src-save):
7673         * lisp/org/org.el (org-cycle, org-ctrl-c-ctrl-c):
7674         Escape apostrophes in diagnostics.
7676         Treat “instead” strings as docstrings
7677         * lisp/emacs-lisp/bytecomp.el (byte-compile-form):
7678         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
7679         Substitute quotes in instead strings.
7681 2015-08-31  Nicolas Petton  <nicolas@petton.fr>
7683         Better documentation of seq-let
7684         * doc/lispref/sequences.texi (Sequence Functions): Rephrase the
7685         documentation of seq-let.
7687 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
7689         * lisp/international/ccl.el: Fix quoting.
7691         Quoting fixes in lisp/international and lisp/leim
7692         * lisp/international/ccl.el (ccl-dump, ccl-dump-call):
7693         * lisp/international/ja-dic-utl.el (skkdic-lookup-key):
7694         * lisp/international/mule-cmds.el:
7695         (select-safe-coding-system-interactively, leim-list-file-name):
7696         * lisp/international/quail.el (quail-use-package, quail-help):
7697         * lisp/international/titdic-cnv.el (tit-process-header)
7698         (miscdic-convert):
7699         Respect text quoting style in doc strings and diagnostics.
7700         * lisp/international/quail.el (lisp/international/quail.el):
7701         * lisp/leim/quail/ethiopic.el ("ethiopic"):
7702         Escape apostrophes in doc strings.
7704         Make ‘text-quoting-style’ a plain defvar
7705         It doesn’t need customization, as it’s likely useful only by experts.
7706         Suggested by Stefan Monnier in:
7707         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg01020.html
7708         * lisp/cus-start.el: Remove doc.c section for builtin customized vars.
7710         Quoting fixes in lisp/textmodes
7711         * lisp/textmodes/bibtex.el (bibtex-validate)
7712         (bibtex-validate-globally, bibtex-search-entries):
7713         * lisp/textmodes/ispell.el (ispell-command-loop):
7714         * lisp/textmodes/page-ext.el (search-pages, pages-directory):
7715         * lisp/textmodes/texinfmt.el (texinfmt-version)
7716         (texinfo-format-region, texinfo-format-buffer-1):
7717         * lisp/textmodes/two-column.el (2C-split):
7718         Respect text quoting style in doc strings and diagnostics.
7719         * lisp/textmodes/conf-mode.el (conf-mode-map, conf-quote-normal):
7720         * lisp/textmodes/sgml-mode.el (sgml-specials, sgml-mode):
7721         Escape apostrophes in doc strings.
7723         Documentation fixes re quotes
7724         Prefer curved quotes in examples if users will typically see
7725         curved quotes when the examples run.
7726         Mention format-message when appropriate.
7727         Don’t use @code in examples.
7728         Quote an apostrophe with @kbd.
7730         Quoting fixes in lisp/progmodes
7731         * lisp/progmodes/cc-engine.el (c-bos-report-error):
7732         * lisp/progmodes/cpp.el (cpp-edit-reset):
7733         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
7734         * lisp/progmodes/etags.el (etags-tags-apropos-additional)
7735         (etags-tags-apropos, list-tags, tags-apropos):
7736         * lisp/progmodes/executable.el (executable-set-magic):
7737         * lisp/progmodes/octave.el (octave-sync-function-file-names)
7738         (octave-help, octave-find-definition-default-filename)
7739         (octave-find-definition):
7740         Respect text quoting style in doc strings and diagnostics.
7741         * lisp/progmodes/cc-langs.el (c-populate-syntax-table):
7742         * lisp/progmodes/verilog-mode.el (verilog-auto-reset-widths):
7743         * lisp/progmodes/vhdl-mode.el (vhdl-electric-quote):
7744         Escape apostrophes in doc strings.
7745         * lisp/progmodes/cmacexp.el (c-macro-expansion):
7746         Use straight quoting in ASCII comment.
7747         * lisp/progmodes/idlwave.el (idlwave-auto-fill-split-string)
7748         (idlwave-pad-keyword):
7749         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate)
7750         (vhdl-electric-open-bracket, vhdl-electric-close-bracket):
7751         (vhdl-electric-semicolon, vhdl-electric-comma)
7752         (vhdl-electric-period, vhdl-electric-equal):
7753         Use directed quotes in diagnostics and doc strings.
7755 2015-08-30  Xue Fuqiao  <xfq.free@gmail.com>
7757         Minor documentation and NEWS tweak
7758         * doc/lispintro/emacs-lisp-intro.texi (fwd-para let):
7759         Add an index entry.
7760         * etc/NEWS: Fix a typo in character-fold-to-regexp.
7762 2015-08-30  Michael Albinus  <michael.albinus@gmx.de>
7764         * lisp/net/tramp-sh.el (tramp-convert-file-attributes):
7765         Revert patch from 2015-08-24.  Tramp shall behave like for local files.
7766         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
7767         Adapt test.
7769 2015-08-30  Paul Eggert  <eggert@cs.ucla.edu>
7771         Text quoting fixes in cedet, emulation, emacs-lisp
7772         * lisp/cedet/ede.el (ede-check-project-directory):
7773         * lisp/cedet/semantic/analyze/debug.el
7774         (semantic-analyzer-debug-insert-include-summary):
7775         * lisp/cedet/semantic/bovine/c.el (semantic-c-describe-environment):
7776         * lisp/cedet/semantic/decorate/include.el
7777         (semantic-decoration-unknown-include-describe)
7778         (semantic-decoration-all-include-summary):
7779         * lisp/cedet/semantic/ia.el (semantic-ia-fast-jump):
7780         * lisp/emulation/edt.el (edt-load-keys):
7781         * lisp/emulation/viper-cmd.el
7782         (viper-display-current-destructive-command)
7783         (viper-query-replace, viper-brac-function):
7784         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-compile):
7785         * lisp/emulation/viper-macs.el (viper-unrecord-kbd-macro):
7786         Respect text quoting style in doc string or diagnostic.
7787         * lisp/cedet/mode-local.el (describe-mode-local-overload):
7788         Use format-message to avoid overtranslating quotes.
7789         * lisp/emacs-lisp/checkdoc.el (checkdoc-in-sample-code-p):
7790         Escape an apostrophe in a docstring.
7791         * lisp/emacs-lisp/warnings.el (lwarn): Fix doc string.
7793 2015-08-29  Daniel Colascione  <dancol@dancol.org>
7795         Fix which-func for curly quotes: look for symbol, not message
7796         * lisp/progmodes/which-func.el (which-func-ff-hook): Look for new
7797         imenu-unavailable error symbol instead of trying to match message
7798         exactly.
7799         * lisp/imenu.el (imenu-unavailable): New error.
7800         (imenu-unavailable-error): New function.
7802 2015-08-29  Eli Zaretskii  <eliz@gnu.org>
7804         Fix Python tests on MS-Windows
7805         * test/automated/python-tests.el
7806         (python-shell-calculate-command-1): Run python-shell-interpreter
7807         through shell-quote-argument before comparing with what
7808         python-shell-calculate-command returns.
7809         (python-shell-calculate-pythonpath-1)
7810         (python-shell-calculate-pythonpath-2)
7811         (python-shell-calculate-process-environment-2): Use path-separator
7812         instead of a literal ':'.
7813         (python-shell-calculate-exec-path-2)
7814         (python-shell-calculate-exec-path-3)
7815         (python-shell-calculate-exec-path-4)
7816         (python-shell-with-environment-1)
7817         (python-shell-with-environment-2): Run "/env/bin" through
7818         expand-file-name before comparing with exec-path.  (Bug#21375)
7820 2015-08-29  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
7822         Use Core Text types/functions/variables/enumerators directly
7823         * src/macfont.h (FontDescriptorRef, FontRef, FontSymbolicTraits)
7824         (CharacterCollection): Remove typedefs.  All uses replaced with
7825         definitions.
7826         (MAC_FONT_NAME_ATTRIBUTE, MAC_FONT_FAMILY_NAME_ATTRIBUTE)
7827         (MAC_FONT_TRAITS_ATTRIBUTE, MAC_FONT_SIZE_ATTRIBUTE)
7828         (MAC_FONT_CASCADE_LIST_ATTRIBUTE)
7829         (MAC_FONT_CHARACTER_SET_ATTRIBUTE, MAC_FONT_LANGUAGES_ATTRIBUTE)
7830         (MAC_FONT_FORMAT_ATTRIBUTE, MAC_FONT_SYMBOLIC_TRAIT)
7831         (MAC_FONT_WEIGHT_TRAIT, MAC_FONT_WIDTH_TRAIT)
7832         (MAC_FONT_SLANT_TRAIT): Remove macros.  All uses replaced with
7833         definitions.
7834         (MAC_FONT_TRAIT_ITALIC, MAC_FONT_TRAIT_BOLD)
7835         (MAC_FONT_TRAIT_MONO_SPACE, MAC_FONT_TRAIT_COLOR_GLYPHS)
7836         (MAC_FONT_FORMAT_BITMAP)
7837         (MAC_CHARACTER_COLLECTION_IDENTITY_MAPPING)
7838         (MAC_CHARACTER_COLLECTION_ADOBE_JAPAN1): Remove enumerators.
7839         All uses replaced with definitions.
7840         (kCTFontTraitItalic, kCTFontTraitBold, kCTFontTraitMonoSpace)
7841         (kCTFontTraitColorGlyphs, kCTCharacterCollectionIdentityMapping)
7842         (kCTCharacterCollectionAdobeJapan1 kCTFontOrientationDefault):
7843         Add compatibility enumerators for older versions.
7844         (mac_font_descriptor_create_with_attributes)
7845         (mac_font_descriptor_create_matching_font_descriptors)
7846         (mac_font_descriptor_create_matching_font_descriptor)
7847         (mac_font_descriptor_copy_attribute)
7848         (mac_font_descriptor_supports_languages)
7849         (mac_font_create_with_name, mac_font_get_size)
7850         (mac_font_copy_family_name, mac_font_copy_character_set)
7851         (mac_font_get_glyphs_for_characters, mac_font_get_ascent)
7852         (mac_font_get_descent, mac_font_get_leading)
7853         (mac_font_get_underline_position)
7854         (mac_font_get_underline_thickness, mac_font_copy_graphics_font)
7855         (mac_font_copy_non_synthetic_table): Remove macros.  All uses
7856         replaced with definitions.
7857         (mac_font_create_preferred_family_for_attributes)
7858         (mac_font_get_advance_width_for_glyph)
7859         (mac_font_get_bounding_rect_for_glyph)
7860         (mac_font_create_available_families, mac_font_shape):
7861         Remove macros for renamed functions.
7862         (mac_nsctfont_copy_font_descriptor): Remove unused macro.
7863         * src/macterm.m (mac_font_descriptor_supports_languages):
7864         Rename from mac_ctfont_descriptor_supports_languages.
7865         (mac_font_create_preferred_family_for_attributes): Rename from
7866         mac_ctfont_create_preferred_family_for_attributes.
7867         (mac_font_get_advance_width_for_glyph): Rename from
7868         mac_ctfont_get_advance_width_for_glyph.
7869         Use kCTFontOrientationDefault also for older versions.
7870         (mac_font_get_bounding_rect_for_glyph): Rename from
7871         mac_ctfont_get_bounding_rect_for_glyph.
7872         Use kCTFontOrientationDefault also for older versions.
7873         (mac_font_create_available_families): Rename from
7874         mac_ctfont_create_available_families.
7875         (mac_font_equal_in_postscript_name): Rename from
7876         mac_ctfont_equal_in_postscript_name.  All uses changed.
7877         (mac_font_create_line_with_string_and_font): Rename from
7878         mac_ctfont_create_line_with_string_and_font.  All uses changed.
7879         (mac_font_shape): Rename from mac_ctfont_shape.
7880         (mac_font_family_compare): Remove unused declaration.
7882 2015-08-29  Paul Eggert  <eggert@cs.ucla.edu>
7884         Fix minor text quoting in calc, calendar, vc
7885         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
7886         * lisp/calc/calc-help.el (calc-j-prefix-help):
7887         * lisp/calc/calc-misc.el (calc-help):
7888         * lisp/calc/calc.el (calc-algebraic-mode, calc-mode):
7889         Escape an apostrophe in a docstring.
7890         * lisp/calc/calc-forms.el (calc-hms-notation):
7891         * lisp/calc/calc-mode.el (calc-display-raw, calc-algebraic-mode):
7892         Escape an apostrophe in a diagnostic.
7893         * lisp/calc/calc-misc.el (calc-help):
7894         * lisp/calendar/diary-lib.el (diary-include-files):
7895         * lisp/calendar/todo-mode.el (todo-prefix, todo-item-mark):
7896         * lisp/vc/diff-mode.el (diff-delete-trailing-whitespace):
7897         * lisp/vc/ediff-diff.el (ediff-same-contents):
7898         * lisp/vc/ediff-merg.el (ediff-re-merge):
7899         * lisp/vc/ediff-ptch.el (ediff-patch-file-internal):
7900         * lisp/vc/ediff-util.el (ediff-test-save-region)
7901         (ediff-status-info):
7902         * lisp/vc/ediff.el (ediff-merge-revisions)
7903         (ediff-merge-revisions-with-ancestor):
7904         * lisp/vc/pcvs.el (cvs-mode-checkout, cvs-vc-command-advice):
7905         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
7906         Respect text quoting style in doc string or diagnostic.
7907         * lisp/calc/calc-prog.el (calc-kbd-push, calc-kbd-pop):
7908         * lisp/vc/add-log.el (change-log-goto-source):
7909         Avoid double-formatting.
7910         * lisp/vc/ediff-init.el (format-message):
7911         New backward-compatibility alias.
7913 2015-08-28  Paul Eggert  <eggert@cs.ucla.edu>
7915         Fix minor text quoting problems in lisp top level
7916         * lisp/apropos.el (apropos-describe-plist):
7917         * lisp/cus-theme.el (customize-themes):
7918         * lisp/dired.el (dired-log):
7919         * lisp/help-fns.el (describe-variable):
7920         * lisp/hexl.el (hexl-insert-multibyte-char):
7921         * lisp/info.el (Info-finder-find-node):
7922         * lisp/json.el (json-read-string):
7923         * lisp/novice.el (disabled-command-function)
7924         (disabled-command-function):
7925         * lisp/startup.el (normal-mouse-startup-screen):
7926         * lisp/woman.el (WoMan-log, WoMan-warn):
7927         Respect text quoting style in doc string or diagnostic.
7928         * lisp/replace.el (replace-character-fold):
7929         * src/syntax.c (Fmodify_syntax_entry):
7930         Escape an apostrophe in a docstring.
7931         * lisp/tempo.el (tempo-define-template):
7932         Remove confusing apostrophe from docstring.
7933         * lisp/whitespace.el (whitespace-mark-x):
7934         Use directed quotes in docstring.
7936 2015-08-28  Simen Heggestøyl  <simenheg@gmail.com>
7938         Fix indentation rule in css-mode
7939         * lisp/textmodes/css-mode.el (css-smie-rules): Fix indentation of
7940         brackets in presence of pseudo-selectors.  (Bug#21328)
7942 2015-08-28  Eli Zaretskii  <eliz@gnu.org>
7944         Fix a bug in recording a macro while flyspell-mode is active
7945         * lisp/subr.el (sit-for): Don't call read-event when recording a
7946         macro.  (Bug#21329)
7948 2015-08-27  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
7950         Tweak startup screen quoting
7951         * lisp/startup.el (normal-splash-screen): Use standard
7952         "M-" abbrevation rather than a confusingly-different one.
7953         (normal-no-mouse-startup-screen): Follow ‘text-quoting-style’.
7955 2015-08-27  Paul Eggert  <eggert@cs.ucla.edu>
7957         Add test case for ‘format’ bug and refactor
7958         * src/editfns.c (styled_format): Refactor internally, mostly by
7959         moving declarations closer to uses.  This should not affect behavior.
7960         * test/automated/textprop-tests.el (textprop-tests-format): New test.
7962         Fix ‘format’ bug with property offsets
7963         * src/editfns.c (styled_format): Fix recently-introduced ‘format’
7964         bug in calculating string property offsets (Bug#21351).
7966         Use straight quotes in lib-src diagnostics
7967         These auxiliary programs can’t use Emacs’s text-quoting-style,
7968         and it’s too much trouble to redo that mechanism by hand.
7969         So just use straight quotes for now.
7970         * lib-src/ebrowse.c (main):
7971         * lib-src/emacsclient.c (decode_options, main):
7972         * lib-src/etags.c (Ada_help, default_C_help, Cplusplus_help)
7973         (Forth_help, HTML_help, Lisp_help, Makefile_help, Objc_help)
7974         (Perl_help, PHP_help, Python_help, Scheme_help, TeX_help, auto_help)
7975         (none_help, print_language_names, print_help, add_regex)
7976         (suggest_asking_for_help):
7977         * lib-src/make-docfile.c (write_c_args, scan_c_stream):
7978         Use straight quotes in diagnostics.
7980         ‘text-quoting-style’ fixes for admin
7981         * admin/admin.el (cusver-scan, cusver-check):
7982         * admin/authors.el (authors-canonical-file-name):
7983         * admin/bzrmerge.el (bzrmerge-missing):
7984         Respect ‘text-quoting-style’ in diagnostics.
7986 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
7988         Assume GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS
7989         This removes the need for GCPRO1 etc.  Suggested by Stefan Monnier in:
7990         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00918.html
7991         * doc/lispref/internals.texi (Writing Emacs Primitives):
7992         * etc/NEWS:
7993         Document the change.
7994         * src/alloc.c (gcprolist, dump_zombies, MAX_ZOMBIES, zombies)
7995         (nzombies, ngcs, avg_zombies, max_live, max_zombies, avg_live)
7996         (Fgc_status, check_gcpros, relocatable_string_data_p, gc-precise):
7997         * src/bytecode.c (mark_byte_stack) [BYTE_MARK_STACK]:
7998         * src/eval.c (gcpro_level) [DEBUG_GCPRO]:
7999         * src/lisp.h (struct handler.gcpro, struct gcpro, GC_MARK_STACK)
8000         (GC_USE_GCPROS_AS_BEFORE, GC_MAKE_GCPROS_NOOPS)
8001         (GC_MARK_STACK_CHECK_GCPROS, GC_USE_GCPROS_CHECK_ZOMBIES)
8002         (BYTE_MARK_STACK, GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5, GCPRO6)
8003         (GCPRO7, UNGCPRO, RETURN_UNGCPRO):
8004         Remove.  All uses removed.  The code now assumes
8005         GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS.
8006         * src/bytecode.c (relocate_byte_stack):
8007         Rename from unmark_byte_stack, since it now only relocates.
8008         All callers changed.
8009         * src/frame.c (make_frame): Add an IF_LINT to pacify GCC 5.2
8010         with GCPROs removed.
8011         * src/systime.h: Use EMACS_LISP_H as the canary instead of GCPRO1.
8012         * test/automated/finalizer-tests.el (finalizer-basic)
8013         (finalizer-circular-reference, finalizer-cross-reference)
8014         (finalizer-error):
8015         * test/automated/generator-tests.el (cps-test-iter-close-finalizer):
8016         Remove tests, as they depend on gc-precise.
8018 2015-08-26  Nicolas Petton  <nicolas@petton.fr>
8020         Improve seq-concatenate for new sequence types
8021         Use the new `seq-into-sequence' in seqs passed to `seq-concatenate' to
8022         ensure that concatenation happens on sequences only.  This makes it
8023         possible to use `seq-concatenate' for new types of seqs.
8024         * lisp/emacs-lisp/seq.el (seq-into-sequence, seq-concatenate):
8025         New function used in `seq-concatenate'.
8026         * test/automated/seq-tests.el (test-seq-into-sequence): New unit test
8027         for seq-into-sequence.
8029 2015-08-26  Stephen Leake  <stephen_leake@stephe-leake.org>
8031         Add mode local overrides to xref-find-definitions
8032         * lisp/cedet/mode-local.el (xref-mode-local--override-present)
8033         (xref-mode-local-overload): New; add mode local overrides to
8034         xref-find-definitions.
8035         * test/automated/elisp-mode-tests.el: Add mode local override tests.
8036         (xref-elisp-test-run): Handle indented defuns.
8037         (xref-elisp-generic-*): Improve doc strings.
8038         * lisp/progmodes/elisp-mode.el (elisp-xref-find-def-functions): New.
8039         (elisp--xref-find-definitions): Use it.
8041         Add mode local overrides to describe-function
8042         * lisp/cedet/mode-local.el (describe-mode-local-overload):
8043         New; add mode local overrides to describe-function.
8044         * etc/NEWS: Document change.
8046 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
8048         Prefer straight quoting in some etc text files
8049         These files are plain text and might be used by non-Emacs apps.
8050         They’re mostly ASCII, so just use straight quotes.
8052         Fix quoting in ‘message_with_string’
8053         * src/nsfont.m (nsfont_open): Use directed quotes in format; they
8054         should work now.
8055         * src/xdisp.c (message_to_stderr): New function, refactored from
8056         part of ‘message3_nolog’.
8057         (message3_nolog): Use it.
8058         (message_with_string): Use it.  Don’t mishandle NUL bytes when
8059         noninteractive.  Prefer AUTO_STRING when it’s most likely faster.
8060         Use ‘format-message’, not ‘format’, so that quotes are translated.
8062 2015-08-26  Eli Zaretskii  <eliz@gnu.org>
8064         Mention false positives of file-accessible-directory on w32
8065         * src/fileio.c (Ffile_accessible_directory_p): Doc fix.
8066         (Bug#21346)
8068 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
8070         Treat error strings as help
8071         * src/print.c (print_error_message): Translate quotes and command
8072         keys in errmsg so that users see, e.g., "Symbol’s value as
8073         variable is void: foo" when text-quoting-style is curved.
8075 2015-08-26  Michael Albinus  <michael.albinus@gmx.de>
8077         * lisp/net/tramp-cache.el (top): Use `message', not `format-message'.
8079 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
8081         Top-level elisp files respect ‘text-quoting-style’
8082         In top-level elisp files, use format-message in diagnostic formats,
8083         so that they follow user preference as per ‘text-quoting-style’
8084         rather than being hard-coded to quote `like this'.
8085         * lisp/allout.el (allout-get-configvar-values):
8086         * lisp/apropos.el (apropos-symbols-internal):
8087         * lisp/dired-aux.el (dired-do-shell-command, dired-create-files)
8088         (dired-do-create-files-regexp, dired-create-files-non-directory):
8089         * lisp/dired-x.el (dired-do-run-mail):
8090         * lisp/dired.el (dired-log, dired-dnd-handle-local-file):
8091         * lisp/disp-table.el (standard-display-european):
8092         * lisp/find-dired.el (find-dired):
8093         * lisp/forms.el (forms-mode):
8094         * lisp/ido.el (ido-buffer-internal):
8095         * lisp/info.el (Info-index-next):
8096         * lisp/outline.el (outline-invent-heading):
8097         * lisp/printing.el (pr-ps-outfile-preprint, pr-i-ps-send):
8098         * lisp/proced.el (proced-log):
8099         * lisp/ps-print.el (ps-print-preprint, ps-get-size):
8100         * lisp/recentf.el (recentf-open-files, recentf-save-list):
8101         * lisp/savehist.el (savehist-save):
8102         * lisp/server.el (server-ensure-safe-dir):
8103         * lisp/ses.el (ses-rename-cell):
8104         * lisp/simple.el (list-processes--refresh):
8105         * lisp/startup.el (command-line):
8106         * lisp/strokes.el (strokes-unset-last-stroke)
8107         (strokes-execute-stroke):
8108         Use format-message so that quotes are restyled.
8109         * lisp/cus-edit.el (custom-raised-buttons, customize-browse):
8110         Don’t quote ‘raised’.
8111         * lisp/descr-text.el (describe-char):
8112         * lisp/dirtrack.el (dirtrack-debug-message):
8113         * lisp/hexl.el (hexl-insert-multibyte-char):
8114         Apply substitute-command-keys to help string.
8115         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
8116         (wdired-do-perm-changes):
8117         Let dired-log do the formatting.
8119 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
8121         Go back to grave quoting in Tramp
8122         * lisp/net/tramp-adb.el:
8123         * lisp/net/tramp-cache.el:
8124         * lisp/net/tramp-compat.el:
8125         * lisp/net/tramp-gvfs.el:
8126         * lisp/net/tramp-gw.el:
8127         * lisp/net/tramp-sh.el:
8128         * lisp/net/tramp-smb.el:
8129         * lisp/net/tramp.el:
8130         Stick with grave quoting in diagnostics strings.  This is more
8131         portable to older Emacs, desirable for Tramp.
8132         * lisp/net/tramp-cache.el: Use ‘format-message’, not ‘format’,
8133         for diagnostic that needs requoting.
8134         * lisp/net/tramp-compat.el (format-message):
8135         Fall back on simple ‘format’, since that’s good enough now.
8137         Go back to grave quoting in Gnus
8138         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
8139         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
8140         (gnus-agent-fetch-headers):
8141         * lisp/gnus/gnus-int.el (gnus-start-news-server):
8142         * lisp/gnus/gnus-registry.el:
8143         (gnus-registry--split-fancy-with-parent-internal)
8144         (gnus-registry-post-process-groups):
8145         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
8146         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
8147         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
8148         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
8149         * lisp/gnus/spam.el (spam-check-blackholes):
8150         Stick with grave quoting in diagnostics strings.  This is more
8151         portable to older Emacs, desirable for Gnus.
8153         Fix customization of text-quoting-style
8154         * lisp/cus-edit.el (custom-guess-type, custom-variable-documentation):
8155         * lisp/wid-edit.el (widget-docstring):
8156         Get raw docstring here since it’s cooked later and should not be
8157         cooked twice.
8158         * lisp/cus-edit.el (custom-group-value-create):
8159         Cook the docstring before inserting it.
8160         * lisp/cus-start.el (text-quoting-style): Quote the customization
8161         docstrings according to the new rules.  Give curved examples.
8163         format-message now curves ` and '
8164         That way, the caller doesn’t have to use curved quotes to
8165         get diagnostics that match the text-quoting-style preferences.
8166         Suggested by Dmitry Gutov in:
8167         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00893.html
8168         This means we no longer need %qs, so remove that format.
8169         While we’re at it, fix an unlikely bug and lessen the pressure
8170         on the garbage collector by processing the string once rather
8171         than twice in the usual case.
8172         * doc/lispref/strings.texi (Formatting Strings):
8173         * etc/NEWS: Document this.
8174         * lisp/subr.el (format-message): Remove; now done in C.
8175         * src/callint.c (Fcall_interactively):
8176         * src/editfns.c (Fmessage, Fmessage_box):
8177         Use Fformat_message instead of Finternal__text_restyle
8178         followed by Fformat.
8179         * src/doc.c (LSQM, RSQM): Remove; all uses changed to use
8180         uLSQM and uRSQM.
8181         (Fsubstitute_command_keys): Prefer AUTO_STRING to build_string
8182         when pure ASCII now suffices.  Fix unlikely bug when parsing
8183         unibyte string containing non-ASCII bytes.  Use inline code
8184         rather than memcpy, as it’s a tiny number of bytes.
8185         (Finternal__text_restyle): Remove; no longer used.
8186         (syms_of_doc): Don’t declare it.
8187         * src/editfns.c (Fformat): Rewrite in terms of new function
8188         ‘styled_format’.
8189         (Fformat_message): New function, moved here from subr.el.
8190         (styled_format): New function, with the old guts of Fformat,
8191         except it now optionally transliterates quotes, and it transliterates
8192         traditional grave accent and apostrophe quoting as well.
8193         Remove recently-added q flag; no longer needed or used.
8194         (syms_of_editfns): Define format-message.
8195         * src/lisp.h (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
8196         Remove; no longer need to be global symbols.
8197         * src/xdisp.c (vadd_to_log): Use Fformat_message, not Fformat,
8198         so that callers can use `%s'.
8199         * src/image.c (image_size_error, xbm_load_image, xbm_load)
8200         (xpm_load, pbm_load, png_load_body, jpeg_load_body, tiff_load)
8201         (gif_load, imagemagick_load_image, imagemagick_load, svg_load)
8202         (svg_load_image, gs_load, x_kill_gs_process):
8203         * src/lread.c (load_warn_old_style_backquotes):
8204         * src/xfaces.c (load_pixmap):
8205         * src/xselect.c (x_clipboard_manager_error_1):
8206         Use `%s' instead of %qs in formats.
8208 2015-08-25  Eli Zaretskii  <eliz@gnu.org>
8210         Minor fixes in doc/emacs/search.texi
8211         * doc/emacs/search.texi (Basic Isearch): Fix a typo.
8212         (Special Isearch): Use @w{} to generate several consecutive spaces
8213         with Texinfo 6.  (Bug#21345)
8215 2015-08-25  Michael Albinus  <michael.albinus@gmx.de>
8217         * lisp/net/tramp-sh.el (tramp-awk-encode, tramp-awk-decode)
8218         (tramp-awk-coding-test): New defconsts.
8219         (tramp-remote-coding-commands): Use them.
8220         (tramp-find-inline-encoding): Check for Perl only if necessary.
8222 2015-08-25  Xue Fuqiao  <xfq.free@gmail.com>
8224         * doc/lispintro/emacs-lisp-intro.texi (Run a Program): Add some
8225         index entries for the special form `quote'.
8227 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
8229         Spelling fixes
8231         Gnus format-message typo fix
8232         * lisp/gnus/gnus-util.el (gnus-format-message):
8233         Fix typo when running in older Emacs.
8235         Prefer directed to neutral quotes in docstings and diagnostics.
8236         In docstrings, escape apostrophes that would otherwise be translated
8237         to curved quotes using the newer, simpler rules.
8238         * admin/unidata/unidata-gen.el (unidata-gen-table):
8239         * lisp/align.el (align-region):
8240         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet):
8241         * lisp/bookmark.el (bookmark-default-annotation-text):
8242         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
8243         * lisp/calc/calc-lang.el (math-read-giac-subscr)
8244         (math-read-math-subscr):
8245         * lisp/calc/calc-misc.el (report-calc-bug):
8246         * lisp/calc/calc-prog.el (calc-fix-token-name)
8247         (calc-read-parse-table-part):
8248         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
8249         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
8250         * lisp/dabbrev.el (dabbrev-expand):
8251         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
8252         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
8253         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
8254         * lisp/emulation/viper-cmd.el (viper-toggle-search-style):
8255         * lisp/erc/erc-button.el (erc-nick-popup):
8256         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login):
8257         * lisp/eshell/em-dirs.el (eshell/cd):
8258         * lisp/eshell/em-glob.el (eshell-glob-regexp):
8259         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
8260         * lisp/eshell/esh-arg.el (eshell-parse-arguments):
8261         * lisp/eshell/esh-opt.el (eshell-show-usage):
8262         * lisp/files-x.el (modify-file-local-variable):
8263         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer)
8264         (filesets-update-pre010505):
8265         * lisp/find-cmd.el (find-generic, find-to-string):
8266         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
8267         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
8268         (gnus-agent-fetch-headers):
8269         * lisp/gnus/gnus-int.el (gnus-start-news-server):
8270         * lisp/gnus/gnus-registry.el:
8271         (gnus-registry--split-fancy-with-parent-internal):
8272         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
8273         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
8274         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
8275         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
8276         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
8277         * lisp/gnus/spam.el (spam-check-blackholes):
8278         * lisp/mail/feedmail.el (feedmail-run-the-queue):
8279         * lisp/mpc.el (mpc-playlist-rename):
8280         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
8281         * lisp/net/mairix.el (mairix-widget-create-query):
8282         * lisp/net/tramp-cache.el:
8283         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
8284         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
8285         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
8286         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
8287         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
8288         (org-babel-goto-named-result):
8289         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
8290         * lisp/org/ob-ref.el (org-babel-ref-resolve):
8291         * lisp/org/org-agenda.el (org-agenda-prepare):
8292         * lisp/org/org-bibtex.el (org-bibtex-fields):
8293         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
8294         (org-clock-resolve):
8295         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
8296         * lisp/org/org-habit.el (org-habit-parse-todo):
8297         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
8298         (org-mouse-context-menu):
8299         * lisp/org/org-table.el (org-table-edit-formulas):
8300         * lisp/org/ox.el (org-export-async-start):
8301         * lisp/play/dunnet.el (dun-score, dun-help, dun-endgame-question)
8302         (dun-rooms, dun-endgame-questions):
8303         * lisp/progmodes/ada-mode.el (ada-goto-matching-start):
8304         * lisp/progmodes/ada-xref.el (ada-find-executable):
8305         * lisp/progmodes/antlr-mode.el (antlr-options-alists):
8306         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
8307         (flymake-start-syntax-check-process):
8308         * lisp/progmodes/python.el (python-define-auxiliary-skeleton):
8309         * lisp/progmodes/sql.el (sql-comint):
8310         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
8311         * lisp/server.el (server-get-auth-key):
8312         * lisp/subr.el (version-to-list):
8313         * lisp/textmodes/reftex-ref.el (reftex-label):
8314         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
8315         * lisp/vc/ediff-diff.el (ediff-same-contents):
8316         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
8317         * test/automated/tramp-tests.el (tramp-test33-asynchronous-requests):
8318         Use directed rather than neutral quotes in diagnostics.
8320         Treat ' like ’ even when not matching `
8321         This is simpler and easier to explain, and should encourage better
8322         typography.  Do this in Electric Quote mode and when translating
8323         quotes in docstrings.  Inspired by a suggestion by Dmitry Gutov in:
8324         https://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00806.html
8325         * doc/emacs/text.texi (Quotation Marks):
8326         * doc/lispref/help.texi (Keys in Documentation):
8327         * etc/NEWS:
8328         Document this.
8329         * lisp/electric.el (electric-quote-post-self-insert-function):
8330         * src/doc.c (Fsubstitute_command_keys):
8331         Always treat ' like ’ even when not matched by an open quote.
8333 2015-08-25  Glenn Morris  <rgm@gnu.org>
8335         * doc/emacs/cal-xtra.texi (Holiday Customizing): Fix typo in example.
8336         * lisp/calendar/holidays.el (calendar-holidays): Fix doc typo.
8338 2015-08-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
8340         * src/macfont.m (macfont_create_family_with_symbol):
8341         Accept localized names.
8343 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
8345         Tramp diagnostics as per ‘text-quoting-style’
8346         * lisp/net/tramp-adb.el (tramp-adb-handle-file-truename)
8347         (tramp-adb-get-ls-command, tramp-adb-handle-make-directory)
8348         (tramp-adb-handle-delete-directory)
8349         (tramp-adb-handle-delete-file)
8350         (tramp-adb-handle-file-local-copy)
8351         (tramp-adb-handle-write-region, tramp-adb-handle-copy-file)
8352         (tramp-adb-send-command-and-check, tramp-adb-wait-for-output)
8353         (tramp-adb-maybe-open-connection):
8354         * lisp/net/tramp-cache.el:
8355         * lisp/net/tramp-compat.el (tramp-compat-temporary-file-directory)
8356         (tramp-compat-octal-to-decimal)
8357         (tramp-compat-coding-system-change-eol-conversion):
8358         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler)
8359         (tramp-gvfs-do-copy-or-rename-file)
8360         (tramp-gvfs-handle-delete-directory)
8361         (tramp-gvfs-handle-delete-file)
8362         (tramp-gvfs-handle-expand-file-name)
8363         (tramp-gvfs-handle-file-local-copy)
8364         (tramp-gvfs-handle-file-notify-add-watch)
8365         (tramp-gvfs-handle-make-directory)
8366         (tramp-gvfs-handle-write-region, tramp-gvfs-url-file-name):
8367         * lisp/net/tramp-gw.el (tramp-gw-gw-proc-sentinel)
8368         (tramp-gw-aux-proc-sentinel, tramp-gw-open-connection):
8369         * lisp/net/tramp-sh.el (tramp-sh-handle-file-truename)
8370         (tramp-sh-handle-set-visited-file-modtime)
8371         (tramp-sh-handle-set-file-modes)
8372         (tramp-sh-handle-file-name-all-completions)
8373         (tramp-sh-handle-add-name-to-file, tramp-do-copy-or-rename-file)
8374         (tramp-do-copy-or-rename-file-directly)
8375         (tramp-do-copy-or-rename-file-out-of-band)
8376         (tramp-sh-handle-make-directory)
8377         (tramp-sh-handle-delete-directory, tramp-sh-handle-delete-file)
8378         (tramp-sh-handle-insert-directory, tramp-process-sentinel)
8379         (tramp-sh-handle-start-file-process)
8380         (tramp-sh-handle-file-local-copy)
8381         (tramp-sh-handle-write-region, tramp-sh-handle-vc-registered)
8382         (tramp-sh-handle-file-notify-add-watch, tramp-maybe-send-script)
8383         (tramp-find-file-exists-command, tramp-open-shell)
8384         (tramp-find-shell)
8385         (tramp-open-connection-setup-interactive-shell)
8386         (tramp-find-inline-encoding, tramp-find-inline-compress)
8387         (tramp-compute-multi-hops, tramp-maybe-open-connection)
8388         (tramp-wait-for-output, tramp-send-command-and-check)
8389         (tramp-send-command-and-read, tramp-get-remote-path)
8390         (tramp-get-ls-command, tramp-get-ls-command-with-dired)
8391         (tramp-get-ls-command-with-quoting-style)
8392         (tramp-get-test-command, tramp-get-remote-ln)
8393         (tramp-get-remote-perl, tramp-get-remote-stat)
8394         (tramp-get-remote-readlink, tramp-get-remote-trash)
8395         (tramp-get-remote-touch, tramp-get-remote-gvfs-monitor-dir)
8396         (tramp-get-remote-inotifywait, tramp-get-remote-id)
8397         (tramp-get-remote-python):
8398         * lisp/net/tramp-smb.el (tramp-smb-errors)
8399         (tramp-smb-handle-add-name-to-file, tramp-smb-handle-copy-file)
8400         (tramp-smb-handle-delete-directory)
8401         (tramp-smb-handle-delete-file)
8402         (tramp-smb-handle-file-local-copy)
8403         (tramp-smb-handle-make-directory)
8404         (tramp-smb-handle-make-directory-internal)
8405         (tramp-smb-handle-make-symbolic-link)
8406         (tramp-smb-handle-rename-file, tramp-smb-handle-set-file-acl)
8407         (tramp-smb-handle-set-file-modes)
8408         (tramp-smb-handle-write-region, tramp-smb-get-file-entries):
8409         * lisp/net/tramp.el (tramp-debug-message, tramp-error)
8410         (tramp-process-actions):
8411         Generate diagnostics according to ‘text-quoting-style’, by
8412         using curved quotes in format strings and ‘format-message’
8413         when appropriate.
8414         * lisp/net/tramp-compat.el (format-message):
8415         Define a replacement, if it’s an older version of Emacs
8416         that doesn’t have it already.
8418         * etc/NEWS: Clarify text-quoting-style and electric-quote-mode.
8420 2015-08-24  Xue Fuqiao  <xfq.free@gmail.com>
8422         Fix documentation for `save-excursion'
8423         * doc/lispref/positions.texi (Excursions):
8424         * doc/lispintro/emacs-lisp-intro.texi (save-excursion)
8425         (Template for save-excursion, Point and mark): `save-excursion'
8426         does not save&restore the mark any more.
8428 2015-08-24  Michael Albinus  <michael.albinus@gmx.de>
8430         * lisp/net/tramp-sh.el (tramp-stat-marker, tramp-stat-quoted-marker):
8431         New defconsts.
8432         (tramp-do-file-attributes-with-stat)
8433         (tramp-do-directory-files-and-attributes-with-stat): Use them.
8434         (tramp-convert-file-attributes): Remove double slashes in symlinks.
8435         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
8436         Handle symlinks with "//" in the file name.
8438         Revert fbb5531fa11d13854b274d28ccd329c9b6652cfc for tramp.el.
8440 2015-08-24  Nicolas Petton  <nicolas@petton.fr>
8442         Fix cl-subseq and cl-concatenate
8443         * lisp/emacs-lisp/cl-extra.el (cl-subseq, cl-concatenate): Do not use
8444         seq functions.
8445         * lisp/emacs-lisp/seq.el (seq-concatenate): Call cl-concatenate in
8446         seq-concatenate.
8448 2015-08-24  Pip Cet  <pipcet@gmail.com>  (tiny change)
8450         Fix full-screen code when there is no window manager (Bug#21317)
8451         * src/xterm.h (x_wm_supports): Declare external.
8452         * src/xterm.c (wm_suppports): Rename to `x_wm_supports', export.
8453         (do_ewmh_fullscreen, x_ewmh_activate_frame): Adjust for rename.
8454         (x_check_fullscreen): Call `x_wm_set_size_hint', restore
8455         `fullscreen' frame parameter.
8456         * src/gtkutil.c (x_wm_set_size_hint): Set size hints when running
8457         without a window manager.
8459 2015-08-24  Glenn Morris  <rgm@gnu.org>
8461         * lisp/version.el (emacs-version): No longer include build host.
8462         * doc/lispref/intro.texi (Version Info): Update example.
8464 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
8466         * doc/lispref/elisp.texi: Fix typo in previous change.
8468         More-conservative ‘format’ quote restyling
8469         Instead of restyling curved quotes for every call to ‘format’,
8470         create a new function ‘format-message’ that does the restyling,
8471         and using the new function instead of ‘format’ only in contexts
8472         where this seems appropriate.
8473         Problem reported by Dmitry Gutov and Andreas Schwab in:
8474         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00826.html
8475         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00827.html
8476         * doc/lispref/commands.texi (Using Interactive):
8477         * doc/lispref/control.texi (Signaling Errors, Signaling Errors):
8478         * doc/lispref/display.texi (Displaying Messages, Progress):
8479         * doc/lispref/elisp.texi:
8480         * doc/lispref/help.texi (Keys in Documentation):
8481         * doc/lispref/minibuf.texi (Minibuffer Misc):
8482         * doc/lispref/strings.texi (Formatting Strings):
8483         * etc/NEWS:
8484         Document the changes.
8485         * lisp/abbrev.el (expand-region-abbrevs):
8486         * lisp/apropos.el (apropos-library):
8487         * lisp/calc/calc-ext.el (calc-record-message)
8488         (calc-user-function-list):
8489         * lisp/calc/calc-help.el (calc-describe-key, calc-full-help):
8490         * lisp/calc/calc-lang.el (math-read-big-balance):
8491         * lisp/calc/calc-store.el (calc-edit-variable):
8492         * lisp/calc/calc-units.el (math-build-units-table-buffer):
8493         * lisp/calc/calc-yank.el (calc-edit-mode):
8494         * lisp/calendar/icalendar.el (icalendar-export-region)
8495         (icalendar--add-diary-entry):
8496         * lisp/cedet/mode-local.el (mode-local-print-binding)
8497         (mode-local-describe-bindings-2):
8498         * lisp/cedet/semantic/complete.el (semantic-completion-message):
8499         * lisp/cedet/semantic/edit.el (semantic-parse-changes-failed):
8500         * lisp/cedet/semantic/wisent/comp.el (wisent-log):
8501         * lisp/cedet/srecode/insert.el (srecode-insert-show-error-report):
8502         * lisp/descr-text.el (describe-text-properties-1, describe-char):
8503         * lisp/dframe.el (dframe-message):
8504         * lisp/dired-aux.el (dired-query):
8505         * lisp/emacs-lisp/byte-opt.el (byte-compile-log-lap-1):
8506         * lisp/emacs-lisp/bytecomp.el (byte-compile-log)
8507         (byte-compile-log-file, byte-compile-warn, byte-compile-form):
8508         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
8509         (cconv-analyze-form):
8510         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
8511         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
8512         * lisp/emacs-lisp/cl-macs.el (cl-symbol-macrolet):
8513         * lisp/emacs-lisp/edebug.el (edebug-format):
8514         * lisp/emacs-lisp/eieio-core.el (eieio-oref):
8515         * lisp/emacs-lisp/eldoc.el (eldoc-minibuffer-message)
8516         (eldoc-message):
8517         * lisp/emacs-lisp/elint.el (elint-file, elint-log):
8518         * lisp/emacs-lisp/find-func.el (find-function-library):
8519         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
8520         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
8521         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
8522         * lisp/emacs-lisp/package.el (package-compute-transaction)
8523         (package-install-button-action, package-delete-button-action)
8524         (package-menu--list-to-prompt):
8525         * lisp/emacs-lisp/timer.el (timer-event-handler):
8526         * lisp/emacs-lisp/warnings.el (lwarn, warn):
8527         * lisp/emulation/viper-cmd.el:
8528         (viper-toggle-parse-sexp-ignore-comments)
8529         (viper-kill-buffer, viper-brac-function):
8530         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
8531         * lisp/facemenu.el (facemenu-add-new-face):
8532         * lisp/faces.el (face-documentation, read-face-name)
8533         (face-read-string, read-face-font, describe-face):
8534         * lisp/files.el (find-alternate-file, hack-local-variables)
8535         (hack-one-local-variable--obsolete, write-file)
8536         (basic-save-buffer, delete-directory):
8537         * lisp/format.el (format-write-file, format-find-file)
8538         (format-insert-file):
8539         * lisp/help-fns.el (help-fns--key-bindings)
8540         (help-fns--compiler-macro, help-fns--obsolete)
8541         (help-fns--interactive-only, describe-function-1)
8542         (describe-variable):
8543         * lisp/help.el (describe-mode):
8544         * lisp/info-xref.el (info-xref-output):
8545         * lisp/info.el (Info-virtual-index-find-node)
8546         (Info-virtual-index, info-apropos):
8547         * lisp/international/kkc.el (kkc-error):
8548         * lisp/international/mule-cmds.el:
8549         (select-safe-coding-system-interactively)
8550         (select-safe-coding-system, describe-input-method):
8551         * lisp/international/mule-conf.el (code-offset):
8552         * lisp/international/mule-diag.el (describe-character-set)
8553         (list-input-methods-1):
8554         * lisp/international/quail.el (quail-error):
8555         * lisp/minibuffer.el (minibuffer-message):
8556         * lisp/mpc.el (mpc--debug):
8557         * lisp/msb.el (msb--choose-menu):
8558         * lisp/net/ange-ftp.el (ange-ftp-message):
8559         * lisp/net/gnutls.el (gnutls-message-maybe):
8560         * lisp/net/newst-backend.el (newsticker--sentinel-work):
8561         * lisp/net/newst-treeview.el (newsticker--treeview-load):
8562         * lisp/net/nsm.el (nsm-query-user):
8563         * lisp/net/rlogin.el (rlogin):
8564         * lisp/net/soap-client.el (soap-warning):
8565         * lisp/net/tramp.el (tramp-debug-message):
8566         * lisp/nxml/nxml-outln.el (nxml-report-outline-error):
8567         * lisp/nxml/nxml-parse.el (nxml-parse-error):
8568         * lisp/nxml/rng-cmpct.el (rng-c-error):
8569         * lisp/nxml/rng-match.el (rng-compile-error):
8570         * lisp/nxml/rng-uri.el (rng-uri-error):
8571         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
8572         * lisp/org/org-ctags.el:
8573         (org-ctags-ask-rebuild-tags-file-then-find-tag):
8574         * lisp/proced.el (proced-log):
8575         * lisp/progmodes/ebnf2ps.el (ebnf-log):
8576         * lisp/progmodes/flymake.el (flymake-log):
8577         * lisp/progmodes/vhdl-mode.el (vhdl-warning-when-idle):
8578         * lisp/replace.el (occur-1):
8579         * lisp/simple.el (execute-extended-command)
8580         (undo-outer-limit-truncate, define-alternatives):
8581         * lisp/startup.el (command-line):
8582         * lisp/subr.el (error, user-error, add-to-list):
8583         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
8584         (tutorial--find-changed-keys):
8585         * src/callint.c (Fcall_interactively):
8586         * src/editfns.c (Fmessage, Fmessage_box):
8587         Restyle the quotes of format strings intended for use as a
8588         diagnostic, when restyling seems appropriate.
8589         * lisp/subr.el (format-message): New function.
8590         * src/doc.c (Finternal__text_restyle): New function.
8591         (syms_of_doc): Define it.
8593 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
8595         * etc/NEWS: The new ‘q’ flag is not an incompatible change.
8597 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
8599         python.el: Fix python-shell-buffer-substring on indented code
8600         (Bug#21086)
8601         * lisp/progmodes/python.el (python-shell-buffer-substring):
8602         Respect current line indentation when calculating string.
8603         * test/automated/python-tests.el
8604         (python-shell-buffer-substring-10)
8605         (python-shell-buffer-substring-11)
8606         (python-shell-buffer-substring-12): New tests.
8608 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
8610         Fix minor glitches from ‘format’ reversion
8611         * doc/lispref/strings.texi (Formatting Strings):
8612         After reversion, ‘text-quoting-style’ is documented in ‘Keys in
8613         Documentation’, not below.
8614         * src/syntax.c (Finternal_describe_syntax_value):
8615         Prefer AUTO_STRING to build_string where either will do, as
8616         AUTO_STRING is a bit faster.
8618 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
8620         python.el: Defer shell setup code until first interactive prompt
8621         * lisp/progmodes/python.el
8622         (python-shell-comint-watch-for-first-prompt-output-filter):
8623         New function.
8624         (inferior-python-mode): Use it.
8625         (python-shell-first-prompt-hook): New hook.
8626         (python-shell-send-setup-code)
8627         (python-shell-completion-native-turn-on-maybe-with-msg): Attach to
8628         this hook instead of inferior-python-hook.
8630 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
8632         Remove the calls to `seq-into` from `seq-concatenate`
8633         Since most new types of seq would have to be defined as sequences (cons
8634         cells or CL structs, mostly), there is no need to convert the seqs to
8635         sequences (which can be a fairly expensive operation).
8636         * lisp/emacs-lisp/seq.el (seq-concatenate): Do not ensure that seqs are
8637         sequences.
8639 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
8641         python.el: Fix completion for pdb interactions
8642         * lisp/progmodes/python.el (python-shell-completion-setup-code):
8643         Simplify.  Toggle print_mode for native wrapped completer.
8644         (python-shell-completion-native-setup): Ensure process buffer.
8645         Add print_mode attribute to completer wrapper to toggle returning
8646         or printing candidates.
8647         (python-shell-completion-native-get-completions): Cleanup.
8648         (python-shell-completion-get-completions): Cleanup.
8649         (python-shell-completion-at-point): Perform prompt checks.
8650         Force fallback completion in pdb interactions.
8652 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
8654         Make seq.el more extensible by using cl-defmethod
8655         * lisp/emacs-lisp/seq.el: Define seq.el functions using cl-defmethod to
8656         make it easier to extend seq.el with new "seq types".
8657         * test/automated/seq-tests.el (test-setf-seq-elt): New test.
8658         * lisp/emacs-lisp/cl-extra.el (cl-subseq): Move back the definition of
8659         subseq in cl-extra.el, and use it in seq.el.
8661 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
8663         python.el: Fix prompt detection with user overridden interpreter
8664         * lisp/progmodes/python.el (python-shell-prompt-detect):
8665         Honor buffer local python-shell-interpreter and
8666         python-shell-interpreter-interactive-arg.
8668 2015-08-23  Eli Zaretskii  <eliz@gnu.org>
8670         Support exec-directory with non-ASCII characters on Windows
8671         * src/w32proc.c (sys_spawnve): Make sure exec-directory is encoded
8672         in the system's ANSI codepage, when it is used for invoking
8673         cmdproxy.
8675 2015-08-23  Andreas Schwab  <schwab@linux-m68k.org>
8677         Revert "Extend ‘format’ to translate curved quotes"
8678         This reverts commit 244c801689d2f7a80480d83cd7d092d4762ebe08.
8680         Revert "Prefer ‘format’ to ‘substitute-command-keys’"
8681         This reverts commit 6af5aad26411ffe21c3fe4bc5438347110910111.
8683 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
8685         * doc/lispintro/emacs-lisp-intro.texi (Switching Buffers):
8686         Clarify "invisible window".
8688 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
8690         * doc/emacs/modes.texi (Choosing Modes): Minor doc fix for
8691         magic-fallback-mode-alist.
8693 2015-08-22  Fabián Ezequiel Gallina  <fgallina@gnu.org>
8695         python.el: fallback completion, ffap and eldoc setup enhancements
8696         Setup codes are now sent continuously so that the current frame is
8697         always taken into account.  This allows working within debuggers
8698         and always keeping a fresh version of setup codes that will return
8699         proper results.
8700         * lisp/progmodes/python.el (python-shell-setup-codes): Cleanup.
8701         (python-shell-send-setup-code): Send code only when
8702         python-shell-setup-codes is non-nil.
8703         (python-shell-completion-string-code): Cleanup trailing newline.
8704         (python-shell-completion-get-completions): Always use
8705         python-shell-completion-setup-code.
8706         (python-ffap-setup-code): Work with any object, not only modules.
8707         (python-ffap-string-code): Cleanup trailing newline.
8708         (python-ffap-module-path): Always use python-ffap-setup-code.
8709         (python-eldoc-string-code): Cleanup trailing newline.
8710         (python-eldoc--get-doc-at-point): Always use
8711         python-eldoc-setup-code.  Return non-nil only if docstring is
8712         found.
8714         python.el: Increase native completion robustness
8715         * lisp/progmodes/python.el (python-shell-completion-native-setup):
8716         Make completer print real candidates and just return dummy ones to
8717         avoid input modification.
8718         (python-shell-completion-native-get-completions): Set
8719         comint-redirect-insert-matching-regexp to non-nil and make
8720         comint-redirect-finished-regexp match the last dummy candidate.
8721         Use python-shell-accept-process-output to wait for the full list
8722         of candidates.
8724 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
8726         Fix invocation of programs via cmdproxy.exe
8727         * src/w32proc.c (sys_spawnve): Use exec-directory, not
8728         invocation-directory, for finding cmdproxy.exe.  When Emacs is
8729         run from the source tree, look for cmdproxy.exe in the same source
8730         tree.  (Bug#21323)
8732 2015-08-22  Simen Heggestøyl  <simenheg@gmail.com>
8734         Handle comments inside unquoted URIs in css-mode
8735         * lisp/textmodes/css-mode.el (css--uri-re): New defconst.
8736         (css-syntax-propertize-function): New defconst.
8737         (css--font-lock-keywords): Handle parens around unquoted URIs.
8738         (css-mode): Set `syntax-propertize-function'.
8740 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
8742         Support invocation of Hunspell with multiple dictionaries
8743         * lisp/textmodes/ispell.el (ispell-parse-hunspell-affix-file):
8744         Support lists of dictionaries of the form "DICT1,DICT2,...".
8745         (ispell-hunspell-add-multi-dic): New command.  (Bug#20495)
8747         Minor formatting changes in ispell.el
8748         * lisp/textmodes/ispell.el (ispell-create-debug-buffer)
8749         (ispell-print-if-debug, ispell-aspell-find-dictionary)
8750         (ispell-aspell-add-aliases, ispell-hunspell-dict-paths-alist)
8751         (ispell-hunspell-dictionary-alist)
8752         (ispell-hunspell-fill-dictionary-entry)
8753         (ispell-find-hunspell-dictionaries, ispell-send-replacement)
8754         (ispell-buffer-with-debug, ispell-complete-word)
8755         (ispell-current-dictionary, ispell-current-personal-dictionary)
8756         (ispell-accept-output, ispell-minor-mode)
8757         (ispell-personal-dictionary, ispell-dictionary-alist)
8758         (ispell-really-aspell, ispell-really-hunspell)
8759         (ispell-encoding8-command, ispell-aspell-supports-utf8)
8760         (ispell-aspell-dictionary-alist, ispell-set-spellchecker-params):
8761         Fix whitespace, inconsistent capitalization, and arguments in doc
8762         strings.
8764 2015-08-22  Martin Rudalics  <rudalics@gmx.at>
8766         * lisp/window.el (adjust-window-trailing-edge): Fix bug where this
8767         function refused to resize a size-preserved window.
8769 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
8771         * doc/lispref/windows.texi (Selecting Windows): Improve
8772         documentation and indexing of 'window-use-time'.
8774 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
8776         * lisp/progmodes/cc-vars.el, lisp/progmodes/cc-styles.el:
8777         * lisp/progmodes/cc-mode.el, lisp/progmodes/cc-menus.el:
8778         * lisp/progmodes/cc-langs.el, lisp/progmodes/cc-guess.el:
8779         * lisp/progmodes/cc-fonts.el, lisp/progmodes/cc-engine.el:
8780         * lisp/progmodes/cc-defs.el, lisp/progmodes/cc-cmds.el:
8781         * lisp/progmodes/cc-bytecomp.el, lisp/progmodes/cc-awk.el:
8782         * lisp/progmodes/cc-align.el, lisp/net/soap-client.el:
8783         Fix up commenting style.
8785 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
8787         text-quoting-style in emacs-lisp diagnostics
8788         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
8789         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
8790         (ad-disable-advice, ad-remove-advice, ad-set-argument)
8791         (ad-set-arguments):
8792         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
8793         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
8794         (byte-optimize-while, byte-optimize-apply):
8795         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
8796         (byte-compile-log-file, byte-compile-format-warn)
8797         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
8798         (byte-compile-cl-warn)
8799         (byte-compile-warn-about-unresolved-functions)
8800         (byte-compile-file, byte-compile-fix-header)
8801         (byte-compile--declare-var, byte-compile-file-form-defmumble)
8802         (byte-compile-form, byte-compile-normal-call)
8803         (byte-compile-variable-ref, byte-compile-variable-set)
8804         (byte-compile-subr-wrong-args, byte-compile-setq-default)
8805         (byte-compile-negation-optimizer)
8806         (byte-compile-condition-case--old)
8807         (byte-compile-condition-case--new, byte-compile-save-excursion)
8808         (byte-compile-defvar, byte-compile-autoload)
8809         (byte-compile-lambda-form)
8810         (byte-compile-make-variable-buffer-local, display-call-tree)
8811         (batch-byte-compile):
8812         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
8813         (cconv-analyze-form):
8814         * lisp/emacs-lisp/chart.el (chart-space-usage):
8815         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
8816         (check-declare-warn, check-declare-file)
8817         (check-declare-directory):
8818         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
8819         (checkdoc-message-text-engine):
8820         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer):
8821         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
8822         (cl-symbol-macrolet):
8823         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
8824         * lisp/emacs-lisp/copyright.el (copyright)
8825         (copyright-update-directory):
8826         * lisp/emacs-lisp/edebug.el (edebug-read-list):
8827         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
8828         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
8829         (eieio-oref, eieio-oset-default):
8830         * lisp/emacs-lisp/eieio-speedbar.el:
8831         (eieio-speedbar-child-make-tag-lines)
8832         (eieio-speedbar-child-description):
8833         * lisp/emacs-lisp/eieio.el (defclass, change-class):
8834         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
8835         (elint-init-form, elint-check-defalias-form)
8836         (elint-check-let-form):
8837         * lisp/emacs-lisp/ert.el (ert-get-test):
8838         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
8839         (find-function-library):
8840         * lisp/emacs-lisp/generator.el (iter-yield):
8841         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
8842         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
8843         * lisp/emacs-lisp/package-x.el (package-upload-file):
8844         * lisp/emacs-lisp/package.el (package-version-join)
8845         (package-disabled-p, package-activate-1, package-activate)
8846         (package--download-one-archive)
8847         (package--download-and-read-archives)
8848         (package-compute-transaction, package-install-from-archive)
8849         (package-install, package-install-selected-packages)
8850         (package-delete, package-autoremove)
8851         (package-install-button-action, package-delete-button-action)
8852         (package-menu-hide-package, package-menu--list-to-prompt)
8853         (package-menu--perform-transaction)
8854         (package-menu--find-and-notify-upgrades):
8855         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
8856         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
8857         * lisp/emacs-lisp/ring.el (ring-next, ring-previous):
8858         * lisp/emacs-lisp/rx.el (rx-check, rx-anything):
8859         * lisp/emacs-lisp/smie.el (smie-config-save):
8860         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
8861         * lisp/emacs-lisp/testcover.el (testcover-1value):
8862         Use curved quotes in diagnostic format strings.
8864 2015-08-21  Fabián Ezequiel Gallina  <fgallina@gnu.org>
8866         python.el: Ensure remote process-environment on non-interactive processes
8867         * lisp/progmodes/python.el
8868         (python-shell-tramp-refresh-process-environment): New function.
8869         (python-shell-with-environment): Use it.
8870         * test/automated/python-tests.el (python-shell-with-environment-2):
8871         Update.
8873         python.el: Enhancements to process environment setup.
8874         * lisp/progmodes/python.el (python-shell-process-environment)
8875         (python-shell-extra-pythonpaths, python-shell-exec-path)
8876         (python-shell-virtualenv-root): Update docstring.  Remove :safe.
8877         (python-shell-setup-codes): Remove :safe.
8878         (python-shell-remote-exec-path): New defcustom.
8879         (python-shell--add-to-path-with-priority): New macro.
8880         (python-shell-calculate-pythonpath): Give priority to
8881         python-shell-extra-pythonpaths.  Update docstring.
8882         (python-shell-calculate-process-environment): Give priority to
8883         python-shell-process-environment.  Update docstring.
8884         (python-shell-calculate-exec-path): Give priority to
8885         python-shell-exec-path and calculated virtualenv bin directory.
8886         Update docstring.
8887         (python-shell-tramp-refresh-remote-path): New function.
8888         (python-shell-with-environment): Use it when working remotely and
8889         do not modify tramp-remote-path.  Allow nesting.
8890         (python-shell-calculate-command): Remove useless
8891         python-shell-with-environment call.
8892         * test/automated/python-tests.el (python-shell-calculate-pythonpath-1)
8893         (python-shell-calculate-pythonpath-2)
8894         (python-shell-calculate-process-environment-6)
8895         (python-shell-calculate-process-environment-7)
8896         (python-shell-calculate-process-environment-8)
8897         (python-shell-calculate-exec-path-3)
8898         (python-shell-calculate-exec-path-4)
8899         (python-shell-calculate-exec-path-5)
8900         (python-shell-calculate-exec-path-6)
8901         (python-shell-with-environment-3): New tests.
8902         (python-shell-calculate-process-environment-2)
8903         (python-shell-calculate-process-environment-3)
8904         (python-shell-calculate-process-environment-4)
8905         (python-shell-calculate-process-environment-5)
8906         (python-shell-calculate-exec-path-1)
8907         (python-shell-calculate-exec-path-2)
8908         (python-shell-with-environment-1)
8909         (python-shell-with-environment-2): Update and simplify.
8911 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
8913         Avoid hard-coding "M-x command" in docstrings
8914         * lisp/calendar/todo-mode.el (todo-mode):
8915         * lisp/desktop.el (desktop-save-mode):
8916         * lisp/edmacro.el (edit-kbd-macro):
8917         * lisp/emacs-lisp/package.el (package-menu-execute):
8918         * lisp/emulation/viper-cmd.el (viper-ask-level):
8919         * lisp/emulation/viper-init.el (viper-expert-level):
8920         * lisp/filesets.el (filesets-add-buffer):
8921         * lisp/follow.el (follow-mode):
8922         * lisp/gnus/auth-source.el (auth-sources):
8923         * lisp/international/ogonek.el (ogonek-informacja)
8924         (ogonek-information):
8925         * lisp/net/tramp.el (tramp-process-actions):
8926         * lisp/org/org-gnus.el (org-gnus-no-new-news):
8927         * lisp/org/org.el (org-ellipsis):
8928         * lisp/progmodes/python.el (python-shell-get-process-or-error):
8929         * lisp/progmodes/vhdl-mode.el (vhdl-mode):
8930         * lisp/server.el (server-start):
8931         * lisp/type-break.el (type-break-noninteractive-query):
8932         * lisp/userlock.el (ask-user-about-supersession-help):
8933         * lisp/whitespace.el (whitespace-report-region):
8934         Prefer (substitute-command-keys "`\\[foo-command]'")
8935         to "`M-x foo-command'" in docstrings and the like.
8937 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
8939         Use add-function for prettify-symbols-compose-predicate
8940         * lisp/textmodes/tex-mode.el (tex-common-initialization): Set
8941         prettify-symbols-compose-predicate in terms of add-function.
8942         * etc/NEWS: Mention prettify-symbols-compose-predicate and
8943         prettify-symbols-mode support in tex-mode.
8945 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
8947         * lisp/emacs-lisp/smie.el (smie-indent-current-column): New fun.
8948         (smie-indent-exps, smie-indent-keyword): Use it.
8949         * test/indent/css-mode.css: Test alignment with leading comment.
8951 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
8953         Respect text-quoting-style in (*Finder*) menus
8954         * lisp/info.el (info--prettify-description):
8955         Treat description as a docstring, so that it's requoted as
8956         per text-quoting-style.
8958 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
8960         Document `window-use-time' in Elisp manual
8961         * doc/lispref/windows.texi (Selecting Windows): Document
8962         `window-use-time'.
8964 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
8966         * src/w32uniscribe.c (_WIN32_WINNT): Define to 0x0600.
8967         This is a cleaner fix for Bug#21260 than the previous change.
8969 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
8971         Respect text-quoting-style in calc
8972         In calc, tespect text-quoting-style preference in diagnostic
8973         formats and fix a few similar problems in docstrings.
8974         * lisp/calc/calc-aent.el (math-read-factor):
8975         * lisp/calc/calc-embed.el (calc-do-embedded):
8976         * lisp/calc/calc-ext.el (calc-user-function-list)
8977         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
8978         * lisp/calc/calc-help.el (calc-describe-key)
8979         (calc-describe-thing):
8980         * lisp/calc/calc-lang.el (calc-c-language)
8981         (math-parse-fortran-vector-end, math-parse-tex-sum)
8982         (math-parse-eqn-matrix, math-parse-eqn-prime)
8983         (calc-yacas-language, calc-maxima-language, calc-giac-language)
8984         (math-read-big-rec, math-read-big-balance):
8985         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
8986         (calc-auto-recompute):
8987         * lisp/calc/calc-prog.el (calc-user-define-invocation)
8988         (math-do-arg-check):
8989         * lisp/calc/calc-store.el (calc-edit-variable):
8990         * lisp/calc/calc-units.el (math-build-units-table-buffer):
8991         * lisp/calc/calc-vec.el (math-read-brackets):
8992         * lisp/calc/calc-yank.el (calc-edit-mode):
8993         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
8994         Use curved quotes in diagnostic format strings.
8995         * lisp/calc/calc-help.el (calc-describe-thing):
8996         Format docstrings with substitute-command-keys.
8997         * lisp/calc/calc-help.el (calc-j-prefix-help):
8998         * lisp/calc/calc-misc.el (calc-help):
8999         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
9000         Escape a docstring "`".
9002 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
9004         Fix documentation of 'menu-set-font' and 'set-frame-font'
9005         * lisp/menu-bar.el (menu-set-font): Doc fix.  (Bug#21303)
9006         * doc/lispref/frames.texi (Frame Font): Document that
9007         set-frame-font with the last argument 't' will also make the font
9008         the default for the future GUI frames.
9010         Document '--create-frame' option to emacsclient
9011         * doc/emacs/misc.texi (emacsclient Options): Document the
9012         '--create-frame' option.  (Bug#21308)
9014 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
9016         * lisp/progmodes/js.el (js-mode): Don't eagerly syntax propertize.
9018 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
9020         Document 'get-mru-window' in the ELisp manual
9021         * doc/lispref/windows.texi (Cyclic Window Ordering): Document
9022         'get-mru-window'.  (Bug#21306)
9024         Clarify documentation of 'get-buffer-window-list'
9025         * doc/lispref/windows.texi (Buffers and Windows): Mention that the
9026         current window, if relevant, will be the first in the list
9027         returned by 'get-buffer-window-list'.
9028         * lisp/window.el (get-buffer-window-list): Doc fix.  (Bug#21305)
9030 2015-08-21  Vasilij Schneidermann  <v.schneidermann@gmail.com>
9032         In `ielm' use `pop-to-buffer-same-window' (Bug#20848)
9033         * lisp/ielm.el (ielm): Use `pop-to-buffer-same-window' instead of
9034         `switch-to-buffer'.
9036 2015-08-21  Kaushal Modi  <kaushal.modi@gmail.com>  (tiny change)
9038         In woman.el use `display-buffer' instead of `switch-to-buffer' (Bug#21047)
9039         * lisp/woman.el (woman-really-find-file, WoMan-find-buffer): Use
9040         `display-buffer' instead of `switch-to-buffer'.
9042 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
9044         Follow user preference in calendar diagnostics
9045         Respect text-quoting-style preference in diagnostic formats by
9046         using curved quotes (which are translated as per text-quoting-style)
9047         instead of grave accent and apostrophe (which are not).
9048         * lisp/calendar/appt.el (appt-display-message):
9049         * lisp/calendar/diary-lib.el (diary-check-diary-file)
9050         (diary-mail-entries, diary-from-outlook):
9051         * lisp/calendar/icalendar.el (icalendar-export-region)
9052         (icalendar--convert-float-to-ical)
9053         (icalendar--convert-date-to-ical)
9054         (icalendar--convert-ical-to-diary)
9055         (icalendar--convert-recurring-to-diary)
9056         (icalendar--add-diary-entry):
9057         * lisp/calendar/time-date.el (format-seconds):
9058         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
9059         (timeclock-make-hours-explicit):
9060         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
9061         (todo-item-mark, todo-check-format)
9062         (todo-insert-item--next-param, todo-edit-item--next-key)
9063         (todo-mode):
9064         Use curved quotes in diagnostic format strings.
9065         * lisp/calendar/icalendar.el (icalendar-import-format-sample):
9066         * test/automated/icalendar-tests.el (icalendar--import-format-sample):
9067         Just use straight quoting for simple test case.
9069 2015-08-21  Michael Albinus  <michael.albinus@gmx.de>
9071         * src/gfilenotify.c (Fgfile_add_watch):
9072         Handle errors from g_file_monitor.
9074 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
9076         In frames.texi use "minibuffer-less frame" instead of "non-minibuffer frame"
9077         * doc/lispref/frames.texi (Frame Layout): Use "minibuffer-less
9078         frame" instead of "non-minibuffer frame".
9080         Fix frame geometry related text
9081         * doc/lispref/frames.texi (Frame Layout):
9082         Rename `x-frame-geometry' to `frame-geometry'.
9083         * doc/lispref/frames.texi (Mouse Position):
9084         * doc/lispref/windows.texi (Coordinates and Windows):
9085         Use `set-mouse-absolute-pixel-position' instead of
9086         `x-set-mouse-absolute-pixel-position'.
9088         Sanitize frame geometry related functions
9089         * src/nsfns.m (Fx_frame_geometry): Rename to Fns_frame_geometry.
9090         (Fx_frame_edges): Rename to Fns_frame_edges.
9091         * src/w32fns.c (Fx_frame_geometry): Rename to Fw32_frame_geometry.
9092         (Fx_frame_edges): Rename to Fw32_frame_edges.
9093         (Fx_mouse_absolute_pixel_position): Rename to
9094         Fw32_mouse_absolute_pixel_position.
9095         (Fx_set_mouse_absolute_pixel_position): Rename to
9096         Fw32_set_mouse_absolute_pixel_position.
9097         * lisp/frame.el (x-frame-geometry, w32-frame-geometry)
9098         (ns-frame-geometry, x-frame-edges, w32-frame-edges)
9099         (ns-frame-edges, w32-mouse-absolute-pixel-position)
9100         (x-mouse-absolute-pixel-position)
9101         (w32-set-mouse-absolute-pixel-position)
9102         (x-set-mouse-absolute-pixel-position): Declare.
9103         (frame-geometry, mouse-absolute-pixel-position)
9104         (set-mouse-absolute-pixel-position): New functions.
9105         (frame-edges): Rewrite in terms of x-/w32-/ns-frame-edges.
9107 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
9109         Fix MinGW64 build broken by latest w32uniscribe.c changes
9110         * src/w32uniscribe.c (UNISCRIBE_OPENTYPE): Define to 0x0100, for
9111         MinGW64.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
9112         (Bug#21260)
9114 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
9116         Add TeX defaults for prettify-symbol-mode
9117         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
9118         Rename from tex-prettify-symbols-alist.
9119         (tex--prettify-symbols-compose-p): New function.
9120         (tex-common-initialization): Use them as prettify-symbols-alist
9121         and prettify-symbols-compose-predicate.
9123         Generalize prettify-symbols to arbitrary modes
9124         * lisp/progmodes/prog-mode.el
9125         (prettify-symbols-default-compose-p): New function.
9126         (prettify-symbols-compose-predicate): New variable.
9127         (prettify-symbols--compose-symbol): Use it.
9129 2015-08-20  Paul Eggert  <eggert@cs.ucla.edu>
9131         Don't quote symbols 'like-this' in docstrings etc.
9132         * admin/unidata/uvs.el (uvs-insert-fields-as-bytes):
9133         * lisp/allout-widgets.el (allout-widgets-count-buttons-in-region):
9134         * lisp/allout.el (allout-add-resumptions, allout-mode):
9135         * lisp/calculator.el (calculator-operators):
9136         * lisp/cedet/data-debug.el (dd-propertize):
9137         * lisp/cedet/ede/proj-prog.el (ede-proj-target-makefile-program):
9138         * lisp/cedet/semantic/analyze/debug.el:
9139         (semantic-analyzer-debug-global-miss-text):
9140         * lisp/cedet/semantic/lex-spp.el:
9141         (semantic-lex-spp-replace-or-symbol-or-keyword):
9142         * lisp/cedet/semantic/symref.el:
9143         (semantic-symref-cleanup-recent-buffers-fcn):
9144         * lisp/cedet/semantic/tag.el (semantic-tag-class):
9145         * lisp/cedet/srecode/el.el (srecode-semantic-handle-:el-custom):
9146         * lisp/gnus/nnmairix.el (nnmairix-propagate-marks-upon-close):
9147         * lisp/gnus/pop3.el (pop3-authentication-scheme):
9148         * lisp/help-fns.el (describe-function-orig-buffer):
9149         * lisp/imenu.el (imenu--history-list):
9150         * lisp/mail/feedmail.el (feedmail-confirm-outgoing)
9151         (feedmail-display-full-frame, feedmail-deduce-bcc-where)
9152         (feedmail-queue-default-file-slug)
9153         (feedmail-queue-buffer-file-name):
9154         * lisp/net/mairix.el (mairix-searches-mode-map):
9155         * lisp/net/newst-backend.el (newsticker-retrieval-method)
9156         (newsticker-auto-mark-filter-list):
9157         * lisp/obsolete/vi.el (vi-mode):
9158         * lisp/progmodes/cc-engine.el (c-literal-type):
9159         * lisp/progmodes/cpp.el (cpp-face):
9160         * lisp/progmodes/ebrowse.el (ebrowse-electric-list-looper):
9161         * lisp/progmodes/elisp-mode.el (elisp--xref-make-xref):
9162         * lisp/progmodes/pascal.el (pascal-auto-lineup):
9163         * lisp/progmodes/prog-mode.el (prog-widen):
9164         * lisp/progmodes/verilog-mode.el (verilog-regexp-words)
9165         (verilog-auto-lineup, verilog-auto-reset-widths)
9166         (verilog-auto-arg-format, verilog-auto-inst-template-numbers):
9167         * lisp/textmodes/flyspell.el (flyspell-maybe-correct-transposition)
9168         (flyspell-maybe-correct-doubling):
9169         * lisp/textmodes/table.el (table-justify, table-justify-cell)
9170         (table-justify-row, table-justify-column, table-insert-sequence)
9171         (table--justify-cell-contents):
9172         * lisp/url/url-auth.el (url-get-authentication):
9173         * lisp/window.el (display-buffer-record-window):
9174         * lisp/xml.el (xml-parse-file, xml-parse-region):
9175         * src/gfilenotify.c (Fgfile_add_watch):
9176         Don't quote symbols with apostrophes in doc strings.
9177         Use asymmetric quotes instead.
9178         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
9179         Likewise for symbol in diagnostic.
9180         * lisp/image.el (image-extension-data):
9181         * lisp/register.el (frame-configuration-to-register):
9182         * src/buffer.c (syms_of_buffer):
9183         Remove bogus apostrophes after symbols.
9184         * lisp/thumbs.el (thumbs-conversion-program):
9185         Quote Lisp string values using double-quotes, not apostrophes.
9187 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
9189         Describe frame geometry and related functions in Elisp manual
9190         * doc/lispref/display.texi (Size of Displayed Text, Line Height)
9191         (Showing Images): Update references.
9192         * doc/lispref/elisp.texi (Top): Update node listing.
9193         * doc/lispref/frames.texi (Frame Geometry): New node.
9194         Move `Size and Position' section here.
9195         (Size Parameters): Update references.
9196         (Mouse Position): Update references and nomenclature.
9197         Describe new functions `x-mouse-absolute-pixel-position' and
9198         `x-set-mouse-absolute-pixel-position'.
9199         * doc/lispref/windows.texi (Window Sizes): Update references.
9200         (Resizing Windows): Update references.  Move description of
9201         `fit-frame-to-buffer' here.
9202         (Coordinates and Windows): Update nomenclature and references.
9203         Describe new arguments of `window-edges'.  Comment out
9204         descriptions of `window-left-column', `window-top-line',
9205         `window-pixel-left' and `window-pixel-top'.  Describe
9206         `window-absolute-pixel-position'.
9208 2015-08-20  Alan Mackenzie  <acm@muc.de>
9210         Handling of `c-parse-state'.  Fix low level bug.
9211         * lisp/progmodes/cc-engine.el (c-remove-stale-state-cache-backwards):
9212         Add "CASE 3.5" to handle `cache-pos' being only slightly before `here'.
9214 2015-08-20  Andreas Politz  <politza@hochschule-trier.de>
9216         * lisp/wid-edit.el (widget-color--choose-action): Quit *Color*
9217         window instead of deleting it.
9219 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
9221         In w32fns.c's Fx_frame_geometry rewrite check whether frame has a titlebar
9222         * src/w32fns.c (Fx_frame_geometry): Use title_bar.rgstate[0] to
9223         determine whether frame has a titlebar.
9224         Suggested by Eli Zaretskii <eliz@gnu.org>
9226 2015-08-20  Tassilo Horn  <tsdh@gnu.org>
9228         Add a prettify-symbols-alist for (La)TeX
9229         * lisp/textmodes/tex-mode.el (tex-prettify-symbols-alist):
9230         New variable holding an alist suitable as prettify-symbols-alist in
9231         (La)TeX modes.
9233 2015-08-19  Alan Mackenzie  <acm@muc.de>
9235         Make electric-pair-mode, delete-selection-mode and CC Mode cooperate.
9236         Fixes debbugs#21275.
9237         In Emacs >= 25, let electric-pair-mode take precedence over
9238         delete-selection-mode.
9239         * lisp/delsel.el (delete-selection-uses-region-p): New function,
9240         previously a lambda expression in a property value for
9241         `self-insert-command'.
9242         (top-level): Set the `delete-selection' property of
9243         `self-insert-command' to `delete-selection-uses-region-p'.
9244         * lisp/progmodes/cc-cmds.el (top-level): Give the `delete-selection'
9245         property for c-electric-\(brace\|paren\) the value
9246         `delete-selection-uses-region-p' when the latter function exists.
9248 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
9250         Fix key binding quoting in tutorial *Help*
9251         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
9252         When generating help for custom key bindings, use the user-preferred
9253         quoting style rather than hardcoding the grave style.
9255 2015-08-19  Eli Zaretskii  <eliz@gnu.org>
9257         Improve and future-proof OTF fonts support in w32uniscribe.c
9258         * src/w32uniscribe.c (uniscribe_otf_capability): Add commentary
9259         about the expected results and why the new Uniscribe APIs are not
9260         used in this function.
9261         (ScriptGetFontScriptTags_Proc, ScriptGetFontLanguageTags_Proc)
9262         (ScriptGetFontFeatureTags_Proc): New function typedefs.
9263         (uniscribe_new_apis): New static variable.
9264         (uniscribe_check_features): New function, implements OTF features
9265         verification while correctly accounting for features in the list
9266         after the nil member, if any.
9267         (uniscribe_check_otf_1): New function, retrieves the features
9268         supported by the font for the requested script and language using
9269         the Uniscribe APIs available from Windows Vista onwards.
9270         (uniscribe_check_otf): If the new Uniscribe APIs are available,
9271         use them in preference to reading the font data directly.  Call
9272         uniscribe_check_features to verify that the requested features are
9273         supported, replacing the original incomplete code.
9274         (syms_of_w32uniscribe): Initialize function pointers for the new
9275         Uniscribe APIs.  (Bug#21260)
9276         (otf_features): Scan the script, langsys, and feature arrays back
9277         to front, so that the result we return has them in alphabetical
9278         order, like ftfont.c does.
9279         * src/w32fns.c (syms_of_w32fns) <w32-disable-new-uniscribe-apis>:
9280         New variable for debugging w32uniscribe.c code.
9282 2015-08-19  Artur Malabarba  <bruce.connor.am@gmail.com>
9284         * lisp/isearch.el (isearch-search-fun-default): Revert a5bdb87
9285         Remove usage of `isearch-lax-whitespace' inside the `iearch-word'
9286         clause of `isearch-search-fun-default'.  That lax variable does not
9287         refer to lax-whitespacing.  Related to (bug#21777).
9288         This reverts commit a5bdb872edb9f031fe041faf9a8c0be432e5f64c.
9289         * lisp/character-fold.el (character-fold-search): Set to nil.
9290         Default to nil for now, until someone implements proper
9291         lax-whitespacing with char-fold searching.
9293 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
9295         Fix doc-string of `help-mode-finish'.
9296         * lisp/help-mode.el (help-mode-finish): Fix doc-string.
9298         In nsimage.m include coding.h (Bug#21292)
9299         * src/nsimage.m (top-level): Include coding.h (Bug#21292).
9301         Move window edge functions to Elisp.
9302         * src/window.c (Fwindow_edges, Fwindow_pixel_edges)
9303         (Fwindow_absolute_pixel_edges, Fwindow_inside_edges)
9304         (Fwindow_inside_pixel_edges, Fwindow_inside_absolute_pixel_edges):
9305         Move to window.el.
9306         (calc_absolute_offset): Remove.
9307         * lisp/frame.el (frame-edges): New function.
9308         * lisp/window.el (window-edges, window-pixel-edges)
9309         (window-absolute-pixel-edges): Move here from window.c.
9310         (window-body-edges, window-body-pixel-edges)
9311         (window-absolute-body-pixel-edges): Move here from window.c and
9312         rename "inside" to "body".  Keep old names as aliases.
9313         (window-absolute-pixel-position): New function.
9315 2015-08-19  Katsumi Yamaoka  <yamaoka@jpl.org>
9317         [Gnus]: Use overlay functions directly
9318         * lisp/gnus/gnus-art.el (gnus-mime-inline-part, gnus-mm-display-part)
9319         (gnus-insert-mime-button, gnus-mime-buttonize-attachments-in-header)
9320         (gnus-article-highlight-signature, gnus-article-extend-url-button)
9321         (gnus-article-add-button, gnus-insert-prev-page-button)
9322         (gnus-insert-next-page-button, gnus-insert-mime-security-button):
9323         * lisp/gnus/gnus-cite.el (gnus-cite-delete-overlays)
9324         (gnus-cite-add-face):
9325         * lisp/gnus/gnus-html.el (gnus-html-wash-tags):
9326         * lisp/gnus/gnus-salt.el (gnus-tree-read-summary-keys)
9327         (gnus-tree-recenter, gnus-highlight-selected-tree):
9328         * lisp/gnus/gnus-sum.el (gnus-summary-show-all-threads)
9329         (gnus-summary-show-thread, gnus-summary-hide-thread)
9330         (gnus-highlight-selected-summary):
9331         * lisp/gnus/gnus-util.el (gnus-put-overlay-excluding-newlines):
9332         * lisp/gnus/message.el (message-fix-before-sending)
9333         (message-toggle-image-thumbnails):
9334         * lisp/gnus/mm-decode.el (mm-convert-shr-links):
9335         * lisp/gnus/sieve.el (sieve-highlight, sieve-insert-scripts):
9336         Use overlay functions directly instead of using gnus-overlay-*,
9337         message-overlay-*, and sieve-overlay-*.
9338         * lisp/gnus/gnus-sum.el (gnus-remove-overlays):
9339         * lisp/gnus/gnus.el (gnus-make-overlay, gnus-copy-overlay)
9340         (gnus-delete-overlay, gnus-overlay-get, gnus-overlay-put)
9341         (gnus-move-overlay, gnus-overlay-buffer, gnus-overlay-start)
9342         (gnus-overlay-end, gnus-overlays-at, gnus-overlays-in):
9343         * lisp/gnus/message.el (message-delete-overlay, message-make-overlay)
9344         (message-overlay-get, message-overlay-put, message-overlays-in):
9345         * lisp/gnus/sieve.el (sieve-make-overlay, sieve-overlay-put)
9346         (sieve-overlays-at): Remove.
9348 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
9350         In w32fns.c condition TITLEBAR_INFO declaration on WINDOWS version
9351         * src/w32fns.c (TITLEBAR_INFO): Make it a typedef so MinGW64
9352         builds can use the declaration from the system headers.
9353         (GetTitleBarInfo_Proc, Fx_frame_geometry): Adapt to new
9354         definition of TITLEBAR_INFO.
9355         Suggested by Eli Zaretskii  <eliz@gnu.org>
9357 2015-08-19  Glenn Morris  <rgm@gnu.org>
9359         * lisp/gnus/nnmaildir.el (nnmaildir-flag-mark-mapping): Add "P".
9361 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
9363         Use new q ‘format’ flag when fixing quotes in C
9364         * src/image.c (image_size_error): New function.  All uses of
9365         image_error with "Invalid image size ..."  changed to use it.
9366         * src/image.c (image_size_error, xbm_load_image, xbm_load)
9367         (xpm_load, xpm_load_image, xpm_load, pbm_load, png_load_body)
9368         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
9369         (imagemagick_load, svg_load, svg_load_image, gs_load)
9370         (x_kill_gs_process):
9371         * src/lread.c (load_warn_old_style_backquotes):
9372         * src/xfaces.c (load_pixmap):
9373         * src/xselect.c (x_clipboard_manager_error_1):
9374         Use %qs, not uLSQM and uRSQM.
9375         * src/syntax.c (Finternal_describe_syntax_value):
9376         Prefer Fsubstitute_command_keys to Fformat, as this lets
9377         us use AUTO_STRING.
9378         * src/xdisp.c (vadd_to_log): Use AUTO_STRING on the format argument,
9379         as it's now guaranteed to be ASCII.
9380         * src/xselect.c (x_clipboard_manager_error_2):
9381         Avoid grave accent in low-level stderr diagnostic.
9383 2015-08-19  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
9385         New q flag for ‘format’
9386         * doc/lispref/processes.texi (Sentinels):
9387         Don't hardwire grave quoting style in example.
9388         * doc/lispref/strings.texi (Formatting Strings):
9389         * etc/NEWS:
9390         Document new q flag.
9391         * src/editfns.c (Fformat): Implement it.
9393 2015-08-18  Daiki Ueno  <ueno@gnu.org>
9395         pinentry.el: Add debugging support
9396         * lisp/net/pinentry.el (pinentry-debug): New variable.
9397         (pinentry-debug-buffer): New variable.
9398         (pinentry--process-filter): Send input to the debug buffer, if
9399         `pinentry-debug' is set.
9401         pinentry.el: Improve multiline prompt
9402         * lisp/net/pinentry.el (pinentry--prompt): Simplify the interface.
9403         (pinentry--process-filter): Use `pinentry--prompt' for CONFIRM
9404         command.
9406 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
9408         Fix multibyte confusion in diagnostics
9409         * src/print.c (print_error_message):
9410         Don't assume that the caller's name is unibyte.
9411         * src/xdisp.c (vadd_to_log):
9412         Don't assume that the formatted diagnostic is unibyte.
9414         Fix file name encodings in diagnostics
9415         Also, close some minor races when opening image files, by opening
9416         them once instead of multiple times.
9417         * src/gtkutil.c (xg_get_image_for_pixmap):
9418         * src/image.c (xpm_load, tiff_load, gif_load, imagemagick_load)
9419         (svg_load):
9420         * src/nsimage.m (allocInitFromFile:):
9421         * src/xfns.c (xg_set_icon):
9422         Encode file name, since x_find_image_file no longer does that.
9423         * src/image.c (x_find_image_fd): New function.
9424         (x_find_image_file): Use it.  Do not encode resulting file name,
9425         since callers sometimes need it decoded.
9426         (slurp_file): File arg is now a fd, not a file name.
9427         All callers changed.  This saves us having to open the file twice.
9428         (xbm_load, xpm_load, pbm_load, png_load_body, jpeg_load_body)
9429         (svg_load):
9430         Use x_find_image_fd and fdopen to save a file-open.
9431         Report file name that failed.
9432         * src/lread.c (openp): If PREDICATE is t, open the file in binary mode.
9434 2015-08-18  Dmitry Gutov  <dgutov@yandex.ru>
9436         Allow blink-matching-paren to jump off screen
9437         * doc/emacs/programs.texi (Matching): Mention the
9438         `blink-matching-paren' value `jump-offscreen'.
9439         * lisp/simple.el (blink-matching-paren): New possible value.
9440         (blink-matching-paren-on-screen): Clarify the docstring.
9441         (blink-matching-open): Handle `jump-offscreen' (bug#21286).
9443         Refine the previous change
9444         * lisp/simple.el (blink-matching-open): Use minibuffer-message
9445         outside of save-excursion (bug#21286).
9447 2015-08-18  Martin Rudalics  <rudalics@gmx.at>
9449         Rewrite and add frame geometry related functions.
9450         * src/frame.c (Fframe_position): New function.
9451         (Fset_frame_position): Rename parameters and rewrite doc-string.
9452         (syms_of_frame): Remove Qframe_position, Qframe_outer_size,
9453         Qtitle_height and Qframe_inner_size.  Add Qouter_edges,
9454         Qouter_position, Qouter_size, Qnative_edges, Qinner_edges,
9455         Qtitle_bar_size.
9456         * src/nsfns.m (frame_geometry): New function.
9457         (Fx_frame_geometry): Call frame_geometry.
9458         (Fx_frame_edges): New function.
9459         * src/w32fns.c (C_CHILDREN_TITLEBAR, TITLEBAR_INFO)
9460         (GetTitleBarInfo_Proc): Define these so we can use the
9461         GetTitleBarInfo API.
9462         (Fw32_frame_menu_bar_size, Fw32_frame_rect): Remove.
9463         (Fx_frame_geometry): Rewrite.
9464         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
9465         (Fx_set_mouse_absolute_pixel_position): New functions.
9466         * src/xfns.c (frame_geometry): New function.
9467         (Fx_frame_geometry): Call frame_geometry.
9468         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
9469         (Fx_set_mouse_absolute_pixel_position): New functions.
9471 2015-08-18  Michael Albinus  <michael.albinus@gmx.de>
9473         Improve Tramp's compatibility
9474         * lisp/net/tramp.el (tramp-get-method-parameter):
9475         * lisp/net/tramp-adb.el (tramp-adb-parse-device-names)
9476         (tramp-adb-get-device):
9477         * lisp/net/trampver.el (tramp-repository-get-version):
9478         Use `tramp-compat-replace-regexp-in-string'.
9480 2015-08-18  Pierre Téchoueyres  <pierre.techoueyres@free.fr>  (tiny change)
9482         * lisp/net/tramp-cmds.el (tramp-reporter-dump-variable):
9483         Encode/decode string.
9485 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
9487         Clarify what happens to match data on failure
9488         Problem reported by Ernesto Alfonso (Bug#21279).
9489         * doc/lispref/searching.texi (Regexp Search, Simple Match Data):
9490         Document more carefully what happens to match data after a failed
9491         search.
9492         * src/search.c (Fmatch_beginning, Fmatch_end): Document that
9493         the return value is undefined if the last search failed.
9494         (Fmatch_data): Simplify doc string line 1.
9496 2015-08-18  Daiki Ueno  <ueno@gnu.org>
9498         Revert "pinentry.el: Support external passphrase cache"
9499         This reverts commit e086e55a664ec27fbca7b3231c4b32cb78a89337.
9500         pinentry.el shouldn't directly interact with the secrets service,
9501         but ask the caller to cache the passphrase.
9503 2015-08-17  Xue Fuqiao  <xfq.free@gmail.com>
9505         * doc/emacs/sending.texi (Mail Misc): Fix two index entries for
9506         Message mode hooks.
9508 2015-08-17  Daiki Ueno  <ueno@gnu.org>
9510         epg.el: Make gpgconf output parsing future proof
9511         * lisp/epg.el (epg--start): Count the number of fields in "gpgconf
9512         --list-options" output.
9514         pinentry.el: Support external passphrase cache
9515         * lisp/net/pinentry.el (pinentry-use-secrets): New user option.
9516         (pinentry--allow-external-password-cache): New local variable.
9517         (pinentry--key-info): New local variable.
9518         (secrets-enabled, secrets-search-items, secrets-get-secret):
9519         Declare.
9520         (pinentry--send-passphrase): New function, split from
9521         `pinentry--process-filter'.
9522         (pinentry--process-filter): Use secrets.el to retrieve passphrase
9523         from login keyring.
9525         pinentry.el: Popup window for multiline prompt
9526         * lisp/net/pinentry.el (pinentry): New custom group.
9527         (pinentry-popup-prompt-window): New user option.
9528         (pinentry-prompt-window-height): New user option.
9529         (pinentry--prompt-buffer): New variable.
9530         (pinentry-prompt-mode-map): New variable.
9531         (pinentry-prompt-mode): New function.
9532         (pinentry--prompt): New function.
9533         (pinentry--process-filter): Use `pinentry--prompt' instead of
9534         `read-passwd' and `y-or-n-p'.
9536 2015-08-17  Katsumi Yamaoka  <yamaoka@jpl.org>
9538         message.el: Silent the byte compiler
9539         * lisp/gnus/message.el (message-overlay-put, message-make-overlay)
9540         (message-kill-all-overlays, message-overlays-in, message-overlay-get)
9541         (message-delete-overlay, message-window-inside-pixel-edges):
9542         Declare before using.
9544         * lisp/gnus/message.el (message-overlay-get, message-overlays-in)
9545         (message-window-inside-pixel-edges): XEmacs compatible functions.
9547 2015-08-17  Lars Magne Ingebrigtsen  <larsi@gnus.org>
9549         * lisp/gnus/message.el (message-toggle-image-thumbnails): New command.
9551 2015-08-17  Noah Friedman  <friedman@splode.com>
9553         * lisp/simple.el (blink-matching-open): Restore point before
9554         calling minibuffer-message.
9556 2015-08-17  Ronnie Schnell  <ronnie@driver-aces.com>
9558         * lisp/play/dunnet.el: Update version number in header (now
9559         matches help).
9561 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
9563         Curved quotes in --batch diagnostics in non-UTF-8
9564         When run with --batch, check that curved quotes are compatible with
9565         the system locale before outputting them in diagnostics.
9566         Problem reported by Eli Zaretskii in:
9567         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00594.html
9568         * lisp/startup.el (command-line): Set internal--text-quoting-flag
9569         after the standard display table is initialized.
9570         * src/doc.c (default_to_grave_quoting_style): New function.
9571         (text_quoting_style): Use it.
9572         (text_quoting_flag): New static var, visible to Lisp as
9573         internal--text-quoting-flag.
9574         * src/emacs.c: Include <wchar.h> if available.
9575         (using_utf8): New function.
9576         (main): Use it to initialize text_quoting_flag.
9577         * src/regex.h (btowc) [WIDE_CHAR_SUPPORT && emacs]:
9578         Don't define, as it's not needed and it clashes with wchar.h.
9580 2015-08-17  Glenn Morris  <rgm@gnu.org>
9582         * doc/misc/tramp.texi (Configuration): Reword to avoid warning
9583         from makeinfo about spurious "Note:" cross-reference, and for grammar.
9585 2015-08-17  Ilya Zakharevich  <ilya@math.berkeley.edu>
9587         Minor change in variable initialization on MS-Windows
9588         * src/w32fns.c <after_dead_key>: Initialize to -1.
9589         (deliver_wm_chars): If after_deadkey is zero, don't set after_dead
9590         non-zero.
9592         Fix a bug with LWindow key remapping on MS-Windows
9593         * src/w32fns.c (deliver_wm_chars): Fix a typo.  (Bug#21276)
9595 2015-08-17  Eli Zaretskii  <eliz@gnu.org>
9597         Improve fontset support for latest OTF script tags
9598         * lisp/international/fontset.el (otf-script-alist): Add some
9599         missing script tags.
9600         (setup-default-fontset): Include settings for v2 versions of the
9601         script tags used by some modern OTF/TTF fonts.
9603 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
9605         Spelling fixes
9607 2015-08-16  Paul Eggert  <eggert@cs.ucla.edu>
9609         Use curved quotes in core elisp diagnostics
9610         In the core elisp files, use curved quotes in diagnostic formats,
9611         so that they follow user preference as per ‘text-quoting-style’
9612         rather than being hard-coded to quote `like this'.
9613         * lisp/abbrev.el (expand-region-abbrevs):
9614         * lisp/button.el (button-category-symbol, button-put)
9615         (make-text-button):
9616         * lisp/cus-start.el:
9617         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
9618         (custom--sort-vars-1, load-theme):
9619         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
9620         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
9621         (cl-generic-generalizers):
9622         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
9623         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
9624         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
9625         (advice--make, define-advice):
9626         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
9627         * lisp/emacs-lisp/timer.el (timer-event-handler):
9628         * lisp/env.el (setenv):
9629         * lisp/facemenu.el (facemenu-add-new-face)
9630         (facemenu-add-new-color):
9631         * lisp/faces.el (face-documentation, read-face-name)
9632         (face-read-string, read-face-font, face-spec-set-match-display)
9633         (read-color, x-resolve-font-name):
9634         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
9635         (set-auto-mode, hack-local-variables)
9636         (hack-one-local-variable--obsolete)
9637         (dir-locals-set-directory-class, write-file)
9638         (basic-save-buffer, delete-directory, copy-directory)
9639         (recover-session, recover-session-finish, insert-directory)
9640         (file-modes-char-to-who, file-modes-symbolic-to-number)
9641         (move-file-to-trash):
9642         * lisp/font-lock.el (font-lock-fontify-buffer):
9643         * lisp/format.el (format-write-file, format-find-file)
9644         (format-insert-file):
9645         * lisp/frame.el (get-device-terminal, select-frame-by-name):
9646         * lisp/fringe.el (fringe--check-style):
9647         * lisp/help.el (describe-minor-mode-from-indicator):
9648         * lisp/image.el (image-type):
9649         * lisp/international/fontset.el (x-must-resolve-font-name):
9650         * lisp/international/mule-cmds.el (prefer-coding-system)
9651         (select-safe-coding-system-interactively)
9652         (select-safe-coding-system, activate-input-method)
9653         (toggle-input-method, describe-current-input-method):
9654         * lisp/international/mule-conf.el (code-offset):
9655         * lisp/mouse.el (minor-mode-menu-from-indicator):
9656         * lisp/replace.el (query-replace-read-from)
9657         (occur-after-change-function, occur-1):
9658         * lisp/scroll-bar.el (scroll-bar-columns):
9659         * lisp/simple.el (execute-extended-command)
9660         (undo-outer-limit-truncate, compose-mail, set-variable)
9661         (choose-completion-string, define-alternatives):
9662         * lisp/startup.el (site-run-file, tty-handle-args)
9663         (command-line, command-line-1):
9664         * lisp/subr.el (noreturn, define-error, add-to-list)
9665         (read-char-choice):
9666         * lisp/term/common-win.el (x-handle-xrm-switch)
9667         (x-handle-name-switch, x-handle-args):
9668         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
9669         Use curved quotes in diagnostics.
9670         * lisp/international/mule.el (find-auto-coding):
9671         Use " to quote in a diagnostic, to be consistent with the rest of
9672         this file.
9674         Convert lisp/term/x-win.el to UTF-8
9675         * lisp/term/x-win.el: Convert to UTF-8.  This doesn't affect
9676         runtime behavior, and the file is multilingual so compile-time
9677         appearance shouldn't be an issue.
9678         * admin/notes/unicode: Document this.
9680 2015-08-16  Wilson Snyder  <wsnyder@wsnyder.org>
9682         Update verilog-mode.el to 2015-05-14-6232468-vpo-GNU.
9683         * lisp/progmodes/verilog-mode.el: Fix some non-automated indent
9684         issues and comments, bug#943.
9685         (verilog-type-font-keywords): Cycle delay operators like ##1 and
9686         ##[0:$] are now highlighted in their entirety similarly to the #
9687         delay-control operator.  Likewise, the followed-by operators #-#
9688         and #=# are no longer partially highlighed.
9689         (verilog-backward-syntactic-ws-quick)
9690         (verilog-skip-backward-comments): Minor performance improvements
9691         to buffer traversal functions for reduced latency.
9692         (verilog-calc-1, verilog-in-deferred-immediate-final-p): When the
9693         keyword 'final' follows 'assert/assume/cover', then it is part of
9694         a deferred immediate assertion item and should not be treated as a
9695         final construct for indentation.  Reported by Yuri Sugihara.
9696         (verilog-do-indent): Virtual task/function/class definition lines
9697         should not be considered as declarations.  Reported by Enzo Chi.
9698         (verilog-do-indent): Do not falsely indent to '=' of
9699         property/sequence operators on subsequent lines of a multi-line
9700         statement.
9701         (verilog-assignment-operator-re): Fix '!==' operator and add
9702         support for '<->', ':/', '#-#', and '#=#' operators.
9703         (verilog-calculate-indent, verilog-label-be): Enable
9704         case-sensitive regular expression parsing when looking for
9705         keywords.
9706         (verilog-calc-1): Detect 'pure virtual method' declarations which
9707         exist in abstract classes.  Reported by Enzo Chi and Kaushal Modi.
9708         (verilog-backward-ws&directives): When moving back to the start of
9709         a line and the preceeding line ended with an escaped-newline, then
9710         jump up one line.  This properly consumes a multi-line
9711         pre-processor directive.  Reported by Kaushal Modi.
9712         (verilog-dpi-import-export-re, verilog-extended-complete-re)
9713         (verilog-calc-1): Teach verilog-mode to properly indent after a
9714         DPI import/export statement that resides outside of a module.
9715         Reported by Kaushal Modi.
9716         (verilog-extended-complete-re): Update regexp to match both
9717         "DPI-C" and "DPI".  Reported by Kaushal Modi.
9719 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
9721         substitute-command-keys a few more doc strings
9722         * lisp/allout.el (outlineify-sticky):
9723         * lisp/files.el (hack-one-local-variable--obsolete):
9724         * lisp/help-fns.el (help-fns--obsolete, describe-variable):
9725         Use substitute-command-keys on some doc strings so that
9726         they don't use hard-coded key bindings or quoting styles.
9728         Fix quoting in Fformat calls
9729         * src/image.c (xbm_read_bitmap_data, xbm_load_image, xbm_load)
9730         (xpm_load, xpm_load_image, pbm_load, png_load_body)
9731         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
9732         (imagemagick_load, svg_load, svg_load_image, gs_load)
9733         (x_kill_gs_process):
9734         * src/lread.c (load_warn_old_style_backquotes):
9735         * src/xfaces.c (load_pixmap):
9736         * src/xselect.c (x_clipboard_manager_error_1):
9737         Quote diagnostics according to user preference when calling
9738         Fformat or its derivatives.
9740 2015-08-15  Glenn Morris  <rgm@gnu.org>
9742         * admin/admin.el (set-version, set-copyright): Remove deleted files.
9744 2015-08-15  Stephen Leake  <stephen_leake@stephe-leake.org>
9746         Allow describe-function helpers to access buffer-local values
9747         This will be used by cedet/mode-local.el `describe-mode-local-override'
9748         on `help-fns-describe-function-functions' in upstream CEDET.
9749         * lisp/help-fns.el (describe-function-orig-buffer): New, let-bound in
9750         `describe-function'.
9751         (describe-function): Bind it, save it on the help xref stack.
9753         Handle pulse-background being nil
9754         * lisp/cedet/pulse.el (pulse-lighten-highlight): Inherit
9755         pulse-background, handle it being nil.
9757 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
9759         Fix "\`" confusion in Lisp strings
9760         * admin/authors.el (authors-canonical-author-name):
9761         Fix typo by using "\\`" not "\`" in string RE.
9762         * lisp/obsolete/complete.el (PC-complete-as-file-name):
9763         * lisp/obsolete/vi.el (vi-backward-blank-delimited-word):
9764         * lisp/progmodes/verilog-mode.el (verilog-mode-map):
9765         Use plain "`", not the equivalent-but-confusing "\`", in strings.
9766         * lisp/textmodes/texinfmt.el: Fix comment likewise.
9768 2015-08-15  Dani Moncayo  <dmoncayo@gmail.com>
9770         * nt/zipdist.bat: Remove -- no longer used.
9772 2015-08-15  Jürgen Hötzel  <juergen@archlinux.org>
9774         * lisp/net/tramp-sh.el (tramp-remote-selinux-p): Use "selinuxenabled"
9775         rather than "getenforce".
9776         (tramp-sh-handle-set-file-selinux-context): Do not
9777         cache SELinux context if not all context components are given.
9779 2015-08-15  Eli Zaretskii  <eliz@gnu.org>
9781         Add doc strings to 2 help-mode.el functions
9782         * lisp/help-mode.el (help-mode-setup, help-mode-finish): Add doc
9783         strings.  (Bug#21263)
9785         Remove files used by the old MS-Windows specific build procedure
9786         * admin/unidata/makefile.w32-in:
9787         * doc/emacs/makefile.w32-in:
9788         * doc/lispintro/makefile.w32-in:
9789         * doc/lispref/makefile.w32-in:
9790         * doc/misc/makefile.w32-in:
9791         * leim/makefile.w32-in:
9792         * lib-src/makefile.w32-in:
9793         * lib/makefile.w32-in:
9794         * lisp/makefile.w32-in:
9795         * nt/INSTALL.OLD:
9796         * nt/config.nt:
9797         * nt/emacs-src.tags:
9798         * nt/envadd.bat:
9799         * nt/gmake.defs:
9800         * nt/makefile.w32-in:
9801         * nt/multi-install-info.bat:
9802         * nt/nmake.defs:
9803         * nt/paths.h:
9804         * src/makefile.w32-in: Files deleted.
9805         * nt/configure.bat: Remove everything except the blurb about the
9806         new build procedure.
9807         * make-dist: Remove references to makefile.w32-in in various
9808         directories, and to files in nt/ that were deleted.
9809         * etc/NEWS: Mention the fact that the files were dropped.
9811 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
9813         * doc/emacs/mule.texi (Charsets): Give fuller title for ISO-IR.
9814         (Bug#21248)
9816 2015-08-14  Paul Eggert  <eggert@cs.ucla.edu>
9818         Default to inotify instead of gfile
9819         * configure.ac (with_file_notification): Fix typo that
9820         prevented suppression of file notification if HAVE_NS.
9821         (NOTIFY_OBJ): Prefer inotify to gfile if both exist and
9822         with_file_notification is 'yes' (Bug#21241).
9823         * etc/NEWS: Mention this.
9825         Fix broken URLs for ISO-IR
9826         * doc/emacs/mule.texi (Charsets):
9827         * lisp/international/mule-conf.el:
9828         Fix broken URL (Bug#21248).
9830         Low-level diagnostics now use ‘text-quoting-style’
9831         * src/doprnt.c (doprnt):
9832         Format ` and ' as per ‘text-quoting-style’.
9833         * src/xdisp.c (vmessage, message): Mention that the format should
9834         not contain ` or '.
9836         Prefer ‘format’ to ‘substitute-command-keys’
9837         * src/character.h (uLSQM, uRSQM): Move here ...
9838         * src/doc.c (uLSQM, uRSQM): ... from here.
9839         * src/doc.c (Fsubstitute_command_keys):
9840         * src/syntax.c (Finternal_describe_syntax_value):
9841         * lisp/cedet/mode-local.el (mode-local-print-binding)
9842         (mode-local-describe-bindings-2):
9843         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
9844         * lisp/cus-theme.el (describe-theme-1):
9845         * lisp/descr-text.el (describe-text-properties-1, describe-char):
9846         * lisp/emacs-lisp/cl-extra.el (cl--describe-class):
9847         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
9848         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
9849         * lisp/emacs-lisp/package.el (describe-package-1):
9850         * lisp/faces.el (describe-face):
9851         * lisp/help-fns.el (help-fns--key-bindings)
9852         (help-fns--compiler-macro, help-fns--parent-mode)
9853         (help-fns--obsolete, help-fns--interactive-only)
9854         (describe-function-1, describe-variable):
9855         * lisp/help.el (describe-mode):
9856         Prefer ‘format’ to ‘substitute-command-keys’ when either will do
9857         to implement quoting style.  This generally makes the code simpler.
9859         Extend ‘format’ to translate curved quotes
9860         This is a followup to the recent doc string change, and deals with
9861         diagnostics and the like.  This patch is more conservative than
9862         the doc string change, in that the behavior of ‘format’ changes
9863         only if its first arg contains curved quotes and the user prefers
9864         straight or grave quotes.  (Come to think of it, perhaps we should
9865         be similarly conservative with doc strings too, but that can wait.)
9866         The upside of this conservatism is that existing usage is almost
9867         surely unaffected.  The downside is that we'll eventually have to
9868         change Emacs's format strings to use curved quotes in places where
9869         the user might want curved quotes, but that's a simple and
9870         mechanical translation that I'm willing to do later.  (Bug#21222)
9871         * doc/lispref/help.texi (Keys in Documentation):
9872         Move description of text-quoting-style from here ...
9873         * doc/lispref/strings.texi (Formatting Strings):
9874         ... to here, and describe new behavior of ‘format’.
9875         * etc/NEWS: Describe new behavior.
9876         * lisp/calc/calc-help.el (calc-describe-thing):
9877         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
9878         * lisp/info.el (Info-find-index-name):
9879         Use ‘concat’ rather than ‘format’ to avoid misinterpretation
9880         of recently-added curved quotes.
9881         * src/doc.c (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
9882         Move from here ...
9883         * src/lisp.h: ... to here.
9884         * src/doc.c (text_quoting_style): New function.
9885         (Fsubstitute_command_keys): Use it.
9886         * src/editfns.c (Fformat): Implement new behavior.
9887         * src/lisp.h (enum text_quoting_style): New enum.
9889 2015-08-14  Stefan Monnier  <monnier@iro.umontreal.ca>
9891         * src/keyboard.c: Use false/true instead of 0/1 for booleans.
9892         * src/keyboard.h (struct kboard): Mark kbd_queue_has_data as boolean.
9894 2015-08-14  Michael Albinus  <michael.albinus@gmx.de>
9896         * lisp/net/tramp-sh.el (tramp-sh-handle-file-acl): Do not redirect
9897         stderr to /dev/null, this is done in `tramp-send-command-and-check'.
9899 2015-08-14  Jürgen Hötzel  <juergen@archlinux.org>
9901         Flush file properties in Tramp
9902         * lisp/net/tramp-sh.el (tramp-sh-handle-set-file-modes)
9903         (tramp-sh-handle-set-file-times):
9904         * lisp/net/tramp-adb.el (tramp-adb-handle-set-file-modes)
9905         (tramp-adb-handle-set-file-times): Flush the file properties of
9906         the directory.
9908 2015-08-14  Ronnie Schnell  <ronnie@driver-aces.com>
9910         * doc/emacs/misc.text (Amusements): Fixed typo.
9912 2015-08-14  Eli Zaretskii  <eliz@gnu.org>
9914         Don't miss warnings about removing string text properties while dumping
9915         * src/alloc.c (purecopy): Warn about removing a string's text
9916         properties even when the same string was already pure-copied
9917         earlier.
9918         * lisp/progmodes/elisp-mode.el (elisp--xref-format)
9919         (elisp--xref-format-extra): Fix the commentary.
9921 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
9923         * lisp/progmodes/sh-script.el (sh-mode): Handle .cshrc (bug#21049).
9925 2015-08-13  Magnus Henoch  <magnus.henoch@gmail.com>
9927         * lisp/progmodes/compile.el: Use lexical-binding.
9928         (compilation-move-to-column): Assume 8-wide TABs (bug#21038).
9930 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
9932         (uniquify-ask-about-buffer-names-p): Remove, unused (bug#21037)
9933         * lisp/uniquify.el: Remove redundant `:group's.
9935 2015-08-13  Jürgen Hötzel  <juergen@archlinux.org>
9937         * lisp/net/tramp-adb.el
9938         (tramp-adb-handle-directory-files-and-attributes): Make a copy of
9939         result to prevent modification of the tramp-cache by side effects.
9940         Use the correct cache key.
9942 2015-08-13  Paul Eggert  <eggert@cs.ucla.edu>
9944         Make add_to_log varargs
9945         * src/alloc.c (run_finalizer_handler):
9946         * src/charset.c (load_charset_map_from_vector):
9947         * src/nsimage.m (ns_load_image):
9948         * src/xfaces.c (load_pixmap, load_color2):
9949         Simplify, now that add_to_log has a variable number of args.
9950         * src/image.c (image_error): Take a variable number of args.
9951         Callers simplified.
9952         * src/lisp.h (add_to_log, vadd_to_log): Adjust to new APIs.
9953         * src/xdisp.c (format_nargs, vadd_to_log): New functions.
9954         (add_to_log): Make varargs, and reimplement in terms of vadd_to_log.
9955         * src/xfaces.c (merge_face_ref): Fix typo that omitted color name.
9957         Optional args for holiday-greek-orthodox-easter
9958         * etc/NEWS: Document this.
9959         * lisp/calendar/holidays.el (holiday-greek-orthodox-easter):
9960         Add optional args N and STRING, mimicking the API and code of
9961         ‘holiday-easter-etc’.  From suggestion by Foivos S. Zakkak (Bug#21256).
9963 2015-08-13  Stephen Leake  <stephen_leake@stephe-leake.org>
9965         xref-find-definitions: Exclude more generic function items.
9966         * lisp/emacs-lisp/cl-generic.el (cl--generic-search-method):
9967         Add doc string.
9968         (cl--generic-find-defgeneric-regexp): New.
9969         (find-function-regexp-alist): Add it.
9970         * lisp/emacs-lisp/find-func.el (find-feature-regexp): Move here from
9971         elisp-mode.el, change to search for ";;; Code:"
9972         (find-alias-regexp): Move here from elisp-mode.el, cleaned up.
9973         (find-function-regexp-alist): Add them.
9974         * lisp/progmodes/elisp-mode.el:
9975         (elisp--xref-format, elisp--xref-format-extra): Change back to
9976         defvar due to bug#21237.
9977         (elisp--xref-find-definitions): Exclude co-located default methods for
9978         generic functions.  Also exclude implicitly declared defgeneric.
9979         (elisp--xref-find-definitions): Handle C source properly.  Exclude minor
9980         mode variables defined by 'define-minor-mode'.
9981         * test/automated/elisp-mode-tests.el: Declare generic functions, add
9982         tests for them.
9983         (xref-elisp-test-run): Fix bug.
9984         (emacs-test-dir): Improve initial value.
9985         (find-defs-defun-defvar-el): Don't expect defvar.
9986         (find-defs-feature-el): Match change to find-feature-regexp.
9988 2015-08-13  Eli Zaretskii  <eliz@gnu.org>
9990         Improve warning about purecopy of strings with properties
9991         * src/alloc.c (purecopy): Show the offending string with the
9992         warning about removing its text properties.
9994 2015-08-12  Alan Mackenzie  <acm@muc.de>
9996         Introduce new macros to cover Emacs's new names in cl-lib.el
9997         This also eliminates `mapcan' warnings in XEmacs.
9998         * lisp/progmodes/cc-defs.el (c--mapcan-status): New variable to
9999         characterise [X]Emacs versions.
10000         (top-level): Require either 'cl or 'cl-lib, depending on
10001         c--mapcan-status.
10002         Change this back to cc-external-require from an eval-when-compile
10003         require.
10004         (c--mapcan, c--set-difference, c--intersection, c--macroexpand-all)
10005         (c--delete-duplicates): New macros which expand into either old or new
10006         names.
10007         (c-make-keywords-re, c-lang-defconst, c-lang-const): Use the new macros
10008         rather than the old names.
10009         * lisp/progmodes/cc-engine.el (c-declare-lang-variables): Use c--mapcan
10010         rather than mapcan.
10011         * lisp/progmodes/cc-fonts.el (c-compose-keywords-list): Use c--mapcan.
10012         * lisp/progmodes/cc-langs.el (top-level): Require either 'cl or 'cl-lib,
10013         depending on c--mapcan-status.
10014         (c-filter-ops, c-all-op-syntax-tokens, c-assignment-op-regexp)
10015         (c-type-start-kwds, c-prefix-spec-kwds, c-specifier-key)
10016         (c-not-decl-init-keywords, c-not-primitive-type-keywords)
10017         (c-paren-any-kwds, c-<>-sexp-kwds, c-block-stmt-kwds, c-expr-kwds)
10018         (c-decl-block-key, c-keywords, c-keywords-obarray)
10019         (c-regular-keywords-regexp, c-primary-expr-regexp)
10020         (c-primary-expr-regexp, c-block-prefix-disallowed-chars)
10021         (c-known-type-key, c-nonlabel-token-key)
10022         (c-make-init-lang-vars-fun): Use the new macros rather than the old
10023         names.
10025 2015-08-12  Oleh Krehel  <ohwoeowho@gmail.com>
10027         loadhist.el (read-feature): Conform to completing-read
10028         * lisp/loadhist.el (read-feature): According to `completing-read'
10029         documentation, if collection is a list, then it must be a list of
10030         strings, not a list of symbols like before.
10032 2015-08-12  David Kastrup  <dak@gnu.org>
10034         Deal gracefully with up-events (Bug#19746)
10035         * src/keyboard.c (apply_modifiers_uncached, parse_solitary_modifier)
10036         (parse_modifiers_uncached): React gracefully to "up-" modifiers:
10037         those may easily be injected by user-level Lisp code.
10038         (read_key_sequence): Discard unbound up-events like unbound
10039         down-events: they are even more likely only relevant for special
10040         purposes.
10041         While Emacs will not produce up-events on its own currently (those are
10042         converted to drag or click events before being converted to
10043         Lisp-readable structures), the input queue can be made to contain them
10044         by synthesizing events to `unread-command-events'.  Emacs should deal
10045         consistently with such events.
10047 2015-08-12  Eli Zaretskii  <eliz@gnu.org>
10049         Fix display of thin lines whose newline has line-height property of t
10050         * src/xdisp.c (append_space_for_newline): Don't try to fix ascent
10051         and descent values of non-empty glyph rows, since they could have
10052         forced low values deliberately.  (Bug#21243)
10054 2015-08-12  Richard Stallman  <rms@gnu.org>
10056         Offer to combine multiple To or CC fields.
10057         * lisp/mail/sendmail.el (mail-combine-fields): New function.
10058         (mail-send): Call 'mail-combine-fields'.
10060         Don't decrypt encrypted files.
10061         * lisp/mail/mail-utils.el (mail-file-babyl-p): Bind epa-inhibit to t.
10063         Handle encrypted mbox files.
10064         * lisp/mail/rmailout.el (rmail-output-as-mbox): Decrypt and reencrypt
10065         the mbox file if necessary.
10067         Re-enable mime processing after decryption.  Add 'decrypt' keyword.
10068         * lisp/mail/rmail.el (rmail-epa-decrypt-1): New subroutine.
10069         (rmail-epa-decrypt): rmail-epa-decrypt-1 broken out.
10070         In a mime message, reenable Mime and show the parts that
10071         were shown before.
10072         Add keyword "decrypt" if anything decrypted.
10074         epa-inhibit inhibits auto-recognition of .gpg files
10075         * lisp/epa-file.el (epa-inhibit): New variable.
10076         (epa-file-handler): Check epa-inhibit.
10078 2015-08-12  Artur Malabarba  <bruce.connor.am@gmail.com>
10080         * lisp/emacs-lisp/lisp-mnt.el (lm-header): Add save-excursion.
10082 2015-08-11  Fabián Ezequiel Gallina  <fgallina@gnu.org>
10084         Respect python.el imenu when semantic-mode is off
10085         Fixes bug#21220
10086         * lisp/cedet/semantic/wisent/python.el: Do not force
10087         wisent-python-default-setup on python-mode-hook.
10089 2015-08-11  Paul Eggert  <eggert@cs.ucla.edu>
10091         Give names to Unicode code points in C code
10092         * src/character.h (NO_BREAK_SPACE, SOFT_HYPHEN)
10093         (ZERO_WIDTH_NON_JOINER, ZERO_WIDTH_JOINER, HYPHEN)
10094         (NON_BREAKING_HYPHEN, LEFT_SINGLE_QUOTATION_MARK)
10095         (RIGHT_SINGLE_QUOTATION_MARK, PARAGRAPH_SEPARATOR)
10096         (LEFT_POINTING_ANGLE_BRACKET, RIGHT_POINTING_ANGLE_BRACKET)
10097         (LEFT_ANGLE_BRACKET, RIGHT_ANGLE_BRACKET)
10098         (OBJECT_REPLACEMENT_CHARACTER):
10099         New named constants for Unicode code points.
10100         * src/bidi.c (bidi_fetch_char, CANONICAL_EQU):
10101         * src/composite.c (char_composable_p):
10102         * src/lread.c (readevalloop, read1):
10103         * src/xdisp.c (get_next_display_element):
10104         Use them.
10105         * src/doc.c (LEFT_SINGLE_QUOTATION_POINT):
10106         Remove; now in character.h.
10108 2015-08-11  Stephen Leake  <stephen_leake@stephe-leake.org>
10110         elisp--xref-find-definitions handle cl-defstuct default constructor
10111         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Add FIXME.
10112         (elisp--xref-format-extra): Rename from elisp--xref-format-cl-defmethod.
10113         (elisp--xref-find-definitions): Handle cl-defstuct default constructor.
10114         * test/automated/elisp-mode-tests.el (xref-elisp-test-run): Split out
10115         from xref-elisp-test for ease of debugging.
10116         (xref-elisp-deftest): Rename from xref-elisp-test.
10117         (find-defs-constructor): New test.
10118         (find-defs-defgeneric-el): Match batch test config.
10119         (compile): Required for find-defs compilation-minor-mode test.
10120         (find-defs-defvar-el): Match code change.
10121         (find-defs-face-el): Match code change.
10122         * lisp/progmodes/xref.el (xref-find-function, xref-find-definitions):
10123         Improve doc string.
10125 2015-08-11  Stefan Monnier  <monnier@iro.umontreal.ca>
10127         * lisp/replace.el (perform-replace): Document `replacements'.
10128         (perform-replace): Move the description of the format of `replacements'
10129         from the body's comment to the doc string.
10131 2015-08-11  Jürgen Hötzel  <juergen@archlinux.org>
10133         * lisp/net/tramp-adb.el (tramp-adb-prompt): Match leading escape
10134         sequence.  Recent adb version send initial escape sequences, even
10135         when terminal type is set to TERM=dumb.
10137 2015-08-10  Stephen Leake  <stephen_leake@stephe-leake.org>
10139         Rewrite elisp--xref-find-definitions to handle many more cases; add tests
10140         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
10141         Function deleted.
10142         (elisp--xref-format-cl-defmethod): New defconst.
10143         (find-feature-regexp, find-alias-regexp): New defcustoms.
10144         (elisp--xref-make-xref): New function.
10145         (elisp--xref-find-definitions): Rewrite using the above, handle many
10146         more cases.  Always output all available definitions.
10147         (xref-location-marker): No need for special cases.
10148         * test/automated/elisp-mode-tests.el: Add more tests of
10149         elisp--xref-find-definitions, improve current tests.
10151 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
10153         Fix recording of events pushed onto unread-command-events
10154         * src/keyboard.c (read_char): Make sure events read from
10155         unread-command-events and unread-post-input-method-events are
10156         always recorded by record_char.  Reported by David Kastrup
10157         <dak@gnu.org>, see
10158         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00193.html.
10160 2015-08-10  Samer Masterson  <samer@samertm.com>
10162         Set file buffer as current for "--file"
10163         * lisp/startup.el (command-line-1): Set file buffer as current before
10164         it is displayed so it can be used with options like "--eval".
10165         (Bug#21095)
10167 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
10169         Avoid setting LC_NUMERIC on MS-Windows to anything but "C"
10170         * src/emacs.c (synchronize_locale) [WINDOWSNT]: Call fixup_locale
10171         after setting LC_ALL to the desired locale, to avoid affecting how
10172         numbers are read and printed.  (Bug#21223)
10174 2015-08-10  Alan Mackenzie  <acm@muc.de>
10176         Fix "Invalid search bound (wrong side of point)" in fontification
10177         * lisp/progmodes/cc-fonts.el (c-font-lock-declarators): After skipping
10178         an initialization expression, check point is not beyond the
10179         fontification limit.
10181 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
10183         Fix DPI calculation when Xft/DPI is default
10184         * src/xsettings.c (parse_settings): Don't use Xft/DPI default
10185         value of -1, which evaluates to 2**32 - 1 (Bug#21152).
10186         Remove unnecessary cast while we're in the neighborhood.
10188 2015-08-09  Dmitry Gutov  <dgutov@yandex.ru>
10190         Add project-vc-search-path and project-vc-ignores
10191         * lisp/progmodes/project.el (project-vc): New group.
10192         (project-vc-search-path, project-vc-ignores): New variables.
10193         (project--value-in-dir): Utility function.
10194         (project-search-path, project-ignores): Use them.
10195         * lisp/progmodes/xref.el (xref--rgrep-command): Only replace `./'
10196         at bos.  Don't add extra `/'.  Don't prepend with `*' if replaced.
10198 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
10200         Fix some minor quoting issues with grave accent
10201         * src/dispnew.c (add_window_display_history) [GLYPH_DEBUG]:
10202         Remove redundant quotes.
10203         * src/doc.c (uLSQM, uRSQM): New macros.
10204         * src/doc.c (Fsubstitute_command_keys):
10205         * src/syntax.c (Finternal_describe_syntax_value): Follow the user
10206         preference for quotes rather than hardcoding the ‘grave’ style.
10207         * src/regex.c (PUSH_FAILURE_POINT, POP_FAILURE_POINT)
10208         (re_match_2_internal) [DEBUG]: In debugging output, quote C
10209         strings with "...", not `...'.
10211         ChangeLog.2 ignores remote-tracking merges
10212         * build-aux/gitlog-to-emacslog: Ignore commit logs matching
10213         "Merge remote-tracking branch '.*'" too.  See Eli Zaretskii in:
10214         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00384.html
10216 2015-08-09  Nicolas Richard  <youngfrog@members.fsf.org>
10218         Use kpsewhich in ffap-latex-mode, if available
10219         * lisp/ffap.el (ffap-latex-guess-rules): New variable.
10220         (ffap-latex-mode): Use kpsewhich if available.
10222         ffap: disallow braces in filenames for tex modes
10223         * lisp/ffap.el (ffap-string-at-point-mode-alist): Don't allow
10224         braces in tex-related modes.
10226         Remove useless backslashes from ffap-string-at-point-mode-alist
10227         * lisp/ffap.el (ffap-string-at-point-mode-alist): Remove useless and
10228         misleading backslashes from default value.
10230         Augment docstring of ffap-string-at-point-mode-alist
10231         * lisp/ffap.el (ffap-string-at-point-mode-alist): Describe how BEG
10232         and END are handled.
10234 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
10236         * lisp/org/org-src.el (org-edit-src-code)
10237         (org-edit-fixed-width-region):
10238         * lisp/simple.el (completion-setup-function):
10239         Remove calls to substitute-command-keys that always just return
10240         their argument.
10242 2015-08-09  Daiki Ueno  <ueno@gnu.org>
10244         * lisp/epa.el (epa-exit-buffer-function): Set to `quit-window'.
10245         (Bug#21210)
10247 2015-08-09  Ivan Kanis  <ivan@kanis.fr>
10249         Fix link to source code in help window
10250         * lisp/help-fns.el (find-lisp-object-file-name): Remove code that
10251         will never work due to Glenn Morris change a6d63d9 on Apr 20 2013
10252         'No longer include timestamp in header of .elc files'.  Add code
10253         that will return .el source file in load-path.
10255 2015-08-09  Artur Malabarba  <bruce.connor.am@gmail.com>
10257         * lisp/isearch.el (isearch-search-fun-default): (Bug#21164)
10258         Respect `isearch-lax-whitespace' when searching through
10259         `isearch-word'.
10261 2015-08-08  Stefan Monnier  <monnier@iro.umontreal.ca>
10263         * test/automated/ert-tests.el (ert-test-deftest): Add FIXME.
10265         * org.el: Fix up some lexical scoping warnings, and use dolist
10266         * lisp/org/org.el (org-set-regexps-and-options-for-tags, org-goto-map)
10267         (org-set-regexps-and-options, org-assign-fast-keys)
10268         (org-contextualize-keys, org-contextualize-validate-key)
10269         (org-notes-order-reversed-p, org-local-logging, org-map-entries)
10270         (org-find-olp, org-find-exact-heading-in-directory)
10271         (org-cycle-agenda-files, org-release-buffers, org-fill-template)
10272         (org-agenda-prepare-buffers, org-occur-in-agenda-files)
10273         (org-replace-escapes): Use dolist.
10274         (org-mode): Optimize away XEmacs-only code.
10275         (org-refile-get-targets): Remove unused var `f'.
10276         (org-fast-todo-selection): Remove unused var `e'.
10277         (org-make-tags-matcher): Use dolist.  Remove unused var `term'.
10278         (org-fast-tag-selection): Use dolist.  Remove unused var `e'.
10279         (org-format-latex): Use dolist.  Remove unused var `e'.
10280         (org-toggle-heading): Access vars lexically rather than dynamically.
10281         (org-backward-sentence, org-forward-sentence, org-meta-return)
10282         (org-kill-line): Mark arg as unused.
10283         (org-submit-bug-report): Silence compiler warning.
10284         (org-occur-in-agenda-files): Don't use add-to-list on local vars.
10285         (org-get-cursor-date): Remove unused var `tm'.
10286         (org-comment-or-uncomment-region): Use standard name `_'.
10287         (reftex-docstruct-symbol, reftex-cite-format): Declare to
10288         silence byte-compiler.
10289         (org-reftex-citation): Add `org--' prefix to dynamically scoped
10290         `rds' var.
10292 2015-08-08  Paul Eggert  <eggert@cs.ucla.edu>
10294         Electric quote if coding is undecided or no conv
10295         * lisp/electric.el (electric--insertable-p): Also say that a
10296         string is insertable if the buffer file coding system is undecided
10297         or uses no conversion, as curved quotes will work in either case.
10299         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Simplify configuration.
10301 2015-08-08  Eli Zaretskii  <eliz@gnu.org>
10303         Fix overlay string display regressions introduced in Emacs 24.5
10304         * src/xdisp.c (pop_it): Reset the flag to ignore overlays at this
10305         buffer position, if we move the iterator to a new position as
10306         result of jumping over text covered by a "replacing" display
10307         property.
10308         * test/redisplay-testsuite.el (test-redisplay-4): Add 2 new tests.
10310         Support recovery from C stack overflow on MS-Windows
10311         * src/w32fns.c (w32_reset_stack_overflow_guard)
10312         (stack_overflow_handler): New functions for handling C stack
10313         overflow exceptions.
10314         (my_exception_handler): Handle EXCEPTION_STACK_OVERFLOW exceptions
10315         specially, and zero out except_addr if we do.
10316         (globals_of_w32fns): Initialize dwMainThreadId in non-interactive
10317         mode.
10318         * src/sysdep.c [HAVE_STACK_OVERFLOW_HANDLING]: Add !WINDOWSNT to
10319         the condition, as HAVE_STACK_OVERFLOW_HANDLING is now defined for
10320         the MinGW build, but the code guarded by that is for Posix hosts.
10321         * src/keyboard.c (command_loop) [WINDOWSNT]:
10322         Call w32_reset_stack_overflow_guard.
10323         * nt/inc/ms-w32.h (sigjmp_buf): New typedef.
10324         (sigsetjmp): New macro.
10325         (w32_reset_stack_overflow_guard): Declare the prototype.
10326         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Set to 1 for MinGW.
10328 2015-08-07  Phillip Lord  <phillip.lord@newcastle.ac.uk>
10330         Improve error signalling for seq-subseq
10331         * lisp/seq.el (seq-subseq): The existing behavior is to error
10332         when indexes are too large, but to silently ignore numbers which
10333         are too negative for lists.  String and vector handling errors in
10334         both cases.  This has been regularized.  Error signaling behavior
10335         has been explicitly added to the doc string.
10337         * lisp/cl-extra.el (cl-subseq): Defers to (seq-subseq) and is
10338         therefore also impacted by this change.  Update the doc string
10339         to reflect this.
10341         * test/automated/seq-tests.el (test-seq-subseq): Tests have been
10342         added for these exceptional cases, as well as one non exceptional
10343         base case.
10345 2015-08-07  Jürgen Hötzel  <juergen@archlinux.org>
10347         Improve error checking in tramp-adb.el
10348         * lisp/net/tramp-adb.el (tramp-adb-ls-output-name-less-p):
10349         Improve error checking.  "ls -l" on Android in Enforcing mode can
10350         print "lstat './FILENAME failed: Permission denied".
10352 2015-08-07  Stefan Monnier  <monnier@iro.umontreal.ca>
10354         * lisp/emacs-lisp/cl-generic.el (cl--generic-struct-tag): Don't burp on
10355         non-struct vectors.
10357 2015-08-07  Stephen Leake  <stephen_leake@stephe-leake.org>
10359         Fix typo in lisp/window.el, more `display-buffer-use-some-frame'
10360         * lisp/window.el: Fix typo that broke build.
10361         (display-buffer--action-function-custom-type):
10362         Add `display-buffer-use-some-frame'.
10363         (display-buffer): Add `display-buffer-use-some-frame' to doc string.
10365         Add support for 'inhibit-same-window in 'display-buffer-use-some-frame'
10366         * lisp/window.el (display-buffer-use-some-frame): Add support for
10367         'inhibit-same-window in alist.
10368         * doc/windows.texi (display-buffer-use-some-frame): Doc support for
10369         'inhibit-same-window in alist.
10371 2015-08-07  Eli Zaretskii  <eliz@gnu.org>
10373         Avoid infinite loop in display of invisible text in strings
10374         * src/xdisp.c (handle_invisible_prop): If the next change of
10375         invisibility spec does not mean the beginning of a visible text,
10376         update the string position from which to start the search for the
10377         next invisibility change.  This avoids an infinite loop when we
10378         have more than one invisibility spec that are made inactive by
10379         buffer-invisibility-spec.  Simplify code.  (Bug#21200)
10380         * test/redisplay-testsuite.el (test-redisplay-4): Add a test case
10381         for the situation that caused bug #21200.
10383 2015-08-06  Artur Malabarba  <bruce.connor.am@gmail.com>
10385         * lisp/emacs-lisp/package.el: Simplify describe-package-1
10386         (package-help-section-name-face): New face.
10387         (package--print-help-section): New function.
10388         (describe-package-1): Refactor section printing.
10389         (package-make-button): Use face instead of font-lock-face, which
10390         doesn't work on buttons.
10392         * lisp/emacs-lisp/package.el: Define custom faces
10393         (package-name-face, package-description-face)
10394         (package-status-built-in-face, package-status-external-face)
10395         (package-status-available-face, package-status-new-face)
10396         (package-status-held-face, package-status-disabled-face)
10397         (package-status-installed-face, package-status-dependency-face)
10398         (package-status-unsigned-face, package-status-incompat-face)
10399         (package-status-avail-obso-face): New faces.
10400         (package-menu--print-info-simple): Use them.
10402 2015-08-05  Paul Eggert  <eggert@cs.ucla.edu>
10404         Fix some confusion with ‘format’
10405         * lisp/allout-widgets.el (allout-widgets-before-change-handler)
10406         (allout-graphics-modification-handler):
10407         Protect arbitrary string in a format context with "%s" format.
10408         * lisp/avoid.el:
10409         * lisp/cedet/semantic/bovine/scm.el: Fix comment.
10410         * lisp/calendar/icalendar.el (icalendar--convert-sexp-to-ical):
10411         * lisp/erc/erc-button.el (erc-button-beats-to-time):
10412         * lisp/gnus/message.el (message-send-form-letter):
10413         * lisp/org/ob-core.el (org-babel-check-evaluate)
10414         (org-babel-confirm-evaluate):
10415         * lisp/org/ob-fortran.el (org-babel-fortran-var-to-fortran):
10416         * lisp/org/ox-latex.el (org-latex-compile):
10417         * lisp/org/ox-man.el (org-man-compile):
10418         * lisp/org/ox-odt.el (org-odt-template):
10419         * lisp/org/ox-texinfo.el (org-texinfo-compile):
10420         * lisp/progmodes/prolog.el (prolog-help-info)
10421         (prolog-view-predspec):
10422         * lisp/progmodes/ruby-mode.el (ruby-parse-partial):
10423         * lisp/progmodes/verilog-mode.el (verilog-showscopes):
10424         * lisp/textmodes/rst.el (rst-replace-lines):
10425         Change (message (format ...)) to (message ...), and likewise
10426         for ‘error’.  This lessens the probability of confusion when the
10427         output of ‘format’ contains ‘%’.
10429 2015-08-05  Artur Malabarba  <bruce.connor.am@gmail.com>
10431         * lisp/replace.el (replace-character-fold): Default to nil.
10433         * lisp/character-fold.el: Fix lax whitespace.
10434         (character-fold-table): Don't make space match other whitespace chars.
10435         (character-fold-to-regexp): Simplify lax behavior.
10437 2015-08-05  Dmitry Gutov  <dgutov@yandex.ru>
10439         Preserve window point in xref-find-definitions-other-window
10440         Fix the problem reported by Ingo Logmar in
10441         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00152.html
10442         * lisp/progmodes/xref.el (xref--goto-char): Extract from
10443         xref--goto-location.
10444         (xref--pop-to-location): Use it.  Replace xref--goto-location with
10445         a direct xref-location-marker call.
10446         (xref--show-location): Likewise.
10447         (xref--display-position): Use xref--goto-char.
10449         * lisp/progmodes/project.el: Add a paragraph to the front matter.
10451 2015-08-04  David Kastrup  <dak@gnu.org>
10453         * lisp/vc/emerge.el (emerge-show-file-name):
10454         * lisp/progmodes/vhdl-mode.el (vhdl-electric-dash)
10455         (vhdl-comment-insert, vhdl-hooked-abbrev):
10456         * lisp/progmodes/octave.el (inferior-octave-dynamic-list-input-ring):
10457         * lisp/progmodes/fortran.el (fortran-window-create-momentarily):
10458         * lisp/progmodes/ebrowse.el (ebrowse-hack-electric-buffer-menu):
10459         * lisp/progmodes/cperl-mode.el (cperl-putback-char):
10460         * lisp/obsolete/vip.el (vip-escape-to-emacs)
10461         (vip-prefix-arg-value, vip-prefix-arg-com):
10462         * lisp/obsolete/terminal.el (te-escape-extended-command-unread):
10463         * lisp/leim/quail/tibetan.el (quail-tibetan-update-translation)
10464         (quail-tibkey-update-translation):
10465         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
10466         * lisp/leim/quail/lao.el (quail-lao-update-translation):
10467         * lisp/leim/quail/japanese.el (quail-japanese-update-translation)
10468         (quail-japanese-self-insert-and-switch-to-alpha):
10469         * lisp/leim/quail/hangul.el (hangul2-input-method)
10470         (hangul3-input-method, hangul390-input-method):
10471         * lisp/language/hanja-util.el (hangul-to-hanja-char):
10472         * lisp/international/robin.el (robin-input-method):
10473         * lisp/international/quail.el (quail-start-translation)
10474         (quail-start-conversion):
10475         * lisp/gnus/gnus-art.el (gnus-article-describe-key)
10476         (gnus-article-describe-key-briefly):
10477         * lisp/eshell/em-hist.el (eshell-list-history):
10478         * lisp/term.el (term-dynamic-list-input-ring)
10479         (term-dynamic-list-completions):
10480         * lisp/subr.el (momentary-string-display):
10481         * lisp/simple.el (read-quoted-char):
10482         * lisp/pcomplete.el (pcomplete-show-completions):
10483         * lisp/kmacro.el (kmacro-repeat-on-last-key):
10484         * lisp/info.el (Info-summary):
10485         * lisp/ehelp.el (electric-help-command-loop):
10486         * lisp/ebuff-menu.el (electric-buffer-list)
10487         (Electric-buffer-menu-exit):
10488         * lisp/double.el (double-translate-key):
10489         * lisp/comint.el (comint-dynamic-list-input-ring)
10490         (comint-dynamic-list-completions): Do not overwrite preexisting
10491         contents of `unread-command-events' when putting new events into it.
10493 2015-08-04  Daniel Colascione  <dancol@dancol.org>
10495         Improve ansi-color filtering of unrecognized escape sequences
10496         * lisp/ansi-color.el (ansi-color-drop-regexp): Recognize mode-setting
10497         escape sequences.
10498         (ansi-color-filter-apply, ansi-color-apply): Filter out
10499         unrecognized escape sequences.
10501 2015-08-04  Artur Malabarba  <bruce.connor.am@gmail.com>
10503         * lisp/emacs-lisp/package.el (package-menu-mode-map): Convert menu
10504         definitions to `easy-menu-define', improve a couple to account for
10505         async, and add a couple of new commands.
10507 2015-08-03  Jürgen Hötzel  <juergen@archlinux.org>
10509         * lisp/net/tramp-cache.el (tramp-set-file-property): Fix code typo.
10511 2015-08-03  Ingo Lohmar  <i.lohmar@gmail.com>
10513         Add new 'calendar-weekend-days' option
10514         Make the days receiving the 'calendar-weekend-header' face freely
10515         customizable, as they differ by region/culture.
10516         * doc/emacs/calendar.texi (Move to Beginning or End): Document the
10517         new variable.
10518         * lisp/calendar/calendar.el (calendar-generate-month): New variable
10519         calendar-weekend-days to customize day header fontification.
10521 2015-08-03  Paul Eggert  <eggert@cs.ucla.edu>
10523         Redo text-quoting-style variable
10524         Rename help-quote-translation to text-quoting-style,
10525         and use symbols rather than characters as values.
10526         This follows suggestions along these lines by Alan Mackenzie in:
10527         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00343.html
10528         and by Drew Adams in:
10529         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00048.html
10530         * doc/lispref/help.texi (Keys in Documentation)
10531         * etc/NEWS:
10532         * lisp/cus-start.el (standard):
10533         * src/doc.c (Fsubstitute_command_keys, syms_of_doc):
10534         Document and/or implement the new behavior instead of the old.
10535         (syms_of_doc): New symbols 'grave' and 'straight'.
10537 2015-08-03  Nikolaus Rath  <Nikolaus@rath.org>
10539         nnimap.el: Use IMAP MOVE extension if available
10540         * lisp/gnus/nnimap.el (nnimap-request-move-article)
10541         (nnimap-process-expiry-targets, nnimap-split-incoming-mail):
10542         Use MOVE extension if available.
10544         nnimap.el: Explicitly ask for server capabilities
10545         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Don't assume full
10546         capabilities will be returned in the login-result.
10548 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
10550         Treat help strings like other doc strings
10551         * doc/lispref/text.texi (Special Properties), etc/NEWS: Document this.
10552         * lisp/epa.el (epa--select-keys): Remove no-longer-needed calls to
10553         substitute-command-keys.
10554         * src/keyboard.c (show_help_echo, parse_menu_item): Call
10555         substitute-command-keys on the help string before displaying it.
10557         Also mention "curly quotes"
10558         See Drew Adams's email in:
10559         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00040.html
10560         * doc/lispref/help.texi (Keys in Documentation):
10561         Add index entry "curly quotes".
10562         * etc/NEWS: Use the phrase "curly quotes" too.
10564         ede-proj-target-makefile docstring tweaks
10565         * lisp/cedet/ede/proj.el (ede-proj-target-makefile):
10566         Consistently use "all:" to describe the all: target,
10567         replacing three different and confusingly-quoted usages.
10569 2015-08-02  Evgeny Fraimovitch  <johnlen7@gmail.com>  (tiny change)
10571         Don't abort emacsclientw when -a was specified
10572         * lib-src/emacsclient.c (set_tcp_socket) [WINDOWSNT]: Don't error
10573         out if we are in emacsclientw and -a was specified.
10575 2015-08-02  Eli Zaretskii  <eliz@gnu.org>
10577         Fix handling of 1st keystroke on MS-Windows
10578         * src/w32fns.c (globals_of_w32fns): Initialize after_deadkey to -1.
10579         This is needed to correctly handle the session's first keystroke,
10580         if it has any modifiers.  (Bug#19994)
10582 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
10584         Substitute some customization etc. doc strings
10585         These changes apply substitute-command-keys to some
10586         doc strings that were going through untranslated
10587         when creating customization or other widgets.
10588         * lisp/cus-edit.el (custom-group-value-create):
10589         * lisp/wid-edit.el (widget-default-create):
10590         (widget-push-button-value-create):
10591         Treat the widget tag as a doc string.
10592         * lisp/emacs-lisp/cl-extra.el (cl--describe-class-slot):
10593         Treat the :documentation value as a doc string.
10594         * lisp/wid-edit.el (widget-choose):
10595         Treat the choice names as doc strings.
10596         (widget-default-create): Treat the :doc value as a doc string.
10597         (widget-toggle-value-create): Treat the :on and :off values
10598         as doc strings.
10599         (widget-documentation-string-value-create):
10600         Substitute the doc string.
10602 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
10604         Add a second argument to project-ignores
10605         * lisp/progmodes/project.el (project-ignores): Add a second
10606         argument DIR.
10607         * lisp/progmodes/project.el (project-ignores): Only include the VC
10608         ignores if DIR is the VC root.
10609         * lisp/progmodes/xref.el (xref-find-regexp): Update accordingly.
10611 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
10613         Prevent incorrect display when 'line-spacing' variable is set
10614         * src/xdisp.c (try_window_id): Give up this optimization if the
10615         buffer has its 'line-spacing' variable set non-nil.
10617 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
10619         Don't pass NOVISIT to find-file
10620         * lisp/progmodes/etags.el (next-file):
10621         Don't pass NOVISIT to find-file (bug#21175).
10623         Ignore buffer restriction for tags-loop-eval
10624         * lisp/progmodes/etags.el (tags-loop-continue): Ignore buffer
10625         restriction (bug#21167).
10627 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
10629         Fix a thinko in 'ffap-gopher-at-point'
10630         * lisp/ffap.el (ffap-gopher-at-point): Fix last change.  (Bug#21168)
10632         Honor 'line-spacing' for empty lines
10633         * src/xdisp.c (append_space_for_newline): Honor 'line-height'
10634         property and 'line-spacing' frame parameter or variable or
10635         property for empty lines, by doing the same processing as in
10636         x_produce_glyph for newline characters.  (Bug#21165)
10638 2015-08-01  Paul Eggert  <eggert@cs.ucla.edu>
10640         Simplify by assuming C99 integer division
10641         * src/floatfns.c (ceiling2, floor2, truncate2):
10642         Assume C99 (i.e., Fortran) semantics for integer division.
10643         This simplifies the code.
10645 2015-07-31  Paul Eggert  <eggert@cs.ucla.edu>
10647         Don't overflow if computing approximate percentage
10648         * lisp/align.el (align-region):
10649         * lisp/cedet/semantic.el (semantic-repeat-parse-whole-stream):
10650         * lisp/cedet/semantic/wisent.el (wisent-parse-region):
10651         * lisp/cus-edit.el (custom-buffer-create-internal):
10652         * lisp/emacs-lisp/checkdoc.el (checkdoc-interactive-ispell-loop)
10653         (checkdoc-message-interactive-ispell-loop, checkdoc-next-error)
10654         (checkdoc-next-message-error):
10655         * lisp/emacs-lisp/eieio-opt.el (eieio-display-method-list):
10656         * lisp/epa.el (epa-progress-callback-function):
10657         * lisp/erc/erc-dcc.el (erc-dcc-do-LIST-command):
10658         * lisp/ffap.el (ffap-menu-rescan):
10659         * lisp/gnus/nnbabyl.el (nnbabyl-retrieve-headers):
10660         * lisp/gnus/nndiary.el (nndiary-retrieve-headers):
10661         * lisp/gnus/nneething.el (nneething-retrieve-headers):
10662         * lisp/gnus/nnmbox.el (nnmbox-retrieve-headers):
10663         * lisp/gnus/nnmh.el (nnmh-retrieve-headers):
10664         * lisp/gnus/nnml.el (nnml-retrieve-headers):
10665         * lisp/gnus/nnspool.el (nnspool-retrieve-headers):
10666         * lisp/gnus/nntp.el (nntp-retrieve-headers)
10667         (nntp-retrieve-articles):
10668         * lisp/imenu.el (imenu--relative-position):
10669         * lisp/international/ja-dic-cnv.el (skkdic-collect-okuri-nasi)
10670         (skkdic-convert-okuri-nasi):
10671         * lisp/net/ange-ftp.el (ange-ftp-process-handle-hash):
10672         * lisp/nxml/rng-valid.el (rng-compute-mode-line-string):
10673         * lisp/org/org-list.el (org-update-checkbox-count):
10674         * lisp/org/org.el (org-table-map-tables)
10675         (org-update-parent-todo-statistics):
10676         * lisp/play/decipher.el (decipher-insert-frequency-counts)
10677         (decipher-analyze-buffer):
10678         * lisp/profiler.el (profiler-format-percent):
10679         * lisp/progmodes/cc-cmds.el (c-progress-update):
10680         * lisp/progmodes/cpp.el (cpp-highlight-buffer):
10681         * lisp/progmodes/idlwave.el (idlwave-convert-xml-system-routine-info)
10682         (idlwave-list-load-path-shadows):
10683         * lisp/progmodes/opascal.el (opascal-step-progress):
10684         * lisp/progmodes/vhdl-mode.el (vhdl-update-progress-info)
10685         (vhdl-scan-directory-contents):
10686         * lisp/textmodes/bibtex.el (bibtex-progress-message):
10687         * lisp/textmodes/flyspell.el (flyspell-small-region)
10688         (flyspell-external-point-words):
10689         * lisp/textmodes/table.el (table-recognize):
10690         Prefer (floor (* 100.0 NUMERATOR) DENOMINATOR) when calculating
10691         progress-report percentages and the like.  This avoids problems
10692         if (* 100 NUMERATOR) would overflow.
10693         * lisp/gnus/gnus-registry.el (gnus-registry-import-eld):
10694         * lisp/gnus/registry.el (registry-reindex):
10695         Use (* 100.0 ...) rather than (* 100 ...) to avoid int overflow issues.
10696         * lisp/descr-text.el (describe-char):
10697         * lisp/org/org-colview.el (org-nofm-to-completion):
10698         * lisp/ps-print.el (ps-plot):
10699         * lisp/simple.el (what-cursor-position):
10700         Prefer (round (* 100.0 NUMERATOR) DENOMINATOR) to a
10701         more-complicated and less-accurate approximation.
10703         Fix some int overflows in profiler.c
10704         * src/profiler.c (make_log): Make args EMACS_INT, not int,
10705         to avoid unwanted behavior on 'int' overflow.
10706         (make_log, evict_lower_half, record_backtrace):
10707         Use ptrdiff_t, not int, for object indexes.
10709         Port to pedantic memcpy
10710         * src/keyboard.c (menu_bar_items, tool_bar_items):
10711         * src/xrdb.c (magic_db):
10712         Port to pedantic memcpy implementations that reject memcpy (0, 0, 0).
10714         Merge from gnulib
10715         This incorporates:
10716         2015-07-29 time_rz: port to pedantic memcpy
10717         * lib/time_rz.c: Copy from gnulib.
10719 2015-07-31  Artur Malabarba  <bruce.connor.am@gmail.com>
10721         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
10722         When updating the very last entry, tabulated-list-print would
10723         erase it and then try to look at the next one (which obviously
10724         isn't there).
10726 2015-07-31  Eli Zaretskii  <eliz@gnu.org>
10728         Allow to use the old key processing code on MS-Windows
10729         * src/w32fns.c (syms_of_w32fns) <w32-use-fallback-wm-chars-method>:
10730         New variable.
10731         (w32_wnd_proc): Use it to invoke the old code that processed
10732         character keys, as fallback, when this variable is non-nil.
10733         Fix typos in comments.  (Bug#19994)
10735 2015-07-31  Ilya Zakharevich  <ilya@math.berkeley.edu>
10737         Improve handling of Unicode keyboard input on MS-Windows
10738         * src/w32fns.c (get_wm_chars, deliver_wm_chars): New functions.
10739         (FPRINTF_WM_CHARS) [DEBUG_WM_CHARS]: New macro for debugging.
10740         (w32_wnd_proc): Call deliver_wm_chars to process non-special keys
10741         upon receiving WM_KEYDOWN or WM_SYSKEYDOWN messages.  If that is
10742         successful, don't call TranslateMessage.  (Bug#19994)
10744 2015-07-30  Dmitry Gutov  <dgutov@yandex.ru>
10746         Fix default-directory in changeset diffs after vc-print-log
10747         * lisp/vc/log-view.el (log-view-diff-common): Move the
10748         revision-granularity check back into log-view-diff-changeset.
10749         (log-view-diff-changeset): Bind default-directory to the current
10750         VC root.
10752         Rename project-directories to project-roots
10753         * lisp/progmodes/project.el (project-search-path-function)
10754         (project-search-path): Update the docstring.
10755         (project-directories): Rename to `project-roots', update all
10756         callers and implementations accordingly.
10757         (project-root): Remove.
10758         * lisp/progmodes/xref.el (xref-find-regexp): Use * instead of *.*
10759         as the default file mask.
10761 2015-07-30  Eli Zaretskii  <eliz@gnu.org>
10763         Support long URLs in w32-shell-execute
10764         * src/w32fns.c (Fw32_shell_execute): Don't use filename_to_utf16
10765         and filename_to_ansi to convert the DOCUMENT argument, as it could
10766         be a URL that is not limited to MAX_PATH characters.  Instead, use
10767         MultiByteToWideChar directly, and allocate heap storage as
10768         required to accommodate the converted string.  Likewise with
10769         non-Unicode operation.  Ensure OPERATION is null-terminated, even
10770         if it is longer than 32K bytes.  (Bug#21158)
10772 2015-07-30  Stephen Leake  <stephen_leake@stephe-leake.org>
10774         * lisp/vc/vc-mtn.el (vc-mtn-find-revision): Handle null rev.
10776 2015-07-29  Stephen Leake  <stephen_leake@stephe-leake.org>
10778         Add docs for display-buffer action display-buffer-use-some-frame
10779         * lisp/window.el (display-buffer-use-some-frame): Improve doc string.
10780         * doc/lispref/windows.texi (Display Action Functions):
10781         Add display-buffer-use-some-frame.
10782         * etc/NEWS: Mention display-buffer-use-some-frame.
10784         Add display-buffer action display-buffer-use-some-frame
10785         * lisp/window.el (display-buffer-use-some-frame): New.
10787         Handle vc-mtn error more gently
10788         * lisp/vc/vc-mtn.el (vc-mtn-mode-line-string): Return "" when
10789         branch is nil.
10791 2015-07-29  Michael Albinus  <michael.albinus@gmx.de>
10793         Fix Tramp problems with multihops, and nc
10794         * lisp/net/tramp-cache.el (tramp-get-file-property)
10795         (tramp-set-file-property, tramp-flush-file-property)
10796         (tramp-get-connection-property, tramp-set-connection-property)
10797         (tramp-flush-connection-property): Remove hop from vector.
10798         * lisp/net/tramp-gw.el (tramp-gw-process-filter): Ignore errors.
10799         * lisp/net/tramp-sh.el (tramp-methods) <nc>: Separate STDERR.
10800         (tramp-do-copy-or-rename-file-out-of-band): Increase timeout of
10801         netstat to 60".
10802         (tramp-sh-handle-start-file-process): Do not show hops in prompt.
10803         * lisp/net/tramp.el (tramp-handle-file-name-as-directory)
10804         (tramp-handle-file-name-directory, tramp-handle-file-remote-p):
10805         Keep hop in result.
10806         * test/automated/tramp-tests.el (tramp-test02-file-name-dissect):
10807         Add hop tests.
10809 2015-07-29  Eli Zaretskii  <eliz@gnu.org>
10811         Resurrect highlighting of repeated words by Flyspell Mode
10812         * lisp/textmodes/flyspell.el (flyspell-word): Leave some non-word
10813         characters between point and the doublon candidate, so that
10814         flyspell-word-search-backward finds it.  (Bug#21157)
10816         Fix redisplay of large images on expose events
10817         * src/xdisp.c (expose_window, expose_area): Avoid comparisons
10818         between signed negative values and unsigned values.  This
10819         prevented redisplay on expose events when the window showed a very
10820         large image.
10822 2015-07-29  Paul Eggert  <eggert@cs.ucla.edu>
10824         Remove unnecessary stack overflow dependency
10825         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING):
10826         Don't worry about $ac_cv_header_sys_resource_h and
10827         $ac_cv_func_getrlimit, as they're no longer needed for this.
10828         Problem reported by Eli Zaretskii in:
10829         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00443.html
10831 2015-07-28  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
10833         Pacify compilation -Wincompatible-pointer-types warnings
10834         * src/w32proc.c (Fw32_get_codepage_charset): Avoid compilation
10835         warning.
10836         (CompareStringW_Proc): New typedef.
10837         (w32_compare_strings): Use it, to pacify compiler warnings under
10838         "-Wincompatible-pointer-types".
10839         * src/w32fns.c (GetDiskFreeSpaceExW_Proc)
10840         (GetDiskFreeSpaceExA_Proc): New typedefs.
10841         (Ffile_system_info): Use them, to pacify compiler warnings under
10842         "-Wincompatible-pointer-types".
10844 2015-07-28  Paul Eggert  <eggert@cs.ucla.edu>
10846         Fix subscript error in calculate_direct_scrolling
10847         Use slightly-longer cost vectors.  Without this change,
10848         calculate_direct_scrolling can have a subscript violation when
10849         FRAME_LINES (frame) <= delta.
10850         * src/scroll.c (calculate_scrolling, calculate_direct_scrolling)
10851         (line_ins_del, do_line_insertion_deletion_costs):
10852         Allocate and use slightly-larger cost vectors, ones based on
10853         FRAME_TOTAL_LINES instead of FRAME_LINES.
10855         Fix uninitalized value in encode_coding_object
10856         * src/coding.c (encode_coding_object): Also initialize
10857         coding->src_pos and coding->src_pos_byte when NILP (src_object).
10858         This avoids later use of uninitialized storage.
10860 2015-07-27  Xue Fuqiao  <xfq.free@gmail.com>
10862         * doc/lispref/variables.texi (Variable Aliases): Typo fix.
10863         (Bug#21141)
10865 2015-07-27  Paul Eggert  <eggert@cs.ucla.edu>
10867         Merge from gnulib
10868         This incorporates:
10869         2015-07-27 time_rz: port better to MinGW
10870         2015-07-27 time: port __need_time_t to MinGW
10871         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
10872         * lib/strftime.c, lib/time.in.h, lib/time_rz.c: Copy from gnulib.
10873         * lib/time-internal.h: New file, from gnulib.
10875 2015-07-27  Eli Zaretskii  <eliz@gnu.org>
10877         Handle NULL pointers in w32heap.c allocation routines
10878         * src/w32heap.c (FREEABLE_P): Consider a NULL pointer "not
10879         freeable".
10880         (realloc_after_dump, realloc_before_dump, free_before_dump):
10881         Handle NULL pointers gracefully, as Emacs now seems to expect that.
10883         Fix Cairo build without PNG
10884         * src/image.c: Define PNG function when USE_CAIRO is defined, even
10885         if HAVE_PNG is not.  (Bug#21133)
10887         MS-Windows follow-up for recent TZ-related changes
10888         * nt/mingw-cfg.site (ac_cv_header_pthread_h)
10889         (gl_cv_sys_struct_timespec_in_pthread_h): Force to "no", to avoid
10890         picking up 'struct timespec' from pthread.h, if it is installed on
10891         the user's system.  We want either the definitions from MinGW
10892         system headers, if available, or the Gnulib replacements if not.
10893         * nt/inc/ms-w32.h <struct timespec>: Don't define, as we now use
10894         lib/time.h.
10895         * lib/time.in.h: Don't let __need_* symbols affect what happens on
10896         MinGW.  These symbols are defined by MinGW system headers, but we
10897         don't want that to affect whether Gnulib portions of the header
10898         are or aren't used.
10900 2015-07-26  Paul Eggert  <eggert@cs.ucla.edu>
10902         * src/ftfont.c (ftfont_close): Add comment re Bug#20890.
10904         New optional ZONE arg for format-time-string etc.
10905         This simplifies time conversions in other time zones.
10906         It also prevents display-time-world tampering with TZ (Bug#21020).
10907         * admin/admin.el (add-release-logs):
10908         Use improved add-log-time-format API.
10909         * admin/merge-gnulib (GNULIB_MODULES): Add time_rz, timegm.
10910         (GNULIB_TOOL_FLAGS): Avoid flexmember, setenv, unsetenv.
10911         * configure.ac (tzalloc): Remove test for this, since
10912         Emacs no longer uses HAVE_TZALLOC directly.
10913         * doc/lispref/os.texi (Time of Day, Time Conversion)
10914         (Time Parsing):
10915         * etc/NEWS: Document the new behavior.
10916         Merge from gnulib, incorporating:
10917         2015-07-25 strftime: fix newly-introduced bug on Solaris
10918         2015-07-23 fprintftime, strftime: use timezone_t args
10919         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
10920         * lib/strftime.c, lib/strftime.h, lib/time.in.h, m4/sys_time_h.m4:
10921         * m4/time_h.m4:
10922         Update from gnulib.
10923         * lib/time_rz.c, lib/timegm.c, m4/time_rz.m4, m4/timegm.m4:
10924         New files from gnulib.
10925         * lisp/time-stamp.el (time-stamp-string):
10926         * lisp/time.el (display-time-world-list)
10927         (display-time-world-display):
10928         Use new API, with time zone arg.
10929         * lisp/time.el (display-time-world-display):
10930         Fix race when current-time advances while we're running.
10931         * lisp/vc/add-log.el (add-log-iso8601-time-zone)
10932         (add-log-iso8601-time-string): Accept optional time zone arg.
10933         * lisp/vc/add-log.el (add-change-log-entry):
10934         * lisp/vc/log-edit.el (log-edit-changelog-ours-p): Use new arg.
10935         * nt/gnulib.mk: Propagate lib/gnulib.mk changes here.
10936         Add rules for the time module, since they're now needed
10937         for tzalloc etc.
10938         * src/conf_post.h (getenv_TZ, setenv_TZ): New macros.
10939         (emacs_getenv_TZ, emacs_setenv_TZ): New decls.
10940         * src/editfns.c: Include errno.h.
10941         (set_time_zone_rule): Omit unnecessary forward decl.
10942         (initial_tz): Remove, replacing with ...
10943         (local_tz, wall_clock_tz, utc_tz): New static vars and constants.
10944         (tzeqlen): New constant; prefer it to (sizeof "TZ=" - 1).
10945         (emacs_localtime_rz, emacs_mktime_z, xtzalloc, xtzfree)
10946         (tzlookup): New static functions.
10947         (init_editfns): New arg DUMPING.  All uses changed.
10948         (init_editfns): Omit most initialization if dumping, not if
10949         !initialized.  Initialize wall_clock_tz and local_tz.
10950         (emacs_nmemftime, format_time_string): Time zone argument can now
10951         be any time zone, not just a boolean for UTC or local time.  All
10952         callers changed.
10953         (Fformat_time_string, Fencode_time, Fcurrent_time_string)
10954         (Fcurrent_time_zone): New optional arg ZONE.
10955         (Fdecode_time, Fset_time_zone_rule): ZONE arg can now also take
10956         the same form as with the other new additions.
10957         (decode_time_zone): Remove; no longer needed.
10958         (tzvalbuf): Now file-scope.
10959         (emacs_getenv_TZ, emacs_setenv_TZ): New functions.
10960         (syms_of_editfns): Define Qwall.
10961         * src/editfns.c (mktime_z) [!HAVE_TZALLOC]:
10962         * src/systime.h (mktime_z, timezone_t, tzalloc, tzfree)
10963         [!HAVE_TZALLOC]:
10964         Remove; now supplied by gnulib.
10965         * src/emacs.c (main):
10966         * src/lisp.h (init_editfns): Adjust to init_editfns API change.
10968 2015-07-26  Shigeru Fukaya  <shigeru.fukaya@gmail.com>
10970         Fix infinite loop in delete-consecutive-dups
10971         * lisp/subr.el (delete-consecutive-dups): Work even if the last
10972         element is nil (Bug#20588).  Avoid rescan of a circular list in
10973         deletion of last element.
10975 2015-07-26  Martin Rudalics  <rudalics@gmx.at>
10977         Have `x-frame-geometry' return nil for terminal and initial
10978         frames (Bug#21132)
10979         * src/nsfns.m (Fx_frame_geometry):
10980         * src/xfns.c (Fx_frame_geometry): Return nil for initial and
10981         terminal frames.
10982         * src/w32fns.c (Fw32_frame_menu_bar_size, Fw32_frame_rect)
10983         (Fx_frame_geometry): Return nil for terminal frames
10985 2015-07-26  HOSOYA Kei  <hosoyakei.free@gmail.com>  (tiny change)
10987         * etc/tutorials/TUTORIAL.ja: Improve translation.
10989 2015-07-25  Eli Zaretskii  <eliz@gnu.org>
10991         Avoid crashes when w32 GUI functions are called in -batch
10992         * src/w32fns.c (Fx_frame_geometry, Fw32_frame_rect)
10993         (Fw32_frame_menu_bar_size, Fw32_send_sys_command): Don't call
10994         FRAME_W32_WINDOW for initial frame.  (Bug#21132)
10996         Fix flyspell-check-previous-highlighted-word
10997         * lisp/textmodes/flyspell.el
10998         (flyspell-check-previous-highlighted-word): Really accept a
10999         numeric argument, as the doc string describes.  Fix an off-by-one
11000         error in looking up overlays, so invocation with point immediately
11001         after a word would check that word.  Clarify the doc string as
11002         Suggested by N. Jackson <nljlistbox2@gmail.com>.  (Bug#21129)
11004 2015-07-24  Michael Albinus  <michael.albinus@gmx.de>
11006         Minor cleanup in tramp-tests.el
11007         * test/automated/tramp-tests.el (tramp-test31-*, tramp-test32-*):
11008         Implement using the documented interface
11009         `tramp-connection-properties', rather than with internal functions.
11011 2015-07-24  Harald Hanche-Olsen  <hanche@math.ntnu.no>  (tiny change)
11013         Pass lambdas to `skeleton-read'
11014         * lisp/skeleton.el (skeleton-read): Allow PROMPT to be a function.
11015         * lisp/textmodes/sgml-mode.el (sgml-attributes, sgml-value): Pass
11016         lambdas to `skeleton-read' (bug#20386).
11018 2015-07-24  Eli Zaretskii  <eliz@gnu.org>
11020         * INSTALL (DETAILED BUILDING AND INSTALLATION):
11021         Mention --without-imagemagick.
11023         Don't require GUI frames and mouse for Flyspell menus
11024         * lisp/textmodes/flyspell.el (flyspell-correct-word-before-point)
11025         (flyspell-emacs-popup): Require neither a GUI frame nor mouse
11026         support, since pop-up menus work with text terminals and can be
11027         controlled via the keyboard.
11029         Improve documentation of Flyspell commands
11030         * doc/emacs/fixit.texi (Spelling): Mention Flyspell commands that
11031         can be invoked via the keyboard.  Mention those commands by name
11032         and add them to the fn index.  (Bug#21125)
11034 2015-07-23  Michael Albinus  <michael.albinus@gmx.de>
11036         Fix some Tramp problems with HP-UX
11037         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
11038         Add "tab0" to stty call.
11039         * test/automated/tramp-tests.el (tramp-persistency-file-name):
11040         Set to nil.
11041         (tramp--test-hpux-p): New defun.
11042         (tramp--test-utf8): Use it.
11044 2015-07-22  Glenn Morris  <rgm@gnu.org>
11046         * build-aux/update-subdirs: Put "no-update-autoloads: t" in output.
11048 2015-07-22  Eli Zaretskii  <eliz@gnu.org>
11050         Fix point positioning in ffap-next-guess
11051         * lisp/ffap.el (ffap-url-at-point): Set ffap-string-at-point-region,
11052         as our callers expect.  This was clobbered as part of fixing
11053         bug#5673.  (Bug#21107)
11054         (ffap-gopher-at-point): Set ffap-string-at-point-region.
11056 2015-07-22  Martin Rudalics  <rudalics@gmx.at>
11058         * lisp/window.el (even-window-sizes): Fix customization type.
11060         Optionally even widths of `display-buffer' windows.  (Bug#21100)
11061         * lisp/window.el (quit-restore-window): Restore width if
11062         requested.
11063         (display-buffer-record-window): Record width when window is
11064         reused and horizontally combined.
11065         (even-window-sizes): New option to allow evening window widths.
11066         (even-window-heights): Defalias to `even-window-sizes'.
11067         (window--even-window-heights): Rename to
11068         `window--even-window-sizes'.  Handle side-by-side windows.
11069         (display-buffer-use-some-window): Call `window--even-window-sizes'
11070         instead of `window--even-window-heights'.
11071         * lisp/help.el (resize-temp-buffer-window): Fix indentation.
11072         * doc/lispref/windows.texi (Choosing Window Options): Describe
11073         `even-window-sizes'.
11074         (Coordinates and Windows): Fix typo.
11076 2015-07-22  Stephen Leake  <stephen_leake@stephe-leake.org>
11078         Add file name to autoload error messages
11079         * lisp/emacs-lisp/autoload.el (autoload-save-buffers):
11080         Add condition-case to add file name to error message.
11082 2015-07-22  Michael Albinus  <michael.albinus@gmx.de>
11084         * lisp/net/tramp-sh.el (tramp-ssh-controlmaster-options):
11085         Use 0.0.0.1 as test host.
11087 2015-07-21  Stefan Monnier  <monnier@iro.umontreal.ca>
11089         (advice--called-interactively-skip): Fix inf-loop (bug#21083)
11090         * lisp/emacs-lisp/nadvice.el (advice--called-interactively-skip):
11091         Fix inf-loop (bug#21083).
11093 2015-07-21  Glenn Morris  <rgm@gnu.org>
11095         * test/automated/package-test.el (package-test-signed):
11096         Update for recent changes.
11098         * test/automated/elisp-mode-tests.el
11099         (elisp-xref-finds-both-function-and-variable)
11100         (elisp-xref-finds-only-function-for-minor-mode):
11101         Update for recent xref name changes.
11103 2015-07-21  Dmitry Gutov  <dgutov@yandex.ru>
11105         Make eldoc timer non-repeatable
11106         * lisp/emacs-lisp/eldoc.el (eldoc-schedule-timer): Make the timer
11107         non-repeatable.  Since it's on post-command hook, that just wasted
11108         CPU cycles.
11110 2015-07-21  Michael Albinus  <michael.albinus@gmx.de>
11112         Mention `tramp-connection-properties' in NEWS
11114         Sync with Tramp repository
11115         * doc/misc/tramp.texi (Configuration): Note, that Tramp must be
11116         required prior changing its configuration.
11117         (Connection caching, Predefined connection information)
11118         (Remote shell setup): Fix typos.
11119         (Predefined connection information): Describe, how to overwrite
11120         parameters of `tramp-methods'.
11121         (Remote programs, Remote processes, Traces and Profiles):
11122         Simplify example.
11123         (Remote programs): Remove superfluous comment.
11124         * doc/misc/trampver.texi: Update release number.
11125         * lisp/net/tramp-cache.el (tramp-connection-properties):
11126         Adapt docstring.
11127         * lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file): New defun.
11128         (tramp-gvfs-handle-copy-file, tramp-gvfs-handle-rename-file): Use it.
11129         (tramp-gvfs-handle-make-directory): Reimplement PARENTS handling,
11130         "gvfs-mkdir -p ..." does not work robust.
11131         (tramp-gvfs-maybe-open-connection):
11132         Adapt `tramp-get-method-parameter' call.
11133         * lisp/net/tramp-sh.el (tramp-methods):
11134         Add `tramp-remote-shell-login' parameter where it fits.
11135         (tramp-get-remote-path): Use it.
11136         (tramp-make-copy-program-file-name): Fix quoting for "psftp" method.
11137         (all): Adapt `tramp-get-method-parameter' calls.
11138         * lisp/net/tramp.el (tramp-methods): Adapt docstring.
11139         (tramp-get-method-parameter): Replace argument METHOD by VEC.
11140         Check also for hits in `tramp-connection-properties'.  Adapt docstring.
11141         (tramp-get-remote-tmpdir): Cache only the local name of tmpdir.
11142         (all): Adapt `tramp-get-method-parameter' calls.
11143         * lisp/net/trampver.el Update release number.
11144         * test/automated/tramp-tests.el (tramp--instrument-test-case):
11145         Add "^make-symbolic-link not supported$" to `debug-ignored-errors'.
11146         (tramp-test13-make-directory, tramp--test-adb-p)
11147         (tramp--test-smb-or-windows-nt-p): Simplify.
11148         (tramp--test-ftp-p, tramp--test-gvfs-p): New defuns.
11149         (tramp--test-special-characters): Fix docstring.  Add gvfs and
11150         ftp tests.
11151         (tramp--test-utf8): Fix docstring.
11153 2015-07-20  Dmitry Gutov  <dgutov@yandex.ru>
11155         Add new xref-query-replace command
11156         * lisp/progmodes/xref.el (xref--match-buffer-bounds):
11157         New function, extracted from xref-pulse-momentarily.
11158         (xref-query-replace): New command.
11159         (xref--query-replace-1): New helper function.
11160         (xref--xref-buffer-mode-map): Add `r' binding.
11162 2015-07-20  Paul Eggert  <eggert@cs.ucla.edu>
11164         Simplify icalendar decoding of Z dates
11165         * lisp/calendar/icalendar.el (icalendar--decode-isodatetime):
11166         Simplify calculation of time strings with trailing "Z".
11168 2015-07-19  Dmitry Gutov  <dgutov@yandex.ru>
11170         Do not corrupt grep-find-ignored-files
11171         * lisp/progmodes/project.el (project-ignores): Change the order of
11172         the arguments to nconc, in order not to corrupt grep-find-ignored-files.
11174         Add xref-match-item, and use it
11175         * lisp/progmodes/xref.el (xref-match-bounds): New generic function.
11176         (xref-file-location): Add reader for the column slot.
11177         (xref-match-item): New class.
11178         (xref-match-bounds): A method implementation for it.
11179         (xref-make-match): New constructor function.
11180         (xref--current-item): New private variable.
11181         (xref-pulse-momentarily): Use it.
11182         (xref--pop-to-location): Change the first argument to an xref
11183         item, instead of location, bind xref--current-item.
11184         Update all callers.
11185         (xref-next-line, xref-prev-line, xref--next-error-function)
11186         (xref--mouse-2): Look for the property `xref-item',
11187         instead of `xref-location'.
11188         (xref--item-at-point): Likewise.  This function replaces
11189         `xref-location-at-point'.  Update all callers.
11190         (xref--insert-xrefs): Add the `xref-item' text property, instead
11191         of `xref-location'.
11192         (xref--collect-match): Use xref-make-match.
11194         * lisp/progmodes/xref.el (xref-item): Rename from `xref--xref'.
11195         Update all references.
11197         * lisp/progmodes/xref.el (xref--xref): Rename the `description'
11198         slot to `summary'.
11200         vc-hg: Perform the print-log call asynchronously
11201         * lisp/vc/vc-hg.el (vc-hg-print-log): Perform the call
11202         asynchronously (bug#21067).
11204         Add xref-after-jump-hook and xref-after-return-hook
11205         * lisp/progmodes/xref.el (xref-after-jump-hook)
11206         (xref-after-return-hook): New hooks.
11207         (xref-pulse-on-jump): Remove, in favor of the above.
11208         (xref-pulse-momentarily): Rename from xref--maybe-pulse.
11209         (xref--pop-to-location, xref--display-position)
11210         (xref-pop-marker-stack): Use the new hooks, as requested in
11211         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00213.html
11213 2015-07-19  Bozhidar Batsov  <bozhidar@batsov.com>
11215         * lisp/progmodes/js.el (js-mode): Correct the lighter.
11217 2015-07-19  Leo Liu  <sdl.web@gmail.com>
11219         Fix a bug in cfengine3-mode
11220         * lisp/progmodes/cfengine.el (cfengine3-mode): Handle nil
11221         eldoc-documentation-function.
11223 2015-07-18  Julien Danjou  <julien@danjou.info>
11225         sieve-mode: support "body" test command
11226         * lisp/gnus/sieve-mode.el (sieve-font-lock-keywords):
11227         Add missing "body" test command.
11229 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
11231         Fix info-apropos when the default encoding is Latin-N
11232         * lisp/info.el (Info-find-node-2): Reset the buffer's encoding to
11233         'undecided', so that it is set to the encoding of the Info file we
11234         are about to insert.  Otherwise, 'info-apropos' will fail to find
11235         some index nodes in some UTF-8 encoded files, if the buffer's
11236         previous encoding is Latin-N or some such.
11238 2015-07-18  Ivan Andrus  <darthandrus@gmail.com>
11240         * lisp/epg.el (epg--start): Check that gpgconf can be found
11241         before calling it.
11243         Expose more file types to OS X that Emacs understands
11244         * nextstep/Cocoa/Emacs.base/Contents/Info.plist: Add editor role for
11245         sty, dtx, json, and org files.  Export UTIs for el, elc, and org files.
11247 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
11249         Fix visual-order cursor movement when lines are truncated
11250         * src/xdisp.c (Fmove_point_visually): When lines are truncated,
11251         simulate display in a window of infinite width, to allow move_it_*
11252         functions reach positions outside of normal window dimensions.
11253         Remove code that tried to handle a subset of these situations by
11254         manual iteration of buffer text.  (Bug#17777)
11256         Fix following Info cross-references to anchors
11257         * lisp/info.el (Info-read-subfile): Add to the returned value the
11258         length of subfile preamble, after converting it to file's byte
11259         offset, as expected by the caller.  Use bufferpos-to-filepos.
11260         (Info-find-node-2): If searching for a node with a
11261         1000-character slop fails, try again with a 10000-character slop,
11262         to account for known bugs in Texinfo 5.0 and 5.1.  (Bug#21055)
11263         * lisp/international/mule-util.el (bufferpos-to-filepos): New
11264         function.
11265         * etc/NEWS: Mention bufferpos-to-filepos.
11267         Fix scrolling backwards on TTY frames under scroll-conservatively
11268         * src/xdisp.c (move_it_vertically_backward): Fix off-by-one error
11269         in moving backwards on TTY frames.  (Bug#21080)
11271 2015-07-17  Dmitry Gutov  <dgutov@yandex.ru>
11273         Consider a jsdoc tag to be a beginning of a paragraph as well
11274         * lisp/progmodes/js.el (js-mode): Change c-paragraph-start to
11275         consider a jsdoc tag to be a beginning of a paragraph as well.
11277 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
11279         * lisp/emacs-lisp/package.el: Fix warnings.
11281         * lisp/emacs-lisp/package.el (package-buffer-info):
11282         Add author and maintainers to `package-buffer-info'.
11284         * lisp/emacs-lisp/package.el: Many small changes.
11285         Replace all instances of 'face with 'font-lock-face.
11286         (describe-package-1): Improve some strings and move the summary
11287         up the list.
11288         (package-install-file): Update docstring.
11289         (package-menu-hide-package): Bind to `H'.
11291         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
11292         Fix error handling.
11294 2015-07-17  Paul Eggert  <eggert@cs.ucla.edu>
11296         Fix hang with large yanks This should fix the bug fixed by Mike
11297         Crowe's patch in:
11298         https://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00106.html
11299         A problem in this area has been reported by several users; see
11300         Bug#16737, Bug#17101, Bug#17026, Bug#17172, Bug#19320, Bug#20283.
11301         This fix differs from Mike Crowe's patch in that it should avoid a
11302         race condition that could lose SIGIO signals.  ignore_sigio dates
11303         back to the 1980s when some platforms couldn't block signals, and
11304         could only ignore them, which led to races when signals arrived
11305         while being ignored.  We shouldn't have to worry about those old
11306         platforms now.
11307         * src/dispextern.h, src/sysdep.c (ignore_sigio): Remove.
11308         * src/emacs.c (shut_down_emacs):
11309         Don't call ignore_sigio; unrequest_sigio should suffice.
11310         * src/keyboard.c (kbd_buffer_store_buffered_event):
11311         Use unrequest_sigio, not ignore_sigio.
11312         (kbd_buffer_get_event):
11313         Call request_sigio when getting the ball rolling again.
11315 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
11317         * lisp/obsolete/longlines.el (longlines-search-function):
11318         Fallback on `isearch-search-fun-default'.
11320 2015-07-17  Tassilo Horn  <tsdh@gnu.org>
11322         Support @-mentions
11323         * lisp/net/rcirc.el (rcirc-completion-at-point): Support completion
11324         of mentions/messages with @nick instead of just nick.
11326 2015-07-16  Michael Albinus  <michael.albinus@gmx.de>
11328         Fix bug#20943
11329         * lisp/autorevert.el (auto-revert-handler): Do not check for
11330         `buffer-modified-p'.
11331         * lisp/files.el (buffer-stale--default-function): Check for
11332         `buffer-modified-p'.
11333         * test/automated/auto-revert-tests.el
11334         (auto-revert-test02-auto-revert-mode-dired): Adapt test.
11336 2015-07-16  Ari Roponen  <ari.roponen@gmail.com>
11338         Fix delete-dups bug on long lists
11339         * lisp/subr.el (delete-dups):
11340         Don't mistakenly keep some dups when applied to long lists.
11342 2015-07-16  Paul Eggert  <eggert@cs.ucla.edu>
11344         Better heuristic for C stack overflow
11345         Improve the heuristic for distinguishing stack overflows from
11346         other SIGSEGV causes (Bug#21004).  Corinna Vinschen explained that
11347         the getrlimit method wasn't portable to Cygwin; see:
11348         https://www.cygwin.com/ml/cygwin/2015-07/msg00092.html
11349         Corinna suggested pthread_getattr_np but this also has problems.
11350         Instead, replace the low-level system stuff with a simple
11351         heuristic based on known good stack addresses.
11352         * src/eval.c, src/lisp.h (near_C_stack_top): New function.
11353         * src/sysdep.c: Don't include <sys/resource.h>.
11354         (stack_direction): Remove.  All uses removed.
11355         (stack_overflow): New function.
11356         (handle_sigsegv): Use it instead of incorrect getrlimit heuristic.
11357         Make SEGV fatal in non-main threads.
11359 2015-07-16  Daiki Ueno  <ueno@gnu.org>
11361         epg: Automatically start pinentry server
11362         * lisp/epg-config.el (epg-gpgconf-program): New variable.
11363         * lisp/epg.el (epg--start): Call `pinentry-start' if
11364         allow-emacs-pinentry is set in ~/.gnupg/gpg-agent.conf.
11366 2015-07-15  Katsumi Yamaoka  <yamaoka@jpl.org>
11368         * lisp/gnus/nnimap.el: Fix my last bogus change.
11369         Reinstall Stefan Monnier's change that was made in
11370         <83d824bc4041332f338ad7e5e830f443535aa300>.
11372 2015-07-15  Paul Eggert  <eggert@cs.ucla.edu>
11374         Merge from gnulib
11375         This incorporates:
11376         2015-07-05 acl-permissions: Document FreeBSD ACL_TYPE_NFS4 acls
11377         2015-07-05 acl-permissions: Fix on FreeBSD
11378         2015-07-05 file-has-acl, acl-permissions: fix some more HP-UX typos
11379         * lib/acl-internal.c, lib/acl-internal.h, lib/get-permissions.c:
11380         * lib/set-permissions.c: Copy from gnulib.
11382         Port to stricter C99
11383         * src/keyboard.h (kbd_buffer_store_event_hold):
11384         Don't return a void expression.
11386 2015-07-15  Xue Fuqiao  <xfq.free@gmail.com>
11388         * doc/emacs/frames.texi (Creating Frames):
11389         Fix the command `C-x 5 m' runs.
11391 2015-07-14  Michael Albinus  <michael.albinus@gmx.de>
11393         New autorevert tests
11394         * test/automated/auto-revert-tests.el: New file.
11396 2015-07-14  Paul Eggert  <eggert@cs.ucla.edu>
11398         Clear gcprolist etc. after stack overflow
11399         After stack overflow, command_loop calls init_eval, and this needs to
11400         clear gcprolist and byte_stack_list (Bug#20996).
11401         * src/alloc.c (init_alloc):
11402         Move gcprolist and byte_stack_list initialization from here ...
11403         * src/eval.c (init_eval): ... to here.
11405 2015-07-13  Xue Fuqiao  <xfq.free@gmail.com>
11407         * doc/emacs/windows.texi (Pop Up Window): Fix the description
11408         of `C-x 4 m'.
11410 2015-07-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
11412         Avoid deprecated enums in mac-ct font backend driver
11413         * src/macfont.m (mac_font_copy_default_descriptors_for_language)
11414         (mac_ctfont_get_advance_width_for_glyph)
11415         (mac_ctfont_get_bounding_rect_for_glyph): Avoid deprecated enums.
11417         Cache font family in mac-ct font backend driver
11418         * src/macfont.m (macfont_family_cache): New variable.
11419         (syms_of_macfont): Initialize it.
11420         (macfont_available_families_cache): New variable.
11421         (macfont_invalidate_family_cache, macfont_get_family_cache_if_present)
11422         (macfont_set_family_cache, macfont_invalidate_available_families_cache)
11423         (macfont_handle_font_change_notification)
11424         (macfont_init_font_change_handler)
11425         (macfont_copy_available_families_cache): New functions.
11426         (macfont_create_family_with_symbol): Use font family caches.
11427         (macfont_list, macfont_list_family):
11428         Use macfont_copy_available_families_cache instead of
11429         mac_font_create_available_families.
11431 2015-07-12  Dmitry Gutov  <dgutov@yandex.ru>
11433         Show the default value in the prompt
11434         * lisp/progmodes/xref.el: Add `M-?' binding for
11435         xref-find-references.  Declare functions `grep-read-files' and
11436         `grep-expand-template'.
11437         (xref--read-identifier): Show the default value in the prompt.
11439         * lisp/progmodes/xref.el (xref-find-regexp): When called with
11440         prefix argument, ask for file patterns to search as well.  When
11441         prompting for the directory, require an existing one.
11442         (xref-collect-matches): Add a new argument, FILES.  Use it in the
11443         above function.
11445         Add `project-ignores'
11446         * lisp/progmodes/project.el (project-ignores): New generic
11447         function, and an implementation for the VC project type.
11448         * lisp/progmodes/xref.el (xref--rgrep-command): Split, as a
11449         variant of rgrep-default-command that handles a generic list of
11450         ignores.
11451         (xref-collect-matches): Use it, and pass through to it the value
11452         of the newly added argument.
11453         (xref-find-regexp): Handle ignored paths within the project.
11454         Remove outdated comment.
11455         * lisp/vc/vc.el (vc-default-ignore-completion-table):
11456         Skip the comments and the empty lines.
11458 2015-07-12  Xue Fuqiao  <xfq.free@gmail.com>
11460         * doc/emacs/buffers.texi (Misc Buffer): Add a cross reference.
11462 2015-07-11  Eric Abrahamsen  <eric@ericabrahamsen.net>
11464         gnus-registry.el: Correct function argument order
11465         * lisp/gnus/gnus-registry.el (gnus-registry--set/remove-mark):
11466         Reverse the order of function arguments.
11468 2015-07-11  Dmitry Gutov  <dgutov@yandex.ru>
11470         Bind grep-highlight-matches to nil
11471         * lisp/progmodes/xref.el (xref-collect-matches):
11472         Bind grep-highlight-matches to nil (bug#20728).
11474 2015-07-11  Nikolaus Rath  <Nikolaus@rath.org>
11476         nnimap.el: Fix IMAP message size parsing
11477         * lisp/gnus/nnimap.el (nnimap-transform-headers):
11478         Don't assume that UID comes before RFC822.SIZE.
11480 2015-07-10  Stefan Monnier  <monnier@iro.umontreal.ca>
11482         * lisp/gnus/nnimap.el: Clean up "unused var" warnings
11483         (auth-source-creation-prompts): Declare.
11484         (nnimap-retrieve-headers, nnimap-status-message)
11485         (nnimap-request-create-group, nnimap-request-delete-group)
11486         (nnimap-close-group, nnimap-request-move-article)
11487         (nnimap-request-accept-article, nnimap-request-newgroups)
11488         (nnimap-request-post, nnimap-dummy-active-number)
11489         (nnimap-save-mail-spec, nnimap-get-groups): Add _ to unused vars.
11490         (nnimap-parse-flags): Remove unused var `p'.
11491         (nnimap-retrieve-group-data-early): Remove unused var `groups'.
11492         (nnimap-flags-to-marks): Remove unused var `totalp'.
11494 2015-07-10  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
11496         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 20MB.
11498 2015-07-10  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
11500         * src/macfont.m (macfont_list): Ignore font families lacking
11501         font descriptors.
11503 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
11505         Don't check the exit status, it can be misleading
11506         * lisp/progmodes/xref.el (xref-collect-matches): Don't check the
11507         exit status, it can be misleading.
11509         Introduce a Project API
11510         * lisp/progmodes/project.el: New file.
11511         * lisp/cedet/ede.el (project-try-ede): New function.
11512         (project-root): New implementation.
11513         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
11514         Set project-search-path-function.
11515         (elisp--xref-find-references): Delegate some logic to
11516         project-search-path.
11517         (elisp-search-path): New function.
11518         (elisp-xref-find): Don't implement `matches' anymore.
11519         * lisp/progmodes/etags.el: Don't implement `matches'.
11520         Delegate some logic to project-search-path.
11521         (etags-search-path): New function.
11522         * lisp/progmodes/xref.el (xref-find-function):
11523         Remove `matches' from the API.
11524         (xref-find-regexp): Move whatever common logic was in elisp and
11525         etags implementations, and search the directories returned by
11526         project-directories and project-search-path.
11528 2015-07-09  Nicolas Petton  <nicolas@petton.fr>
11530         * test/automated/map-tests.el (test-map-delete-return-value):
11531         Uncomment test.
11533         Add support for gv.el in map.el
11534         * lisp/emacs-lisp/map.el (map-elt, map-delete): Declare a gv-expander.
11535         * lisp/emacs-lisp/map.el (map-put): Refactor using `setf' and `map-elt'.
11536         * test/automated/map-tests.el: Update tests to work with the new
11537         implementations of map-elt and map-put.
11539 2015-07-09  Glenn Morris  <rgm@gnu.org>
11541         * lisp/emacs-lisp/debug.el (debug-help-follow): Use describe-symbol.
11543 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
11545         Syntax-propertize until the end of the line first
11546         * lisp/progmodes/xref.el (xref--collect-match): Syntax-propertize
11547         until the end of the line first.
11549 2015-07-09  Xue Fuqiao  <xfq.free@gmail.com>
11551         * doc/emacs/files.texi (File Archives): Add a cross reference.
11553 2015-07-08  Nikolaus Rath  <Nikolaus@rath.org>
11555         nnimap.el: Handle plain value for nnimap-stream
11556         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Always query
11557         capabilities, so that a 'plain value for the `nnimap-stream' server
11558         variable is handled correctly.
11559         * doc/misc/gnus.texi (Customizing the IMAP Connection):
11560         Document the 'plain option.
11562 2015-07-08  Leo Liu  <sdl.web@gmail.com>
11564         Fix bug in thing-at-point--bounds-of-well-formed-url
11565         * lisp/thingatpt.el (thing-at-point--bounds-of-well-formed-url): Make
11566         sure boundary contains current point.
11568 2015-07-08  Dmitry Gutov  <dgutov@yandex.ru>
11570         * lisp/progmodes/xref.el (xref-collect-matches): Use `nreverse'
11571         in the end.
11573         Declare whitespace-line-column a safe file-local
11574         * lisp/whitespace.el (whitespace-line-column): Declare to be a
11575         safe file-local when the value is an integer.
11577 2015-07-08  Eric Abrahamsen  <eric@ericabrahamsen.net>
11579         gnus-group.el: Check if group names are already strings
11580         * lisp/gnus/gnus-group.el (gnus-group-group-name):
11581         The group name may already be a string.
11582         Specifically, in the group list reached from the *Server* buffer,
11583         the 'gnus-group text property returns a string.  Everywhere else
11584         it returns a symbol.
11586         nnimap.el: Remove unused let variables
11587         * lisp/gnus/nnimap.el (nnimap-request-group): Variables are not used.
11589 2015-07-08  Eli Zaretskii  <eliz@gnu.org>
11591         Support "maximized" property of runemacs's shortcut
11592         * nt/runemacs.c (WinMain): If runemacs is invoked "maximized", pass
11593         the '--maximized' switch to Emacs.
11595         Support "minimized" property of runemacs's shortcut
11596         * nt/runemacs.c (WinMain): If runemacs is invoked "minimized",
11597         pass the '--iconic' switch to Emacs.  (Bug#20991)
11599 2015-07-08  Xue Fuqiao  <xfq.free@gmail.com>
11601         Doc fixes
11602         * doc/emacs/files.texi (Diff Mode): Fix the description of `C-c
11603         C-w' in Diff mode.
11604         * doc/emacs/arevert-xtra.texi (Auto Reverting the Buffer Menu):
11605         Add a cross reference.
11607 2015-07-08  Nicolas Richard  <youngfrog@members.fsf.org>
11609         * lisp/obsolete/landmark.el: Add Obsolete-since header.
11611 2015-07-07  Glenn Morris  <rgm@gnu.org>
11613         * test/automated/ert-tests.el (ert-test-deftest):
11614         Update for recent changes.
11616 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
11618         (gv-setter, gv-synthetic-place, gv-delay-error): New funs/macros
11619         * lisp/emacs-lisp/gv.el (gv-setter): New function.
11620         (gv-invalid-place): New error.
11621         (gv-get): Use them.
11622         (gv-synthetic-place, gv-delay-error): New places.
11623         * lisp/emacs-lisp/cl-generic.el (cl--generic-setf-rewrite): Remove.
11624         (cl-defgeneric, cl-defmethod): Use gv-setter.
11626 2015-07-07  Fabrice Popineau  <fabrice.popineau@gmail.com>
11628         Make vc-tests work with MSYS svn program
11629         * lisp/vc/vc-svn.el (vc-svn-create-repo): Fix the file:// URL when
11630         svn is an MSYS program.
11632 2015-07-07  Ken Brown  <kbrown@cornell.edu>
11634         Improve recent change to emacsclient on Cygwin
11635         * lisp/server.el (server-process-filter): Remove redundant check
11636         that 'cygwin-convert-file-name-from-windows' is defined as a
11637         function on Cygwin.  Don't call that function unless its argument
11638         starts with a drive letter.
11640 2015-07-07  Artur Malabarba  <bruce.connor.am@gmail.com>
11642         * lisp/emacs-lisp/package.el (package-compute-transaction):
11643         Fix void variable due to `found-something' being in the wrong `let'.
11645 2015-07-07  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
11647         * lisp/play/landmark.el: Move to lisp/obsolete/.
11649 2015-07-07  Martin Rudalics  <rudalics@gmx.at>
11651         Have `x-show-tip' handle `right' and `bottom' frame parameters
11652         * src/nsfns.m (compute_tip_xy, Fx_show_tip)
11653         * src/w32fns.c (compute_tip_xy, Fx_show_tip)
11654         * src/xfns.c (compute_tip_xy, Fx_show_tip): Allow aligning
11655         tooltips also via `right' and `bottom' frame parameters.
11657 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
11659         Add online-help support to describe types
11660         * lisp/help-fns.el (describe-symbol-backends): Move to help-mode.el.
11661         (describe-symbol): Improve the selection of default.
11662         * lisp/help-mode.el: Require cl-lib.
11663         (describe-symbol-backends): Move from help-fns.el.
11664         (help-make-xrefs): Use it.
11665         * lisp/emacs-lisp/cl-extra.el (describe-symbol-backends): Add entry
11666         for types.
11667         (cl--typedef-regexp): New const.
11668         (find-function-regexp-alist): Add entry for types.
11669         (cl-help-type, cl-type-definition): New buttons.
11670         (cl-find-class): New function.
11671         (cl-describe-type): New command.
11672         (cl--describe-class, cl--describe-class-slot)
11673         (cl--describe-class-slots): New functions, moved from eieio-opt.el.
11674         * lisp/emacs-lisp/cl-generic.el (cl--generic-method-documentation)
11675         (cl--generic-all-functions, cl--generic-specializers-apply-to-type-p):
11676         New functions.  Moved from eieio-opt.el.
11677         (cl--generic-class-parents): New function, extracted from
11678         cl--generic-struct-specializers.
11679         (cl--generic-struct-specializers): Use it.
11680         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Use pcase-dolist.
11681         Improve constructor's docstrings.
11682         (cl-struct-unknown-slot): New error.
11683         (cl-struct-slot-offset): Use it.
11684         * lisp/emacs-lisp/cl-preloaded.el (cl-struct-define): Record the type
11685         definition in current-load-list.
11686         * lisp/emacs-lisp/eieio-core.el (eieio--known-slot-names): New var.
11687         (eieio--add-new-slot): Set it.
11688         (eieio-defclass-internal): Use new name for current-load-list.
11689         (eieio-oref): Add compiler-macro to warn about unknown slots.
11690         * lisp/emacs-lisp/eieio.el (defclass): Update eieio--known-slot-names
11691         as compile-time as well.  Improve constructor docstrings.
11692         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
11693         (eieio--help-print-slot, eieio-help-class-slots): Move to cl-extra.el.
11694         (eieio-class-def): Remove button.
11695         (eieio-help-constructor): Use new name for load-history element.
11696         (eieio--specializers-apply-to-class-p, eieio-all-generic-functions)
11697         (eieio-method-documentation): Move to cl-generic.el.
11698         (eieio-display-method-list): Use new names.
11699         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression):
11700         Add "define-linline".
11701         (lisp-fdefs): Remove "defsubst".
11702         (el-fdefs): Add "defsubst", "cl-defsubst", and "define-linline".
11703         * lisp/emacs-lisp/macroexp.el (macroexp--warned): New var.
11704         (macroexp--warn-and-return): Use it to avoid inf-loops.
11705         Add `compile-only' argument.
11707 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
11709         python.el: Fix local/remote shell environment setup
11710         * lisp/progmodes/python.el (python-shell-with-environment):
11711         Fix remote/local environment setup.
11712         * test/automated/python-tests.el (python-shell-with-environment-1)
11713         (python-shell-with-environment-2): New tests.
11715 2015-07-06  Glenn Morris  <rgm@gnu.org>
11717         * lisp/simple.el (set-variable): Tweak recent doc fix.
11719 2015-07-06  Ken Brown  <kbrown@cornell.edu>
11721         * src/sysdep.c (handle_sigsegv) [CYGWIN]: Increase STACK_DANGER_ZONE.
11723 2015-07-06  Glenn Morris  <rgm@gnu.org>
11725         * lisp/simple.el (set-variable): Use user-error for type mismatch.
11727 2015-07-06  Ken Brown  <kbrown@cornell.edu>
11729         * src/emacs.c (main): Don't increase the stack size on Cygwin.
11731 2015-07-06  Stefan Monnier  <monnier@iro.umontreal.ca>
11733         (describe-symbol): Rewrite describe-function-or-variable
11734         * lisp/help-fns.el (describe-symbol-backends): New var.
11735         (help-xref-stack-item): Declare.
11736         (describe-symbol): Rename from describe-function-or-variable.
11737         Rewrite using describe-symbol-backends instead of help-xref-interned.
11738         * lisp/help.el (help-map): Use it.
11739         * lisp/help-mode.el (help-symbol, help-follow-symbol): Use it.
11740         (help-xref-interned): Make it into an obsolete alias.
11742         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-save): Don't ignore
11743         `file' arg (bug#20972).  Always use utf-8-emacs.  Use with-temp-buffer
11744         and cl-letf.
11746 2015-07-06  Wolfgang Jenkner  <wjenkner@inode.at>
11748         Fix parsing glitches in dired-mark-sexp (bug#13575)
11749         * lisp/dired-x.el (dired-x--string-to-number): New function.
11750         (dired-mark-sexp): Use it.  Tweak dired-re-inode-size.  Fix usage
11751         of directory-listing-before-filename-regexp.  Consider
11752         forward-word harmful and replace it.  Add more verbiage in
11753         comments and doc string.
11755 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
11757         python.el: Respect process environment for remote shells
11758         * lisp/progmodes/python.el
11759         (python-shell-calculate-process-environment): Calculate
11760         process-environment or tramp-remote-process-environment depending
11761         whether current file is remote.
11762         (python-shell-calculate-exec-path): Calculate exec-path or
11763         tramp-remote-path depending whether current file is remote.
11764         (python-shell-with-environment): New macro.
11765         (python-shell-prompt-detect, python-shell-calculate-command)
11766         (python-shell-make-comint, python-check): Use it.
11768         python.el: Avoid making let-bound defvars buffer local  (Bug#18244)
11769         * lisp/progmodes/python.el (python-shell--interpreter)
11770         (python-shell--interpreter-args): New vars.
11771         (inferior-python-mode, python-shell-make-comint): Use them.
11773         python.el: Fixes for IPython 3.x  (Bug#20580)
11774         * lisp/progmodes/python.el:
11775         (python-shell-completion-native-setup): Fix IPython 3.x setup.
11776         (python-shell-completion-native-get-completions): Fix timeout
11777         logic.
11779         python.el: Fix mark-defun behavior  (Bug#19665)
11780         * lisp/progmodes/python.el (python-mark-defun): New function.
11781         * test/automated/python-tests.el (python-mark-defun-1)
11782         (python-mark-defun-2, python-mark-defun-3): New tests.
11784 2015-07-05  Glenn Morris  <rgm@gnu.org>
11786         * lisp/progmodes/f90.el (f90-type-def-re): Handle attribute lists
11787         such as "extends(parent), private".  (Bug#20969)
11788         * test/automated/f90.el (f90-test-bug20969, f90-test-bug20969b):
11789         New tests.
11791 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
11793         Avoid duplicate calls to current_timespec
11794         * src/process.c (wait_reading_process_output):
11795         Cache current_timespec results as long as we're not waiting.
11797 2015-07-05  Ian Kelling  <ian@iankelling.org>
11799         Avoid returning early reading process output due to SIGIO
11800         * src/process.c (wait_reading_process_output): Extend the behavior of
11801         not breaking due to not finding output when a timer has lowered the
11802         timeout to include when SIGIO lowers the timeout.
11804         Don't return as fast reading any process output
11805         * src/process.c (wait_reading_process_output):
11806         The patch for Bug#17647 returns too fast sometimes when reading
11807         from any processes.  Revert part of it, and limit the timeout more
11808         sensibly (Bug#20978).
11810         Refactor timeouts in wait_reading_process_output
11811         * src/process.c (wait_reading_process_output):
11812         Simplify timeouts with an enum.  Remove a redundant condition.
11813         (Bug#20978)
11815         Remove ADAPTIVE_READ_BUFFERING ifdef
11816         * src/process.c (make-process, make-pipe-process, deactivate_process)
11817         (wait_reading_process_output, read_process_output, send_process)
11818         (init_process_emacs): ifdef ADAPTIVE_READ_BUFFERING was originally
11819         added in case there was an operating system in which it was not
11820         useful.  That was 11 years ago and it hasn't happened.  Make
11821         development easier by not considering the effect of changes on a
11822         theoretical OS where this is disabled (Bug#20978).
11824 2015-07-05  Glenn Morris  <rgm@gnu.org>
11826         * lisp/simple.el (set-variable): Doc fix.
11828         * lisp/progmodes/fortran.el (fortran-line-length): Doc fix.
11830 2015-07-05  Ian Kelling  <ian@iankelling.org>
11832         accept-process-output fix
11833         This is a followon to the fix for bug#17647 (Bug#20976).
11834         * src/process.c (status_notify): Fix too high return in some cases.
11836 2015-07-05  Artur Malabarba  <bruce.connor.am@gmail.com>
11838         * lisp/character-fold.el (character-fold-table):
11839         Only fold decompositions if at least one character is non-spacing.
11840         (Bug#20975)
11842 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
11844         Merge from gnulib
11845         This incorporates:
11846         2015-07-04 file-has-acl, acl-permissions: fix HP-UX typos
11847         2015-07-03 set-permissions.c: adjust acl_from_mode's cpp guard
11848         2015-07-02 update-copyright: fix test failure with perl >= 5.22
11849         2015-07-01 gnulib-common.m4: change the ARFLAGS default to 'cr'
11850         2015-07-01 acl: fix definition of acl_from_mode on FreeBSD
11851         * build-aux/update-copyright, doc/misc/texinfo.tex, lib/acl-internal.h:
11852         * lib/set-permissions.c, m4/gnulib-common.m4: Copy from gnulib.
11854 2015-07-05  Christoph Wedler  <christoph.wedler@sap.com>
11856         Respect `prog-indentation-context' in python.el
11857         * lisp/progmodes/python.el (python-indent-guess-indent-offset)
11858         (python-indent-context, python-indent--calculate-indentation)
11859         (python-info-current-defun)
11860         (python-info-dedenter-opening-block-message)
11861         (python-info-line-ends-backslash-p)
11862         (python-info-beginning-of-backslash)
11863         (python-info-continuation-line-p): Use `prog-widen'.
11864         (python-indent--calculate-indentation)
11865         (python-indent--calculate-levels)
11866         (python-indent-calculate-indentation): Use `prog-first-column'.
11867         (python-indent--calculate-levels): Simplify.
11868         Ignore also initial empty lines for syntax calculation.
11869         * lisp/progmodes/python.el (python-indent-context): Return
11870         :no-indent for first non-empty line, not just in line 1.
11871         * test/automated/python-tests.el (python-indent-base-case)
11872         (python-indent-inside-paren-1, python-indent-inside-paren-2)
11873         (python-indent-inside-paren-3, python-indent-inside-paren-4)
11874         (python-indent-inside-paren-5, python-indent-inside-paren-6)
11875         (python-indent-after-backslash-1)
11876         (python-indent-after-backslash-2)
11877         (python-indent-after-backslash-3)
11878         (python-indent-after-backslash-4, python-indent-inside-string-1):
11879         Expect :no-indent for first non-empty line.
11881 2015-07-04  Daniel Colascione  <dancol@dancol.org>
11883         Factor isearch word description into new function
11884         * lisp/isearch.el (isearch--describe-word-mode): New function.
11885         (isearch-message-prefix, isearch-query-replace): Use it.
11887 2015-07-04  Eli Zaretskii  <eliz@gnu.org>
11889         Fix mouse pointer on w32 when a menu is active
11890         * src/w32fns.c (w32_wnd_proc): Don't change the mouse pointer
11891         shape while a menu is in use.  This started happening since we now
11892         send WM_EMACS_SHOWCURSOR messages when the mouse moves.
11894 2015-07-04  Martin Rudalics  <rudalics@gmx.at>
11896         Fix processing of alpha parameter for Windows tip frames  (Bug#17344)
11897         * src/w32fns.c (x_create_tip_frame): Fix processing alpha
11898         parameter.  (Bug#17344)
11900         Have `compilation-set-window' use right window for getting fringes
11901         (Bug#20829)
11902         * lisp/progmodes/compile.el (compilation-set-window):
11903         Take `window-fringes' from argument window.
11905 2015-07-03  Glenn Morris  <rgm@gnu.org>
11907         Update eieio tests for recent eieio-core change.
11908         * test/automated/eieio-test-persist.el (persist-test-save-and-compare):
11909         * test/automated/eieio-tests.el
11910         (eieio-test-32-slot-attribute-override-2):
11911         Replace the deleted eieio--class-v with cl--find-class.
11913 2015-07-03  Martin Rudalics  <rudalics@gmx.at>
11915         Fix some issues with `window-divider-mode'
11916         * lisp/frame.el (window-divider-default-places): New option.
11917         (window-divider-mode): Remove option.
11918         (window-divider-mode): Make it a "regular" minor mode.
11919         (window-divider-width-valid-p): Drop frame- prefix.
11920         (window-divider-mode-apply): New argument ENABLE.  Drop frame-
11921         prefix.  Handle `window-divider-default-places'.
11922         (frame--window-divider-mode-set-and-apply): Remove.
11923         (window-divider-default-bottom-width)
11924         (window-divider-default-right-width): Drop :group entries.
11925         * lisp/menu-bar.el (menu-bar-bottom-and-right-window-divider)
11926         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
11927         (menu-bar-no-window-divider): Set `window-divider-default-places'
11928         and call `window-divider-mode'.
11929         * doc/emacs/frames.texi (Window Dividers): Document
11930         `window-divider-default-places'.
11932 2015-07-02  Xue Fuqiao  <xfq.free@gmail.com>
11934         * doc/emacs/display.texi (Displaying Boundaries):
11935         * doc/emacs/search.texi (Word Search): Add cross references.
11937 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
11939         -batch should not affect ‘’ -> `' display
11940         * lisp/startup.el (command-line): Do the ‘’ -> `' check even if
11941         -batch (Bug#20926).
11943 2015-07-02  Stefan Monnier  <monnier@iro.umontreal.ca>
11945         * lisp/emacs-lisp/eieio-core.el (eieio--class-v): Remove
11946         * lisp/emacs-lisp/eieio-core.el, lisp/emacs-lisp/eieio.el:
11947         * lisp/emacs-lisp/eieio-opt.el, lisp/emacs-lisp/eieio-compat.el:
11948         Use cl--find-class instead.
11950         * lisp/term/xterm.el (xterm--query): Fix paren typo (bug#20951).
11952 2015-07-02  Martin Rudalics  <rudalics@gmx.at>
11954         Some further fixes in Change Window node (Bug#20183)
11955         * doc/emacs/windows.texi (Change Window): Replace "rearranging"
11956         by "resizing" in section title.  Add some concept indices.
11957         Suggested by N. Jackson (Bug#20183).
11959         * doc/emacs/windows.texi (Change Window): Reference window
11960         dividers.
11962         Document new `window-divider-mode'.
11963         * lisp/frame.el (window-divider-mode): Fix doc-string.
11964         * doc/emacs/frames.texi (Window Dividers): New section.
11966         Improve accessibility of window dividers (Bug#20183)
11967         * lisp/faces.el (window-divider)
11968         (window-divider-first-pixel, window-divider-last-pixel): Change
11969         membership from `frames' to `window-divider' customization group.
11970         * lisp/frame.el (window-divider): New customization group.
11971         (window-divider-mode): New minor mode.
11972         (window-divider-default-bottom-width)
11973         (window-divider-default-right-width): New options.
11974         (frame--window-divider-previous-mode): New variable.
11975         (frame-window-divider-width-valid-p)
11976         (frame--window-divider-mode-apply)
11977         (frame--window-divider-mode-set-and-apply): New functions.
11978         * lisp/menu-bar.el (menu-bar-options-save): Save
11979         window-divider-mode settings.
11980         (menu-bar-window-divider-customize)
11981         (menu-bar-bottom-and-right-window-divider)
11982         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
11983         (menu-bar-no-window-divider): New functions.
11984         (menu-bar-showhide-window-divider-menu): New variable.
11985         (menu-bar-showhide-menu): Show/hide window divider menu.
11986         * lisp/mouse.el (mouse-split-window-vertically)
11987         (mouse-split-window-horizontally): Replace `error' by
11988         `user-error'.  Bind `window-combination-resize' to nil.
11989         (top-level): Add/reorder mouse key bindings on mode- and
11990         vertical-line.
11992 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
11994         Don't display ‘’ as `' under X in en_GB
11995         The curved quote setup code invokes (char-displayable-p ?‘),
11996         but this isn’t reliable until after the X frame replaces the
11997         terminal frame (Bug#20926).
11998         * lisp/international/mule-cmds.el (set-locale-environment):
11999         Move curved quote setup code from here ...
12000         * lisp/startup.el (command-line): ... to here, after creating
12001         the X frame.
12003 2015-07-01  Nicolas Richard  <youngfrog@members.fsf.org>
12005         * lisp/emacs-lisp/seq.el (seq-difference): Fix typo in docstring.
12007         * lisp/ido.el (ido-restrict-to-matches): Add an optional argument
12008         to reverse the meaning (Bug#15631).
12010 2015-07-01  Eli Zaretskii  <eliz@gnu.org>
12012         Be more tolerant to fonts named "Foobar-12"
12013         * src/frame.c (x_set_font): If font_spec_from_name returns nil,
12014         don't barf; instead, request a new fontset to be generated.  This
12015         avoids unnecessarily rejecting fonts named against XLFD rules.  See
12016         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html,
12017         for the description of the original problem.
12018         * lisp/faces.el (set-face-attribute): Don't be fooled too easily
12019         by a hyphen in a font's name.
12021         Fix value of posn-at-pont in R2L lines
12022         * src/keyboard.c (Fposn_at_x_y, Fposn_at_point): Allow X pixel
12023         coordinate of -1, for a newline in a right-to-left line that
12024         overflowed into the left fringe.
12026 2015-07-01  Stefan Monnier  <monnier@iro.umontreal.ca>
12028         (cl--copy-slot-descriptor): Copy the `props' alist as well
12029         * lisp/emacs-lisp/cl-preloaded.el (cl--copy-slot-descriptor-1):
12030         Rename from cl--copy-slot-descriptor.
12031         (cl--copy-slot-descriptor): New function.  Copy the alist (bug#20914).
12033 2015-06-30  Stefan Monnier  <monnier@iro.umontreal.ca>
12035         * lisp/term/xterm.el (xterm--query): Avoid generating garbage
12036         (xterm-query-timeout): New var.
12037         (xterm--query): Use it.  Fallback on async method if we timeout before
12038         getting the first byte of the reply (bug#12354).
12040 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
12042         Spelling fixes
12043         * lisp/character-fold.el (character-fold-search):
12044         * lisp/emacs-lisp/package.el (package-hidden-regexps):
12045         Fix typos.
12047 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
12049         * doc/emacs/frames.texi (Frame Commands): Typo fix.  (Bug#20946)
12051 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
12053         In strings, prefer plain ` and ' to \` and \'
12054         * lisp/allout.el (allout-insert-listified):
12055         * lisp/emacs-lisp/easy-mmode.el (define-globalized-minor-mode):
12056         * lisp/ls-lisp.el (ls-lisp-UCA-like-collation)
12057         (ls-lisp-string-lessp):
12058         * lisp/menu-bar.el (menu-bar-open):
12059         * lisp/obsolete/otodo-mode.el (todo-top-priorities):
12060         * lisp/progmodes/compile.el (compile):
12061         * lisp/progmodes/etags.el (tags-loop-scan):
12062         * lisp/progmodes/make-mode.el (makefile-browser-insert-continuation):
12063         * lisp/subr.el (posn-actual-col-row):
12064         * lisp/term/pc-win.el (x-list-fonts):
12065         * lisp/textmodes/texinfmt.el (texinfmt-version):
12066         * lisp/textmodes/texnfo-upd.el (texinfo-master-menu):
12067         * lisp/time.el (display-time-world-list):
12068         * lisp/tmm.el (tmm-menubar):
12069         * src/buffer.c (syms_of_buffer):
12070         * src/fileio.c (syms_of_fileio):
12071         Omit unnecessary and confusing backslash before quote.
12072         * lisp/erc/erc.el (erc-cmd-LASTLOG):
12073         * lisp/progmodes/flymake.el (flymake-fix-file-name):
12074         * lisp/progmodes/vhdl-mode.el (vhdl-in-extended-identifier-p):
12075         Fix string that was intended to escape a backslash and not a quote.
12077 2015-06-30  Glenn Morris  <rgm@gnu.org>
12079         * leim/Makefile.in, lisp/Makefile.in: Add missing EXEEXT definition.
12081         * lisp/Makefile.in (MH_E_SRC, TRAMP_SRC, CAL_SRC):
12082         Replace hard-coded lists with wildcard + filter-out.
12084         * configure.ac (system-configuration-features): Add X11, NS.
12086         Improve reproducibility of generated loaddefs file
12087         * lisp/emacs-lisp/autoload.el (autoload-generate-file-autoloads):
12088         Make the return value the modtime of the input file (if no autoloads).
12089         (update-directory-autoloads): In the "no autoloads" section,
12090         use "most recent modtime" rather than "current time".
12092 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
12094         * lisp/emacs-lisp/package.el (package--remove-hidden): Fix logic.
12095         (Bug#20930)
12097 2015-06-30  Nicolas Petton  <nicolas@petton.fr>
12099         * doc/lispref/sequences.texi: Add documentation for seq-min and seq-max.
12101         Add seq-min and seq-max
12102         Bump version number.
12103         * lisp/emacs-lisp/seq.el (seq-min, seq-max): New functions.
12104         * test/automated/seq-tests.el: Add tests for seq-min and seq-max.
12106 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
12108         Make sure sleep-for always delays for as long as it's told
12109         * src/dispnew.c (Fsleep_for): Call wait_reading_process_output in
12110         a loop, to ensure we always wait exactly the required amount of
12111         time.  (Bug#15990)
12113 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
12115         Fix pointer signedness glitch
12116         * src/font.c (font_load_for_lface): Use SSDATA, not SDATA.
12118 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
12120         Don't block changes in mouse pointer inside 'track-mouse'
12121         * etc/NEWS:
12122         * doc/lispref/frames.texi (Mouse Tracking): Document the special
12123         effect of setting 'track-mouse' to 'dragging'.
12124         * lisp/textmodes/artist.el (artist-mouse-draw-continously):
12125         * lisp/ruler-mode.el (ruler-mode-mouse-drag-any-column-iteration):
12126         * lisp/mouse-drag.el (mouse-drag-throw):
12127         * lisp/mouse.el (mouse-drag-line): Set 'track-mouse' to 'dragging'
12128         to avoid changes in the shape of the mouse pointer.
12129         * src/xdisp.c (define_frame_cursor1): Don't change the mouse
12130         pointer shape when do_mouse_tracking has the value of 'dragging',
12131         not just any non-nil value.  (Bug#20934)
12132         (syms_of_xdisp): DEFSYM 'dragging'.
12134 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
12136         * lisp/isearch.el (isearch-toggle-word): Fix toggle.
12138         * lisp/emacs-lisp/package.el (package-compute-transaction):
12139         Don't assume version sorting.
12141         * lisp/emacs-lisp/package.el (package--save-selected-packages):
12142         Don't save before init time, to avoid overwriting configurations.
12143         (Bug#20855)
12145 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
12147         * doc/emacs/display.texi (Standard Faces, Fringes): Add cross
12148         references.
12150 2015-06-29  Ted Zlatanov  <tzz@lifelogs.com>
12152         Update for the upcoming CFEngine 3.7 release: support macros and
12153         quoted context strings; reformat JSON; indent promise attributes 2
12154         units by default; give function parameter descriptions in the eldoc
12155         glue.
12156         * lisp/progmodes/cfengine.el: Update version and docs and fix name.
12157         Autoload `json-pretty-print'.  Support new features in 3.7.
12158         (cfengine-parameters-indent): Set default promise attribute indent to
12159         2 more than the promise itself.
12160         (cfengine3-macro-regex): New variable to match the new macro syntax.
12161         (cfengine3-font-lock-keywords): Use it to highlight macros.
12162         (cfengine3-indent-line): Use it to indent macros to column 0.
12163         (cfengine3-class-selector-regex): Update for the new quoted strings
12164         format.
12165         (cfengine3-reformat-json-string): New function to reformat a JSON
12166         string using `json-pretty-print'.
12167         (cfengine3-format-function-docstring): Use function parameter
12168         description if it's provided by the cf-promises syntax dump.
12170 2015-06-29  Michael R. Mauger  <michael@mauger.com>
12172         Cygwin emacsclient handles w32 file names
12173         * lisp/server.el (server-process-filter): Allow Cygwin's
12174         emacsclient to be used as a file handler on MS-Windows.
12176 2015-06-29  Katsumi Yamaoka  <yamaoka@jpl.org>
12178         * lisp/isearch.el (isearch-exit): Don't call isearch-done twice
12179         (bug#20925).
12181 2015-06-29  Eli Zaretskii  <eliz@gnu.org>
12183         * doc/lispref/text.texi (Sticky Properties): Improve wording.
12184         (Bug#20924)
12186         Allow font names that end in "-NN", where NN is a number
12187         * src/font.c (font_load_for_lface): If the font-spec didn't match
12188         any available fonts, try again without interpreting trailing "-NN"
12189         as the font size.  For the description of the original problem, see
12190         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html
12192         .gdbinit followup to changes in !USE_LSB_TAG
12193         * src/.gdbinit (xgetsym): Don't left-shift $ptr even under
12194         !USE_LSB_TAG, as Emacs no longer does.
12196 2015-06-29  Wolfgang Jenkner  <wjenkner@inode.at>
12198         * lisp/calc-store.el (calc-insert-permanent-variable): Heed case.
12199         Otherwise `s p' of f and F will stomp on each other's value.
12200         (Bug#20916)
12202 2015-06-29  Artur Malabarba  <bruce.connor.am@gmail.com>
12204         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
12205         Don't block remember-pos if buffer isn't displayed.  (Bug#20921)
12207 2015-06-29  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
12209         * lisp/emacs-lisp/package.el (describe-package): Use symbol-at-point
12210         as additional guess.
12212         * lisp/emacs-lisp/package.el (describe-package): Convert the guess
12213         to a string.
12215 2015-06-28  Paul Eggert  <eggert@cs.ucla.edu>
12217         apropos-library quoting fix
12218         * lisp/apropos.el (apropos-library): Quote library consistently
12219         with the rest of the quoting used by apropos.
12221         Clarify interpreter-mode-alist doc
12222         * lisp/files.el (interpreter-mode-alist):
12223         Reword to avoid confusing quoting that wasn't working anyway.
12225 2015-06-28  Michael Albinus  <michael.albinus@gmx.de>
12227         Sync with Tramp 2.2.12
12228         * doc/misc/trampver.texi:
12229         * lisp/net/trampver.el: Update release number.
12230         * test/automated/tramp-tests.el (tramp-test13-make-directory):
12231         Fix cleanup.
12233 2015-06-28  Artur Malabarba  <bruce.connor.am@gmail.com>
12235         * lisp/isearch.el (isearch-mode): Don't char-fold regexps (bug#20913).
12237 2015-06-27  Dmitry Gutov  <dgutov@yandex.ru>
12239         Bind grep-highlight-matches around the rgrep call
12240         * lisp/progmodes/grep.el (zrgrep): Bind grep-highlight-matches
12241         around the rgrep call (bug#20728).
12243         Put "--color" before the other options in grep-command
12244         * lisp/progmodes/grep.el (grep-compute-defaults): Put "--color"
12245         before the other options in grep-command (bug#20912).
12247         Add --color Grep option to the command dynamically
12248         * lisp/progmodes/grep.el (grep-template, grep-find-template):
12249         Update the description for <C>.  (Bug#20728)
12250         (grep-compute-defaults): Don't add the --color option to
12251         grep-options.  Only add it to grep-command.
12252         (grep-expand-keywords): Expand the env value opts into <C>.
12253         (grep-expand-template): Replace cf in the env with the opts list,
12254         that can include -i and --color.
12255         * lisp/progmodes/xref.el (xref-collect-matches): Do not remove
12256         "--color=always" from the template, because we don't have to.
12258 2015-06-27  Paul Eggert  <eggert@cs.ucla.edu>
12260         cl-extra fixes for most-negative-fixnum
12261         * lisp/emacs-lisp/cl-extra.el (cl-gcd, cl-lcm, cl-random):
12262         Don't mishandle an argument equal to most-negative-fixnum,
12263         whose absolute value equals itself.
12264         (cl-gcd, cl-lcm): Use dolist rather than doing it by hand.
12266         Initialize cl--gensym-counter to 0
12267         Previously it was initialized to a random value, which made it
12268         harder to reproduce earlier Emacs runs.  The need for a random
12269         value went away when Emacs introduced and used the #: syntax for
12270         uninterned symbols (Bug#20862).
12271         * doc/misc/cl.texi (Creating Symbols, Common Lisp Compatibility):
12272         Document that cl--gensym-counter now starts with 0.
12273         * lisp/emacs-lisp/cl-lib.el (cl--gensym-counter): Remove.
12274         (cl--random-time): Move to near only remaining use.
12275         * lisp/emacs-lisp/cl-macs.el (cl--gensym-counter): Initialize to 0.
12277         Improve docstring for macroexp-let2
12278         * lisp/emacs-lisp/macroexp.el (macroexp-let2):
12279         Improve as per suggestion by RMS in:
12280         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00621.html
12281         Also, rename args to match new doc string.
12283 2015-06-27  Eli Zaretskii  <eliz@gnu.org>
12285         Fix VC test suite on MS-Windows
12286         * lisp/vc/vc-svn.el (vc-svn-create-repo): Make sure the file: URL
12287         always starts with 3 slashes after the colon.
12288         * test/automated/vc-tests.el (vc-test--create-repo-function): Use
12289         'w32-application-type' to invoke CVS on MS-Windows with properly
12290         formatted CVSROOT directory name.
12292         Add a new function w32-application-type
12293         * src/w32proc.c (Fw32_application_type): New function.
12295         Avoid error in TLS connections due to incorrect format
12296         * src/gnutls.c (Fgnutls_boot): Use the %x conversion specifier in
12297         the call to 'error', instead of the unsupported %u.  Reported by
12298         lo2net <fangtao0901@gmail.com>.  (Bug#20908)
12300 2015-06-26  Artur Malabarba  <bruce.connor.am@gmail.com>
12302         * lisp/replace.el (replace-search): Fix regexp case (bug#20901).
12304 2015-06-26  Leo Liu  <sdl.web@gmail.com>
12306         * lisp/emacs-lisp/cl-indent.el: Fix indentation for
12307         `with-output-to-string' in elisp.
12309         Revert "lisp/emacs-lisp/cl-indent.el: Fix indent of
12310         with-output-to-string".
12311         This reverts commit 659199f2ca5f283fb246faa78a244e5ca25f53dd.
12313 2015-06-26  Eli Zaretskii  <eliz@gnu.org>
12315         Minor corrections in ELisp manual
12316         * doc/lispref/nonascii.texi (Character Properties): Correct
12317         inaccuracies in description of values of the Unicode properties.
12319         Fix invisible mouse pointers on Windows.
12320         * src/w32fns.c: Include windowsx.h.
12321         (w32_wnd_proc): If the mouse moved and the mouse pointer is
12322         invisible, make it visible again even when the main (Lisp)
12323         thread is busy.
12324         * src/w32term.c (w32_toggle_invisible_pointer): Rather then
12325         garbaging the frame have the input thread call SetCursor.
12327 2015-06-26  Martin Rudalics  <rudalics@gmx.at>
12329         Provide invisible mouse pointers on Windows (Bug#6105) (Bug#12922)
12330         * src/w32fns.c (w32_wnd_proc): Handle f->pointer_invisible
12331         for WM_SETCURSOR and WM_EMACS_SETCURSOR cases.
12332         * src/w32term.c (w32_hide_hourglass): Handle f->pointer_invisible.
12333         (w32_toggle_invisible_pointer): New function.
12334         (w32_create_terminal): Add w32_toggle_invisible_pointer as
12335         toggle_invisible_pointer_hook for this terminal.
12337 2015-06-25  Xue Fuqiao  <xfq.free@gmail.com>
12339         Doc fix for deletion commands
12340         'delete-char' does not respect the value of 'delete-active-region'.
12341         * doc/emacs/killing.texi (Deletion):
12342         Fix documentation for some single-char deletion commands.
12344         * doc/emacs/help.texi (Apropos):
12345         Improve documentation of 'apropos-do-all'.
12347         * doc/emacs/help.texi (Help Summary):
12348         Improve documentation of 'describe-mode'.
12350 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
12352         Fix submake dependency bug with .h files
12353         * src/Makefile.in ($(libsrc)/make-docfile$(EXEEXT)):
12354         Depend on $(lib)/libgnu.a, so that we build $(lib)/*/*.h
12355         before the submake in $(libsrc) would spin off a subsubmake
12356         for $(lib) in parallel with our submake for $(lib) (Bug#20894).
12358 2015-06-25  Artur Malabarba  <bruce.connor.am@gmail.com>
12360         * lisp/character-fold.el (character-fold-table): Reuse `table'.
12362 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
12364         Translate undisplayable ‘ to `
12365         * doc/lispref/help.texi (Keys in Documentation):
12366         * lisp/international/mule-cmds.el (set-locale-environment):
12367         * lisp/term/w32console.el (terminal-init-w32console):
12368         * src/doc.c (Fsubstitute_command_keys, Vhelp_quote_translation):
12369         If ‘ is not displayable, transliterate it to `, not to '.  See:
12370         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00542.html
12372         Fix C99 incompatibilities in Cairo code
12373         * src/image.c (xpm_load) [USE_CAIRO]:
12374         * src/xterm.c (x_cr_accumulate_data) [USE_CAIRO]:
12375         Fix pointer signedness problem.
12377 2015-06-25  Oleh Krehel  <ohwoeowho@gmail.com>
12379         lisp/emacs-lisp/cl-indent.el: Fix indent of with-output-to-string
12380         * lisp/emacs-lisp/cl-indent.el (common-lisp-indent-function):
12381         `with-output-to-string' should have the same indent as `progn'.
12382         This is in line with the declaration of `with-output-to-string'.
12384 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
12386         Get ‘./configure; make -C src emacs’ to work
12387         Without this fix, lib/fcntl.h isn't built in time (Bug#20894).
12388         * lib-src/Makefile.in (../lib/libgnu.a):
12389         * src/Makefile.in ($(lib)/libgnu.a): Build all, not libgnu.a.
12391 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
12393         Fix GC bugs --with-wide-int and Qnil == 0
12394         Use the same alignment for the !USE_LSB_TAG case as for the
12395         more-typical USE_LSB_TAG case.  The attempt to support arbitrary
12396         alignments with !USE_LSB_TAG had subtle bugs in garbage collection
12397         once we changed the representation of symbols so that Qnil == 0.
12398         Problem reported by Eli Zaretskii (Bug#20862).
12399         * src/alloc.c (XMALLOC_HEADER_ALIGNMENT) [XMALLOC_OVERRUN_CHECK]:
12400         * src/alloc.c (vector_alignment, union aligned_Lisp_Symbol)
12401         (union aligned_Lisp_Misc, maybe_lisp_pointer, pure_alloc):
12402         Use same alignment for !USE_LSB_TAG as for USE_LSB_TAG.
12403         * src/alloc.c (POINTERS_MIGHT_HIDE_IN_OBJECTS): Remove.
12404         This optimization in the !USE_LSB_TAG case is no longer valid when
12405         symbols are represented via offsets.  Change the only use to
12406         assume that pointers might hide in objects.
12407         * src/lisp.h (alignas) [!USE_LSB_TAG]:
12408         Require support in this case, too.
12409         (TAG_SYMOFFSET, XSYMBOL) [!USE_LSB_TAG]: Do not shift the offset.
12410         This is OK, because the !USE_LSB_TAG case now applies only when
12411         Lisp_Object is wider than void *, so there's no longer any need
12412         to shift the offset.  Not shifting the offset means that
12413         symbol representations have the same alignment as pointers,
12414         which the GC assumes.
12416 2015-06-24  Xue Fuqiao  <xfq.free@gmail.com>
12418         * doc/lispintro/emacs-lisp-intro.texi (Data types):
12419         Improve documentation of 'substring'.
12421 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
12423         * lisp/character-fold.el (character-fold-table): Fix table generation.
12425 2015-06-24  Glenn Morris  <rgm@gnu.org>
12427         * nextstep/Makefile.in (all): Make it the first target.
12428         (../src/emacs${EXEEXT}): Add rule for making it.
12430 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
12432         * etc/NEWS: Fix mention to old function name.
12434         * lisp/character-fold.el: New file (Bug#20887)
12435         (character-fold-to-regexp): New function.
12436         * lisp/replace.el (replace-search): Check value of
12437         `character-fold-search'.
12438         * lisp/isearch.el: Move character-folding code to
12439         character-fold.el
12440         (isearch-toggle-character-fold): New command.
12441         (isearch-mode-map): Bind it to "\M-sf".
12442         (isearch-mode): Check value of `character-fold-search'.
12444 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
12446         lisp/subr.el (remove-from-invisibility-spec): Handle the t case
12447         * lisp/subr.el (remove-from-invisibility-spec): Make sure `element'
12448         is visible even if it's not yet in buffer-invisibility-spec (bug#20468).
12450         * lisp/progmodes/xref.el (xref-location-group, xref-location-marker)
12451         (xref--insert-xrefs, xref-collect-references): Avoid init-args in oref.
12453 2015-06-24  Glenn Morris  <rgm@gnu.org>
12455         * Makefile.in (install-arch-dep): Don't set sticky bit on the binary.
12457 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
12459         lisp/gnus/nnmaildir.el: Silence lexical warnings
12460         * lisp/gnus/nnmaildir.el (nnmaildir--prepare): Use a more
12461         functional style.
12462         (nnmaildir--update-nov): Remove unused var `numdir'.
12463         (nnmaildir-request-type, nnmaildir--scan, nnmaildir-request-newgroups)
12464         (nnmaildir-request-group, nnmaildir-request-create-group)
12465         (nnmaildir-request-post, nnmaildir-request-move-article)
12466         (nnmaildir-request-accept-article, nnmaildir-active-number):
12467         Mark unused args.
12468         (nnmaildir-get-new-mail, nnmaildir-group-alist)
12469         (nnmaildir-active-file): Declare.
12470         (nnmaildir-request-scan): Remove unused vars `group' and `grp-dir'.
12471         (nnmaildir-request-update-info): Remove unused vars `dotfile', `num',
12472         `mark', `end', `new-mark', and `mark-sym'.
12473         (nnmaildir-retrieve-headers): Remove unused args `srv-dir', `dir',
12474         `nlist2'.
12475         (nnmaildir-request-expire-articles):
12476         Remove unused vars `article', `stop' and `nlist2'.
12477         (nnmaildir-request-set-mark): Remove unused vars `begin', `article' and
12478         `end'.  Use nnmaildir--article when dyn-binding is needed.
12479         Give the value directly in the `let' for `del-mark', `del-action',
12480         `add-action', and `set-action'.  Don't use `add-to-list' on a local var.
12481         (nnmaildir-close-server): Declare those local vars that need to be
12482         dyn-bound.
12484 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
12486         * src/keyboard.h (kbd_buffer_store_event_hold): Remove unused local.
12488         Port selection info fix to clang
12489         * src/keyboard.h (kbd_buffer_store_event_hold):
12490         Don't assume C11 semantics for alignof (Bug#20756).
12492         Fix bug that munged selection info
12493         On some optimizing C compilers, copying a structure did not
12494         copy the padding bytes between elements, and the type punning
12495         between struct input_data and struct selection_input_data did
12496         not work.  Change the C code to use a proper union type instead.
12497         Problem reported by YAMAMOTO Mitsuharu (Bug#20756).
12498         * src/keyboard.c (kbd_buffer, kbd_fetch_ptr, kbd_store_ptr)
12499         (readable_events, discard_mouse_events, kbd_buffer_events_waiting)
12500         (kbd_buffer_get_event, process_special_events, stuff_buffered_input)
12501         (mark_kboards):
12502         Use union buffered_input_event, not struct input_event.
12503         (clear_event, deliver_input_available_signal, process_special_events):
12504         Remove unnecessary forward decls.
12505         (kbd_buffer_store_buffered_event): New function, mostly just the
12506         old kbd_buffer_store_event_hold, except its argument is of type
12507         union buffered_input_event, not struct input_event.
12508         (kbd_buffer_unget_event): Define only if HAVE_X11, since it's
12509         not needed otherwise.  Argument is now of type
12510         struct selection_input_event *, not struct input_event *.
12511         All callers changed.
12512         (clear_event): Arg is now of type union buffered_input_event *,
12513         not struct input_event *.  All callers changed.
12514         * src/keyboard.h [HAVE_X11]: Include "xterm.h".
12515         (union buffered_input_event): New type.
12516         (kbd_buffer_store_event_hold): Now an inline function,
12517         defined here.
12518         * src/termhooks.h (EVENT_KIND_WIDTH): New constant.
12519         (struct input_event): Use it.
12520         * src/xselect.c (struct selection_event_queue):
12521         Make elements be of type struct selection_input_event,
12522         not struct input_event.
12523         (selection_input_event_equal): New static function.
12524         (x_queue_event): Use it.
12525         (x_queue_event, x_decline_selection_request)
12526         (x_selection_current_request, x_reply_selection_request)
12527         (x_handle_selection_request, x_handle_selection_clear)
12528         (x_handle_selection_event): Use struct selection_input_event,
12529         not struct input_event.  All callers changed.
12530         (x_convert_selection): Omit unused first arg.  All callers changed.
12531         (Fx_disown_selection_internal): Omit unnecessary union.
12532         * src/xterm.c (handle_one_xevent): Use new union buffered_input_event
12533         rather than rolling our own equivalent.  Prefer sie.kind when
12534         setting up that kind of structure.
12535         Call kbd_buffer_store_buffered_event, not kbd_buffer_store_event_hold.
12536         * src/xterm.h (struct selection_input_event: Use EVENT_KIND_WIDTH.
12537         (SELECTION_EVENT_DISPLAY, SELECTION_EVENT_DPYINFO)
12538         (SELECTION_EVENT_REQUESTOR, SELECTION_EVENT_SELECTION)
12539         (SELECTION_EVENT_TARGET, SELECTION_EVENT_PROPERTY)
12540         (SELECTION_EVENT_TIME, x_handle_selection_event):
12541         Arg is now of type struct selection_input_event *)
12542         not struct input_event *.  All callers changed.
12544 2015-06-23  Glenn Morris  <rgm@gnu.org>
12546         * Makefile.in (install-arch-dep): Simplify with Make conditionals.
12548 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
12550         * lisp/isearch.el: Fold many unicode characters to ASCII.
12551         (isearch-character-fold-search, isearch--character-fold-extras)
12552         (isearch--character-fold-table): New variable.
12553         (isearch--character-folded-regexp): New function.
12554         (isearch-search-fun-default): Use them.
12555         * lisp/replace.el (replace-character-fold): New variable.
12556         (replace-search): Use it.
12557         * etc/NEWS: Document it.
12559 2015-06-23  Glenn Morris  <rgm@gnu.org>
12561         Check for an input event before showing a dialog box.  (Bug#20813)
12562         * lisp/subr.el (y-or-n-p):
12563         * src/fns.c (Fyes_or_no_p): Check last-input-event as well
12564         as last-nonmenu-event.
12566 2015-06-23  Jürgen Hartmann  <juergen_hartman_@hotmail.com>  (tiny change)
12568         Respect ‘switch-to-visible-buffer’ more rigidly.  (Bug#20861)
12569         * lisp/window.el (switch-to-visible-buffer): Doc adjustment.
12570         (switch-to-prev-buffer, switch-to-next-buffer): Respect
12571         switch-to-visible-buffer independent of the windows history.
12573 2015-06-23  Paul Eggert  <eggert@cs.ucla.edu>
12575         * src/keyboard.c (last_timer_event): Remove unused var.
12577 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
12579         * test/automated/package-test.el (package-test-update-listing):
12580         Fix test.
12582 2015-06-23  Glenn Morris  <rgm@gnu.org>
12584         Revert 2014-06-25 nextstep/Makefile change.
12585         * nextstep/Makefile.in (${ns_appbindir}): Remove rule.
12586         (${ns_appbindir}/Emacs, links): Create ns_appbindir in the rule,
12587         not as an order-only prerequisite.
12589         * configure.ac (--with-ns): Enable by default on OS X.
12591 2015-06-23  Leo Liu  <sdl.web@gmail.com>
12593         Fix shell-for/backward-command to exclude spaces
12594         * lisp/shell.el (shell-forward-command, shell-backward-command):
12595           Handle the 'move case from re-search-forward/backward.
12596           fixes debbugs:20873
12598 2015-06-22  Juri Linkov  <juri@linkov.net>
12600         * lisp/replace.el (query-replace-read-from): Add separator to
12601         the local binding of text-property-default-nonsticky.  (Bug#20690)
12603         * lisp/simple.el (shell-command-on-region): Replace 'error' with 'user-error'.
12604         (Bug#20785)
12606 2015-06-22  Ken Brown  <kbrown@cornell.edu>
12608         Enable CPU profiling on Cygwin
12609         * src/syssignal.h [CYGWIN] (PROFILER_CPU_SUPPORT): Revert previous
12610         change that undefined this.
12611         (SIGEV_SIGNAL): Ensure that this is defined as a macro.
12612         * src/profiler.c [CYGWIN] (timer_getoverrun): Define as a macro on
12613           Cygwin.
12615         Improve diagnostics of profiler-cpu-start
12616         * src/profiler.c (setup_cpu_timer): Change return type to 'int';
12617         return -1 if the sampling interval is invalid.
12618         (Fprofiler_cpu_start): Improve error message if 'setup_cpu_timer'
12619         fails.  (Bug#20843)
12621 2015-06-22  Artur Malabarba  <bruce.connor.am@gmail.com>
12623         * lisp/emacs-lisp/package.el: Exclude packages by name.
12624         (package-hidden-regexps): New variable.
12625         (package-menu--refresh): Use it.
12626         (package-menu-hide-package): New command.
12628         * lisp/emacs-lisp/package.el: Rename hide-obsolete to toggle-hiding.
12630 2015-06-22  Eli Zaretskii  <eliz@gnu.org>
12632         Fix debug-timer-check on systems without HAVE_TIMERFD
12633         * src/atimer.c (Fdebug_timer_check) [!HAVE_TIMERFD]: Actively run
12634         the expired timers, since wait_reading_process_output doesn't.
12635         (debug_timer_callback): Enlarge the tolerance to 20 msec.
12637         Fix RCS crashes in vc-test
12638         * lisp/vc/vc-rcs.el (vc-rcs-register): Avoid crashes with some old
12639         ports of 'ci' on MS-Windows by always passing the -t- switch.
12641 2015-06-22  Glenn Morris  <rgm@gnu.org>
12643         * doc/emacs/package.texi (Packages):
12644         * doc/emacs/trouble.texi (Known Problems): Remove faq cross-references.
12646         * doc/misc/efaq-w32.texi (Downloading): Copyedits.  (Bug#20851)
12648 2015-06-22  Paul Eggert  <eggert@cs.ucla.edu>
12650         Port tests to help-quote-translation
12651         * test/automated/ert-x-tests.el (ert-test-describe-test):
12652         * test/automated/package-test.el (package-test-describe-package)
12653         (package-test-signed): Allow straight quotes, too.
12655 2015-06-22  Dmitry Gutov  <dgutov@yandex.ru>
12657         Make find-function-on-key use the current window
12658         * lisp/emacs-lisp/find-func.el (find-function-on-key-do-it):
12659         Extract from `find-function-on-key', add a second argument.
12660         (find-function-on-key): Use it (bug#19679).
12661         (find-function-on-key-other-window)
12662         (find-function-on-key-other-frame): New commands.
12664 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
12666         Revert "Define `map-elt' as a generalized variable"
12667         This reverts commit 8b6d82d3ca86f76ed964063b3941a7c6ab0bf1c6.
12669 2015-06-21  Ken Brown  <kbrown@cornell.edu>
12671         Drop support for CPU profiling on Cygwin
12672         * src/syssignal.h (PROFILER_CPU_SUPPORT): Don't define on Cygwin.
12673         (Bug#20843)
12675 2015-06-21  Paul Eggert  <eggert@cs.ucla.edu>
12677         Fix some “nested” quoting confusion in doc strings
12678         * lisp/emacs-lisp/advice.el (ad-map-arglists):
12679         * lisp/kermit.el (kermit-clean-on):
12680         * lisp/mh-e/mh-comp.el (mh-repl-group-formfile):
12681         * src/keyboard.c (Frecursive_edit):
12682         Use curved quotes when quoting text containing apostrophe,
12683         so that the apostrophe isn't curved in the output.
12685 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
12687         Define `map-elt' as a generalized variable
12688         * lisp/emacs-lisp/map.el (map-elt): Define a gv-expander.
12689         * lisp/emacs-lisp/map.el (map--dispatch): Tighten the code.
12690         * lisp/emacs-lisp/map.el (map-put): Redefine it as a function using a
12691         `setf' with `map-elt'.
12692         * test/automated/map-tests.el: Comment out `test-map-put-literal'.
12694 2015-06-21  Michael Albinus  <michael.albinus@gmx.de>
12696         Improve error handling in tramp-adb.el
12697         * lisp/net/tramp-adb.el (tramp-adb-handle-file-local-copy):
12698         Improve error handling.
12700 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
12702         Reuse `alist-get' in map.el
12703         * lisp/emacs-lisp/map.el (map-elt): Use `alist-get' to retrieve alist
12704         elements.
12706 2015-06-21  Eli Zaretskii  <eliz@gnu.org>
12708         Fix bytecomp-tests--warnings when $TMPDIR has a long name
12709         * test/automated/bytecomp-tests.el (bytecomp-tests--warnings):
12710         Allow the warning to begin on the 3rd, not only 2nd line, which
12711         happens if temporary-file-directory has a very long name.
12713         Expect 2 icalendar tests to fail on MS-Windows
12714         * test/automated/icalendar-tests.el (icalendar-import-with-timezone)
12715         (icalendar-real-world): Make them expected failures on MS-Windows.
12717 2015-06-20  Paul Eggert  <eggert@cs.ucla.edu>
12719         Improve port of settings UI to older displays
12720         * lisp/cus-start.el (standard): Don't assume curved quotes are
12721         easily distinguishable when users are tinkering with a setting
12722         that affects how curved quotes are generated.
12724         Fix quoting in electric-quote-mode doc string
12725         * lisp/electric.el (electric-quote-mode): Fix quoting.
12726         This is a fallout from the recent change introducing
12727         ‘help-quote-translation’.
12729         Spelling fix
12731         * doc/misc/texinfo.tex, lib/set-permissions.c: Merge from gnulib.
12733         * src/doc.c (syms_of_doc): Remove unused symbols.
12735 2015-06-20  Martin Rudalics  <rudalics@gmx.at>
12737         * lisp/window.el (window-state-put): Undedicate target window
12738         before putting STATE into it.  (Bug#20848)
12740 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
12742         Merge from origin/emacs-24
12743         a5e6f33 Fixes: debbugs:20832
12744         b9f02cf Fixes: debbugs:20832
12746 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
12748         Fix file-in-directory-p when the directory is UNC
12749         * lisp/files.el (file-in-directory-p): Support files and
12750         directories that begin with "//".  (Bug#20844)
12752 2015-06-19  Stephen Berman  <stephen.berman@gmx.net>
12754         * lisp/calendar/todo-mode.el (todo-show): Don't visit todo file
12755         in the minibuffer.  (Bug#20832)
12757 2015-06-19  Nicolas Richard  <youngfrog@members.fsf.org>
12759         * lisp/calendar/todo-mode.el (todo-show): Signal an error if buffer
12760         for adding new todo file is empty but modified.  (Bug#20832)
12762 2015-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
12764         (filepos-to-bufferpos): Further tweaks to the utf-16 code
12765         * lisp/international/mule-util.el (filepos-to-bufferpos):
12766         Fix typo.  Move non-exact check to the utf-16 branch (the only one
12767         affected).  Don't use byte-to-position for the utf-16 case.
12769 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
12771         Minor fixes in filepos-to-bufferpos
12772         * lisp/international/mule-util.el (filepos-to-bufferpos): Remove
12773         test for utf-8-emacs.  Exempt single-byte encodings from the
12774         'use-exact' path when QUALITY is 'exact'.  Test UTF-16 encodings
12775         for BOM before subtracting 2 bytes.  Use 'identity' when adjusting
12776         UTF-16 encoded files for CR-LF EOLs.
12778 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
12780         Improve the optional translation of quotes
12781         Fix several problems with the recently-added custom variable
12782         help-quote-translation where the code would quote inconsistently
12783         in help buffers.  Add support for quoting 'like this', which
12784         is common in other GNU programs in ASCII environments.  Change
12785         help-quote-translation to use more mnemonic values: values are now the
12786         initial quoting char, e.g., (setq help-quote-translation ?`) gets the
12787         traditional Emacs help-buffer quoting style `like this'.  Change the
12788         default behavior of substitute-command-keys to match what's done in
12789         set-locale-environment, i.e., quote ‘like this’ if displayable,
12790         'like this' otherwise.
12791         * doc/lispref/help.texi (Keys in Documentation): Document
12792         new behavior of substitute-command-keys, and document
12793         help-quote-translation.
12794         * doc/lispref/tips.texi (Documentation Tips):
12795         Mention the effect of help-quote-translation.
12796         * etc/NEWS: Mention new behavior of substitute-command-keys,
12797         and merge help-quote-translation news into it.
12798         When talking about doc strings, mention new ways to type quotes.
12799         * lisp/cedet/mode-local.el (overload-docstring-extension):
12800         Revert my recent change to this function, which shouldn't be
12801         needed as the result is a doc string.
12802         * lisp/cedet/mode-local.el (mode-local-print-binding)
12803         (mode-local-describe-bindings-2):
12804         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
12805         * lisp/cus-theme.el (describe-theme-1):
12806         * lisp/descr-text.el (describe-text-properties-1, describe-char):
12807         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
12808         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
12809         (eieio-help-constructor):
12810         * lisp/emacs-lisp/package.el (describe-package-1):
12811         * lisp/faces.el (describe-face):
12812         * lisp/help-fns.el (help-fns--key-bindings)
12813         (help-fns--compiler-macro, help-fns--parent-mode)
12814         (help-fns--obsolete, help-fns--interactive-only)
12815         (describe-function-1, describe-variable):
12816         * lisp/help.el (describe-mode):
12817         Use substitute-command-keys to ensure a more-consistent quoting
12818         style in help buffers.
12819         * lisp/cus-start.el (standard):
12820         Document new help-quote-translation behavior.
12821         * lisp/emacs-lisp/lisp-mode.el (lisp-fdefs):
12822         * lisp/help-mode.el (help-xref-symbol-regexp, help-xref-info-regexp)
12823         (help-xref-url-regexp):
12824         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
12825         * lisp/wid-edit.el (widget-documentation-link-regexp):
12826         Also match 'foo', in case we're in a help buffer generated when
12827         help-quote-translation is ?'.
12828         * src/doc.c: Include disptab.h, for DISP_CHAR_VECTOR.
12829         (LEFT_SINGLE_QUOTATION_MARK, uLSQM0, uLSQM1, uLSQM2, uRSQM0)
12830         (uRSQM1, uRSQM2, LSQM, RSQM): New constants.
12831         (Fsubstitute_command_keys): Document and implement new behavior.
12832         (Vhelp_quote_translation): Document new behavior.
12834 2015-06-18  Glenn Morris  <rgm@gnu.org>
12836         * lisp/cus-start.el (help-quote-translation): Add :version.
12838         * src/doc.c (Fsubstitute_command_keys): Make previous change compile.
12840 2015-06-18  Alan Mackenzie  <acm@muc.de>
12842         Make translation of quotes to curly in doc strings optional.
12843         * src/doc.c (traditional, prefer-unicode): New symbols.
12844         (help-quote-translation): New variable.
12845         (Fsubstitute_command_keys): Make translation of quotes dependent on
12846         `help-quote-translation'; also translate curly quotes back to ASCII
12847         ones.
12848         * lisp/cus-start.el (top-level): Add a customization entry for
12849         `help-quote-translation'.
12851 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
12853         * lisp/emacs-lisp/package.el: Don't always propagate async errors
12854         (package--with-work-buffer-async): Only propagate the error if the
12855         callback returns non-nil.
12856         (package--download-one-archive): Return nil on the signature
12857         checking callback if we accept unsigned.
12858         (package--download-and-read-archives): Return non-nil on the
12859         archive download callback.
12861 2015-06-18  Martin Rudalics  <rudalics@gmx.at>
12863         Set image_cache_refcount before x_default_parameter calls.  (Bug#20802)
12864         * src/nsfns.m (Fx_create_frame):
12865         * src/xfns.c (Fx_create_frame, x_create_tip_frame): Move setting
12866         image_cache_refcount before first x_default_parameter call.
12868 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
12870         Improve and extend filepos-to-bufferpos
12871         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
12872         Don't barf if F returns nil for some argument.
12873         (filepos-to-bufferpos): Expand to support UTF-16 and not assume
12874         that every encoding of type 'charset' is single-byte.
12876 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
12878         * lisp/emacs-lisp/package.el (package-menu--perform-transaction):
12879         Properly delete packages.  (Bug#20836)
12881 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
12883         Update data files from just-released Unicode 8.0
12884         * etc/NEWS: Update wording since Unicode 8.0 is no longer in draft
12885         status.
12886         * test/BidiCharacterTest.txt: Update from Unicode 8.0.
12887         * admin/unidata/BidiMirroring.txt:
12888         * admin/unidata/BidiBrackets.txt:
12889         * admin/unidata/UnicodeData.txt: Update from Unicode 8.0.
12891 2015-06-18  Paul Eggert  <eggert@cs.ucla.edu>
12893         Document curved quotes a bit better
12894         * doc/emacs/basic.texi (Inserting Text):
12895         Mention C-x 8.  Change example to use curved quote rather
12896         than infinity, as this lets us give more ways to do it.
12897         * doc/emacs/mule.texi (International Chars): Mention C-x 8 shortcuts
12898         and quotation marks.
12899         * doc/emacs/text.texi (Quotation Marks):
12900         * doc/lispref/tips.texi (Documentation Tips):
12901         Add "curly quotes" and "curved quotes" to the index.
12902         * doc/emacs/text.texi (Quotation Marks):
12903         Give the C-x 8 shorthands for curved quotes.
12904         Cross-reference to "Quotation Marks".
12906 2015-06-17  Daiki Ueno  <ueno@gnu.org>
12908         Add pinentry.el for better GnuPG integration
12909         * lisp/pinentry.el: New file.
12910         * etc/NEWS: Add entry about pinentry.el.
12911         * lisp/epg.el (epg--start): Set INSIDE_EMACS envvar.
12912         (Bug#20550)
12914 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
12916         * lisp/emacs-lisp/package.el: Slightly better error reporting.
12918 2015-06-17  Stefan Monnier  <monnier@iro.umontreal.ca>
12920         (define-minor-mode): Use setq-default for :global minor modes
12921         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
12922         Use setq-default for :global minor modes (bug#20712).
12924 2015-06-17  Eli Zaretskii  <eliz@gnu.org>
12926         Avoid infloop in redisplay with tall images
12927         * src/xdisp.c (try_scrolling): Prevent an infloop when scrolling
12928         down near ZV.  (Bug#20808)
12929         Call bidi_unshelve_cache to avoid memory leaks.  Use IT_CHARPOS
12930         instead of CHARPOS.
12932 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
12934         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
12935         Fix error reporting.
12937         * lisp/let-alist.el: Move to lisp/emacs-lisp/let-alist.el
12939         * lisp/emacs-lisp/package.el: Revert buffer after any operation
12940         Call `package-menu--post-refresh' after any operation that changes
12941         the package database (`package-install' and `package-delete').  To
12942         avoid performance issues in large transactions, these functions
12943         add `post-refresh' to `post-command-hook' instead of calling it
12944         immediately.
12945         (package-menu--mark-or-notify-upgrades): New function.
12946         (list-packages): Add it to `package--post-download-archives-hook'.
12947         (package-menu--post-refresh): Lose the upgrade-checking code, add
12948         code to remove itself from `post-command-hook'.
12949         (package-install, package-delete): Add it to `post-command-hook'.
12950         (package-menu-execute): Don't call `package-menu--post-refresh'.
12952 2015-06-17  Stephen Leake  <stephen_leake@stephe-leake.org>
12954         Add missing function xref-location-group for elisp-mode.
12955         * lisp/progmodes/elisp-mode.el: Add missing function xref-location-group.
12957 2015-06-17  Wolfgang Jenkner  <wjenkner@inode.at>
12959         * src/editfns.c (Fbyte_to_position): Fix bytepos not at char boundary.
12960         The behavior now matches the description in the manual.  (Bug#20783)
12962 2015-06-17  Xue Fuqiao  <xfq.free@gmail.com>
12964         * etc/tutorials/TUTORIAL.cn: Update; synchronize with TUTORIAL.
12966 2015-06-17  Glenn Morris  <rgm@gnu.org>
12968         Generate char-script-table from Unicode source.  (Bug#20789)
12969         * admin/unidata/Makefile.in (AWK): New, set by configure.
12970         (all): Add charscript.el.
12971         (blocks): New variable.
12972         (charscript.el, ${unidir}/charscript.el): New targets.
12973         (extraclean): Also remove generated charscript.el.
12974         * admin/unidata/blocks.awk: New script.
12975         * admin/unidata/Blocks.txt: New data file, from unicode.org.
12976         * lisp/international/characters.el: Load charscript.
12977         * src/Makefile.in (charscript): New variable.
12978         (${charscript}): New target.
12979         (${lispintdir}/characters.elc): Depend on charscript.elc.
12980         (temacs$(EXEEXT)): Depend on charscript.
12982         * lisp/international/characters.el (char-script-table): Tweak
12983         some ranges to better match the source.  (Bug#20789#17)
12985         Remove "no-byte-compile: t" from a few files.
12986         * lisp/obsolete/bruce.el, lisp/obsolete/keyswap.el:
12987         * lisp/obsolete/patcomp.el: No reason not to compile these.
12989 2015-06-16  Glenn Morris  <rgm@gnu.org>
12991         Fix some typos in copied Unicode data.  (Bug#20789)
12992         * lisp/international/characters.el (char-script-table):
12993         * lisp/international/fontset.el (script-representative-chars)
12994         (setup-default-fontset): Fix typos.
12996         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
12997         Don't print filename twice (it's in the prefix now).
12999         * lisp/emacs-lisp/pcase.el (pcase--u1): Revert earlier workaround.
13000         No longer needed.
13002         Address a compilation warning.
13003         * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-defalias):
13004         Replace 't' with '_' in pcase.
13006         Address some check-declare warnings.
13007         * lisp/simple.el (tabulated-list-print):
13008         * lisp/progmodes/elisp-mode.el (xref-collect-matches):
13009         * lisp/term/ns-win.el (ns-selection-owner-p, ns-selection-exists-p)
13010         (ns-get-selection): Update declarations.
13012         Address some compilation warnings.
13013         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
13014         * lisp/vc/vc-git.el (vc-git-file-type-as-string):
13015         Replace 't' with '_' in pcase.
13017         Address some compilation warnings.
13018         * lisp/face-remap.el (text-scale-adjust):
13019         * lisp/menu-bar.el (popup-menu-normalize-position):
13020         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand):
13021         * lisp/emacs-lisp/bytecomp.el (byte-compile-arglist-warn):
13022         * lisp/emacs-lisp/generator.el (cps--transform-1):
13023         * lisp/emacs-lisp/macroexp.el (macroexp--expand-all):
13024         * lisp/obsolete/vc-arch.el (vc-arch-mode-line-string):
13025         * lisp/progmodes/octave.el (octave-goto-function-definition)
13026         (octave-find-definition-default-filename):
13027         Replace 't' with '_' in pcase.
13029         * lisp/emacs-lisp/pcase.el (pcase--u1):
13030         Paper-over today's bootstrap failure.
13032 2015-06-16  Nicolas Petton  <nicolas@petton.fr>
13034         * lisp/emacs-lisp/seq.el: Fix a byte-compiler warnings related to pcase.
13036         * lisp/emacs-lisp/map.el (map-into): Fix a byte-compiler warning.
13038         Better confirmation message in `find-alternate-file' (Bug#20830)
13039         * lisp/files.el (find-alternate-file'): Improve the confirmation
13040         message to show the buffer name.
13042         Better docstring for null.  (Bug#20815)
13043         * src/data.c (null): Improves the docstring, saying what null returns
13044         when OBJECT is non-nil.
13046 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
13048         * lisp/net/newst-treeview.el: Use lexical-binding.
13050         (filepos-to-bufferpos): Add missing cases.  Make sure it terminates.
13051         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
13052         New auxiliary function, extracted from filepos-to-bufferpos.
13053         Make sure it terminates.
13054         (filepos-to-bufferpos): Use it to fix the latin-1-dos case.
13055         Add support for the `exact' quality.
13057 2015-06-16  Cédric Chépied  <cedric.chepied@gmail.com>
13059         Identify feeds in newsticker treeview with :nt-feed property
13060         * lisp/net/newst-treeview.el:
13061         (newsticker--treeview-nodes-eq): Use property :nt-feed instead of :tag.
13063 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
13065         * lisp/emacs-lisp/pcase.el: Improve docs and error handling.
13066         (pcase--self-quoting-p): Floats aren't self-quoting.
13067         (pcase): Tweak docstring.
13068         (pcase--u1): Deprecate the t pattern.  Improve error detection for
13069         the nil pattern.
13070         (\`): Tweak docstring.  Signal an error for unrecognized cases.
13071         (bug#20784)
13073 2015-06-16  Eli Zaretskii  <eliz@gnu.org>
13075         Fix infloop in filepos-to-bufferpos
13076         * lisp/international/mule-util.el (filepos-to-bufferpos): Fix EOL
13077         offset calculation, and make it conditional on the eol-type of the
13078         file's encoding.  (Bug#20825)
13080 2015-06-16  Martin Rudalics  <rudalics@gmx.at>
13082         Fix handling of image cache refcounts.  (Bug#20802)
13083         This backports Eli Zaretskii's solution of this problem for W32
13084         to X and NS.
13085         * src/nsfns.m (image_cache_refcount): Define unconditionally.
13086         (unwind_create_frame): If the image cache's reference count
13087         hasn't been updated yet, do that now.
13088         (Fx_create_frame): Set image_cache_refcount unconditionally.
13089         * src/xfns.c (image_cache_refcount): Define unconditionally.
13090         (unwind_create_frame): If the image cache's reference count
13091         hasn't been updated yet, do that now.
13092         (Fx_create_frame, x_create_tip_frame): Set image_cache_refcount
13093         unconditionally.
13094         * src/w32fns.c (image_cache_refcount): Make it a ptrdiff_t as on
13095         X and NS.
13097 2015-06-16  Nils Ackermann  <nils@ackermath.info>
13099         Improve reftex-label-regexps default value
13100         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Make
13101         keyvals label regexp more strict to better cope with unbalanced
13102         brackets common in math documents.
13104 2015-06-16  Glenn Morris  <rgm@gnu.org>
13106         * doc/emacs/calendar.texi (Format of Diary File):
13107         Move "nonmarking" from here...
13108         (Displaying the Diary): ... to here.
13110         * doc/emacs/calendar.texi (Format of Diary File, Displaying the Diary):
13111         Swap the order of these nodes.
13112         * doc/emacs/emacs.texi: Update detailed menu for the above change.
13114         * doc/emacs/calendar.texi (Specified Dates, Special Diary Entries):
13115         Update date of examples.
13116         (Diary, Format of Diary File): Move example from former to latter.
13117         Reduce duplication.
13119         No need for cp51932.el, eucjp-ms.el to not be compiled any more.
13120         * admin/charsets/cp51932.awk, admin/charsets/eucjp-ms.awk:
13121         Don't set no-byte-compile in the outputs.
13122         * lisp/loadup.el: Don't specify uncompiled cp51932, eucjp-ms.
13124 2015-06-15  Glenn Morris  <rgm@gnu.org>
13126         * lisp/calendar/calendar.el (diary-file): Use locate-user-emacs-file.
13127         * doc/emacs/calendar.texi (Diary, Format of Diary File):
13128         Update for above diary-file change.
13130         * lisp/macros.el (name-last-kbd-macro, kbd-macro-query)
13131         (apply-macro-to-region-lines): Use user-error.
13133         * lisp/textmodes/page-ext.el (add-new-page, pages-directory)
13134         (pages-directory-for-addresses): Doc fixes.
13136 2015-06-15  Stefan Monnier  <monnier@iro.umontreal.ca>
13138         * lisp/info.el: Cleanup bytepos/charpos issues
13139         * lisp/international/mule-util.el: Use lexical-binding.
13140         (filepos-to-bufferpos): New function.
13141         * lisp/info.el (Info-find-in-tag-table-1): Use 0-based file positions.
13142         (Info-find-node-2): Use filepos-to-bufferpos (bug#20704).
13143         (Info-read-subfile, Info-search): Use 0-based file positions.
13145         * lisp/progmodes/perl-mode.el: Refine handling of /re/ and y/abc/def/
13146         (perl--syntax-exp-intro-keywords): New var.
13147         (perl--syntax-exp-intro-regexp, perl-syntax-propertize-function): Use it.
13148         (bug#20800).
13150 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
13152         Fix quoting when making derived mode docstring
13153         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
13154         Nest regexp-quote inside format, not the reverse.
13155         Problem reported by Artur Malabarba in:
13156         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00206.html
13158 2015-06-15  Eli Zaretskii  <eliz@gnu.org>
13160         Fix current-iso639-language on MS-Windows
13161         * lisp/international/mule-cmds.el (set-locale-environment):
13162         Downcase the locale name before interning it.  This is so the
13163         'current-iso639-language' on MS-Windows matches the ':lang'
13164         property of font-spec objects.
13166         Limit Symbola usage some more
13167         * lisp/international/fontset.el (setup-default-fontset): Limit
13168         Symbol coverage of Currency Symbols to u+20B6..u+20CF.
13169         (Bug#20727)
13171 2015-06-15  Nicolas Petton  <nicolas@petton.fr>
13173         * lisp/emacs-lisp/map.el (map-let): Better docstring.
13175 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
13177         * test/automated/help-fns.el (abc\\\[universal-argument\]b\`c\'d\\e\"f):
13178         (help-fns-test-funny-names): Spelling fixes.
13180 2015-06-14  Glenn Morris  <rgm@gnu.org>
13182         * lisp/version.el (emacs-repository-version-git): Demote errors.
13183         Check result is a hash.
13185 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
13187         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
13188         Catch errors that happen before going async.  (Bug#20809)
13190 2015-06-14  Eli Zaretskii  <eliz@gnu.org>
13192         Another improvement of documentation of set-fontset-font
13193         * doc/lispref/display.texi (Fontsets): Say explicitly that
13194         CHARACTER can be a single codepoint.
13195         * src/fontset.c (Fset_fontset_font): Doc fix.
13197         Another improvement for symbol and punctuation characters
13198         * lisp/international/fontset.el (setup-default-fontset): Exclude
13199         from Symbola character ranges for symbols and punctuation covered
13200         well by popular Unicode fonts.  Prefer fixed-misc Unicode font, if
13201         installed and where its coverage of symbols and punctuation is
13202         known to be good.  (Bug#20727)
13204 2015-06-14  Christoph Wedler  <christoph.wedler@sap.com>
13206         Some generic support for multi-mode indentation.
13207         * lisp/progmodes/prog-mode.el (prog-indentation-context):
13208         New variable.
13209         (prog-first-column, prog-widen): New convenience functions.
13211 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
13213         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
13214         Don't assume that `tabulated-list-printer' will leave point at the
13215         end of the buffer.  (Bug#20810)
13217 2015-06-13  Glenn Morris  <rgm@gnu.org>
13219         Tweaks for getting repository version; a bit more like it was for bzr
13220         * lisp/version.el (emacs-repository-version-git)
13221         (emacs-repository--version-git-1): New functions,
13222         split from emacs-repository-get-version.
13223         (emacs-repository-get-version): Make the second argument meaningful.
13225         * lisp/startup.el (command-line-1): Inform if skipping relative
13226         file names due to deleted PWD.
13228         * src/xsmfns.c (x_session_initialize): Avoid libSM crash
13229         when starup directory is missing.  (Bug#18851)
13230         (errno.h): Include it.
13232 2015-06-13  Paul Eggert  <eggert@cs.ucla.edu>
13234         Better fix for documenting `X as "`X"
13235         Fix suggested by Stefan Monnier.
13236         * lisp/help-fns.el (help-fns--signature):
13237         Insert "`X", not "(\` X)", when documenting `X (Bug#20759).
13238         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
13239         Don't treat `X specially, as help-fns--signature now handles this.
13241 2015-06-13  Eli Zaretskii  <eliz@gnu.org>
13243         Improve the default fontset when Symbola is not installed
13244         * lisp/international/fontset.el (setup-default-fontset): Only
13245         prepend Symbola and FreeMono font specs for symbols and
13246         punctuation; do not replace the default spec for them.  This
13247         should have better results when Symbola/FreeMono are not
13248         installed.  (Bug#20727)
13250         Improve documentation of ':lang' in font specs
13251         * src/font.c (Ffont_spec): Doc fix: elaborate on the values and
13252         use of the ':lang' property of the font spec.
13253         * doc/emacs/frames.texi (Fonts): Document the language names that
13254         can be in the STYLE part of XLFD.
13255         * doc/lispref/display.texi (Low-Level Font): Document the ':lang'
13256         property.
13258         * nt/README: Don't advertise the (obsolescent) w32 FAQ.
13260         * nt/README.W32: Don't advertise the (obsolescent) w32 FAQ.
13262         Revert last change in fontset.el
13263         * lisp/international/fontset.el (setup-default-fontset): Revert
13264         the change "Configure Symbola font only if installed", since font
13265         search is evidently not yet set up when this function is called.
13266         (Bug#20727)
13268 2015-06-12  Glenn Morris  <rgm@gnu.org>
13270         Ensure early startup warnings are visible at the end.  (Bug#20792)
13271         * lisp/emacs-lisp/warnings.el (display-warning):
13272         If startup isn't complete, delay the warning.
13273         * lisp/startup.el (normal-top-level, command-line):
13274         Let display-warning automatically handle the needed delays.
13275         Run delayed-warnings-hook.
13277         * lisp/version.el (emacs-repository-get-version):
13278         Avoid calling external executable if possible.  (Bug#20799)
13280 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
13282         Document `X as "`X", not as "(` X)"
13283         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
13284         Document (backquote FOO) as "`FOO", not as "(` FOO)" (Bug#20759).
13286         * src/print.c (print_object): Minor simplification.
13288 2015-06-12  Glenn Morris  <rgm@gnu.org>
13290         * src/buffer.c (init_buffer): Add final newline to message.
13292 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
13294         Configure Symbola font only if installed
13295         * lisp/international/fontset.el (setup-default-fontset):
13296         Don't specify the Symbola font if it's not installed.
13297         Likewise for FreeMono.  (Bug#20727)
13299 2015-06-12  Eli Zaretskii  <eliz@gnu.org>
13301         Configure Symbola font only for symbols and punctuation
13302         * lisp/international/fontset.el (setup-default-fontset): Leave
13303         only symbols and punctuation in the fontset setup for Symbola
13304         font; remove "Greek and Coptic" and "Cyrillic Supplement".
13305         (Bug#20798)
13307 2015-06-12  Andreas Schwab  <schwab@linux-m68k.org>
13309         Fix crash in fontset-info
13310         * src/fontset.c (Ffontset_info): Check that the RFONT-DEF elt is
13311         non-nil.
13313 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
13315         Port to Solaris 10 sparc + Sun C 5.13
13316         * configure.ac (SETUP_SLAVE_PTY) [sol2* | unixware]:
13317         Adjust to process.c change.
13318         * src/process.c (create_process): Declare volatile variables at
13319         top level of this function, so that they're less likely to be
13320         reused later in the function in the code executed by the vforked
13321         child.  Do not declare locals used only in the vforked child, as
13322         they might share memory with locals still live in the parent.
13323         Instead, use the same variables in the child as in the parent.
13324         This works around a subtle bug that causes a garbage collector
13325         crash when Emacs is built with Sun C 5.13 sparc on Solaris 10.
13327 2015-06-12  Glenn Morris  <rgm@gnu.org>
13329         * lisp/startup.el (normal-top-level): Don't let *Messages* get
13330         a nil default-directory.
13332 2015-06-11  Glenn Morris  <rgm@gnu.org>
13334         * lisp/startup.el (normal-top-level): Use delay-warning.  (Bug#20792)
13336         Some progress towards starting with PWD deleted.  (Bug#18851)
13337         * src/buffer.c (init_buffer): Handle get_current_dir_name failures.
13338         * lisp/startup.el (normal-top-level, command-line-1):
13339         * lisp/minibuffer.el (read-file-name-default):
13340         Handle default-directory being nil.
13342 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
13344         Fix "not a tty" bug on Solaris 10
13345         * configure.ac (PTY_OPEN): Define to plain 'open'
13346         on SVR4-derived hosts, so that the O_CLOEXEC flag isn't set.
13347         * src/process.c (allocate_pty): Set the O_CLOEXEC flag after
13348         calling PTY_TTY_NAME_SPRINTF, for the benefit of SVR4-derived
13349         hosts that call grantpt which does its work via a setuid subcommand
13350         (Bug#19191, Bug#19927, Bug#20555, Bug#20686).
13351         Also, set O_CLOEXEC even if PTY_OPEN is not defined, since it
13352         seems relevant in that case too.
13354 2015-06-11  Juri Linkov  <juri@linkov.net>
13356         * lisp/bindings.el (debug-ignored-errors): Add mark-inactive.
13357         * lisp/simple.el (kill-region): Replace 'error' with 'user-error'.
13358         (Bug#20785)
13360 2015-06-11  Glenn Morris  <rgm@gnu.org>
13362         * lisp/international/characters.el (char-script-table): Fix typo.
13364 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
13366         Fix quoting of help for functions with odd names
13367         While investigating Bug#20759, I discovered other quoting problems:
13368         C-h f mishandled characters like backslash and quote in function names.
13369         This fix changes the behavior so that 'C-h f pcase RET' now
13370         generates "... (\` QPAT) ..." instead of "... (` QPAT) ...",
13371         because '(format "%S" '(` FOO))' returns "(\\` FOO)".  A comment
13372         in src/lread.c's read1 function says that the backslash will be
13373         needed starting in Emacs 25, which implies that 'format' is
13374         correct and the old pcase documention was wrong to omit the backslash.
13375         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
13376         * lisp/help-fns.el (help-fns--signature):
13377         * lisp/help.el (help-add-fundoc-usage):
13378         * lisp/progmodes/elisp-mode.el (elisp-function-argstring):
13379         Use help--make-usage-docstring rather than formatting
13380         help-make-usage.
13381         * lisp/emacs-lisp/pcase.el (pcase--make-docstring):
13382         Return raw docstring.
13383         * lisp/help-fns.el (help-fns--signature): New arg RAW, to return
13384         raw docstring.  Take more care to distinguish raw from cooked dstrings.
13385         (describe-function-1): Let help-fns--signature substitute
13386         command keys.
13387         * lisp/help.el (help--docstring-quote): New function.
13388         (help-split-fundoc): Use it, to quote funny characters more
13389         systematically.
13390         (help--make-usage): Rename from help-make-usage, since this
13391         should be private.  Leave an obsolete alias for the old name.
13392         (help--make-usage-docstring): New function.
13393         * test/automated/help-fns.el (help-fns-test-funny-names): New test.
13395 2015-06-11  Stefan Monnier  <monnier@iro.umontreal.ca>
13397         * lisp/thingatpt.el (in-string-p): Revert last change,
13398         since in-string-p is not used in thingatpt.el but only from outside.
13399         Also, use lexical binding.
13401 2015-06-11  Artur Malabarba  <bruce.connor.am@gmail.com>
13403         * lisp/let-alist.el (let-alist--deep-dot-search): Fix cons.
13404         * test/automated/let-alist.el (let-alist-cons): Test it.
13406 2015-06-11  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
13408         * src/syntax.c (Fbackward_prefix_chars): Reword docstring.
13410 2015-06-10  Glenn Morris  <rgm@gnu.org>
13412         * build-aux/gitlog-to-emacslog: Also ignore pointless merge commits.
13414         Improve generated ChangeLog for gitmerge.el commits.  (Bug#20717)
13415         * build-aux/gitlog-to-changelog: Handle gitmerge.el skipped commits.
13416         * admin/gitmerge.el (gitmerge-commit-message):
13417         Exclude "skipped" messages from ChangeLog once again.
13419         Slight namespace cleanup for thingatpt.el.
13420         * lisp/thingatpt.el (thing-at-point--in-string-p)
13421         (thing-at-point--end-of-sexp, thing-at-point--beginning-of-sexp)
13422         (thing-at-point--read-from-whole-string): Rename from
13423         old versions without "thing-at-point--" prefix.
13424         Keep old versions as obsolete aliases.  Update all uses.
13426         * lisp/emacs-lisp/checkdoc.el (checkdoc-get-keywords):
13427         Move requiring of finder from here...
13428         (checkdoc-package-keywords): ... to here.
13430         Use 'user-error' in a few calendar files.
13431         * lisp/calendar/appt.el (appt-add):
13432         * lisp/calendar/calendar.el (calendar-absolute-from-gregorian)
13433         (calendar-generate):
13434         * lisp/calendar/diary-lib.el (diary-mail-entries, diary-cyclic):
13435         Replace 'error' with 'user-error'.
13437         * lisp/progmodes/f90.el (f90-backslash-not-special): Use user-error.
13439         * lisp/files-x.el (add-file-local-variable):
13440         Special-case 'lexical-binding'.  (Bug#20641)
13442         * lisp/progmodes/executable.el (executable-self-display): Obsolete.
13443         No longer autoload.
13444         * doc/misc/autotype.texi (Executables):
13445         Undocument executable-self-display.
13447         * lisp/progmodes/executable.el (executable-self-display):
13448         Use non-obsolete tail syntax.  (Bug#20779)
13449         (executable-self-display): Doc update.
13451 2015-06-10  Stefan Monnier  <monnier@iro.umontreal.ca>
13453         * lisp/emacs-lisp/checkdoc.el: Use lexical-binding
13454         (finder-known-keywords): Silence byte-compiler.
13456 2015-06-09  Stefan Monnier  <monnier@iro.umontreal.ca>
13458         * lisp/simple.el (eval-expression): Macroexpand before evaluating
13459         (bug#20730).
13461         * lisp/progmodes/sh-script.el: Better handle nested quotes.
13462         (sh-here-doc-open-re): Don't mis-match the <<< operator (bug#20683).
13463         (sh-font-lock-quoted-subshell): Make sure double quotes within single
13464         quotes don't mistakenly end prematurely the surrounding string.
13466         * lisp/progmodes/elisp-mode.el: Require cl-lib for cl-defstruct.
13468 2015-06-09  Glenn Morris  <rgm@gnu.org>
13470         * test/automated/Makefile.in (ELFILES): Sort.
13472         * Makefile.in (SUBDIR_MAKEFILES):
13473         * lwlib/Makefile.in (WARN_CFLAGS):
13474         Use built-in Make functions rather than echo+sed.
13476 2015-06-09  Eli Zaretskii  <eliz@gnu.org>
13478         Update char-script-table
13479         * lisp/international/characters.el (char-script-table): Update
13480         from Unicode 8.0 Draft.
13482         Improve font selection for punctuation and other symbols
13483         * src/fontset.c (face_for_char): If the character's script is
13484         'symbol', and the font used for ASCII face has a glyph for it, use
13485         the font for the ASCII face instead of searching the fontsets.
13486         This comes instead of NS-specific code that used the current
13487         face's font instead, which is now disabled due to undesirable
13488         consequences.  (Bug#20727)
13490 2015-06-08  Dmitry Gutov  <dgutov@yandex.ru>
13492         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
13493         Skip past `#' to find BEG (bug#20771).
13494         * test/automated/elisp-mode-tests.el
13495         (elisp-completes-functions-after-hash-quote): New test.
13497 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
13499         Fix compilation warning/error in --without-x builds
13500         * src/xdisp.c (append_space_for_newline): Condition GUI-specific
13501         code on HAVE_WINDOW_SYSTEM.
13503         Improve the default fontset wrt symbols
13504         * lisp/international/fontset.el (setup-default-fontset): Better
13505         setup of fontset-default for symbols: use Symbola and FreeMono.
13506         (Bug#20727)
13508 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
13510         Add new command checkdoc-package-keywords
13511         * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag):
13512         New defcustom.
13513         (checkdoc-list-of-strings-p): Add doc.
13514         (checkdoc-current-buffer): When `checkdoc-package-keywords-flag' is
13515         non-nil, call `checkdoc-package-keywords'.
13516         (checkdoc-get-keywords): New defun.
13517         (checkdoc-package-keywords): New command.  Warns if the current file
13518         has package.el-style keywords that aren't in `finder-known-keywords'.
13519         * etc/NEWS: Add entry.
13521 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
13523         Avoid crashes when key-binding is called from a timer
13524         * src/keymap.c (Fkey_binding): Don't segfault if called with an
13525         empty vector as KEY.  (Bug#20705)
13527         Fix a thinko in arc-mode.el
13528         * lisp/arc-mode.el (archive-zip-summarize): Fix last change in the
13529         non-Zip64 case.  (Bug#20769)
13531 2015-06-08  Artur Malabarba  <bruce.connor.am@gmail.com>
13533         * lisp/emacs-lisp/package.el (package-delete): Make interactive.
13535 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
13537         * lisp/emacs-lisp/checkdoc.el (checkdoc-file): New function.
13538         (checkdoc-error): When `checkdoc-diagnostic-buffer' is set to
13539         "*warn*", print the warning to the standard output.  (bug#20754)
13541 2015-06-07  Glenn Morris  <rgm@gnu.org>
13543         * admin/update_autogen (changelog_files): Remove gitlog-to-emacslog.
13545         * src/font.c (syms_of_font) <font-log>: Doc fix.
13547         Remove the obsolete leading "*" from some C doc strings.
13548         * src/coding.c (syms_of_coding):
13549         * src/font.c (syms_of_font): Remove leading "*" from docs.
13550         * lisp/cus-start.el (enable-character-translation): Add it.
13552 2015-06-07  Paul Eggert  <eggert@cs.ucla.edu>
13554         Move gen_origin from program to data
13555         That way, 'make change-history' needs to change only ChangeLog.2,
13556         instead of having to change two files.
13557         * ChangeLog.2: Add commit info for range that this file covers.
13558         * Makefile.in (new_commit_regexp): New macro.
13559         (change-history-nocommit): Simplify, by putting what used to be
13560         the gen_origin value into the data (ChangeLog.2) rather than
13561         into the program (gitlog-to-emacslog).
13562         * build-aux/gitlog-to-emacslog (gen_origin): Calculate from
13563         the input file (e.g., ChangeLog.2) rather than by having a
13564         constant in the program.  Substitute it into the output.
13566 2015-06-07  Dmitry Gutov  <dgutov@yandex.ru>
13568         * lisp/help-fns.el (help-fns--signature): Quote any quotes in the
13569         function name (bug#20759).
13571 2015-06-07  Eli Zaretskii  <eliz@gnu.org>
13573         Adapt 'struct timespec' to next release of MinGW runtime
13574         * nt/inc/ms-w32.h (struct timespec): Don't declare if
13575         __struct_timespec_defined is defined.
13577 2015-06-06  Paul Eggert  <eggert@cs.ucla.edu>
13579         Merge from gnulib
13580         This incorporates:
13581         2015-06-06 acl-permissions: pacify -Wsuggest-attribute=const
13582         2015-06-05 stdio: Don't redefine gets when using C++
13583         2015-06-05 acl-permissions: port to AIX, C89 HP-UX
13584         2015-06-02 file-has-acl: fix build on Mac OS X 10
13585         2015-06-01 gnulib-tool: concatenate lib_SOURCES to a single line
13586         2015-06-01 pthread_sigmask: discount system version if a simple macro
13587         2015-05-31 readlinkat: avoid OS X 10.10 trailing slash bug
13588         * doc/misc/texinfo.tex, lib/acl-internal.h, lib/get-permissions.c:
13589         * lib/readlinkat.c, lib/set-permissions.c, lib/stdio.in.h:
13590         * m4/acl.m4, m4/pthread_sigmask.m4, m4/readlinkat.m4: Copy from gnulib.
13591         * lib/gnulib.mk: Regenerate.
13593 2015-06-06  Juri Linkov  <juri@linkov.net>
13595         * lisp/progmodes/grep.el (zrgrep): Let-bind grep-highlight-matches
13596         before calling grep-compute-defaults because now it affects the
13597         command lines computed in grep-compute-defaults.  (Bug#20728)
13599 2015-06-06  Glenn Morris  <rgm@gnu.org>
13601         Address some compilation warnings.
13602         * lisp/international/mule-cmds.el (w32-get-console-codepage)
13603         (w32-get-console-output-codepage):
13604         * lisp/progmodes/elisp-mode.el (xref-collect-references):
13605         * lisp/version.el (cairo-version-string): Declare.
13606         * lisp/erc/erc.el (erc-nickname-in-use): Fix typo.
13608 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
13610         Fix display when a font claims large values of ascent and descent
13611         This fixes bug#20628.
13612         * src/xdisp.c (get_phys_cursor_geometry): Correct the Y
13613         coordinate of a hollow cursor glyph when the original glyph's
13614         ascent is too small.
13615         (get_font_ascent_descent, normal_char_ascent_descent)
13616         (normal_char_height): New functions.
13617         (handle_single_display_spec, append_space_for_newline)
13618         (calc_pixel_width_or_height, produce_stretch_glyph)
13619         (calc_line_height_property): Use normal_char_ascent_descent and
13620         normal_char_height.
13621         (x_produce_glyphs): When font-global values of ascent and descent
13622         are too large, use per-character glyph metrics instead, if
13623         possible.  But don't allow the glyph row's ascent and descent
13624         values become smaller than the values from the metrics of the
13625         font's "normal" character.
13626         * src/xftfont.c (xftfont_draw):
13627         * src/w32font.c (w32font_draw): Correct the values of ascent and
13628         descent used to draw glyphless characters' hex code in a box.
13629         * src/xterm.c (x_draw_glyph_string_background):
13630         * src/xdisp.c (x_produce_glyphs):
13631         * src/w32term.c (x_draw_glyph_string_background):
13632         * src/nsterm.m (ns_maybe_dumpglyphs_background): Use FONT_TOO_HIGH
13633         to detect fonts whose global ascent and descent values are too
13634         large to be used in layout decision, and redraw the background
13635         when that happens.
13636         * src/dispextern.h (FONT_TOO_HIGH): New macro.
13637         (get_font_ascent_descent): Add prototype.
13638         * src/xterm.c (x_new_font):
13639         * src/w32term.c (x_new_font):
13640         * src/nsterm.m (x_new_font):
13641         * src/font.c (font_open_entity):
13642         * src/composite.c (composition_gstring_width):
13643         Use get_font_ascent_descent to obtain reasonable values for ascent
13644         and descent of a font.
13646 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
13648         Add assertion in adjust_point_for_property
13649         * src/keyboard.c (adjust_point_for_property): Add eassert for
13650         current buffer being shown in selected window.
13652 2015-06-06  Dmitry Gutov  <dgutov@yandex.ru>
13654         Replace uses of in-string-p; make it obsolete
13655         * lisp/thingatpt.el (in-string-p): Declare obsolete (bug#20732).
13656         (end-of-sexp, beginning-of-sexp): Use syntax-ppss instead.
13658 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
13660         Fix Dired display of an explicit list of files by ls-lisp.el
13661         * lisp/ls-lisp.el (ls-lisp-uid-d-fmt, ls-lisp-uid-s-fmt)
13662         (ls-lisp-gid-d-fmt, ls-lisp-gid-s-fmt): Make the initial values be
13663         correct for when displaying individual files separately, not as
13664         part of listing a directory, in which case these values are not
13665         recomputed by 'ls-lisp-insert-directory', but used verbatim.
13667         * lisp/dired.el (dired): Doc fix.  (Bug#20739)
13669 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
13671         Do not adjust point in a non-selected window
13672         * src/keyboard.c (command_loop_1): Do not adjust point when
13673         current buffer is not shown in selected window (Bug#20590).
13675         * etc/DEBUG: Mention 'maybe_call_debugger'
13677 2015-06-05  Nicolas Petton  <nicolas@petton.fr>
13679         Fix a unit test for map.el
13680         * test/automated/map-tests.el (test-map-let): Fix the test to work
13681         with the new syntax of `map-let'.
13683         * lisp/emacs-lisp/map.el (map-let): Better docstring.
13685         Better syntax for the map pcase pattern
13686         * lisp/emacs-lisp/map.el: Improves the map pcase pattern to take
13687         bindings of the form (KEY PAT) or SYMBOL.  KEY is not quoted.
13689         * lisp/emacs-lisp/map.el (map--dispatch): Better docstring.
13691         Fix a byte-compiler error in map-put and map-delete
13692         * lisp/emacs-lisp/map.el (map-put, map-delete): Ensure that `setq' is
13693         called with a symbol.
13695 2015-06-05  Glenn Morris  <rgm@gnu.org>
13697         * admin/gitmerge.el (gitmerge-commit-message):
13698         Revert to including "skipped" messages in ChangeLog once again.
13700 2015-06-05  Tassilo Horn  <tsdh@gnu.org>
13702         Use string> instead of equiv lambda with string<
13703         * lisp/help.el (view-emacs-news): Use string> instead of equivalent
13704         lambda with string<.
13706 2015-06-05  Glenn Morris  <rgm@gnu.org>
13708         * lisp/emacs-lisp/map.el (map--dispatch): Move before use.
13709         (map--delete-array): Fix typo.
13711         * test/automated/map-tests.el: Replace "assert" with "should".
13713         * lisp/Makefile.in (SUBDIRS): Rename from SUBDIRS_ABS.
13714         (SUBDIRS_REL): Derive from SUBDIRS.
13716         Tweak some build messages.
13717         * lisp/Makefile.in ($(lisp)/loaddefs.el):
13718         * lisp/cus-dep.el (custom-make-dependencies):
13719         * lisp/finder.el (finder-compile-keywords): Say what we are doing.
13720         * lisp/international/titdic-cnv.el (batch-titdic-convert):
13721         Don't say how to compile.
13723 2015-06-05  Paul Eggert  <eggert@cs.ucla.edu>
13725         Omit U+0332 COMBINING LOW LINE in previous change
13726         It turns out that it does not work on Ubuntu 15.04.
13728         Fix transliteration of Bahá'í months
13729         * lisp/calendar/cal-bahai.el (calendar-bahai-month-name-array):
13730         Improve quality of Latin transliteration of Bahá'í month names.
13732         Fix curved quotes in a few places
13733         * lisp/calc/calc-misc.el (calc-help): Fix quoting.
13734         The strings in question are not doc strings, so this partially
13735         undoes the recent change that assumed they were doc strings.
13736         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
13737         * lisp/info.el (Info-finder-find-node):
13738         Use curved quotes.
13739         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
13740         Also allow curved quotes in doc strings.
13742 2015-06-04  Glenn Morris  <rgm@gnu.org>
13744         * lisp/Makefile.in (AM_V_at): Add missing definition.
13746         * lisp/Makefile.in: Quieten output a bit.
13747         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el):
13748         Don't echo directories, since the commands we invoke print them.
13750         * lisp/Makefile.in: Replace shell fragments in variables with $(shell).
13751         (SUBDIRS_REL, SUBDIRS_ABS, SUBDIRS_ALMOST, SUBDIRS_FINDER)
13752         (SUBDIRS_SUBDIRS): New variables.
13753         (setwins, setwins_almost, setwins_finder, setwins_for_subdirs):
13754         Remove.
13755         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el, $(lisp)/loaddefs.el)
13756         (update-subdirs, compile-main, compile-clean):
13757         Replace "setwins" usage with new "SUBDIRS" variables.
13759         * lisp/vc/compare-w.el (compare-windows-get-window-function):
13760         Fix :version tag.
13762 2015-06-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
13764         * src/ftfont.c (ftfont_open2): Round divisions by upEM.
13766         Undo removal of x_clear_area call on expose for GTK3 or cairo
13767         * src/xterm.c (handle_one_xevent) [HAVE_GTK3 || USE_CAIRO]:
13768         Clear exposed area.  (Bug#20677)
13770 2015-06-04  Glenn Morris  <rgm@gnu.org>
13772         * doc/lispref/hash.texi (Creating Hash): Remove obsolete makehash.
13774         * lisp/Makefile.in (check-defun-dups): Also skip ldefs-boot.
13776         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
13777         Rename from quail-lao-update-translation, since lao.el defines that.
13779 2015-06-04  Dmitry Gutov  <dgutov@yandex.ru>
13781         Handle new-style advice in find-funct
13782         * lisp/emacs-lisp/find-func.el (find-function-advised-original):
13783         Handle new-style advice.  Return the symbol's function definition.
13784         (Bug#20718)
13785         (find-function-library): Update accordingly.
13787 2015-06-04  Nicolas Petton  <nicolas@petton.fr>
13789         Merge branch 'map'
13791         * lisp/emacs-lisp/map.el: Better docstring for the map pcase macro.
13793         Add new function string-greaterp
13794         * lisp/subr.el (string-greaterp): New function.  Also aliased to
13795         `string>'.
13796         * test/automated/subr-tests.el (string-comparison-test): Add unit
13797         tests for `string>'and `string<'.
13798         * src/fns.c (string-lessp): Better docstring.
13800 2015-06-04  Eli Zaretskii  <eliz@gnu.org>
13802         Fix timezone-related functions on MS-Windows
13803         * src/editfns.c (set_time_zone_rule) [WINDOWSNT]: Always call
13804         'xputenv', even if no reallocation of tzvalbuf was necessary.
13805         This fixes a bug in timezone-related functions on MS-Windows.
13806         Reported by Fabrice Popineau <fabrice.popineau@gmail.com>.
13808 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
13810         Don't pass raw directory name to 'error'
13811         * lisp/files.el (basic-save-buffer-2): Avoid format error if
13812         a directory name contains a string like "%s".
13814 2015-06-03  Dmitry Gutov  <dgutov@yandex.ru>
13816         Override 'grep --color=always'
13817         * lisp/progmodes/xref.el (xref-collect-matches):
13818         Override --color=always in grep-find-template.
13820 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
13822         Fix error introduced recently in file-notify-tests.el
13823         * test/automated/file-notify-tests.el
13824         (file-notify--test-remote-enabled): Do not use `file-notify--test-desc'.
13825         (file-notify--deftest-remote): Revert previous patch, not
13826         necessary anymore.
13828 2015-06-03  Wolfgang Jenkner  <wjenkner@inode.at>
13830         * src/indent.c (Fvertical_motion): Amend motion by 0 lines.
13831         Starting from a display string after a newline, point went to the
13832         previous line.  Also, fix an inadvertent use of a buffer position
13833         with FETCH_BYTE.  (Bug#20701)
13835 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
13837         Instrument file-notify-test.el in order to catch hydra error
13838         * test/automated/file-notify-tests.el (file-notify--deftest-remote):
13839         Wrap body by `ignore-case', in order to trap non-local errors.
13841 2015-06-03  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
13843         Undo previous changes in non-toolkit scroll bar drawing
13844         * src/xterm.c (x_scroll_bar_set_handle, x_scroll_bar_expose)
13845         [!USE_TOOLKIT_SCROLL_BARS]: Draw into scroll bar window.  (Bug#20668)
13847 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
13849         * .gitignore: Also ignore doc/*/*/*.html and .ps.
13851         Support quotes 'like this' in info files
13852         This is possible when 'makeinfo --disable-encoding' is used
13853         in Texinfo 5.
13854         * lisp/calc/calc-help.el (calc-describe-thing):
13855         * lisp/gnus/gnus-art.el (gnus-button-alist):
13856         * lisp/info.el (Info-find-index-name):
13857         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
13858         Also support quotes 'like this'.
13859         * lisp/calc/calc-help.el (calc-describe-thing): Simplify.
13860         * lisp/finder.el (finder-font-lock-keywords): Remove var that
13861         hasn't been used in years, instead of bothering to fix its quoting.
13863 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
13865         * .gitignore: Remove !test/etags/html-src/*.html.
13866         It's no longer needed, since *.html was removed.  Sort.
13868 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
13870         Restore <D> instead of '.' in grep-find-template
13871         * lisp/cedet/semantic/symref/grep.el
13872         (semantic-symref-grep-use-template): Update a comment.
13873         * lisp/progmodes/grep.el (grep-compute-defaults): Restore <D>
13874         instead of '.' in grep-find-template (bug#20719).
13875         (rgrep): Pass nil as the directory to rgrep-default-command.
13876         * lisp/progmodes/grep.el (grep-expand-keywords): Use '.' as the
13877         default value for DIR.
13878         * lisp/progmodes/xref.el (xref-collect-matches): Drop the
13879         workaround.
13881 2015-06-02  Glenn Morris  <rgm@gnu.org>
13883         * configure.ac (emacs_config_features): Add X toolkit and scroll-bars.
13885         * configure.ac (emacs_config_features): Add Cairo.
13887         * configure.ac [HAVE_GTK3]: Remove USE_CAIRO that gets reset later.
13889 2015-06-02  Michael Albinus  <michael.albinus@gmx.de>
13891         Ensure that autorevert works for remote files in file-notify-tests.el
13892         * test/automated/file-notify-tests.el (file-notify--test-desc):
13893         New defvar.
13894         (file-notify--test-remote-enabled)
13895         (file-notify-test00-availability, file-notify-test01-add-watch)
13896         (file-notify-test02-events): Use it.
13897         (file-notify--test-event-test): Check proper descriptor.
13898         (file-notify-test03-autorevert): Ensure that
13899         `visited-file-modtime' has changed.  (Bug#20392)
13901 2015-06-02  Nicolas Petton  <nicolas@petton.fr>
13903         Add a pcase pattern for maps and `map-let' based on it
13904         * lisp/emacs-lisp/map.el (map-let): New macro.
13905         (map--make-pcase-bindings, map--make-pcase-patterns): New functions.
13906         * test/automated/map-tests.el: New test for `map-let'.
13908 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
13910         Reuse rgrep mechanics in xref-find-regexp
13911         * lisp/progmodes/grep.el (rgrep-default-command):
13912         Extract from `rgrep'.
13913         * lisp/progmodes/xref.el (xref-collect-references): Split from
13914         `xref-collect-matches'.  Only handle the case of symbol search.
13915         (xref-collect-matches): Instead of Semantic Symref, use
13916         `rgrep-default-command', to take advantage of its directory and
13917         file ignore settings.
13918         (xref--collect-match): Remove the last argument, leaving the
13919         regexp construction up to the caller.
13920         * lisp/progmodes/elisp-mode.el (elisp--xref-find-matches):
13921         Change to take the xref-collect- function to use as an argument.
13922         (elisp-xref-find): Update accordingly.
13923         * lisp/progmodes/etags.el (etags--xref-find-matches)
13924         (etags-xref-find): Same.
13926         Move xref-elisp-location to elisp-mode.el
13927         * lisp/progmodes/xref.el (xref-elisp-location)
13928         (xref-make-elisp-location, xref-location-marker): Remove here.
13929         (xref--xref): Don't limit the type of the location slot.
13930         * lisp/progmodes/elisp-mode.el (xref-elisp-location):
13931         Define as a cl-struct here.
13932         (xref-location-marker): Move here.
13934 2015-06-02  Eli Zaretskii  <eliz@gnu.org>
13936         Minor tweaks for .gitignore
13937         * .gitignore: Don't ignore versioned *.html and *.ps files.
13938         Don't ignore admin/notes/tags that might be ignored as TAGS
13939         on case-insensitive filesystems.  (Bug#20710)
13941 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
13943         Generate curved quotes in ert doc
13944         * lisp/emacs-lisp/ert.el (ert--print-test-for-ewoc)
13945         (ert-results-mode-menu)
13946         (ert-results-pop-to-backtrace-for-test-at-point)
13947         (ert-results-pop-to-messages-for-test-at-point)
13948         (ert-results-pop-to-should-forms-for-test-at-point)
13949         (ert-describe-test):
13950         Quote ‘like this’, not `like this', when generating doc strings
13951         and the like.
13952         * test/automated/ert-x-tests.el (ert-test-describe-test):
13953         Allow quoting ‘like this’.
13955 2015-06-02  Nicolas Richard  <youngfrog@members.fsf.org>
13957         Add test for previous commit
13958         * test/automated/replace-tests.el: New file.
13959         (query-replace--split-string-tests): Add test for previous commit.
13961         Avoid confusion in query-replace history when replacing NUL chars
13962         * lisp/replace.el (query-replace--split-string): New function.
13963         (query-replace-read-from): Rely on the 'separator' property
13964         instead of searching for the NUL character (Bug#20690).
13966 2015-06-02  Glenn Morris  <rgm@gnu.org>
13968         Merge from origin/emacs-24
13969         8b5f2f4 * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
13971         * admin/gitmerge.el (gitmerge-commit-message):
13972         Exclude "skipped" messages from ChangeLog.
13974 2015-06-01  Michael Albinus  <michael.albinus@gmx.de>
13976         Sync with Tramp repository
13977         * lisp/net/tramp.el (tramp-message): Dump connection buffer error
13978         messages.
13979         (tramp-handle-make-auto-save-file-name): When calling
13980         `make-auto-save-file-name' internally, make sure it uses Unix-like
13981         behavior, not Windows-like behavior.
13982         * lisp/net/tramp-sh.el (tramp-set-file-uid-gid): Add a timeout for
13983         the local case, because "chown" might fail on w32.
13984         * lisp/net/trampver.el (tramp-repository-get-version): Don't run
13985         for XEmacs.
13987 2015-06-01  Eli Zaretskii  <eliz@gnu.org>
13989         MS-Windows followup for batch stdout/stderr output changes
13990         * lisp/international/mule-cmds.el (set-locale-environment):
13991         In batch mode, use console codepages for keyboard and terminal
13992         encoding.  (Bug#20545)
13994         Update .gitattributes for DOS EOL files
13995         * .gitattributes: Use "whitespace=cr-at-eol" for files with DOS
13996         CRLF end-of-line format.
13998         NS equivalents of xterm.c and w32term.c changes
13999         * src/nsterm.m (ns_maybe_dumpglyphs_background): Force redraw of
14000         glyph string background also when the font in use claims
14001         preposterously large global height value.  Helps to remove
14002         artifacts left from previous displays when glyphless characters
14003         are displayed as hex code in a box.
14004         (x_new_font): Call get_font_ascent_descent to obtain a reasonable
14005         value for FRAME_LINE_HEIGHT, even when a font claims very large
14006         value for its height.
14008 2015-06-01  Paul Eggert  <eggert@cs.ucla.edu>
14010         Avoid grave accent quoting in stderr diagnostics
14011         A few Emacs diagnostics go directly to stderr, and so can't easily
14012         contain curved quotes (as non-UTF-8 locales might mishandle them).
14013         Instead of bothering to add support for this rarity, reword the
14014         diagnostics so that they don't use grave accent to quote.
14015         * src/alloc.c (mark_memory): Fix comment.
14016         * src/buffer.c (init_buffer):
14017         * src/dispnew.c (init_display):
14018         * src/emacs.c (main, sort_args):
14019         * src/lread.c (dir_warning):
14020         * src/term.c (init_tty):
14021         * src/unexmacosx.c (unexec):
14022         * src/xfns.c (select_visual):
14023         * src/xterm.c (cvt_string_to_pixel, x_io_error_quitter):
14024         Reword stderr diagnostics to avoid quoting `like this'.
14025         * src/unexmacosx.c: Include errno.h.
14026         * src/xfns.c (select_visual): Encode value for locale.
14028 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
14030         Treat batch stdout/stderr like standard display
14031         Calls like (print FOO) could generate improperly encoded or
14032         hard-to-read output if FOO contains characters outside the system
14033         locale.  Fix this by treating batch stdout and stderr like
14034         interactive standard display, when it comes to transliterating and
14035         encoding characters (Bug#20545).
14036         * doc/emacs/mule.texi (Communication Coding):
14037         * doc/lispref/display.texi (Active Display Table):
14038         * doc/lispref/nonascii.texi (Locales):
14039         * etc/NEWS:
14040         * src/coding.c (syms_of_coding):
14041         * src/dispnew.c (syms_of_display):
14042         Document this.
14043         * src/print.c: Include disptab.h.
14044         (printchar_to_stream): New function, with much of the guts of the
14045         old Fexternal_debugging_output, except this one also uses the
14046         standard display table.
14047         (printchar, strout, Fexternal_debugging_output): Use it.
14049 2015-05-31  Glenn Morris  <rgm@gnu.org>
14051         * src/emacs.c (syms_of_emacs) <system-configuration-features>: Doc fix.
14053 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
14055         Remove DEFSYMs that aren't used at the C level.  Also:
14056         * src/decompress.c (Qzlib_dll):
14057         * src/font.c (Qunicode_sip):
14058         * src/frame.c (Qtip_frame):
14059         * src/ftfont.c (Qserif):
14060         * src/gnutls.c (Qgnutls_dll):
14061         * src/xml.c (Qlibxml2_dll):
14062         Move from here ...
14063         * src/w32fns.c (syms_of_w32fns): ... to here,
14064         as these are used only on MS-Windows.
14066 2015-05-31  Michael Albinus  <michael.albinus@gmx.de>
14068         Use another default value for tramp-histfile-override
14069         * lisp/net/tramp-sh.el (tramp-histfile-override):
14070         Use ".tramp_history" as default.
14071         Fixes bug#20446
14073 2015-05-29  Nicolas Petton  <nicolas@petton.fr>
14075         * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
14077 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
14079         * etc/NEWS: Add an entry about map.el.
14081         Improve the docstring of functions in map.el
14082         Since a map is not a data structure but a concept, adding information
14083         about the possible types of maps can be useful information.
14084         * lisp/emacs-lisp/map.el: Add documentation about the type of MAP to
14085         each public function.
14087 2015-04-29  Nicolas Petton  <nicolas@petton.fr>
14089         * lisp/emacs-lisp/map.el (map-empty-p): Faster implementation using
14090         specific tests depending on the type of the map.
14092         * lisp/emacs-lisp/map.el: Better docstrings.
14094 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
14096         * lisp/emacs-lisp/map.el (map-pairs): Dump redundant lambda.
14098 2015-04-25  Nicolas Petton  <nicolas@petton.fr>
14100         * lisp/emacs-lisp/map.el (map--elt-list): Better docstring.
14102         * lisp/emacs-lisp/map.el (map--elt-list): Minor refactoring.
14104         Fix a false negative in `map-elt' with alists and values being nil
14105         * lisp/emacs-lisp/map.el (map-elt): If map is an alist and key is
14106         found but its associated value is nil, do not return the default
14107         value.
14108         * test/automated/map-tests.el: Add a regression test.
14110 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
14112         * lisp/emacs-lisp/map.el (map--dispatch): Improve the docstring.
14114         Do not signal an error when trying to delete a key from an array
14115         * lisp/emacs-lisp/map.el (map-delete): When map is an array, check if
14116         the key is present to avoid signaling an error.
14117         * test/automated/map-tests.el: Add a test for deleting non-existing
14118         keys from maps.
14120         * lisp/emacs-lisp/map.el: Better docstring.
14122         Minor improvement in map-elt
14123         * lisp/emacs-lisp/map.el (map-elt): Do not use `ignore-errors' when
14124         doing a lookup in arrays, but check the boundaries of the array
14125         instead.
14126         * test/automated/map-tests.el: Adds a test for `map-elt' with arrays
14127         and a negative integer as key.
14129 2015-04-21  Nicolas Petton  <nicolas@petton.fr>
14131         * test/automated/map-tests.el: Refactoring of test methods.
14133         * test/automated/map-tests.el: Renamed from map-test.el.
14135 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
14137         * lisp/emacs-lisp/map.el (map-into): Better error message.
14139         * lisp/emacs-lisp/map.el: Remove byte-compilation warnings.
14141         Throw an error when converting a map into an unknown map type
14142         * lisp/emacs-lisp/map.el (map-into): Throw an error if type is
14143         not valid.
14144         * test/automated/map-test.el: Add a regression test.
14146         New library map.el similar to seq.el but for mapping data structures.
14147         * test/automated/map-test.el: New file.
14148         * lisp/emacs-lisp/map.el: New file.
14150 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
14152         * lisp/progmodes/etags.el (tag-implicit-name-match-p): Make sure
14153         there's no explicit tag name (bug#20629).
14155 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
14157         Remove format2
14158         * src/editfns.c, src/lisp.h (format2): Remove.
14159         It is more trouble than it's worth, now that we have CALLN.
14160         This is just a minor refactoring.
14161         * src/buffer.c (Fkill_buffer):
14162         * src/dbusbind.c (XD_OBJECT_TO_STRING):
14163         * src/fileio.c (barf_or_query_if_file_exists):
14164         Adjust to format2 going away.
14166         Don't misencode C-generated messages
14167         Also, be more consistent about calls to 'Fmessage' vs 'message'.
14168         * src/alloc.c (Fgc_status):
14169         Prefer AUTO_STRING to build_string for Fmessage call.
14170         * src/data.c (Fmake_variable_buffer_local)
14171         (Fmake_local_variable, Fmake_variable_frame_local):
14172         * src/doc.c (store_function_docstring):
14173         Use Fmessage, not message, since the argument can contain
14174         non-ASCII characters, and this can cause the resulting message
14175         to be incorrectly encoded for the current environment.
14176         * src/fns.c (maybe_resize_hash_table):
14177         * src/xselect.c (x_clipboard_manager_save_all):
14178         Use message, not Fmessage, since Fmessage's power isn't needed here.
14179         * src/process.c (Fmake_network_process): Reword message to avoid %s.
14180         * src/xdisp.c (vmessage): Document restrictions on message contents.
14181         (message_nolog) [false]: Remove unused code.
14183         Use \r rather than ^M in string literals
14184         This is less likely to cause problems on platforms that
14185         use CRLF (or CR!) termination for lines.
14187         Update .gitattributes to match current sources
14188         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00879.html
14189         * .gitattributes: Accommodate tests that insist on DOS format.
14190         Remove test/automated/data/decompress/foo-gzipped.
14191         Add etc/e/eterm-color.
14193 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
14195         * doc/emacs/mule.texi (Modifying Fontsets):
14196         Document face-ignored-fonts.  (Bug#20628)
14198         Add etags test for the new -Q option
14199         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
14200         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
14201         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
14202         test-case changes below.
14203         * test/etags/ETAGS.good_6: New file.
14204         * test/etags/cp-src/x.cc: New file.
14205         * test/etags/Makefile (CPSRC): Add x.cc.
14206         (check): Add one more test, for -Q.
14208 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
14210         Use list for the tags completion table, not obarray
14211         * lisp/progmodes/etags.el (etags-tags-completion-table): Return a
14212         list instead of an obarray
14213         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00876.html).
14214         (tags-completion-table): Combine those lists.
14215         (tags-completion-table): Update the docstring.
14217 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
14219         Restore EOL format testing in etags
14220         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
14221         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
14222         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
14223         test-case changes below.
14224         * test/etags/html-src/algrthms.html: Convert back to DOS EOL format.
14225         * test/etags/cp-src/c.C (B): Add back stray CR character.
14226         * test/etags/c-src/dostorture.c: Add back.
14227         * test/etags/Makefile (CSRC): Add back c-src/dostorture.c.
14229 2015-05-30  Vitaly Takmazov  <vitalyster@gmail.com>  (tiny change)
14231         Declare Emacs on MS-Windows to be DPI-aware
14232         * nt/emacs-x86.manifest (asmv3:windowsSettings): Add dpiAware.
14233         * nt/emacs-x64.manifest (asmv3:windowsSettings): Add dpiAware.
14234         This avoids Windows entering compatibility mode for Emacs,
14235         which causes fonts to look less nice.
14237 2015-05-30  Michael Albinus  <michael.albinus@gmx.de>
14239         Improve Tramp traces
14240         * lisp/net/trampver.el (tramp-repository-get-version): New defun.
14241         * lisp/net/tramp.el (tramp-debug-message): Use it.
14243 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
14245         backup-buffer minor reworking of internals
14246         * lisp/files.el (backup-buffer): Rework to avoid a couple of
14247         unused locals inadvertently introduced in the previous change.
14249         backup-buffer now reports .emacs.d/%backup% ills
14250         * lisp/files.el (backup-buffer): If the write to .emacs.d/%backup%
14251         fails due to disk space exhaustion or whatever, do not pretend
14252         that it succeeded.  More generally, do a better job of checking
14253         for I/O failures, and limit the scope of the condition-case to
14254         just the operations where file errors should be caught and ignored
14255         (Bug#20595).  Also, don't bother trying to delete later backups if
14256         an earlier deletion fails, as this is a sign of trouble and it's
14257         better to stop when there's trouble.
14259         copy-file now truncates output after writing
14260         * src/fileio.c (Fcopy_file): Truncate output after writing rather
14261         than before.  This is more likely to work than truncation before
14262         writing, if the file system is out of space or the user is over
14263         disk quota (Bug#20595).  Also, check for read errors.
14265 2015-05-29  Artur Malabarba  <bruce.connor.am@gmail.com>
14267         * lisp/emacs-lisp/package.el (package-load-all-descriptors):
14268         Don't load descriptors from directories above the package directories.
14270 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
14272         Merge from gnulib
14273         This incorporates the following (Bug#20681):
14274         2015-05-29 acl-permissions: Fix build on Mac OS X and older AIX
14275         2015-05-29 acl-permissions: Fix build on Solaris and Cygwin
14276         * lib/set-permissions.c: Copy from gnulib.
14278 2015-05-29  Michael Albinus  <michael.albinus@gmx.de>
14280         Improve Tramp traces
14281         * lisp/net/tramp.el (tramp-call-process-region): New defun.
14282         * lisp/net/tramp-sh.el (tramp-get-inline-coding): Use it.
14284 2015-05-29  Glenn Morris  <rgm@gnu.org>
14286         * test/automated/vc-tests.el: Try enabling tests on hydra.nixos.org.
14288 2015-05-29  Wolfgang Jenkner  <wjenkner@inode.at>
14290         * src/xfns.c (x_set_menu_bar_lines): Fix calls to x_clear_area.
14291         The signature was changed in the cairo branch, merged on 2015-05-23.
14292         This oversight broke compiling only the non-toolkit X version.
14294 2015-05-29  Samer Masterson  <samer@samertm.com>
14296         * doc/lispref/os.texi: Update initial-buffer-choice docs.
14298 2015-05-29  Glenn Morris  <rgm@gnu.org>
14300         * test/automated/vc-tests.el (vc-test-rcs04-checkout-model):
14301         Mark as an expected failure.
14303 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
14305         Change package test to look for curved quotes
14306         * test/automated/package-test.el (package-test-describe-package)
14307         (package-test-signed): Search for curved single quotes as well as
14308         for grave accent and apostrophe.
14310 2015-05-28  Katsumi Yamaoka  <yamaoka@jpl.org>
14312         * lisp/gnus/gnus-art.el (gnus-button-alist): Re-revert last change.
14313         cf. <http://news.gmane.org/group/gmane.emacs.devel/thread=186896>
14315 2015-05-28  Samer Masterson  <samer@samertm.com>
14317         Show files when `initial-buffer-choice' is non-nil
14318         * lisp/startup.el (command-line-1): When Emacs is given a file as an
14319         argument and `initial-buffer-choice' is non-nil, display both the file
14320         and `initial-buffer-choice'.  For more than one file, show
14321         `initial-buffer-choice' and *Buffer List*.  Refactor display-changing
14322         commands out of the command line arg parser.
14323         (initial-buffer-choice): Clarify docstring.
14325 2015-05-28  Eli Zaretskii  <eliz@gnu.org>
14327         Fix last commit
14328         * nt/gnulib.mk (libgnu_a_SOURCES): Add get-permissions.c back.
14329         (gnulib module qcopy-acl): Add back, as it is harmless.  This
14330         minimizes differences wrt lib/gnulib.mk.
14332         Fix the MS-Windows build as followup to gnulib update
14333         * nt/gnulib.mk (libgnu_a_SOURCES): Remove get-permissions.c and
14334         set-permissions.c, as they don't compile on MinGW.
14335         (gnulib module qcopy-acl): Remove, as it needs set-permissions.c.
14337 2015-05-28  Paul Eggert  <eggert@cs.ucla.edu>
14339         Revert my change to gnus-art.el
14340         * lisp/gnus/gnus-art.el (gnus-button-alist): Revert last change.
14341         It wasn't that important, and it caused a Gnus build to fail.  See:
14342         http://www.randomsample.de:4456/builders/emacs-devel/builds/734
14344         New minor mode Electric Quote
14345         This lets you easily insert quotes ‘like this’ by typing
14346         quotes `like this', and similarly you can easily insert
14347         quotes “like this” by typing quotes ``like this'' (Bug#20545).
14348         * doc/emacs/basic.texi (Inserting Text):
14349         * doc/emacs/modes.texi (Minor Modes):
14350         * etc/NEWS: Document it.
14351         * doc/emacs/text.texi (Quotation Marks): New section.
14352         * lisp/electric.el (electric-quote-comment)
14353         (electric-quote-string, electric-quote-paragraph):
14354         New custom vars.
14355         (electric--insertable-p)
14356         (electric-quote-post-self-insert-function): New functions.
14357         (electric-quote-mode, electric-quote-local-mode): New minor modes.
14358         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
14359         Add curved single quotes to electric-pair-text-pairs.
14360         Set electric-quote-string in this buffer.
14362         A few more doc string fixes (Bug#20385)
14364         Accept curved quotes in doc strings
14365         * lisp/info-look.el (info-lookup-guess-custom-symbol):
14366         (info-lookup-alist): Treat ‘’ like `' when parsing help buffers etc.
14368         Generate curved quotes in pseudo-info nodes
14369         * lisp/info.el (Info-virtual-index-find-node)
14370         (Info-virtual-index, Info-apropos-find-node, info-apropos):
14371         Quote ‘like this’, not `like this', when generating pseudo-info nodes.
14373         Fix minor quoting problems in doc strings
14374         Most of these fixes involve escaping grave accents that are
14375         actually intended to be grave accents, not left quotes.
14376         (Bug#20385)
14378         Support curved quotes in doc strings
14379         Emacs's traditional doc string style has been to quote symbols
14380         `like this'.  This worked well on now-obsolete terminals where
14381         ` and ' were symmetric quotes, but nowadays curved quotes
14382         ‘like this’ look better.  Support quoting the new way too.
14383         (Bug#20385)
14384         * doc/lispref/tips.texi (Documentation Tips): Symbols can be quoted
14385         ‘like-this’ as well as `like-this'.
14386         * etc/NEWS: Mention this.
14387         * lisp/cedet/mode-local.el (overload-docstring-extension)
14388         (mode-local-print-binding, mode-local-describe-bindings-2):
14389         * lisp/cus-theme.el (describe-theme-1):
14390         * lisp/descr-text.el (describe-text-properties-1, describe-char):
14391         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
14392         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
14393         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
14394         (eieio-help-constructor):
14395         * lisp/emacs-lisp/package.el (describe-package-1):
14396         * lisp/faces.el (describe-face):
14397         * lisp/help-fns.el (help-fns--key-bindings)
14398         (help-fns--compiler-macro, help-fns--parent-mode, help-fns--obsolete):
14399         (help-fns--interactive-only, describe-function-1):
14400         (describe-variable):
14401         * lisp/help.el (describe-mode):
14402         * lisp/international/mule-cmds.el (describe-input-method)
14403         (describe-language-environment):
14404         * lisp/international/mule-diag.el (describe-character-set)
14405         (print-coding-system-briefly, list-input-methods)
14406         (list-input-methods-1):
14407         Insert curved quotes rather than grave accent and apostrophe.
14408         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
14409         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
14410         (checkdoc-proper-noun-region-engine):
14411         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2)
14412         (lisp-cl-font-lock-keywords-2):
14413         * lisp/finder.el (finder-font-lock-keywords):
14414         * lisp/gnus/gnus-art.el (gnus-button-alist):
14415         * lisp/help-fns.el (help-do-arg-highlight)
14416         (describe-function-1, describe-variable):
14417         * lisp/help-mode.el (help-xref-symbol-regexp)
14418         (help-xref-info-regexp, help-xref-url-regexp):
14419         * lisp/help.el (describe-mode):
14420         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
14421         * lisp/wid-edit.el (widget-documentation-link-regexp):
14422         Parse symbols quoted ‘like-this’ as well as `like-this'.
14423         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
14424         Add "‘" and "’" to electric-pair-text-pairs.
14425         (elisp--form-quoted-p): Also allow "‘" as a quoting char.
14426         (elisp-completion-at-point, elisp--preceding-sexp):
14427         Also treat "‘" and "’" as quoting chars.
14429         substitute-command-keys now curves quotes
14430         So, for example, it turns "`abc'" into "‘abc’" (Bug#20385).
14431         * doc/lispref/help.texi (Keys in Documentation):
14432         * etc/NEWS: Document this.
14433         * src/doc.c (Fsubstitute_command_keys): Implement it.
14435 2015-05-28  Glenn Morris  <rgm@gnu.org>
14437         * lisp/mail/rmailsum.el (rmail-summary-by-recipients)
14438         (rmail-summary-by-topic, rmail-summary-by-senders):
14439         No longer strip leading/trailing whitespace.
14441         * lisp/progmodes/f90.el (f90-type-def-re): Add "type, extends".
14442         (f90-no-block-limit): Add "enum".  (Bug#20680)
14443         * test/automated/f90.el (f90-test-bug20680, f90-test-bug20680b):
14444         New tests.
14446 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
14448         * lisp/isearch.el (isearch--current-buffer): Give a default value.
14449         Un-revert changes mistakenly dropped by f9fabb2b.
14451 2015-05-27  Paul Eggert  <eggert@cs.ucla.edu>
14453         Merge from gnulib
14454         This incorporates:
14455         2015-05-27 qacl: Reimplement qset_acl and qcopy_acl (Bug#20666)
14456         2015-05-27 file-has-acl: Split feature tests again (Bug#20667)
14457         2015-05-27 string: fix build failure on BSD/OSX with FORTIFY_SOURCE
14458         2015-05-26 stdio: limit __gnu_printf__ witness to gcc 4.4+
14459         2015-05-26 inttypes: force correct mingw PRIdMAX even without <stdio.h>
14460         2015-05-26 stdio: fix probe on mingw under gcc 5.1
14461         * admin/merge-gnulib (GNULIB_MODULES):
14462         Replace qacl with qcopy-acl, since we don't need the rest of qacl.
14463         * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
14464         * lib/inttypes.in.h, lib/qcopy-acl.c, lib/qset-acl.c:
14465         * lib/string.in.h, m4/acl.m4, m4/stdio_h.m4:
14466         Get latest versions from gnulib.
14467         * lib/get-permissions.c, lib/set-permissions.c: New files.
14468         * lib/gnulib.mk, m4/gnulib-comp.m4:
14469         Regenerate.
14470         * nt/gnulib.mk: Merge lib/gnulib.mk changes by hand.
14472 2015-05-27  Dmitry Gutov  <dgutov@yandex.ru>
14474         * lisp/vc/vc-dispatcher.el (vc-setup-buffer): Delete the old
14475         process here.
14476         (vc-do-command): Rather than here (bug#20608).
14478 2015-05-27  Ivan Shmakov  <ivan@siamics.net>
14480         Avoid gratuitous delete-dups in face-at-point
14481         * lisp/faces.el (face-at-point): Do not compute the properly
14482         ordered, duplicate-free list if only a single value is
14483         requested anyway.  (Bug#20519)
14485         Show the exact C-x 8 RET invocation in describe-char
14486         * lisp/descr-text.el (describe-char): Show the exact C-x 8 RET
14487         invocation instead of a template.  (Bug#20522)
14489 2015-05-27  Artur Malabarba  <bruce.connor.am@gmail.com>
14491         * lisp/emacs-lisp/package.el: Don't erase tags on refresh.
14492         (package-menu--post-refresh): Call `tabulated-list-print' with the
14493         UPDATE argument.  This only affects the refresh action, the revert
14494         action still erases tags.
14495         (package-menu-get-status): Change `assq' to `assoc'.
14496         (package-menu--mark-upgrades-1): New function.
14497         (package-menu--mark-upgrades-pending): New variable.
14498         (package-menu-mark-upgrades): Use them to delay marking until
14499         after refresh is done.
14500         (package-menu--post-refresh): Call mark-upgrades-1 if
14501         mark-upgrades-pending is non-nil.
14503 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
14505         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
14506         Fix typo in "Improve tramp-handle-make-auto-save-file-name"
14507         (commit 3953c4be2816537be95520605d45b866dc731f4b).
14509 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
14511         * lisp/isearch.el (isearch--current-buffer): New var.
14512         (isearch-update): Set cursor-sensor-inhibit here.
14513         (isearch-done): Unset cursor-sensor-inhibit in the right buffer
14514         (bug#20532).
14516         Change inhibit-point-motion-hooks to t
14517         * src/textprop.c (syms_of_textprop): Default Vinhibit_point_motion_hooks
14518         to t and document it as obsolete.
14520 2015-05-27  Eli Zaretskii  <eliz@gnu.org>
14522         Support ZIP files that use Zip64 extensions
14523         * lisp/arc-mode.el (archive-zip-summarize): Handle the new ZIP
14524         format of central directory offsets used by Zip64 extensions.
14525         (Bug#20665)
14527 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
14529         New test tramp-test30-make-auto-save-file-name
14530         * test/automated/tramp-tests.el
14531         (tramp-test30-make-auto-save-file-name): New test.
14532         (tramp-test31-special-characters)
14533         (tramp-test31-special-characters-with-stat)
14534         (tramp-test31-special-characters-with-perl)
14535         (tramp-test31-special-characters-with-ls, tramp-test32-utf8)
14536         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
14537         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
14538         (tramp-test34-recursive-load, tramp-test35-unload): Rename.
14540         Improve tramp-handle-make-auto-save-file-name
14541         * lisp/net/tramp.el (tramp-auto-save-directory): Add :tags.
14542         (tramp-handle-make-auto-save-file-name): Let native
14543         `make-auto-save-file-name' use `auto-save-file-name-transforms',
14544         if `tramp-auto-save-directory' is not set.
14546 2015-05-27  Glenn Morris  <rgm@gnu.org>
14548         No longer set dired-directory in eshell.  (Bug#16477)
14549         * lisp/eshell/esh-mode.el (eshell-mode):
14550         * lisp/eshell/em-dirs.el (eshell/cd): No longer set dired-directory.
14552         * lisp/mail/sendmail.el (mail-position-on-field): Doc fix.
14554         Make c-submit-bug-report file reports at debbugs.gnu.org.  (Bug#15784)
14555         * lisp/progmodes/cc-mode.el (c-mode-help-address):
14556         Change to submit@debbugs.
14557         (c-mode-bug-package): New constant.
14558         (mail-position-on-field): Declare.
14559         (c-submit-bug-report): Insert X-Debbugs-Package header.
14560         * doc/misc/cc-mode.texi (Mailing Lists and Bug Reports):
14561         Mention debbugs.gnu.org.
14563 2015-05-26  Glenn Morris  <rgm@gnu.org>
14565         * lisp/mail/rmailsum.el: Commas no longer separate regexps.  (Bug#19026)
14566         (rmail-summary-by-recipients, rmail-summary-by-topic)
14567         (rmail-summary-by-senders): No longer use mail-comma-list-regexp.
14568         * doc/emacs/rmail.texi (Rmail Make Summary): Update for this change.
14570 2015-05-26  Paul Eggert  <eggert@cs.ucla.edu>
14572         Handle curved quotes in info files
14573         * lisp/calc/calc-help.el (calc-describe-thing):
14574         * lisp/info.el (Info-find-index-name)
14575         (Info-try-follow-nearest-node, Info-fontify-node):
14576         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
14577         In info files, process quotes ‘like this’ the same way we process
14578         quotes `like this'.  This catches a few places we missed earlier.
14580 2015-05-26  Dmitry Gutov  <dgutov@yandex.ru>
14582         xref-prompt-for-identifier: Use a list value
14583         * lisp/progmodes/xref.el (xref-prompt-for-identifier): Allow list
14584         value, to be interpreted as a list of commands.
14585         (xref--prompt-p): New function.
14586         (xref--read-identifier): Use it.
14588 2015-05-26  Eli Zaretskii  <eliz@gnu.org>
14590         Teach MS-Windows font back-end return per-glyph ascent/descent
14591         * src/w32font.h (struct w32_metric_cache): Add ascent and descent
14592         values.
14593         * src/w32font.c (w32font_text_extents): Compute, cache, and
14594         accumulate per-glyph ascent and descent values, instead of copying
14595         global values from the font.  If the values are not available from
14596         the font data, i.e., non-TTF fonts, fall back on font-global values.
14597         (compute_metrics): Compute and return per-glyph ascent and descent
14598         values, if returned by GetGlyphOutlineW, falling back on
14599         font-global values.  (Bug#20628)
14600         * src/w32term.c (w32_draw_rectangle): Add 1 pixel to width and
14601         height of rectangle to be drawn, to be compatible with
14602         XDrawRectangle.  Fixes glyphless-char display as hex codes in a
14603         box, when per-glyph ascent/descent values are used.
14605 2015-05-26  Artur Malabarba  <bruce.connor.am@gmail.com>
14607         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
14608         Don't sort if sorter is nil.
14610 2015-05-26  Michael Albinus  <michael.albinus@gmx.de>
14612         Fix Bug#20621
14613         * lisp/net/tramp-sh.el (tramp-set-auto-save): Remove it.  There
14614         are major modes which set `auto-save-mode' on their own rules;
14615         Tramp shall not overwrite such settings.
14617 2015-05-26  Glenn Morris  <rgm@gnu.org>
14619         * lisp/desktop.el: If modes aren't autoloaded, try simple guesswork.
14620         (desktop-load-file): Guess that "foobar" defines "foobar-mode".
14621         (desktop-buffer-mode-handlers, desktop-minor-mode-handlers):
14622         Doc updates.
14623         (vc-dir-mode): Remove unnecessary autoload.
14625 2015-05-25  Philipp Stephani  <phst@google.com>
14627         * lisp/term/xterm.el: Add gui-get-selection support via OSC-52.
14628         (xterm--extra-capabilities-type): Add `getSelection'.
14629         (xterm--query): Add `no-async' argument.
14630         (xterm--init-activate-get-selection): New function.
14631         (terminal-init-xterm): Use it.
14632         (xterm--init-modify-other-keys): Rename from
14633         terminal-init-xterm-modify-other-keys.
14634         (xterm--init-bracketed-paste-mode): Rename from
14635         terminal-init-xterm-bracketed-paste-mode.
14636         (xterm--init-activate-set-selection): Rename from
14637         terminal-init-xterm-activate-set-selection.
14638         (xterm--selection-char): New function.
14639         (gui-backend-set-selection): Use it.  Use the &context to only apply
14640         this method in terminals where we enabled the feature.
14641         (gui-backend-get-selection): New method.
14643 2015-05-25  Daniel Colascione  <dancol@dancol.org>
14645         * lisp/progmodes/cc-langs.el (c-constant-kwds): Add C-language
14646         keyword constants to C++.
14648 2015-05-25  Paul Eggert  <eggert@cs.ucla.edu>
14650         Make TAGS files more portable to MS-Windows
14651         * etc/NEWS: Document this.
14652         * lib-src/etags.c (readline_internal) [DOS_NT]:
14653         Don't treat CRs differently from GNUish hosts.
14654         * lisp/progmodes/etags.el (etags-goto-tag-location):
14655         Adjust STARTPOS to account for the skipped CRs in dos-style files.
14657 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
14659         Improve fix of bug#20634 in tramp-sh.el
14661 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
14663         Fix a typo in last commit
14664         * lib-src/etags.c (C_entries): Fix a typo.
14665         * test/etags/ETAGS.good_1:
14666         * test/etags/ETAGS.good_2:
14667         * test/etags/ETAGS.good_3:
14668         * test/etags/ETAGS.good_4:
14669         * test/etags/ETAGS.good_5:
14670         * test/etags/CTAGS.good: Update due to the change in etags.c.
14672         Fix tagging of class members in C-like OO languages
14673         * lib-src/etags.c (longopts): Add new option --class-qualify and
14674         its shorthand -Q.
14675         (print_help): Add help text for --class-qualify.
14676         (main): Add handling of -Q.
14677         (consider_token, C_entries) <omethodparm>: Append argument types
14678         to Objective C methods only if --class-qualify was specified.
14679         Qualify C++, Objective C, and Java class members with their class
14680         names only if --class-qualify was specified.
14681         (C_entries): If --class-qualify was not specified, remove the
14682         namespace and class qualifiers from tag names of C++ methods.
14683         This allows to use etags.el as xref back-end without the
14684         tag-symbol-match-p method, which greatly increases the number of
14685         potentially false positives.  (Bug#20629)
14686         * doc/man/etags.1: Update to document the new --class-qualify
14687         option.
14688         * test/etags/ETAGS.good_1:
14689         * test/etags/ETAGS.good_2:
14690         * test/etags/ETAGS.good_3:
14691         * test/etags/ETAGS.good_4:
14692         * test/etags/ETAGS.good_5:
14693         * test/etags/CTAGS.good: Update due to changes in etags.c.
14695 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
14697         (cl-generic-define-method): Side effects are evil (bug#20644)
14698         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method): Don't reuse
14699         cons-cells that might be used as keys in an `equal' hash-table.
14701 2015-05-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
14703         Make erc timestamps visible again
14704         * lisp/erc/erc-stamp.el (erc-munge-invisibility-spec):
14705         Make timestamps visible again (if requested).
14707 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
14709         Fix last change in etags.c that broke tagging compresed files
14710         * lib-src/etags.c (process_file_name) [MSDOS || DOS_NT]: Fix
14711         quoting of decompression shell command for MS-Windows/MS-DOS.
14713 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
14715         * lisp/emacs-lisp/cl-macs.el (cl-tagbody): Scope cl--tagbody-alist.
14716         (Bug#20639)
14718 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
14720         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer):
14721         Fix typo in "Inhibit `epa-file-handler' in Tramp"
14722         (commit 89035e247591c8d688fce922b7079881aa110f33).
14724 2015-05-25  Orivej Desh  <orivej@gmx.fr>  (tiny change)
14726         Fix IPv6 addresses in Tramp
14727         * lisp/net/tramp-sh.el (tramp-make-copy-program-file-name):
14728         Add square brackets around host name.
14730 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
14732         Inhibit `epa-file-handler' in Tramp (Bug#20634)
14733         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer)
14734         (tramp-sh-handle-insert-file-contents-literally): Inhibit also
14735         `epa-file-handler'.
14737 2015-05-24  Stefan Monnier  <monnier@iro.umontreal.ca>
14739         * lisp/emacs-lisp/pcase.el: Use PAT rather than UPAT in docstring.
14740         (pcase-let): Document the behavior in case the pattern doesn't match.
14742 2015-05-24  Artur Malabarba  <bruce.connor.am@gmail.com>
14744         * lisp/emacs-lisp/tabulated-list.el: New optional print method.
14745         (tabulated-list-print): New optional argument, UPDATE.  If
14746         non-nil, the list is printed by only adding and deleting the
14747         changed entries, instead of erasing the whole buffer.  This method
14748         is much faster when few or no entries have changed.
14749         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
14750         * etc/NEWS: Document it.
14752         * lisp/emacs-lisp/tabulated-list.el: Improve printing.
14753         (tabulated-list--get-sorter): New function.
14754         (tabulated-list-print): Restore window-line when remember-pos is
14755         passed and optimize away the `nreverse'.
14757 2015-05-24  Paul Eggert  <eggert@cs.ucla.edu>
14759         Simpilify etags TEX mode scanning
14760         * lib-src/etags.c (TEX_mode, TEX_esc, TEX_opgrp, TEX_clgrp):
14761         Remove static vars.
14762         (TeX_commands): Deduce escapes here instead.
14763         (TEX_LESC, TEX_SESC, TEX_mode): Remove; all uses removed.
14764         This removes the need for a reset_input call.
14766         Improve etags I/O error reporting
14767         * lib-src/etags.c:
14768         Don't include sys/types.h and sys/stat.h; no longer needed.
14769         (infilename): New static var.
14770         (process_file_name): Don't call 'stat'.  Instead, just open the
14771         file for reading and report any errors.  Don't bother making
14772         a copy of the file argument; it's not needed.  Be more careful to
14773         use the failing errno when reporting an error.
14774         Quote the real name better (though no perfectly)
14775         when passing it to the shell.
14776         (reset_input): New function, which reports I/O errors.
14777         All uses of 'rewind' changed to use this function.
14778         (perhaps_more_input): New function, which also checks for
14779         I/O errors.  All uses of 'feof' changed to use this function.
14780         (analyze_regex): Report an error if fclose fails.
14781         (readline_internal): Report an error if getc fails.
14782         (etags_mktmp): Return an error if close fails.
14784         etags.c: avoid side effects in 'if'
14785         * lib-src/etags.c (process_file_name, Perl_functions)
14786         (TEX_decode_env): Hoist side effects into previous statement.
14788         .gitignore tweaks
14789         * .gitignore: Ignore all *.stamp files.  Sort.
14790         Ignore [0-9]*.txt (commonly used name for git patches)
14791         and /vc-dwim-log-* (vc-dwim temporary).
14793 2015-05-24  Eli Zaretskii  <eliz@gnu.org>
14795         Fix last change in etags.c, which failed the test suite
14796         * lib-src/etags.c (intoken): Add '$' to the set, as it was there
14797         before the last change.
14799 2015-05-23  Glenn Morris  <rgm@gnu.org>
14801         Remove charset map files from repository, generate in first bootstrap
14802         * admin/charsets/Makefile.in (${srcdir}/charsets.stamp): New.
14803         (all): Create the stamp file.
14804         (extraclean): Delete the stamp file.
14805         * src/Makefile.in (lispintdir, charsets): New variables.
14806         (${lispintdir}/cp51932.el, ${lispintdir}/eucjp-ms.el, ${charsets}):
14807         New rules.
14808         (emacs$(EXEEXT), temacs$(EXEEXT)): Depend on $charsets.
14809         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
14810         * etc/charsets/*.map: Remove from repository.
14812 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
14814         Cleanup etags.c to use locale-independent code
14815         Although this doesn't alter behavior (as etags doesn't use
14816         setlocale), the new version is more clearly locale-independent and
14817         the executable is a bit smaller on my platform.
14818         * lib-src/etags.c: Include <limits.h>, for UCHAR_MAX.
14819         Include <c-ctype.h> instead of <ctype.h>.
14820         (CHARS, CHAR, init, _wht, _nin, _itk, _btk, _etk, white, nonam, endtk)
14821         (begtk, midtk):
14822         Remove; no longer needed.
14823         (iswhite, ISALNUM, ISALPHA, ISDIGIT, ISLOWER, lowcase): Remove.
14824         All callers changed to use c_isspace, c_isalnum, c_isalpha, c_isdigit,
14825         c_islower, c_tolower, respectively.
14826         (notinname, begtoken, intoken, endtoken): Rewrite as functions
14827         instead of macros, and initialize the tables at compile-time
14828         rather than at run-time.
14830         Put default action first in src/Makefile
14831         * src/Makefile.in (all): Put this rule before lisp.mk.
14832         That way, plain 'make' works in the src directory again.
14834 2015-05-23  Glenn Morris  <rgm@gnu.org>
14836         * Makefile.in: Fix extraclean rule.
14837         (extraclean_dirs): New.
14838         (extraclean): Use it.
14840 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
14842         Avoid compiler warning in image.c on MS-Windows
14843         * src/w32term.h (x_query_color): Add prototype, to avoid compiler
14844         warning in image.c.
14846 2015-05-23  Glenn Morris  <rgm@gnu.org>
14848         Fix --without-toolkit-scroll-bars builds.
14849         * src/xterm.c (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]:
14850         Add new argument to x_clear_area1.
14851         (XTset_horizontal_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
14852         Update x_clear_area arguments.
14854         * admin/charsets/glibc/: New directory, imported from glibc 2.21.
14855         * admin/charsets/Makefile.in (GLIBC_CHARMAPS):
14856         Change to included version.
14857         (LOCAL, local, totalclean): Remove.
14858         (extraclean): Delete all generated files.
14860 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
14862         * lisp/pcmpl-cvs.el (pcmpl-cvs-entries): Don't assume
14863         CVS/Entries exists.
14865         * lisp/progmodes/xref.el (xref-find-apropos): Use read-string.
14867         * lisp/progmodes/etags.el (tags-completion-at-point-function):
14868         Don't trust the find-tag function.
14870 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
14872         Pacify --enable-gcc-warnings
14873         * src/frame.h (x_query_color): Remove redundant extern decl.
14874         * src/ftcrfont.c (ftcrfont_glyph_extents, ftcrfont_list)
14875         (ftcrfont_match, ftcrfont_open, ftcrfont_close)
14876         (ftcrfont_text_extents, ftcrfont_draw):
14877         * src/xterm.c (x_set_window_size_1, *x_color_cells, x_update_end)
14878         (XTframe_up_to_date, x_clear_area1, x_clear_frame)
14879         (x_ins_del_lines, frame_highlight, frame_unhighlight)
14880         (x_new_focus_frame, x_focus_changed, XTframe_rehighlight)
14881         (x_draw_hollow_cursor, x_draw_bar_cursor, x_flush, x_update_begin)
14882         (x_update_window_begin, x_connection_closed)
14883         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
14884         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
14885         (*x_gc_get_ext_data, x_extension_initialize)
14886         (x_cr_accumulate_data):
14887         Remove redundant static decl.  Many of these GCC doesn't complain
14888         about, but we might as well clean out the duplication while we're
14889         in the neighborhood.
14890         * src/xterm.c (x_fill_trapezoid_for_relief):
14891         Remove decl of nonexistent function.
14893 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
14895         Replace gui-method macros with cl-generic with &context
14896         * lisp/frame.el (gui-method--name, gui-method, gui-method-define)
14897         (gui-method-declare, gui-call): Remove.
14898         (frame-creation-function): Use cl-defgeneric.
14899         (make-frame): Adjust callers.
14900         * lisp/menu-bar.el (menu-bar-edit-menu):
14901         Use gui-backend-selection-exists-p.
14902         * lisp/select.el (x-get-clipboard): Use gui-backend-get-selection.
14903         (gui-backend-get-selection): New cl-generic to replace
14904         gui-get-selection method.
14905         (gui-backend-set-selection): New cl-generic to replace
14906         gui-set-selection method.
14907         (gui-selection-owner-p): New cl-generic to replace
14908         gui-selection-owner-p method.
14909         (gui-backend-selection-exists-p): New cl-generic to replace
14910         gui-selection-exists-p method.  Adjust all callers.
14911         * lisp/server.el (server-create-window-system-frame): Don't ignore
14912         window-system spec even when unsupported.
14913         * lisp/simple.el (deactivate-mark): Use new gui-backend-* functions.
14914         * lisp/startup.el (handle-args-function, window-system-initialization):
14915         Use cl-defgeneric.
14916         (command-line): Adjust calls accordingly.
14917         * lisp/term/ns-win.el (ns-window-system-initialization): Turn into
14918         a window-system-initialization method.
14919         (handle-args-function, frame-creation-function): Use cl-defmethod.
14920         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
14921         (gui-get-selection): Use cl-defmethod on the new functions instead.
14922         * lisp/term/pc-win.el (w16-get-selection-value): Turn into
14923         a gui-backend-get-selection method.
14924         (gui-selection-exists-p, gui-selection-owner-p, gui-set-selection):
14925         Use cl-defmethod on the new functions instead.
14926         (msdos-window-system-initialization): Turn into
14927         a window-system-initialization method.
14928         (frame-creation-function, handle-args-function): Use cl-defmethod.
14929         * lisp/term/w32-win.el (w32-window-system-initialization): Turn into
14930         a window-system-initialization method.
14931         (handle-args-function, frame-creation-function): Use cl-defmethod.
14932         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
14933         (gui-get-selection): Use cl-defmethod on the new functions instead.
14934         * lisp/term/x-win.el (x-window-system-initialization): Turn into
14935         a window-system-initialization method.
14936         (handle-args-function, frame-creation-function): Use cl-defmethod.
14937         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
14938         (gui-get-selection): Use cl-defmethod on the new functions instead.
14939         * lisp/term/xterm.el (xterm--set-selection): Turn into
14940         a gui-backend-set-selection method.
14941         * src/nsselect.m (Fns_selection_exists_p): Remove unused arg `terminal'.
14942         (Fns_selection_owner_p): Remove unused arg `terminal'.
14943         (Fns_get_selection): Remove unused args `time_stamp' and `terminal'.
14945 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
14947         Revert "Fix etags Bug#20629 that broke C++ support"
14948         This reverts commit 13dd9d4f7e75d2c78aa5537cef09de03663e9748.
14950 2015-05-23  Jan D  <jan.h.d@swipnet.se>
14952         Fix etags Bug#20629 that broke C++ support
14953         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
14954         Revert commit from Sun May 10 (Bug#20629).
14956         Merge branch 'cairo'.
14957         Main work done by YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>.
14958         Small fixes and image work by Jan D. <jan.h.d@swipnet.se>.
14960         Merge branch 'master' into cairo
14962         Fixes to compile cairo branch without cairo
14963         * src/gtkutil.c (xg_update_scrollbar_pos): x_clear_area takes frame as
14964         first argument.
14965         * src/xterm.c (handle_one_xevent): Surround x_cr_destroy_surface with
14966         USE_CAIRO.
14968 2015-05-23  Artur Malabarba  <bruce.connor.am@gmail.com>
14970         * lisp/emacs-lisp/package.el: Always update selected-packages.
14971         (package--update-selected-packages): New function.
14972         (package-menu-execute): Use it before starting the transaction,
14973         this way the list of selected packages is updated even when the
14974         transaction fails.
14975         (package-menu--perform-transaction): Don't edit selected-packages.
14977 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
14979         Fix etags reading of compressed files
14980         * lib-src/etags.c (O_CLOEXEC) [WINDOWSNT]: Define.
14981         Include fcntl.h, for O_CLOEXEC.
14982         (process_file_name): Don't use 'popen', whose streams cannot be
14983         rewound.  Instead, uncompress the file to a temporary file,
14984         created by 'etags_mktmp', and read from that as usual.
14985         (etags_mktmp): New function.
14986         * test/etags/ETAGS.good_1:
14987         * test/etags/ETAGS.good_2:
14988         * test/etags/ETAGS.good_3:
14989         * test/etags/ETAGS.good_4:
14990         * test/etags/ETAGS.good_5: Update to be consistent with latest
14991         changes in etags.c regarding reading compressed files.
14993         Improve documentation of 'set-fontset-font'
14994         * doc/lispref/display.texi (Fontsets): Document the value of nil
14995         for the 3rd argument of 'set-fontset-font'.
14997         Fix documentation of forward-line
14998         * src/cmds.c (Fforward_line): Clarify the return value if the line
14999         at end of accessible portion of the buffer has no newline.
15000         * doc/lispref/positions.texi (Text Lines): Document what happens
15001         if the line at end of accessible portion of buffer has no newline.
15002         (Bug#20587)
15004 2015-05-22  Glenn Morris  <rgm@gnu.org>
15006         * admin/charsets/Makefile.in (TRANS_TABLE): Add short aliases.
15008         * admin/charsets/mapconv (LC_ALL): Set to C.
15010         * Makefile.in: Add admin/charsets into top-level clean rules.
15011         (clean): Add admin/charsets.
15012         (maybeclean_dirs): New variable.
15013         (distclean, bootstrap-clean, maintainer-clean): Use $maybeclean_dirs.
15015         * admin/charsets/Makefile.in (LOCAL, local): Fix members.
15017 2015-05-22  Artur Malabarba  <bruce.connor.am@gmail.com>
15019         * lisp/emacs-lisp/package.el (package-selected-packages): Fix doc.
15021 2015-05-22  Glenn Morris  <rgm@gnu.org>
15023         Generate admin/charsets Makefile via configure, and make more portable
15024         * configure.ac (SUBDIR_MAKEFILES): Add admin/charsets/Makefile.
15025         (admin/charsets/Makefile): Generate it.
15026         * admin/charsets/Makefile.in: Rename from Makefile.
15027         (AWK, srcdir, top_srcdir, AM_DEFAULT_VERBOSITY):
15028         New variables, set by configure.
15029         (charsetdir, lispintdir, mapfiledir, AM_V_GEN, am__v_GEN_)
15030         (am__v_GEN_0, am__v_GEN_1, AM_V_at, am__v_at_, am__v_at_0)
15031         (am__v_at_1, LOCAL, mapconv, run_mapconv, big5, compact, cp51932)
15032         (cp932, eucjp_ms, gb180302, gb180304, kuten): New variables.
15033         (TRANS_TABLE, CHARSETS): Add directory prefix to value.
15034         (all): Declare PHONY.
15035         (local): New PHONY target.
15036         (map_template): New template.  Use to define short PHONY aliases.
15037         (*.map): Add directory prefixes to targets and prerequisites.
15038         Respect make verbosity.
15039         (JISC6226.map): Replace non-portable sed append without newline.
15040         (install): Remove rule.
15041         (clean): Only delete temporary sedscript.
15042         (bootstrap-clean, distclean, maintainer-clean, extraclean)
15043         (totalclean): New PHONY rules.
15044         * admin/charsets/mapconv (BASE): Replace basename with expr.
15045         (FILE): Add "mapfiles" subdirectory.
15046         (AWK): New variable.  Use throughout in place of "awk".
15047         (main): Use "gunzip -c" in place of "zcat".
15048         Don't leave whitespace before "p", for older sed.
15049         * admin/charsets/mapfiles/PTCP154: Add final newline,
15050         to make older sed versions happy.
15052 2015-05-22  Stefan Monnier  <monnier@iro.umontreal.ca>
15054         * lisp/autorevert.el: Use lexical-binding.  Fix hook usage.
15055         (global-auto-revert-ignore-buffer, auto-revert-notify-modified-p)
15056         (auto-revert-notify-watch-descriptor): Use defvar-local.
15057         (find-file-hook, auto-revert-tail-mode)
15058         (auto-revert-notify-add-watch): Use setq-local.
15059         (auto-revert-notify-add-watch): Don't call make-local-variable on
15060         kill-buffer-hook (bug#20601).
15062 2015-05-21  Stefan Monnier  <monnier@iro.umontreal.ca>
15064         Change defgeneric so it doesn't completely redefine the function
15065         * lisp/emacs-lisp/cl-generic.el (cl-generic-define): Don't throw away
15066         previously defined methods.
15067         (cl-generic-define-method): Let-bind purify-flag instead of
15068         using `fset'.
15069         (cl--generic-prefill-dispatchers): Only define during compilation.
15070         (cl-method-qualifiers): Remove redundant alias.
15071         (help-fns-short-filename): Silence byte-compiler.
15072         * test/automated/cl-generic-tests.el:
15073         Adjust to new defgeneric semantics.
15075 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
15077         * lisp/emacs-lisp/package.el (package-menu-execute):
15078         Remove reference to remove-dups.
15080 2015-05-21  kwhite  <kwhite@gnu.org>
15082         * lisp/erc/erc.el: Hide network/channel messages.
15083         (erc-network-hide-list, etc-channel-hide-list): New lists to define
15084         message types per network/channel.
15085         (erc-add-targets): New function to parse list of targets.
15086         (erc-hide-current-message-p): Modified to check for new targets.
15088 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
15090         Don't quote nil and t in doc strings
15091         This is as per "Tips for Documentation Strings" in the elisp manual.
15092         For consistency, do the same in diagnostics and comments.
15094 2015-05-21  Eli Zaretskii  <eliz@gnu.org>
15096         Fix a minor problem with mouse-face on mode line
15097         * src/xdisp.c (note_mode_line_or_margin_highlight): Reset the
15098         mouse face also if the mouse pointer hovers above mode-line glyphs
15099         that don't come from any Lisp string.  (Bug#20620)
15101 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
15103         * lisp/emacs-lisp/package.el: Fix selected-package logic.
15104         (package-menu-execute): Mark as selected all non-upgrade packages
15105         being installed.
15106         (package-menu--perform-transaction): Don't mark anything.
15108         * lisp/emacs-lisp/package.el: Mode-line progress report.
15109         (package-menu--transaction-status): New variable.
15110         (package-menu-mode, package-menu--perform-transaction): Use it.
15112         * lisp/emacs-lisp/package.el: Better transaction messages.
15113         (package-menu--partition-transaction): New function.
15114         (package-menu--prompt-transaction-p, package-menu-execute):
15115         Use it.
15116         (package-menu--perform-transaction): Don't do any messaging.
15118         * lisp/emacs-lisp/package.el: Revert async package transactions.
15119         (package-menu-async): Update doc.
15120         (package-install-from-archive, package-download-transaction)
15121         (package-install, package-menu--perform-transaction)
15122         (package-menu-execute): Remove asynchronous functionality.
15124 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
15126         Revert doc string changes to f90.el
15127         Problem reported by Glenn Morris in:
15128         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00596.html
15129         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
15130         Revert recent changes to doc strings, as it's intended that they
15131         use grave accent, not quote.
15133 2015-05-20  Bozhidar Batsov  <bozhidar@batsov.com>
15135         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p):
15136         Improve parameter name.
15138         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p): New inline function.
15140 2015-05-20  Paul Eggert  <eggert@cs.ucla.edu>
15142         Don't require help-fns when not needed
15143         * lisp/emacs-lisp/autoload.el, lisp/emacs-lisp/advice.el:
15144         * lisp/emacs-lisp/elint.el:
15145         Don't require help-fns at the top level
15146         * lisp/emacs-lisp/advice.el (ad-arglist):
15147         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
15148         Don't require help-fns.  (Bug#17001)
15150 2015-05-20  Eli Zaretskii  <eliz@gnu.org>
15152         Fix slash collapsing in etags on MS-Windows
15153         * lib-src/etags.c (canonicalize_filename) [DOS_NT]: Separate the
15154         MS-Windows code from the Posix code, and support collapsing both
15155         forward- and back-slashes on MS-Windows.  Fixes a regression found
15156         by the test suite.
15158         Improve documentation of glyphless-char-display
15159         * doc/lispref/display.texi (Glyphless Chars): Improve
15160         documentation of glyphless character display.
15162         Fix "acronym" display of glyphless characters on w32
15163         * src/w32term.c (x_draw_glyphless_glyph_string_foreground): Don't
15164         ignore "acronym" substitutes of 1 character for glyphless characters.
15166 2015-05-20  Oleh Krehel  <ohwoeowho@gmail.com>
15168         Add an automated test for let-when-compile
15169         * test/automated/subr-tests.el (let-when-compile): New test.
15171         Add let-when-compile macro instead of using pcase-let
15172         * lisp/subr.el (let-when-compile): New let-like macro that makes its
15173         bindings known to macros like `eval-when-compile' in the body.
15174         * lisp/emacs-lisp/lisp-mode.el: Change the top-level `pcase-let' to
15175         a `let-when-compile'.  Also comment out the unused lexical var
15176         `el-kws-re'.
15177         The change greatly improves readability, while providing almost the
15178         same (even shorter) byte code: instead of pre-evaluating 10 variables,
15179         tossing them into a list, and destructuring that list a full screen
15180         page later, the variables are simply bound as they are evaluated,
15181         wrapped individually in `eval-when-compile'.
15183 2015-05-20  Artur Malabarba  <bruce.connor.am@gmail.com>
15185         * lisp/emacs-lisp/package.el: "Delete" button in Help buffer.
15186         (package-delete-button-action): New function.
15187         (describe-package-1): Add Delete button.
15189         * lisp/emacs-lisp/package.el: Better dependency description.
15190         (package--used-elsewhere-p): New optional arg, ALL, and return
15191         package-desc objects instead of names.
15192         (package-delete): Update accordingly.
15193         (describe-package-1): Describe which packages require the package.
15195 2015-05-20  Martin Rudalics  <rudalics@gmx.at>
15197         Fix handling and doc-string of FRAME arg of `other-buffer' (Bug#20533)
15198         * src/buffer.c (Fother_buffer): Argument FRAME must denote a live frame.
15199         Fix doc-string.
15201         Improve `switch-to-buffer' in strongly dedicated windows (Bug#20472)
15202         * lisp/window.el (switch-to-buffer-in-dedicated-window): New option.
15203         (switch-to-buffer): If the selected window is strongly dedicated
15204         to its buffer, signal error before prompting for buffer name.
15205         Handle `switch-to-buffer-in-dedicated-window'.
15206         * doc/lispref/windows.texi (Switching Buffers):
15207         Document `switch-to-buffer-in-dedicated-window'.
15209 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
15211         Prefer "this" to “this” in doc strings
15212         This mostly just straightens quotes introduced in my previous patch.
15213         Suggested by Dmitry Gutov in:
15214         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00565.html
15215         * lisp/faces.el, lisp/gnus/gnus-group.el, lisp/ldefs-boot.el:
15216         * lisp/mail/supercite.el, lisp/net/tramp.el, lisp/recentf.el:
15217         * lisp/textmodes/artist.el, lisp/textmodes/rst.el:
15218         * lisp/textmodes/tildify.el, lisp/vc/ediff-util.el:
15219         * lisp/vc/log-edit.el, lisp/xt-mouse.el:
15220         Prefer straight double quotes to curved double quotes in doc strings.
15222         Fix minor quoting problems in doc strings
15223         These were glitches regardless of how or whether we tackle the
15224         problem of grave accent in doc strings.
15225         * lisp/calc/calc-aent.el (math-restore-placeholders):
15226         * lisp/ido.el (ido-ignore-buffers, ido-ignore-files):
15227         * lisp/leim/quail/cyrillic.el ("bulgarian-alt-phonetic"):
15228         * lisp/leim/quail/hebrew.el ("hebrew-new")
15229         ("hebrew-biblical-sil"):
15230         * lisp/leim/quail/thai.el ("thai-kesmanee"):
15231         * lisp/progmodes/idlw-shell.el (idlwave-shell-file-name-chars):
15232         Used curved quotes to avoid ambiguities like ‘`''’ in doc strings.
15233         * lisp/calendar/calendar.el (calendar-month-abbrev-array):
15234         * lisp/cedet/semantic/mru-bookmark.el (semantic-mrub-cache-flush-fcn):
15235         * lisp/cedet/semantic/symref.el (semantic-symref-tool-baseclass):
15236         * lisp/cedet/semantic/tag.el (semantic-tag-copy)
15237         (semantic-tag-components):
15238         * lisp/cedet/srecode/cpp.el (srecode-semantic-handle-:cpp):
15239         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
15240         * lisp/emacs-lisp/byte-opt.el (byte-optimize-all-constp):
15241         * lisp/emacs-lisp/checkdoc.el (checkdoc-message-text-engine):
15242         * lisp/emacs-lisp/generator.el (iter-next):
15243         * lisp/gnus/gnus-art.el (gnus-treat-strip-list-identifiers)
15244         (gnus-article-mode-syntax-table):
15245         * lisp/net/rlogin.el (rlogin-directory-tracking-mode):
15246         * lisp/net/soap-client.el (soap-wsdl-get):
15247         * lisp/net/telnet.el (telnet-mode):
15248         * lisp/org/org-compat.el (org-number-sequence):
15249         * lisp/org/org.el (org-remove-highlights-with-change)
15250         (org-structure-template-alist):
15251         * lisp/org/ox-html.el (org-html-link-org-files-as-html):
15252         * lisp/play/handwrite.el (handwrite-10pt, handwrite-11pt)
15253         (handwrite-12pt, handwrite-13pt):
15254         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
15255         * lisp/progmodes/idlwave.el (idlwave-mode, idlwave-check-abbrev):
15256         * lisp/progmodes/verilog-mode.el (verilog-tool)
15257         (verilog-string-replace-matches, verilog-preprocess)
15258         (verilog-auto-insert-lisp, verilog-auto-insert-last):
15259         * lisp/textmodes/makeinfo.el (makeinfo-options):
15260         * src/font.c (Ffont_spec):
15261         Fix minor quoting problems in doc strings, e.g., missing quote,
15262         ``x'' where `x' was meant, etc.
15263         * lisp/erc/erc-backend.el (erc-process-sentinel-2):
15264         Fix minor quoting problem in other string.
15265         * lisp/leim/quail/ethiopic.el ("ethiopic"):
15266         * lisp/term/tvi970.el (tvi970-set-keypad-mode):
15267         Omit unnecessary quotes.
15268         * lisp/faces.el (set-face-attribute, set-face-underline)
15269         (set-face-inverse-video, x-create-frame-with-faces):
15270         * lisp/gnus/gnus-group.el (gnus-group-nnimap-edit-acl):
15271         * lisp/mail/supercite.el (sc-attribs-%@-addresses)
15272         (sc-attribs-!-addresses, sc-attribs-<>-addresses):
15273         * lisp/net/tramp.el (tramp-methods):
15274         * lisp/recentf.el (recentf-show-file-shortcuts-flag):
15275         * lisp/textmodes/artist.el (artist-ellipse-right-char)
15276         (artist-ellipse-left-char, artist-vaporize-fuzziness)
15277         (artist-spray-chars, artist-mode, artist-replace-string)
15278         (artist-put-pixel, artist-text-see-thru):
15279         * lisp/vc/ediff-util.el (ediff-submit-report):
15280         * lisp/vc/log-edit.el (log-edit-changelog-full-paragraphs):
15281         Use double-quotes rather than TeX markup in doc strings.
15282         * lisp/skeleton.el (skeleton-pair-insert-maybe):
15283         Reword to avoid the need for grave accent and apostrophe.
15284         * lisp/xt-mouse.el (xterm-mouse-tracking-enable-sequence):
15285         Don't use grave and acute accents to quote.
15287 2015-05-19  Stefan Monnier  <monnier@iro.umontreal.ca>
15289         * lisp/emacs-lisp/generator.el (cps--gensym, cps--transform-1):
15290         Silence compiler.
15292 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
15294         Try to port new etags tests to MS-Windows
15295         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
15296         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
15297         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
15298         Adjust to test-case changes below.
15299         * test/etags/Makefile (CSRC): Remove dostorture.c.
15300         Whatever it was trying to test, wasn't working portably.
15301         (LC_ALL): Remove.  Apparently there wasn't an encoding problem,
15302         just a line-ending problem.
15303         * test/etags/c-src/dostorture.c: Remove.
15304         * test/etags/cp-src/c.C: Remove stray CR.
15305         * test/etags/html-src/algrthms.html: Remove trailing CRs.
15306         State UTF-8 as the encoding.  The file is ASCII so it doesn't matter,
15307         but if someone edits it later it should stay UTF-8-compatible.
15309 2015-05-19  Eli Zaretskii  <eliz@gnu.org>
15311         Fix display of overlapping window-specific overlays
15312         * src/keyboard.c (adjust_point_for_property): When adjusting point
15313         due to display strings, ignore overlays that are specific to
15314         windows other than the currently selected one.
15315         * src/xdisp.c (handle_single_display_spec): If the display
15316         property comes from an overlay, arrange for buffer iteration to
15317         resume only after the end of that overlay.  (Bug#20607)
15319 2015-05-19  Dmitry Gutov  <dgutov@yandex.ru>
15321         New command icomplete-force-complete-and-exit
15322         * lisp/icomplete.el (icomplete-force-complete-and-exit):
15323         New command
15324         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00461.html)
15325         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00516.html).
15326         (icomplete-minibuffer-map): Bind C-j to it.
15327         (icomplete-forward-completions, icomplete-backward-completions):
15328         Mention the new command in the docstring.
15329         * lisp/minibuffer.el (minibuffer-force-complete-and-exit):
15330         Revert the previous fix for bug#17545.
15332 2015-05-19  Martin Rudalics  <rudalics@gmx.at>
15334         Fix last commit
15336         In Elisp manual explain how to override window manager positioning
15337         (Bug#20552)
15338         * doc/lispref/frames.texi (Position Parameters): Give example of
15339         how to override a window manager positioning decision.
15341         Clarify concept of "surrogate minibuffer frames" (Bug#20538)
15342         * src/frame.c (Fdelete_frame): In doc-string mention that frame
15343         can't be deleted if it has a surrogate minibuffer.
15344         * doc/lispref/frames.texi (Minibuffers and Frames)
15345         (Deleting Frames): Explain "surrogate minibuffer frames".
15347         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 19/12 MB.
15349 2015-05-18  Glenn Morris  <rgm@gnu.org>
15351         Add option to ignore commit lines matching a pattern in ChangeLog
15352         * build-aux/gitlog-to-changelog: Add --ignore-line option.
15353         * build-aux/gitlog-to-emacslog: Ignore lines matching '^; '.
15355 2015-05-18  Paul Eggert  <eggert@cs.ucla.edu>
15357         Don't skip new etags tests on non-UTF-8 hosts
15358         Problem reported by Eli Zaretskii for MS-Windows.
15359         * test/etags/Makefile (UTF8_LOCALE, UTF8_ENCODING): Remove.
15360         (LC_ALL): Set to C if the current locale isn't UTF-8.
15361         (.PHONY): Remove ediff_1 thru ediff_5.
15362         (check): Always run.
15364 2015-05-18  Glenn Morris  <rgm@gnu.org>
15366         * lisp/calculator.el (calculator-funcall):
15367         * lisp/textmodes/artist.el (artist-spray-random-points):
15368         Use standard degree/radian conversion utilities.
15370         Further lisp-complete-symbol related cleanup.
15371         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol):
15372         Unadvertise non-functional argument.  Replace obsolete alias.
15374 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
15376         Add a test case for Maven warning ouput
15377         * test/automated/compile-tests.el
15378         (compile-tests--test-regexps-data): Add a case for Maven warning
15379         ouput.
15380         (compile--test-error-line): Check the compilation message type, if
15381         it's specified in the test data.
15383 2015-05-18  Paul Pogonyshev  <pogonyshev@gmail.com>
15385         Update Maven compilation-mode entry to distinguish warnings
15386         * lisp/progmodes/compile.el
15387         (compilation-error-regexp-alist-alist): Update Maven entry to
15388         distinguish warnings (bug#20556).
15390 2015-05-18  Przemysław Wojnowski  <esperanto@cumego.com>
15392         * test/automated/sgml-mode-tests.el: New file.
15394 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
15396         Improve handling of the first Git revision
15397         * lisp/vc/log-view.el (log-view-toggle-entry-display): When
15398         there's no next entry, delete until the end of the buffer.
15399         (log-view-end-of-defun-1): Stop at eob.
15400         * lisp/vc/vc-annotate.el
15401         (vc-annotate-show-diff-revision-at-line-internal): Don't give up
15402         when previous-revision is nil.
15403         * lisp/vc/vc-git.el (vc-git-expanded-log-entry): End the arguments
15404         with `--' to avoid ambiguity.
15405         (vc-git-annotate-extract-revision-at-line): Exclude `^' from the
15406         returned revision string.
15407         (vc-git-annotate-time): Expect `^' before the first revision.
15408         * lisp/vc/vc-git.el (vc-git-diff): Diff against an empty tree if
15409         REV1 is nil, and REV2 is not.
15410         * lisp/vc/vc.el: Update the description of the `diff' function.
15412 2015-05-18  Oleh Krehel  <ohwoeowho@gmail.com>
15414         Allow checkdoc to be called in batch
15415         * lisp/emacs-lisp/checkdoc.el (checkdoc-error): When `noninteractive'
15416         is non-nil, echo the error with `warn'.
15417         How it can be used in -batch:
15418         (with-current-buffer (find-file "checkdoc.el")
15419           (checkdoc-current-buffer t))
15421 2015-05-18  Glenn Morris  <rgm@gnu.org>
15423         * lisp/calendar/solar.el (solar-ecliptic-coordinates): Use float-pi.
15425 2015-05-17  Paul Eggert  <eggert@cs.ucla.edu>
15427         * admin/notes/unicode: New section "binary files".
15429         Change new etags test to use UTF-8 encoding
15430         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
15431         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
15432         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
15433         * test/etags/html-src/index.shtml, test/etags/html-src/software.html:
15434         * test/etags/html-src/softwarelibero.html:
15435         Switch to UTF-8 encoding.
15436         * test/etags/Makefile (SRCS): Adjust to switch to UTF-8.
15437         Remove Makefile, as it's too incestuous to have the test input
15438         include the build procedure.
15439         (UTF8_LOCALE, UTF_ENCODING): New macros.
15440         (LC_ALL): If possible, set to a UTF-8 encoding if not already UTF-8.
15441         (check): Skip if not UTF-8.
15442         (.PHONY): New rule.
15443         (FRC): Remove, as superseded by .PHONY.  All uses removed.
15444         (regexfile): Prefer printf to echo when outputting oddball chars.
15445         (.PRECIOUS): Remove, as these files are not built.
15447         Rename 'foo-gzipped' to 'foo.gz'
15448         * test/automated/data/decompress/foo.gz:
15449         Rename from test/automated/data/decompress/foo-gzipped,
15450         to make it easier for other tools to tell that it's compressed.
15451         * test/automated/zlib-tests.el (zlib--decompress):
15452         Adjust to renamed file.
15454 2015-05-17  Dmitry Gutov  <dgutov@yandex.ru>
15456         Set up default-directory
15457         * lisp/vc/vc-annotate.el (vc-annotate-mode-map): Remove duplicate
15458         binding for `v'.
15459         (vc-annotate-show-changeset-diff-revision-at-line): Set up an
15460         appropriate value for default-directory.
15462 2015-05-17  Samer Masterson  <samer@samertm.com>
15464         * lisp/eshell/em-term.el (eshell-term-sentinel):
15465         No-op by default, only kills term buffer if
15466         `eshell-destroy-buffer-when-process-dies' is non-nil.  (Bug#18108)
15467         (eshell-destroy-buffer-when-process-dies): New custom to preserve
15468         previous behavior.
15470         eshell: Introduce new buffer syntax
15471         The new buffer syntax '#<buffer-name>' is equivalent to '#<buffer
15472         buffer-name>'.  Remove `eshell-buffer-shorthand', as it is no longer
15473         needed (Bug#19319).
15474         * lisp/eshell/esh-io.el (eshell-buffer-shorthand): Remove.
15475         (eshell-get-target): Remove shorthand-specific code.
15476         * lisp/eshell/esh-arg.el (eshell-parse-special-reference): Parse
15477         '#<buffer-name>'.
15479 2015-05-17  Jan D  <jan.h.d@swipnet.se>
15481         Merge branch 'master' into cairo
15483 2015-04-26  Jan D  <jan.h.d@swipnet.se>
15485         Merge branch 'master' into cairo
15487         Add PBM support for cairo
15488         * src/image.c (xcolor_to_argb32): New function.
15489         (get_spec_bg_or_alpha_as_argb): Call xcolor_to_argb32.
15490         (pbm_load, png_load_body, jpeg_load_body, gif_load): Only use
15491         XImagePtr if ! USE_CAIRO.
15492         (pbm_load): Add cairo support.
15494 2015-04-12  Jan D  <jan.h.d@swipnet.se>
15496         * src/xterm.c (x_free_cr_resources): Rename from x_prepare_for_xlibdraw.
15497         (x_cr_draw_frame, x_cr_export_frames, x_shift_glyphs_for_insert)
15498         (x_free_frame_resources): Rename x_prepare_for_xlibdraw to
15499         x_free_cr_resources.
15501         Handle specified bg in images.  Use generic libpng code for PNGs.
15502         * src/image.c (get_spec_bg_or_alpha_as_argb)
15503         (create_cairo_image_surface): New functions when USE_CAIRO.
15504         (xpm_load): Call the above functions.  Handle XPM without mask
15505         when USE_CAIRO.
15506         (png_load_body): Handle USE_CAIRO case.
15507         (png_load): Remove USE_CAIRO specific fuction, modify png_load_body
15508         instead.
15509         (jpeg_load_body): Call create_cairo_image_surface.
15510         (gif_load, svg_load_image): Handle specified background, call
15511         create_cairo_image_surface.
15512         * src/xterm.c (x_draw_image_glyph_string): Add missing USE_CAIRO.
15514 2015-04-11  Jan D  <jan.h.d@swipnet.se>
15516         Support GIF and TIFF with cairo
15517         * configure.ac: Allow jpeg with cairo.
15518         Allow tiff and gif with cairo.
15519         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
15520         (tiff_load): Create cairo image surface if USE_CAIRO.
15521         (gif_load): Ditto.
15523         Support JPEG with USE_CAIRO
15524         * configure.ac: Allow jpeg with cairo.
15525         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
15527 2015-04-05  Jan D  <jan.h.d@swipnet.se>
15529         Support RSVG and cairo
15530         * configure.ac: Allow rsvg with cairo.  Move back HAVE_RSVG.
15531         * src/dispextern.h (struct image): Add cr_data2 if cairo.
15532         * src/image.c: #undef COLOR_TABLE_SUPPORT when USE_CAIRO.
15533         (x_clear_image): Free cr_data and cr_data2 if set.
15534         (xpm_load): Assign data to cr_data2.
15535         (svg_load_image): Convert from GdkPixbuf to CAIRO_FORMAT_ARGB32.
15537 2015-04-03  Jan D  <jan.h.d@swipnet.se>
15539         Introduce limited Xpm support (32 bit ZPixmap) for Cairo
15540         * configure.ac (HAVE_RSVG): Move after cairo.
15541         (USE_CAIRO): Disable rsvg, don't disable Xpm.
15542         * src/image.c (prepare_image_for_display): Don't load if USE_CAIRO.
15543         (x_clear_image): If USE_CAIRO, also free possible img->ximg->obdata and
15544         don't return early.
15545         (ALLOC_XPM_COLORS): Don't define when USE_CAIRO.
15546         (xpm_load): Convert simple Xpms (32 bit ZPixmap) to CAIRO_FORMAT_ARGB32
15547         and create a surface.
15549         Tool tips for menus did not show any text.
15550         * src/xterm.c (x_update_begin): Don't create any surface for non-visible
15551         tip frames, the geometry may be wrong.
15553         Merge branch 'master' into cairo, fixes tooltips not shown.
15555         Merge branch 'master' into cairo
15557         Add CAIRO_CFLAGS to lwlib/Makefile.in
15558         * Makefile.in (CAIRO_CFLAGS): Add.
15560 2015-02-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
15562         * src/ftcrfont.c (ftcrfont_draw): Don't flush when drawing to screen.
15564 2015-02-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
15566         Draw outermost line using black relief and erase corners also for cairo.
15567         * src/xterm.c [USE_CAIRO]: Include math.h.
15568         (enum corners) [USE_CAIRO]: New enum.
15569         (x_erase_corners_for_relief) [USE_CAIRO]: New function.
15570         (x_draw_relief_rect) [USE_CAIRO]: Use it.  If box width is larger
15571         than 1, draw the outermost line using the black relief.
15573         * src/xterm.c (x_fill_trapezoid_for_relief):
15574         Remove unnecessary cairo_close_path.
15576 2015-02-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
15578         * src/xterm.c (x_draw_relief_rect) [USE_CAIRO]: Reset clipping.
15580         * src/xterm.c (x_draw_stretch_glyph_string):
15581         Call x_reset_clip_rectangles instead of XSetClipMask.
15583         Use int instead of unsigned int for width and height args.
15584         * src/xterm.c (x_cr_draw_image, x_fill_rectangle, x_draw_rectangle)
15585         (x_fill_trapezoid_for_relief): Use int instead of unsigned int for
15586         width and height args.
15588         Modernize k&r cairo-related function declarations.
15589         * src/gtkutil.c (xg_page_setup_dialog, xg_get_page_setup, draw_page)
15590         (xg_print_frames_dialog): Modernize k&r declarations.
15591         * src/xfns.c (Fx_export_frames, Fx_page_setup_dialog, Fx_get_page_setup)
15592         (Fx_print_frames_dialog): Modernize k&r declarations.
15593         * src/xterm.c (x_gc_get_ext_data, x_extension_initialize)
15594         (x_begin_cr_clip, x_end_cr_clip, x_set_cr_source_with_gc_foreground)
15595         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
15596         (x_cr_destroy_fringe_bitmap, x_cr_draw_frame, x_cr_accumulate_data)
15597         (x_cr_destroy, x_cr_export_frames, x_prepare_for_xlibdraw)
15598         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
15599         (x_draw_rectangle, x_clear_window, x_fill_trapezoid_for_relief)
15600         (x_clear_area): Modernize k&r declarations.
15602         Implement wave-style variant of underlining for cairo.
15603         * src/xterm.c (x_draw_horizontal_wave) [USE_CAIRO]: New function.
15604         (x_draw_underwave) [USE_CAIRO]: Use it.
15606         * src/xterm.c (x_draw_window_divider): Use x_fill_rectangle
15607         instead of XFillRectangle.
15609 2015-02-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
15611         Fix fringe bitmap initialization for cairo
15612         * src/fringe.c (init_fringe_bitmap) [USE_CAIRO]: Adjust bitmap
15613         data for cairo image surface.
15614         * src/xterm.c (x_cr_define_fringe_bitmap):
15615         Call cairo_surface_mark_dirty.
15617 2015-02-11  Jan D  <jan.h.d@swipnet.se>
15619         Add cairo drawing
15620         * configure.ac (with-cairo): New option.
15621         (USE_CAIRO): Default to yes for Gtk+ 3.  Add code to test for cairo,
15622         set CAIRO_CFLAGS, CAIRO_LIBS.  Add ftcrfonto to FONT_OBJ if cairo.
15623         Output "Does Emacs use cairo?".
15624         * lisp/version.el (emacs-version): Add cairo version.
15625         * src/Makefile.in (CAIRO_CFLAGS, CAIRO_LIBS): New variables.
15626         (FONT_OBJ): Add comment about ftcrfont.
15627         (ALL_CFLAGS): Add CAIRO_CFLAGS.
15628         (LIBES): Add CAIRO_LIBS.
15629         * src/dispextern.h (struct image): Add cr_data for cairo.
15630         (x_cr_init_fringe): Declare.
15631         * src/font.c (syms_of_font): Call syms_of_ftcrfont for cairo.
15632         * src/font.h (ftcrfont_driver, syms_of_ftcrfont): Declare
15633         * src/fringe.c (x_cr_init_fringe): New function name that shares code
15634         with w32_init_fringe.
15635         * src/ftcrfont.c: New font driver for cairo, based on the ftfont driver.
15636         * src/ftfont.c (ftfont_info_size); New global variable.
15637         (ftfont_open2): New extern function almost the same as old ftfont_open,
15638         but takes the font_object as argument.
15639         (ftfont_open): Build font object and call ftfont_open2.
15640         * src/ftfont.h (ftfont_open2, ftfont_info_size): Declare.
15641         * src/gtkutil.c (xg_clear_under_internal_border)
15642         (xg_update_scrollbar_pos, xg_update_horizontal_scrollbar_pos):
15643         Only queue_draw if not cairo.  Change args to x_clear_area.
15644         (xg_get_font): Use Qftcr when using cairo, Qxft otherwise.
15645         (xg_page_setup_dialog, xg_get_page_setup, draw_page)
15646         (xg_print_frames_dialog): New functions for printing.
15647         * src/gtkutil.h (xg_page_setup_dialog, xg_get_page_setup)
15648         (xg_print_frames_dialog): Declare.
15649         * src/image.c: Add defined (USE_CAIRO) for PNG.
15650         Add !defined USE_CAIRO for W32 PNG code.
15651         (x_clear_image): If cairo, destroy the surface in cr_data.
15652         (png_load): Add new cairo compatible implementation.
15653         (lookup_image_type): Add defined (USE_CAIRO) for define png_type.
15654         * src/xfns.c: New section Printing.
15655         (x-export-frames, x-page-setup-dialog, x-get-page-setup)
15656         (x-print-frames-dialog): New printing functions.
15657         (Fx_create_frame, x_create_tip_frame): Register ftcrfont if cairo.
15658         (syms_of_xfns): Defsym Qorientation, Qtop_margin, Qbottom_margin,
15659         Qportrait, Qlandscape, Qreverse_portrait, Qreverse_landscape).
15660         (syms_of_xfns): Provide cairo and defvar cairo-version-string.
15661         defsubr Sx_page_setup_dialog, Sx_get_page_setup, Sx_print_frames_dialog.
15662         * src/xterm.c (x_clear_area1, x_prepare_for_xlibdraw)
15663         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
15664         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
15665         (x_gc_get_ext_data, x_extension_initialize, x_cr_accumulate_data):
15666         Declare.
15667         (FRAME_CR_CONTEXT, FRAME_CR_SURFACE): New macros.
15668         (max_fringe_bmp, fringe_bmp): New variables.
15669         (x_gc_get_ext_data, x_extension_initialize)
15670         (x_cr_destroy_surface, x_begin_cr_clip, x_end_cr_clip)
15671         (x_set_cr_source_with_gc_foreground)
15672         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
15673         (x_cr_destroy_fringe_bitmap, x_cr_draw_image, x_cr_draw_frame)
15674         (x_cr_accumulate_data, x_cr_destroy, x_cr_export_frames)
15675         (x_prepare_for_xlibdraw, x_set_clip_rectangles)
15676         (x_reset_clip_rectangles, x_fill_rectangle, x_draw_rectangle)
15677         (x_clear_window, x_fill_trapezoid_for_relief): New functions.
15678         (x_update_begin): Create cairo surface if needed.
15679         (x_draw_vertical_window_border): Call x_fill_rectangle for cairo.
15680         (x_update_end): Paint cairo drawing surface to xlib surface.
15681         (x_clear_under_internal_border, x_after_update_window_line): Adjust
15682         arguments to x_clear_area.
15683         (x_draw_fringe_bitmap): Call x_fill_rectangle.  Get GC values and
15684         call x_cr_draw_image for cairo.  Call x_reset_clip_rectangles instead
15685         of XSetClipMask.
15686         (x_set_glyph_string_clipping)
15687         (x_set_glyph_string_clipping_exactly): Use x_set_clip_rectangles
15688         instead of XSetClipRectangles.
15689         (x_clear_glyph_string_rect, x_draw_glyph_string_background):
15690         Use x_fill_rectangle instead of XFillRectangle.
15691         (x_draw_glyph_string_foreground)
15692         (x_draw_composite_glyph_string_foreground)
15693         (x_draw_glyphless_glyph_string_foreground): Use x_draw_rectangle
15694         instead of XDrawRectangle.
15695         (x_draw_relief_rect): Add code for USE_CAIRO.
15696         Call x_reset_clip_rectangles instead of XSetClipMask.
15697         (x_draw_box_rect): x_set_clip_rectangles instead of XSetClipRectangles,
15698         x_fill_rectangle instead of XFillRectangle, x_reset_clip_rectangles
15699         instead of XSetClipMask.
15700         (x_draw_image_foreground, x_draw_image_foreground_1):
15701         x_draw_rectangle instead of XDrawRectangle.
15702         (x_draw_glyph_string_bg_rect): x_fill_rectangle instead of
15703         XFillRectangle.
15704         (x_draw_image_glyph_string): If img has cr_data, use it as
15705         a cairo surface.
15706         (x_draw_stretch_glyph_string): x_set_clip_rectangles instead of
15707         XSetClipRectangles, x_fill_rectangle instead of XFillRectangle.
15708         (x_draw_glyph_string): x_fill_rectangle instead of XFillRectangle.,
15709         x_reset_clip_rectangles instead of XSetClipMask.
15710         (x_shift_glyphs_for_insert): Call x_prepare_for_xlibdraw.
15711         (x_clear_area1): New function that calls XClearArea.
15712         (x_clear_area): Takes frame as parameter, calls x_clear_area1 for
15713         non-cairo.
15714         (x_clear_frame): x_clear_window instead of XClearWindow.
15715         (x_scroll_run): Set frame garbaged if cairo.
15716         (XTmouse_position): Initialize *part to 0.
15717         (x_scroll_bar_create): Adjust arguments to x_clear_area.
15718         (x_scroll_bar_set_handle): x_clear_area1 instead of x_clear_area,
15719         x_fill_rectangle instead of XFillRectangle.
15720         (XTset_vertical_scroll_bar, XTset_horizontal_scroll_bar): Adjust
15721         arguments to x_clear_area.
15722         (x_scroll_bar_expose): x_draw_rectangle instead of XDrawRectangle.
15723         (handle_one_xevent): Adjust arguments to x_clear_area.
15724         Destroy cairo surface for frame if ConfigureNotify.
15725         (x_clip_to_row): x_set_clip_rectangles instead of XSetClipRectangles.
15726         (x_draw_hollow_cursor): x_draw_rectangle instead of XDrawRectangle,
15727         x_reset_clip_rectangles instead of XSetClipMask.
15728         (x_draw_bar_cursor): x_fill_rectangle instead of XFillRectangle,
15729         x_reset_clip_rectangles instead of XSetClipMask.
15730         (x_clear_frame_area): Adjust arguments to x_clear_area.
15731         (x_free_frame_resources): Call x_prepare_for_xlibdraw.
15732         (x_term_init): Call x_extension_initialize if cairo.
15733         (x_redisplay_interface): Add x_cr_define_fringe_bitmap,
15734         x_cr_destroy_fringe_bitmap for cairo.
15735         (x_initialize): Call x_cr_init_fringe for cairo.
15736         * src/xterm.h: Add include of cairo header files.
15737         (x_bitmap_record): Add img if cairo.
15738         (x_gc_ext_data): New struct for cairo.
15739         (x_display_info): Add ext_codes for cairo.
15740         (x_output): Add cr_context and cr_surface for cairo.
15741         (x_clear_area): Change arguments from Display*/Window to frame pointer.
15742         (x_query_color, x_begin_cr_clip, x_end_cr_clip)
15743         (x_set_cr_source_with_gc_foreground, x_set_cr_source_with_gc_background)
15744         (x_cr_draw_frame, x_cr_export_frames): Declare.
15746 2015-05-17  Johan Bockgård  <bojohan@gnu.org>
15748         Fix integer-valued `mouse-highlight' (Bug#20590)
15749         * src/xterm.c (handle_one_xevent) [USE_GTK]: Fix ifdef scope.
15751 2015-05-17  Eli Zaretskii  <eliz@gnu.org>
15753         MS-Windows followup for ASCIIfication of curved quotes
15754         * lisp/term/w32console.el (terminal-init-w32console): Repeat the
15755         test for curved quotes being displayable, after switching the
15756         terminal encoding.  (Bug#20545)
15758 2015-05-17  Jan D  <jan.h.d@swipnet.se>
15760         Add comment that x_shift_glyphs_for_insert is never called
15761         * src/xterm.c (x_shift_glyphs_for_insert, x_redisplay_interface):
15762         Add comment that this function is never called.
15764 2015-05-16  Glenn Morris  <rgm@gnu.org>
15766         * src/lisp.mk: Remove from repository and generate at build-time.
15767         * src/Makefile.in (lisp.mk): New rule to generate from loadup.el.
15768         (shortlisp_filter): New variable.
15769         (emacs$(EXEEXT), $(etc)/DOC): Depend on lisp.mk.
15770         (distclean): Remove lisp.mk.
15771         * Makefile.in ($(MAKEFILE_NAME)): No longer depend on src/lisp.mk.
15772         * lisp/loadup.el: Tweak layout to make it easier to parse.
15773         * make-dist: Do not distribute src/lisp.mk.
15775 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
15777         Display shorter dates in Git annotate output
15778         * lisp/vc/vc-git.el (vc-git-annotate-command): Use the short date
15779         format (when not overridden with vc-git-annotate-switches).
15780         (vc-git-annotate-time): Support the short format, as well as ISO
15781         8601 that has been used until now (bug#5428).
15783 2015-05-16  Paul Eggert  <eggert@cs.ucla.edu>
15785         ASCIIfy curved quotes on displays lacking them
15786         * lisp/international/mule-cmds.el (set-locale-environment):
15787         If curved quotes don't work, display straight ASCII approximations
15788         (Bug#20545).
15790 2015-05-16  Glenn Morris  <rgm@gnu.org>
15792         Small src/Makefile simplification
15793         * src/lisp.mk (shortlisp): Rename from lisp, remove $lispsource prefix.
15794         * src/Makefile.in (lisp): Derive from shortlisp.
15795         ($(etc)/DOC): Use $shortlisp rather than parsing lisp.mk.
15797 2015-05-16  Eli Zaretskii  <eliz@gnu.org>
15799         * lisp/help-mode.el (help-go-forward): Doc fix.
15800         (Bug#20577)
15802         * doc/lispref/debugging.texi (Profiling): Improve indexing.
15803         (Bug#20576)
15805 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
15807         * lisp/vc/vc-git.el (vc-git-resolve-when-done): Use `unless' to
15808         have one fewer `not'.
15810         * lisp/vc/vc-git.el (vc-git-diff-switches)
15811         (vc-git-annotate-switches, vc-git-resolve-conflicts)
15812         (vc-git-program, vc-git-root-log-format): Remove the redundant
15813         :group declarations.
15815 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
15817         Removes the predicate from lisp-complete-symbol (Bug#20456)
15818         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol): Do not use predicate
15819         and remove it from the docstring.
15821 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
15823         Add new option vc-git-resolve-conflicts
15824         * lisp/vc/vc-git.el (vc-git-resolve-conflicts): New variable.
15825         (vc-git-find-file-hook): Add to after-save-hook only when the
15826         above is non-nil.
15827         (vc-git-resolve-when-done): Update to honor the new variable.
15828         (Bug#20292)
15830 2015-05-16  Artur Malabarba  <bruce.connor.am@gmail.com>
15832         * lisp/emacs-lisp/tabulated-list.el: Don't error on null header-string.
15833         (tabulated-list-init-header): Document new behavior.
15834         (tabulated-list-print-fake-header): Do nothing if
15835         `tabulated-list--header-string' is nil.
15836         (tabulated-list--header-string): Add a docstring.
15837         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
15838         * etc/NEWS: Document it.
15840 2015-05-15  Leo Liu  <sdl.web@gmail.com>
15842         Revert "Fix cps--gensym"
15843         * lisp/emacs-lisp/generator.el (cps--gensym): Revert commit
15844         fbda511ab8069d0115eafca411a43353b85431b1 on 2015-05-14.
15846 2015-05-15  Glenn Morris  <rgm@gnu.org>
15848         Replace AC_SUBST_FILE in configure with include in Makefiles
15849         * configure.ac (DEPDIR, MKDEPDIR, deps_frag, lwlib_deps_frag)
15850         (oldxmenu_deps_frag, lisp_frag): Remove output variables/files.
15851         (AUTO_DEPEND): New output variable.
15852         * lwlib/Makefile.in (AUTO_DEPEND): New, set by configure.
15853         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
15854         (lwlib_deps_frag): Replace by conditional include.
15855         * lwlib/autodeps.mk: Remove file.
15856         * oldXMenu/Makefile.in (AUTO_DEPEND): New, set by configure.
15857         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
15858         (oldxmenu_deps_frag): Replace by conditional include.
15859         * oldXMenu/autodeps.mk: Remove file.
15860         * src/Makefile.in (AUTO_DEPEND): New, set by configure.
15861         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
15862         (lisp_frag): Replace by an include.
15863         (deps_frag): Replace by conditional include.
15864         * src/autodeps.mk: Remove file.
15866         Tweak japanese.el's loading of dependencies
15867         * lisp/loadup.el: Explicitly load cp51932 and eucjp-ms.
15868         * lisp/language/japanese.el: Use require rather than load.
15869         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
15870         Provide a feature.
15871         * admin/charsets/eucjp-ms.awk, admin/charsets/cp51932.awk:
15872         Provide a feature in the generated file.
15874 2015-05-15  Jan D  <jan.h.d@swipnet.se>
15876         Fix NS warnings
15877         * src/nsmenu.m (ns_popup_dialog)
15878         * src/nsimage.m (initFromXBM:width:height:fg:bg:)
15879         * src/nsfns.m (Fx_create_frame): Remove unused variables.
15880         (Fns_read_file_name): Initialize fname, remove ret.
15881         * src/nsterm.m (ns_draw_window_cursor): Handle DEFAULT_CURSOR in switch.
15882         (ns_get_color, ns_set_horizontal_scroll_bar, keyDown):
15883         Remove unused variable.
15884         (init): Add parantesis in if.
15885         (ns_create_terminal): Assign set_horizontal_scroll_bar_hook.
15887 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
15889         Fix a enum conversion warning in macfont.m
15890         * src/macfont.h (CharacterCollection): Typedef to NSCharacterCollection.
15891         (MAC_CHARACTER_COLLECTION_*): Use the NS variants.
15893 2015-05-15  Eli Zaretskii  <eliz@gnu.org>
15895         * lisp/textmodes/ispell.el (ispell-aspell-find-dictionary):
15896         Support Aspell dictionaries with names like "de-alt".  (Bug#20581)
15898 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
15900         * lisp/cus-start.el: Add ns-confirm-quit.
15902         Fix warnings on OSX 10.10
15903         * src/nsfns.m (MODAL_OK_RESPONSE): New define for different
15904         OSX versions.
15905         (Fns_read_file_name): Check against MODAL_OK_RESPONSE.
15906         (compute_tip_xy): Use convertRectToScreen for OSX >= 10.7
15907         * src/nsmenu.m (initWithContentRect:styleMask:backing:defer:)
15908         * src/nsimage.m (allocInitFromFile, setPixmapData): Only call
15909         setScalesWhenResized for OSX < 10.6.
15910         * src/nsterm.h (EmacsScroller): Declare scrollerWidth.
15911         * src/nsterm.m (ns_copy_bits): New function that does not use
15912         deprecated NSCopyBits.
15913         (ns_scroll_run, ns_shift_glyphs_for_insert): Call ns_copy_bits.
15914         (runAlertPanel): New function.
15915         (applicationShouldTerminate:): Call runAlertPanel.
15916         (initFrameFromEmacs, toggleFullScreen:): Only call
15917         useOptimizedDrawing for OSX < 10.10.
15918         (initFrameFromEmacs:): Only call allocateGState for OSX < 10.10.
15919         (windowWillUseStandardFrame:defaultFrame:): Cast arg to abs to int.
15920         (draggingEntered:): Returns NSDragOperation.
15921         (scrollerWidth): Use scrollerWidthForControlSize for OSX >= 10.7.
15923 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
15925         * lisp/emacs-lisp/package.el: Don't ensure-init during startup.
15926         (package--init-file-ensured): New variable.
15927         (package-initialize, package--ensure-init-file): Use it.
15929 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
15931         Honor :fore/background for XBM on NS (Bug#14969)
15932         * src/nsterm.h (EmacsImage): Add xbm_fg, remove initFromSkipXBM,
15933         initFromXBM takes bg, fg args, remove flip arg.
15934         (ns_image_from_XBM): Add bg, fg args.
15935         * src/image.c (x_create_bitmap_from_data)
15936         (Create_Pixmap_From_Bitmap_Data): ns_image_from_XBM takes bg, fg args.
15937         * src/nsimage.m (ns_image_from_XBM): Add fg, bg args, pass to
15938         initFromXBM.  Remove flip arg.
15939         (initFromSkipXBM): Move code to initFromXBM.
15940         (initFromXBM): Actually set fg and bg, instead of playing alpha games.
15941         Use fg, bg from args (Bug#14969).  Remove if (length) section, was
15942         always false.
15943         Remove bit flipping (bitPat, swt), generated incorrect images when
15944         width/height wasn't a multiple of 8.
15945         (setXBMColor:): Modify planes by comparing to saved xbm_fg.
15946         * src/nsterm.m (ns_draw_fringe_bitmap): initFromXBM takes fg, bg args,
15947         remove flip arg.
15949 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
15951         * lisp/emacs-lisp/package.el: Be more careful with the init file.
15952         (package--ensure-init-file): Check that user-init-file is set,
15953         exists, is readable, and is writable.  (Bug#20584)
15954         Also expand the docstring.
15956 2015-05-14  Wilson Snyder  <wsnyder@wsnyder.org>
15958         Sync with upstream verilog-mode revision 6232468
15959         * lisp/progmodes/verilog-mode.el
15960         (verilog-font-lock-grouping-keywords-face)
15961         (verilog-highlight-grouping-keywords): Fix use of face when
15962         `verilog-highlight-grouping-keywords' set.  Reported by Jeff Pompa.
15963         (verilog-auto-reset): Fix AUTORESET to ignore member resets if
15964         parent is reset, bug906.  Reported by Ken Schmidt.
15965         (verilog-auto-inout-module): Add fourth regexp argument to
15966         AUTOINOUTMODULE and AUTOINOUTCOMP for signals to not match, bug856.
15967         Reported by John Tillema.
15968         (verilog-auto-inst-port): Fix AUTOINST interfaces to not show
15969         modport if signal attachment is itself a modport.  Reported by
15970         Matthew Lovell.
15971         (verilog-auto-reset, verilog-auto-sense-sigs): Fix AUTORESET with
15972         always_comb and always_latch, bug844.  Reported by Greg Hilton.
15973         (verilog-at-constraint-p, verilog-beg-of-statement-1): Fix hanging
15974         with many curly-bracket pairs, bug663.
15975         (verilog-set-auto-endcomments): Fix end comments for functions of
15976         type void, etc.  Reported by Alex Reed.
15977         (verilog-do-indent): Fix electric tab deleting form-feeds.  Note
15978         caused by indent-line-to deleting tabls pre 24.5.
15979         (verilog-nameable-item-re): Fix nameable items that can have an
15980         end-identifier to include endchecker, endgroup, endprogram,
15981         endproperty, and endsequence.  Reported by Alex Reed.
15982         (verilog-label-be): When auto-commenting a buffer, consider
15983         auto-comments on all known keywords (not just a subset thereof).
15984         Reported by Alex Reed.
15985         (verilog-auto-end-comment-lines-re)
15986         (verilog-end-block-ordered-re, verilog-set-auto-endcomments):
15987         Automatically comment property/endproperty blocks to match other
15988         similar blocks like sequence/endsequence, function/endfunction, etc.
15989         Reported by Alex Reed.
15990         (verilog-set-auto-endcomments): Detect the function- or task-name
15991         when auto-commenting blocks that lack an explicit portlist.
15992         Reported by Alex Reed.
15993         (verilog-auto, verilog-auto-insert-last): Add AUTOINSERTLAST to
15994         allow post-AUTO user fixups, bug826.  Reported by Dennis Muhlestein.
15995         (verilog-no-indent-begin-re): When `verilog-indent-begin-after-if'
15996         is nil, fix indenting initial/final to match always statements,
15997         bug825.  Reported by Tim Clapp.
15998         (verilog-extended-complete-re): Fix indentation of DPI-C imports
15999         with c_identifiers, and DPI-C imports, bug557.  Reported by ZeDong
16000         Mao and Jason Forkey.
16001         (verilog-read-decls): Fix parsing typed interfaces.  Fix
16002         AUTOINOUTMODPORT missing types.  Reported by Stephan Bourduas.
16003         Fix localparam not being ignored in AUTOINSTPARAM,
16004         bug889.  Reported by Shannon Hill.
16005         (verilog-auto-output-every): Add regexp to AUTOOUTPUTEVERY,
16006         bug793.  Reported by Pierre-David Pfister.
16007         (verilog-auto-arg-format, verilog-auto-arg-ports):
16008         Add verilog-auto-arg-format to support newlines in AUTOARG.
16009         Reported by Jie Xiao.
16010         (verilog-batch-execute-func): Do not batch re-auto files loaded by
16011         Local Variables.  Fix printing "no changes to be saved" with
16012         verilog-batch.  Reported by Dan Dever.
16013         (verilog-auto-inout-module): Fix AUTOINOUTMODULE not inserting
16014         interface-only modules, bug721.  Reported by Dean Hoyt.
16015         Author: Alex Reed <acreed4@gmail.com>
16016         * lisp/progmodes/verilog-mode.el (verilog-beg-of-statement):
16017         Don't treat '<keyword>:<identifier>' as the start of a labeled
16018         statement, bug905.  Reported by Enzo Chi.
16019         (verilog-directive-re, verilog-compiler-directives)
16020         (verilog-keywords): Match full set of IEEE 2012-1800 compiler
16021         directives (plus some extras) when determining indentation, bug
16022         901.  Reported by Bernd Beuster.
16023         (verilog-at-constraint-p): Fix indentation of coverpoint bins if
16024         iff expression doesn't start with word-character, bug900.
16025         (verilog-optional-signed-range-re, verilog-optional-signed-re):
16026         Fix incorrect indentation/alignment of unsigned declarations,
16027         bug897.
16028         (verilog-looking-back, verilog-in-attribute-p): Fix labeling of
16029         always constructs, bug895.
16030         (verilog-calc-1): Fix verilog-mode constraint indentation, bug324.
16031         Reported by Eric Mastromarchi.
16032         (verilog-beg-of-statement): Fix indenting for some forms of
16033         constraintsm bug433.  Reported by Brad Parker.  Fix indentation of
16034         continued assignment incorrect if first line ends with ']', bug437.
16035         Reported by Dan Dever.  Fix indention of cover inside an
16036         ifdef, bug 862.  Reported by Bernd Beuster.  Fix labeling do-while
16037         blocks, bug842.
16038         (verilog-preprocessor-re): Fix fork/end UNMATCHED warning, bug859.
16039         Reported by Kaushal Modi.
16040         (verilog-set-auto-endcomments): Fix endlabel end comments, bug888.
16041         (verilog-backward-token): Fix indenting sensitivity lists with
16042         named events, bug840.  Reed.
16043         (verilog-no-indent-begin-re): Fix `verilog-indent-begin-after-if'
16044         nil not honoring 'forever', 'foreach', and 'do' keywords.
16046 2015-05-14  Paul Eggert  <eggert@cs.ucla.edu>
16048         Check for invalid GTK+ monitor scales
16049         * src/gtkutil.c (xg_get_gdk_scale): Return 1 for invalid scales,
16050         INT_MAX for too-large scales.  All callers changed to assume the
16051         result is valid (Bug#20432).
16052         (xg_frame_set_char_size, xg_update_scrollbar_pos):
16053         Calculate scale only if needed.
16054         Show ASCII approximations instead.
16056 2015-05-14  Eli Zaretskii  <eliz@gnu.org>
16058         Fix daemon crashes when linum-mode is turned on early on
16059         * src/window.c (Fwindow_end): Don't try calling display engine
16060         functions on initial-frame frame.  (Bug#20565)
16062         Fix selective diff browsing in Ediff
16063         * lisp/vc/ediff-util.el (ediff-focus-on-regexp-matches):
16064         Go to the beginning of the region before searching for the
16065         ediff-regexp-focus-* regexps.  (Bug#20568)
16067 2015-05-14  Jan D  <jan.h.d@swipnet.se>
16069         Fixes bug#20142
16070         * src/gtkutil.c (delete_cb): Don't send delete event here, it does
16071         arrive in the main loop, even for Gtk 3 (Bug#20142).
16073         Don't access display after i/o error (Bug#19147).
16074         * src/xterm.c (x_connection_closed): Add third arg ioerror.
16075         If ioerror, set display to 0 (Bug#19147).
16076         (x_error_quitter): Call x_connection_closed with third arg false.
16077         (x_io_error_quitter): Call x_connection_closed with third arg true.
16079         Handle GTK_SCALE, fixes Bug#20432.
16080         * src/gtkutil.c (xg_get_gdk_scale): New function.
16081         (xg_frame_set_char_size)
16082         (x_wm_set_size_hint, xg_get_default_scrollbar_width)
16083         (xg_get_default_scrollbar_height)
16084         (xg_update_horizontal_scrollbar_pos): Take GTK_SCALE in to account
16085         when setting sizes (Bug#20432).
16087 2015-05-13  Leo Liu  <sdl.web@gmail.com>
16089         * lisp/emacs-lisp/generator.el (cps--gensym): Fix.
16091 2015-05-13  Glenn Morris  <rgm@gnu.org>
16093         Fix bootstrap (void function cl-member).
16094         * lisp/emacs-lisp/cl-lib.el: Load cl-seq if no cl-loaddefs file.
16095         * lisp/emacs-lisp/cl-seq.el: Provide a feature.
16097 2015-05-13  Stefan Monnier  <monnier@iro.umontreal.ca>
16099         * lisp/loadup.el ("emacs-lisp/cl-generic"): Preload
16100         * src/lisp.mk (lisp): Add emacs-lisp/cl-generic.elc.
16101         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method):
16102         Avoid defalias for closures which are not immutable.
16103         (cl--generic-prefill-dispatchers): New macro.  Use it to prefill
16104         the dispatchers table with various entries.
16105         * lisp/emacs-lisp/ert.el (emacs-lisp-mode-hook):
16106         * lisp/emacs-lisp/seq.el (emacs-lisp-mode-hook): Use add-hook.
16108 2015-05-13  Eli Zaretskii  <eliz@gnu.org>
16110         Improve tagging of C bindings in DEFVAR_*
16111         * src/Makefile.in (TAGS): Add --regex options to tag the C binding
16112         from DEFVAR_*.
16114 2015-05-13  Paul Eggert  <eggert@cs.ucla.edu>
16116         * src/editfns.c (Fformat): Fix use-after-free bug (Bug#20548).
16118 2015-05-12  Glenn Morris  <rgm@gnu.org>
16120         * lisp/progmodes/tcl.el (tcl-filter):
16121         Handle comint-prompt-read-only like gud.el does.  (Bug#20549)
16123         Add basic VC push support
16124         * lisp/vc/vc.el (vc-push): New autoloaded command.
16125         * lisp/vc/vc-hooks.el (vc-prefix-map, vc-menu-map): Add vc-push.
16126         * lisp/vc/vc-bzr.el (vc-bzr--pushpull): New, factored from vc-bzr-pull.
16127         (vc-bzr-pull): Reimplement using vc-bzr--pushpull.
16128         (vc-bzr-push): New.
16129         * lisp/vc/vc-git.el (vc-git--pushpull): New, factored from vc-git-pull.
16130         (vc-git-pull): Reimplement using vc-git--pushpull.
16131         (vc-git-push): New.
16132         * lisp/vc/vc-hg.el (vc-hg--pushpull): New, factored from vc-hg-pull.
16133         (vc-hg-pull, vc-hg-push): Reimplement using vc-hg--pushpull.
16134         * doc/emacs/maintaining.texi (Pulling / Pushing):
16135         Rename from "VC Pull".  Mention pushing.
16136         (VC With A Merging VCS, VC Change Log): Update xrefs.
16137         (Branches): Update menu.
16138         * doc/emacs/emacs.texi: Update menu.
16139         * etc/NEWS: Mention this.
16141 2015-05-12  Nicolas Petton  <nicolas@petton.fr>
16143         Improve the seq pcase pattern and the `seq-let' macro
16144         * lisp/emacs-lisp/seq.el: The pcase pattern now matches only if the
16145         object is a sequence, and binds each element of ARGS to the
16146         corresponding element of the sequence.
16148 2015-05-12  Eli Zaretskii  <eliz@gnu.org>
16150         Fix tags created from DEFVAR_* declarations in C
16151         * src/Makefile.in (TAGS): Improve the --regex argument to etags,
16152         to make tags extracted from DEFVAR_* declarations more accurate.
16154         Add a test suite for etags
16155         * test/etags/: New test suite, adapted from
16156         http://fly.isti.cnr.it/pub/software/unix/etags-regression-test.tar.bz2,
16157         whose original author is Francesco Potortì <pot@gnu.org>.
16159         Fix tagging of symbols in C enumerations
16160         * lib-src/etags.c (consider_token): Don't tag symbols in
16161         expressions that assign values to enum constants.  See
16162         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00291.html
16163         for details.
16164         (C_entries): Reset fvdef to fvnone after processing a preprocessor
16165         conditional and after a comma outside of parentheses.
16167 2015-05-12  Glenn Morris  <rgm@gnu.org>
16169         * lisp/url/url-handlers.el (url-file-name-completion)
16170         (url-file-name-all-completions): Silence compiler.
16172         * lisp/emacs-lisp/chart.el (chart-axis-draw): Replace obsolete alias.
16174         * lisp/play/dunnet.el (dun-dos-boot-msg): Fix time.  (Bug#20554)
16176 2015-05-12  Stefan Monnier  <monnier@iro.umontreal.ca>
16178         * lisp/emacs-lisp/cl-generic.el: Add dispatch on &context arguments
16179         (cl--generic-mandatory-args): Remove.
16180         (cl--generic-split-args): New function.
16181         (cl-generic-define, cl--generic-lambda): Use it.
16182         (cl-generic-define-method): Use it as well, and add support for
16183         context args.
16184         (cl--generic-get-dispatcher): Handle &context dispatch.
16185         (cl--generic-cache-miss): `dispatch-arg' can now be a
16186         context expression.
16187         (cl--generic-dispatchers): Pre-fill.
16188         * test/automated/cl-generic-tests.el (sm-generic-test-12-context):
16189         New test.
16191 2015-05-11  Glenn Morris  <rgm@gnu.org>
16193         * make-dist: Abort if "make ChangeLog" fails.  Add "--no-changelog".
16195 2015-05-11  Stefan Monnier  <monnier@iro.umontreal.ca>
16197         * lisp/term/xterm.el: Fix xterm-paste handling for rxvt
16198         * lisp/term/rxvt.el: Require term/xterm.
16199         (rxvt-function-map): Use xterm-rxvt-function-map.
16200         (rxvt-standard-colors): Move before first use.
16201         (terminal-init-rxvt): Use xterm--push-map and
16202         xterm-register-default-colors.
16203         (rxvt-rgb-convert-to-16bit, rxvt-register-default-colors): Remove.
16204         * lisp/term/xterm.el (xterm-rxvt-function-map): New var.
16205         Move shared bindings between rxvt and xterm to it.
16206         (xterm-function-map): Use it.  Move the xterm-paste binding to
16207         xterm-rxvt-function-map (bug#20444).
16208         (xterm-standard-colors): Move before first use.
16209         (xterm--push-map): New function.
16210         (xterm-register-default-colors): Take standard colors as argument.
16211         (terminal-init-xterm): Use it.  Adjust call to
16212         xterm-register-default-colors.
16214 2015-05-11  Glenn Morris  <rgm@gnu.org>
16216         * lisp/term/x-win.el: Quieten --without-x compilation.
16217         (x-own-selection-internal, x-disown-selection-internal)
16218         (x-selection-owner-p, x-selection-exists-p, x-get-selection-internal):
16219         Declare.
16221         * Makefile.in (emacslog): Remove srcdir.
16222         (ChangeLog): Update for the above.
16224 2015-05-10  Fabián Ezequiel Gallina  <fgallina@gnu.org>
16226         python.el: better limit for looking-back calls
16227         * lisp/progmodes/python.el (python-shell-accept-process-output):
16228         Use last comint prompt start as limit for looking-back.
16230 2015-05-10  Stefan Monnier  <monnier@iro.umontreal.ca>
16232         CEDET (srecode-insert-fcn): Fix use of oref on a class
16233         * lisp/cedet/srecode/insert.el (srecode-insert-fcn): Fix use of oref
16234         on a class.  Reported by Pierre Lorenzon.
16235         (srecode-template-inserter-point): Remove declaration.
16237         CEDET (srecode-create-dictionary): Avoid obsolete object name
16238         * lisp/cedet/srecode/dictionary.el (srecode-create-dictionary):
16239         Don't use a symbol as an object name.  Reported by Pierre Lorenzon.
16241 2015-05-10  Paul Eggert  <eggert@cs.ucla.edu>
16243         C-x 8 shorthands for curved quotes, Euro, etc.
16244         Although C-x 8 lets you insert arbitrary Unicode characters,
16245         it's awkward to use this to insert commonly used symbols such as curved
16246         quotes, the Euro symbol, etc.  This patch adds simpler sequences for
16247         characters commonly found in English text and in basic math.
16248         For example, assuming the Alt key works on your keyboard and iso-transl
16249         is loaded, one can now type "A-[" instead of "A-RET LEFT SIN TAB RET"
16250         to get the character "‘" (U+2018 LEFT SINGLE QUOTATION MARK).
16251         (Bug#20499)
16252         * doc/emacs/mule.texi (Unibyte Mode):
16253         A few other printing characters now work too.
16254         * etc/NEWS: Document this.
16255         * lisp/international/iso-transl.el (iso-transl-char-map):
16256         Also support the following characters:
16257         ‐ ‑ ‒ – — ― ‘ ’ “ ” † ‡ • ′ ″ € № ← → ↔ − ≈ ≠ ≤ ≥
16259 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
16261         Add xref-find-regexp
16262         * lisp/progmodes/xref.el (xref-find-function): Describe the
16263         `matches' action.
16264         (xref-find-regexp): New command, using it.
16265         (xref-collect-references): Rename to xref-collect-matches.
16266         (xref--collect-reference): Rename to xref--collect-match.
16267         (xref-collect-matches, xref--collect-match): Accept new argument,
16268         KIND.  Update accordingly.
16269         (xref--regexp-to-extended): New function.
16270         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Support the
16271         `matches' action.
16272         (elisp--xref-find-matches): Accept new argument.  Resolve a FIXME.
16273         * lisp/progmodes/etags.el (etags-xref-find):
16274         Support the `matches' action.
16275         (etags--xref-find-matches): New function.
16277 2015-05-10  Glenn Morris  <rgm@gnu.org>
16279         * Makefile.in: Fixes for recent change-history changes.
16280         (change-history-nocommit): Update footer regexp.
16281         Ensure output script stays executable.
16283 2015-05-10  Nicolas Petton  <nicolas@petton.fr>
16285         New version of `seq-let' based on a pcase pattern
16286         * lisp/emacs-lisp/seq.el (seq-let): Define the macro in terms of a
16287         pcase pattern if `pcase-defmacro' is defined (Emacs>=25.1).
16289 2015-05-10  Przemysław Wojnowski  <esperanto@cumego.com>
16291         Add basic HTML5 tags and a template
16292         * lisp/textmodes/sgml-mode.el: Basic HTML5 support.
16293         (html-tag-alist): Add HTML5 tags.
16294         (html-tag-help): Add new tags descriptions.
16295         (html-navigational-links): Template for nav links.
16296         (html-html5-template): Template for a HTML5 page.
16298 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
16300         semantic/symref/grep: Don't use word boundaries
16301         * lisp/cedet/semantic/symref/grep.el
16302         (semantic-symref-perform-search): Instead of wrapping input in
16303         word boundaries, check that the characters before and after are
16304         not word constituents.
16306         semantic/symref/grep: Support regexp search
16307         * lisp/cedet/semantic/symref.el
16308         (semantic-symref-hit-to-tag-via-buffer): Don't regexp-quote when
16309         the search type is regexp.
16310         * lisp/cedet/semantic/symref/grep.el
16311         (semantic-symref-perform-search): Support the regexp search type.
16312         Pass -E to Grep when it's used.
16314         semantic-symref-regexp: Allow to input an arbitrary string
16315         * lisp/cedet/semantic/symref/list.el (semantic-symref-regexp):
16316         Allow to input an arbitrary string interactively.
16318         Remove tag-symbol-match-p from etags-xref-find-definitions-tag-order
16319         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
16320         Remove tag-symbol-match-p from the default value
16321         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00292.html).
16323         Declare find-tag obsolete
16324         * lisp/progmodes/etags.el (find-tag): Declare obsolete in favor of
16325         xref-find-definitions.
16327 2015-05-10  Jan D  <jan.h.d@swipnet.se>
16329         Draw composite string correctly (Bug#20537)
16330         * src/nsterm.m (ns_draw_composite_glyph_string_foreground):
16331         New function.
16332         (ns_draw_glyph_string): Call it.
16334 2015-05-09  Eli Zaretskii  <eliz@gnu.org>
16336         Avoid infloop in ERC
16337         * lisp/simple.el (line-move-to-column): Ignore field boundaries
16338         while computing line beginning position.  (Bug#20498)
16340 2015-05-08  Glenn Morris  <rgm@gnu.org>
16342         * Makefile.in (ChangeLog): No longer pass "srcprefix"; cd instead.
16343         * build-aux/gitlog-to-emacslog: Check called from right directory.
16344         (srcprefix): Remove.
16346         * build-aux/gitlog-to-emacslog: Get rid of "distprefix".
16347         * Makefile.in (ChangeLog): No longer pass "distprefix".
16348         * make-dist: Update "make ChangeLog" syntax for the above change.
16350         * build-aux/gitlog-to-emacslog: Don't hard-code "ChangeLog.2".
16351         * Makefile.in (ChangeLog): Pass -n to gitlog-to-emacslog.
16353         * build-aux/gitlog-to-emacslog: Add "for earlier changes" to footer.
16355         Add command-line option-parsing to gitlog-to-emacslog
16356         * build-aux/gitlog-to-emacslog: Add command-line options.
16357         By default, refuse to remove an existing output file.
16358         * Makefile.in (CHANGELOG): Update default.
16359         (ChangeLog): Do not test for existing file.
16360         (change-history-nocommit): Ensure temp file does not exist.
16362         Quieten --without-x compilation
16363         * lisp/term/common-win.el: Provide a feature.
16364         * lisp/term/x-win.el (term/common-win): Require it.
16366         * lisp/dired-aux.el (dired-do-print): Require lpr.
16368         Quieten compilation, eg in --without-x builds
16369         * lisp/dired-aux.el (lpr-printer-switch):
16370         * lisp/frame.el (tool-bar-height):
16371         * lisp/linum.el (font-info):
16372         * lisp/window.el (font-info, overflow-newline-into-fringe)
16373         (tool-bar-height):
16374         * lisp/emacs-lisp/package-x.el (tar-data-buffer):
16375         * lisp/gnus/gnus-util.el (iswitchb-mode):
16376         * lisp/mail/rmailmm.el (libxml-parse-html-region):
16377         * lisp/net/nsm.el (gnutls-peer-status)
16378         (gnutls-peer-status-warning-describe):
16379         * lisp/net/shr.el (libxml-parse-xml-region):
16380         * lisp/url/url-http.el (gnutls-peer-status): Declare.
16382 2015-05-08  Stefan Monnier  <monnier@iro.umontreal.ca>
16384         CEDET (srecode-pop, srecode-peek): Don't use `subclass'
16385         * lisp/cedet/srecode/insert.el (srecode-pop, srecode-peek): Don't use
16386         `subclass' since they're never called with a class.
16387         (srecode-insert-method, srecode-insert-subtemplate): Avoid obsolete
16388         srecode-dictionary-child-p.
16390 2015-05-08  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
16392         * lisp/help.el (help--binding-locus): Document argument POSITION.
16393         (Bug#20530)
16395 2015-05-08  Paul Eggert  <eggert@cs.ucla.edu>
16397         Merge from gnulib
16398         * doc/misc/texinfo.tex: Get latest version.
16400 2015-05-08  Oleh Krehel  <ohwoeowho@gmail.com>
16402         ffap.el (ffap-read-file-or-url): Fix completing-read call
16403         * lisp/ffap.el (ffap-read-file-or-url): The HIST argument of
16404         `completing-read' should be a symbol.
16406 2015-05-08  Eli Zaretskii  <eliz@gnu.org>
16408         Verify file modifications by other programs
16409         * src/filelock.c (lock_file): Check whether the file was modified
16410         since it was visited even if 'create-lockfiles' is nil.  (Bug#18828)
16412         Fix keyboard macros that include function keys
16413         * src/keyboard.c (read_char_minibuf_menu_prompt): Record function
16414         keys in the macro before returning.  (Bug#20454)
16416 2015-05-08  Glenn Morris  <rgm@gnu.org>
16418         * build-aux/gitlog-to-changelog: Treat "Tiny-change" like
16419         "Copyright-paperwork-exempt".  (Bug#20324)
16421         * lisp/vc/log-edit.el: Handle "(tiny change)".  (Bug#20324)
16422         (log-edit-rewrite-tiny-change): New variable.
16423         (log-edit-insert-changelog): Maybe add "Copyright-paperwork-exempt".
16424         (log-edit-changelog-ours-p): Set log-edit-author to a cons.
16425         * etc/NEWS: Mention this.
16427         * lisp/calc/calc.el (math-zerop): Declare.
16429         * lisp/emacs-lisp/eieio-opt.el (help-fns-short-filename): Declare.
16431 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
16433         * lisp/emacs-lisp/subr-x.el (if-let): Fix debug spec.
16434         Support the case when BINDINGS is a single tuple.  (Bug#20525)
16436         * etc/NEWS: Fix typo in previous commit
16437         (14bb519f1034ddb38ce375cbad7095d9b07f8b26).
16439 2015-05-07  Jan D  <jan.h.d@swipnet.se>
16441         * configure.ac: Warn for multiple display crash for all Gtk+ versions.
16442         Output URL to Gtk+ bug (Bug#20452).
16444         * lisp/term/ns-win.el (ns-paste-secondary): Use gui-get-selection.
16446 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
16448         * lisp/emacs-lisp/package.el: New "external" package status.
16449         An external package is any installed package that's not built-in
16450         and not from `package-user-dir', which usually means it's from an
16451         entry in `package-directory-list'.  They are treated much like
16452         built-in packages, in that they cannot be through the Package Menu
16453         deleted and are not considered for upgrades.
16454         (package-desc-status): Identify if a package is installed outside
16455         `package-user-dir'.
16456         (package-menu--print-info-simple)
16457         (package-menu--status-predicate): Add support for it.
16458         * etc/NEWS: Document it.
16460 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
16462         * lisp/mail/rmail.el: Use lexical-binding.
16463         (rmail-bury): Remove unused var `buffer-to-bury'.
16464         (rmail-get-new-mail): Remove unused vars `opoint' and `success'.
16465         (rmail-parse-url): Remove unused var `proto', `user', and `host'.
16466         (rmail-unrmail-new-mail-maybe): Remove unused var `new-file'.
16467         (rmail-insert-inbox-text): Remove unused var `movemail'.
16468         (rmail-add-mbox-headers): Remove unused var `limit'.
16469         (rmail-undelete-previous-message): Remove unused var `value'.
16470         (rmail-reply): Remove unused vars `resent-to', `resent-cc',
16471         `resent-reply-to'.
16472         (rmail-mime-mbox-buffer, rmail-mime-view-buffer): Declare.
16473         (rmail-restore-desktop-buffer): Rename arguments.
16475 2015-05-06  Glenn Morris  <rgm@gnu.org>
16477         * Makefile.in (change-history-commit): Add missing piece of previous.
16479         Avoid unnecessary bumping of Makefile.in's timestamp
16480         * Makefile.in (gen_origin): Move to gitlog-to-emacslog.
16481         (emacslog): New variable.
16482         (ChangeLog): Use $emacslog.  Don't pass $gen_origin.
16483         (unchanged-history-files): Use $emacslog rather than Makefile.in.
16484         (change-history-nocommit): Store hash in $emacslog.
16485         * build-aux/gitlog-to-emacslog (gen_origin): Move default here.
16486         * admin/update_autogen (changelog_files): Update for the above.
16488         * Makefile.in: Don't always insist on removing existing "ChangeLog".
16489         (CHANGELOG): New variable.
16490         (no-ChangeLog): Remove.
16491         (ChangeLog): Replace "no-ChangeLog"; pass output file to script.
16492         (change-history-nocommit): Use a temp file rather than insisting
16493         on deletion of any existing "ChangeLog".
16495         * build-aux/gitlog-to-emacslog: Allow specification of output.
16497         * admin/update_autogen: Add option to update ChangeLog.
16498         (usage): Mention -H.
16499         (changelog_flag, changelog_n, changelog_files): New variables.
16500         (main): Check for -H, and maybe run change-history-nocommit.
16502 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
16504         * lisp/subr.el (delete-dups): Pre-size the hashtable.
16506         * lisp/emacs-lisp/cl.el (define-modify-macro): Make sure
16507         cl--arglist-args is defined (bug#20517).
16509 2015-05-06  Glenn Morris  <rgm@gnu.org>
16511         * Makefile.in (change-history-nocommit): New.
16513 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
16515         * lisp/cedet/pulse.el (pulse-momentary-unhighlight): Only cancel
16516         timer when it is non-nil
16517         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00223.html).
16519 2015-05-06  Glenn Morris  <rgm@gnu.org>
16521         Quieten CEDET compilation
16522         * lisp/cedet/semantic/db-el.el (semanticdb-elisp-sym->tag):
16523         Invert fboundp test to quieten on current Emacs.
16524         * lisp/cedet/ede/config.el (ede-shell-run-something)
16525         (semanticdb-file-table-object, semanticdb-needs-refresh-p)
16526         (semanticdb-refresh-table): Declare.
16527         (ede-preprocessor-map): Require semantic/db.
16529         Quieten cc-mode compilation
16530         * lisp/progmodes/cc-awk.el (c-forward-sws):
16531         * lisp/progmodes/cc-cmds.el (c-forward-subword, c-backward-subword):
16532         Declare.
16534 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
16536         * lisp/subr.el (delete-dups): Avoid nreverse.
16538 2015-05-06  Artur Malabarba  <bruce.connor.am@gmail.com>
16540         * lisp/subr.el (delete-dups): Make it destructive again.
16542 2015-05-06  Paul Eggert  <eggert@cs.ucla.edu>
16544         * doc/lispref/sequences.texi (Sequence Functions): Fix quoting.
16546 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
16548         * lisp/emacs-lisp/testcover.el: Don't use edebug--read (bug#20487).
16549         * lisp/emacs-lisp/testcover.el: Use lexical-binding.
16550         (testcover--read): Rename from testcover-read.  Change calling
16551         convention.  Use edebug-read-and-maybe-wrap-form now that edebug-read
16552         is gone.
16553         (testcover-start): Use add-function.  Move edebug-all-defs binding to
16554         testcover--read.
16555         (testcover-this-defun): Tighten scope of edebug-all-defs binding.
16556         (testcover-mark): Remove unused var `item'.
16557         * src/lread.c (syms_of_lread): Default load-read-function to `read'.
16559 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
16561         * lisp/subr.el (delete-dups): When there are more than 100 candidates,
16562           use a hash table.  This can result in ~500 times speed-up for typical
16563           collections of size 5000, like that of `load-library'.
16565 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
16567         CEDET: Avoid `oref' on classes in a few more cases
16568         * lisp/cedet/ede/generic.el (ede-find-target):
16569         * lisp/cedet/ede.el (ede-project-forms-menu): Avoid `oref' on classes.
16570         * lisp/cedet/semantic/bovine/gcc.el (semantic-gcc-setup): Remove unused
16571         var `prefix'.
16573         * lisp/cedet/semantic/symref/grep.el: Fix unused var warnings.
16574         (grepflags, greppattern): Declare.
16575         (semantic-symref-perform-search): Remove unused var `pat'.
16577         CEDET (srecode-compile-inserter): Avoid `oref' on classes
16578         * lisp/cedet/srecode/compile.el (srecode-compile-inserter):
16579         Avoid `oref' on classes (bug#20491).
16580         (srecode-compile-split-code): Remove unused var `key'.
16582 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
16584         Clean up pulse.el a little
16585         * lisp/cedet/pulse.el (pulse): Remove.
16586         (pulse-momentary-timer): Save instead of the stop time.
16587         (pulse-momentary-highlight-overlay):
16588         Call pulse-momentary-unhighlight first thing.
16589         Treat pulse-momentary-overlay as a single value, not a list.
16590         Save the created timer.  Only pass the stop time to the timer.
16591         (pulse-tick): Update accordingly.
16592         (pulse-momentary-unhighlight): Treat pulse-momentary-overlay as a
16593         single value.  Cancel the timer.
16595 2015-05-06  Tassilo Horn  <tsdh@gnu.org>
16597         * lisp/textmodes/reftex-cite.el (reftex-format-bib-entry):
16598         Support the biblatex journaltitle field.
16600 2015-05-05  Glenn Morris  <rgm@gnu.org>
16602         Minor declare-function improvement
16603         * lisp/emacs-lisp/bytecomp.el
16604         (byte-compile-macroexpand-declare-function):
16605         Handle declarations after calls.  (Bug#20509)
16607         * lisp/progmodes/js.el (js--optimize-arglist): Remove declaration.
16609         * lisp/w32-fns.el (w32-shell-name): Silence compiler.
16611 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
16613         Pulse using a timer
16614         * lisp/cedet/pulse.el (pulse-momentary-stop-time): New variable.
16615         (pulse-momentary-highlight-overlay): Set up the timer instead of
16616         calling `pulse'
16617         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/).
16618         (pulse-tick): New function.
16619         (pulse-momentary-unhighlight): Cut off the stop time.
16620         (pulse-delay): Update the docstring WRT to not using sit-for.
16622         Add semantic/symref/grep file patterns for ruby-mode
16623         * lisp/cedet/semantic/symref/grep.el
16624         (semantic-symref-filepattern-alist): Add patterns for ruby-mode.
16625         Clarify the docstring.
16627         Don't require match
16628         * lisp/progmodes/xref.el (xref--read-identifier): Don't require
16629         match.  That doesn't work for every command, and some identifier
16630         completion tables are bound to be imperfect anyway.
16632 2015-05-05  Stefan Monnier  <monnier@iro.umontreal.ca>
16634         * lisp/cedet/semantic/grammar.el: Fix compiler warnings (bug#20505).
16635         (semantic-grammar--template-expand): New function.
16636         (semantic-grammar-header, semantic-grammar-footer): Use it.
16637         (semantic-grammar--lex-block-specs): Remove unused var `block-spec'.
16638         (semantic-grammar-file-regexp): Refine regexp.
16639         (semantic-grammar-eldoc-get-macro-docstring):
16640         Use elisp-get-fnsym-args-string when available.
16641         (semantic-idle-summary-current-symbol-info): Use new elisp-* names
16642         instead of the old eldoc-* names.
16643         * lisp/emacs-lisp/eldoc.el (eldoc-docstring-format-sym-doc): Move back
16644         from elisp-mode.el.  Tweak calling convention.
16645         * lisp/progmodes/elisp-mode.el (package-user-dir): Declare.
16646         (elisp-get-fnsym-args-string): Add `prefix' argument.  Rename from
16647         elisp--get-fnsym-args-string.
16648         (elisp--highlight-function-argument): Add `prefix' arg.
16649         (elisp-get-var-docstring): Rename from elisp--get-var-docstring.
16650         (elisp--docstring-format-sym-doc): Move back to eldoc.el.
16652 2015-05-05  Glenn Morris  <rgm@gnu.org>
16654         * lisp/help-fns.el (describe-function-1):
16655         Handle builtins with advertised calling conventions.  (Bug#20479)
16657 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
16659         Merge branch 'seq-let'
16661         Update `seq-let' documentation
16662         * doc/lispref/sequences.texi: Update the documentation of `seq-let'
16663         with the support of  `&rest'.
16665         Add support for &rest in `seq-let'
16666         * lisp/emacs-lisp/seq.el (seq--make-bindings): Add support for `&rest'
16667         in the argument list.
16668         * test/automated/seq-tests.el: Add a test for parsing and binding
16669         `&rest' in `seq-let'.
16671 2015-05-05  Pierre Lorenzon  <devel@pollock-nageoire.net>  (tiny change)
16673         * lisp/emacs-lisp/eieio-custom.el (eieio-object-value-get):
16674         Add missing increment (Bug#20467).
16675         (eieio-object-value-create): Adjust to new slots representation
16676         (Bug#20467).
16677         (eieio-object-value-create): Fix missed adjustment to new
16678         representation of slots metadata.
16680 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
16682         * lisp/emacs-lisp/seq.el (seq--make-bindings): Improve the docstring.
16684 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
16686         Work around "Attempt to modify read-only object"
16687         * lisp/progmodes/elisp-mode.el (elisp--xref-format): Extract from
16688         elisp--xref-find-definitions, to work around "Attempt to modify
16689         read-only object" error.
16691         Only skip some variables that have function counterparts
16692         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
16693         Only skip minor-mode-named variable if it's defined in a Lisp
16694         file, and it's in minor-mode-list (bug#20506).
16695         * test/automated/elisp-mode-tests.el
16696         (elisp-xref-finds-both-function-and-variable)
16697         (elisp-xref-finds-only-function-for-minor-mode): New tests.
16699 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
16701         * lisp/progmodes/xref.el (xref--location-at-point): Revert the
16702         previous change.
16703         (xref--insert-xrefs): Buttonize the whole line, including the
16704         number at the beginning.
16706         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
16707         Make sure we're inside the let bindings.
16708         * test/automated/elisp-mode-tests.el
16709         (elisp-completes-functions-after-let-bindings): New test.
16711 2015-05-04  Glenn Morris  <rgm@gnu.org>
16713         * lisp/cedet/semantic/grammar.el (eldoc-function-argstring)
16714         (eldoc-docstring-format-sym-doc, eldoc-last-data-store)
16715         (eldoc-get-fnsym-args-string, eldoc-get-var-docstring):
16716         Remove outdated declarations.
16718         Replace instances of "(eval-when-compile (autoload ...))"
16719         * lisp/gnus/gnus-art.el (nneething-get-file-name):
16720         Declare rather than autoload.
16721         * lisp/gnus/gnus-async.el (gnus-html-prefetch-images):
16722         Remove pointless autoload.
16723         * lisp/gnus/gnus-sync.el (gnus-group-topic): Autoload at run-time.
16724         (gnus-topic-create-topic, gnus-topic-enter-dribble):
16725         Declare rather than autoload.
16726         * lisp/gnus/mm-archive.el (gnus-recursive-directory-files)
16727         (mailcap-extension-to-mime): Autoload at run-time.
16728         * lisp/gnus/mm-util.el (latin-unity-massage-name)
16729         (latin-unity-maybe-remap, latin-unity-representations-feasible-region)
16730         (latin-unity-representations-present-region):
16731         Declare rather than autoload.
16732         * lisp/gnus/mml-smime.el (epg-make-context)
16733         (epg-passphrase-callback-function): Autoload at run-time.
16734         (epg-context-set-signers, epg-context-result-for)
16735         (epg-new-signature-digest-algorithm)
16736         (epg-verify-result-to-string, epg-list-keys, epg-verify-string)
16737         (epg-sign-string, epg-encrypt-string)
16738         (epg-context-set-passphrase-callback, epg-sub-key-fingerprint)
16739         (epg-configuration, epg-expand-group, epa-select-keys):
16740         Declare rather than autoload.
16741         * lisp/gnus/nnir.el (nnimap-change-group, nnimap-make-thread-query):
16742         Autoload at run-time.
16743         (gnus-group-topic-name, nnimap-buffer, nnimap-command)
16744         (gnus-registry-get-id-key, gnus-registry-action):
16745         Declare rather than autoload.
16746         * lisp/gnus/nnmail.el (mail-send-and-exit): Autoload at run-time.
16747         * lisp/gnus/spam.el (spam-stat-buffer-change-to-non-spam)
16748         (spam-stat-buffer-change-to-spam, spam-stat-buffer-is-non-spam)
16749         (spam-stat-buffer-is-spam, spam-stat-load, spam-stat-save)
16750         (spam-stat-split-fancy): Remove pointless autoloads.
16751         * lisp/net/mairix.el: Load gnus-util when compiling.
16752         (gnus-group-read-ephemeral-group, gnus-summary-toggle-header)
16753         (message-field-value): Declare rather than autoload.
16754         (mairix-gnus-ephemeral-nndoc, mairix-gnus-fetch-field):
16755         Check gnus-alive-p is fbound.
16756         (vm-quit, vm-visit-folder, vm-select-folder-buffer)
16757         (vm-check-for-killed-summary, vm-error-if-folder-empty)
16758         (vm-get-header-contents, vm-select-marked-or-prefixed-messages):
16759         Declare rather than autoload.
16761         * lisp/gnus/mm-view.el (epg-decrypt-string): Autoload.
16763         * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
16764         (epg-sub-key-capability, epg-sub-key-validity): Fix declarations.
16766         * lisp/progmodes/elisp-mode.el (xref-collect-references): Declare.
16768         * lisp/emacs-lisp/debug.el (help-xref-interned): Update declaration.
16770         * lisp/allout.el (epg-user-id-string, epg-key-user-id-list):
16771         * lisp/emacs-lisp/package.el (epg-signature-status):
16772         Fix declarations.
16774         * lisp/play/gametree.el (gametree-show-children-and-entry)
16775         (gametree-apply-layout, gametree-mouse-show-subtree)
16776         (gametree-mouse-hide-subtree): Replace obsolete outline aliases.
16778         * lisp/emacs-lisp/check-declare.el (check-declare-verify):
16779         Handle cl-defgeneric, cl-defmethod.
16781 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
16783         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions):
16784         Highlight both type and symbol name.
16786         Insert, highlight and align line numbers in xref output
16787         * lisp/progmodes/etags.el (xref-location-line): Specialize for
16788         xref-etags-location.
16789         * lisp/progmodes/xref.el (xref-location-line): New generic method.
16790         (xref-file-location): Add reader for the line slot.
16791         (xref--location-at-point): Skip to the `xref-location' property.
16792         (xref--collect-reference): Drop the line number from description.
16793         (xref--insert-xrefs): Insert, highlight and align line numbers.
16795 2015-05-04  Daniel Colascione  <dancol@dancol.org>
16797         * lisp/simple.el (save-mark-and-excursion--save)
16798         (save-mark-and-excursion--restore): Fix previous commit
16799         (255a011f0ecf004b31c59945b10154b10fac3af1).
16801 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
16803         Don't pulse the indentation, or the newline
16804         * lisp/cedet/pulse.el (pulse-lighten-highlight)
16805         (pulse-reset-face): Fall back to the inherited background
16806         attribute in FACE.
16807         (pulse-momentary-highlight-region): Add autoload cookie.
16808         * lisp/progmodes/xref.el (xref--maybe-pulse): Don't highlight the
16809         indentation, or the newline, if the line's non-empty
16810         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00118.html).
16812 2015-05-04  Daniel Colascione  <dancol@dancol.org>
16814         Add `save-mark-and-excursion', which has the old
16815         `save-excursion' behavior
16816         * doc/lispref/positions.texi (Excursions):
16817         Document `save-mark-and-excursion'.
16818         * lisp/font-lock.el (font-lock-fontify-block):
16819         Use `save-mark-and-excursion' instead of `save-excursion',
16820         restoring Emacs 24 behavior.
16821         * lisp/simple.el (save-mark-and-excursion--save)
16822         (save-mark-and-excursion--restore): New functions.
16823         (save-mark-and-excursion): New user macro.
16824         * src/editfns.c (Fsave_excursion): Mention `save-mark-and-excursion'
16825         in `save-excursion' documentation.
16827 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
16829         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
16830         Classify lone symbol inside let varlist as variable.
16831         * test/automated/elisp-mode-tests.el
16832         (completest-variables-in-let-bindings): New test.
16834         Add xref-pulse-on-jump
16835         * lisp/cedet/pulse.el (pulse-momentary-highlight-one-line):
16836         Add autoload cookie.
16837         * lisp/progmodes/xref.el (xref-pulse-on-jump): New option.
16838         (xref--maybe-pulse): New function.
16839         (xref-pop-marker-stack, xref--pop-to-location)
16840         (xref--display-position): Use it.
16841         (xref--location-at-point): Use back-to-indentation.
16843 2015-05-04  Stefan Monnier  <monnier@iro.umontreal.ca>
16845         lisp/org/org-{macs,list}.el: Fix lexical warnings
16846         * lisp/org/org-list.el (org-list-struct): Remove unused var `ind'.
16847         (org-list-get-next-item, org-list-get-prev-item)
16848         (org-list-get-children): Mark unused arg `struct'.
16849         (org-list-use-alpha-bul-p): Remove unused var `bul'.
16850         (org-toggle-checkbox): Mark unused var.
16851         (org-update-checkbox-count): Remove unused var `box-num'.
16852         (org-adapt-indentation): Declare.
16853         (org-list-parse-list): Declare var instead of adding a dummy duplicate.
16854         (org-list-send-list): Remove unused var `txt'.
16855         (org-list-to-latex, org-list-to-texinfo): Mark unused arg `params'.
16856         (org-list-to-subtree): Add prefix to dyn-bind var, and declare them.
16857         * lisp/org/org-macs.el: Use `declare'.
16858         (org-with-limited-levels): Declare dyn-bound vars.
16860 2015-05-04  Eli Zaretskii  <eliz@gnu.org>
16862         Fix minor issues with CEDET on MS-Windows
16863         * lisp/cedet/semantic/symref/idutils.el
16864         (semantic-symref-parse-tool-output-one-line): Fix the search
16865         regexp to match MS-Windows file names with drive letters.
16866         (Bug#19468)
16867         * lisp/cedet/semantic/symref/grep.el
16868         (semantic-symref-grep-use-template): Remove "--color=always" from
16869         Grep switches on MS-Windows.
16870         (semantic-symref-grep-shell): Use shell-file-name as the default
16871         value, so this works not only on Posix platforms.
16872         (semantic-symref-perform-search): Use shell-quote-argument instead
16873         of literal '..' for portable quoting of Grep command-line
16874         argument.  Use shell-command-switch instead of a literal "-c".
16875         * lisp/cedet/semantic/bovine/gcc.el
16876         (semantic-gcc-get-include-paths): Use file-name-absolute-p to test
16877         for an absolute file name in a portable way.
16879 2015-05-04  Artur Malabarba  <bruce.connor.am@gmail.com>
16881         * lisp/emacs-lisp/package.el: Remove `package--silence' variable.
16882         (package-import-keyring, package-refresh-contents)
16883         (package-compute-transaction, package--save-selected-packages)
16884         (package-install-from-archive, package-delete)
16885         (package-menu--perform-transaction): Use `inhibit-message' instead.
16886         (package--compile): Set `warning-minimum-level' to :error.
16888 2015-05-03  Stefan Monnier  <monnier@iro.umontreal.ca>
16890         * lisp/term/screen.el (xterm-screen-extra-capabilities): New custom.
16891         (terminal-init-screen): Use it (bug#20356).
16892         * lisp/term/xterm.el: Provide `term/xterm' instead of `xterm'.
16893         (xterm--extra-capabilities-type): New const.
16894         (xterm-extra-capabilities): Use it.
16895         (xterm--version-handler): Lower the pseudo-version for `screen'.
16897 2015-05-03  Dmitry Gutov  <dgutov@yandex.ru>
16899         * lisp/progmodes/xref.el (xref--insert-xrefs): Tweak the faces.
16900         Always insert a newline at the end (to avoid mouse-face background
16901         tail at the last line).
16903         elisp-completion-at-point: Prioritize being quoted over funpos
16904         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
16905         Only consider function position when not inside quoted form
16906         (bug#20425).
16907         * test/automated/elisp-mode-tests.el: New file.
16909         Stop vc-print-log from jumping to the top
16910         * lisp/vc/vc.el (vc-print-log-internal): Pass nil
16911         GOTO-LOCATION-FUNC to vc-log-internal-common when WORKING-REVISION
16912         is not specified.
16913         (vc-incoming-outgoing-internal): Always pass nil.
16914         (vc-log-internal-common): When GOTO-LOCATION-FUNC is nil, don't
16915         call it, and don't set vc-sentinel-movepoint (bug#15322).
16916         (vc-print-root-log): Don't fetch the root working revision, nor
16917         pass it to vc-print-log-internal.
16919 2015-05-02  Michael Vehrs  <Michael.Burschik@gmx.de>
16921         Fix display of keyboard layouts for right-to-left scripts
16922         * lisp/international/quail.el (quail-insert-kbd-layout):
16923         Force left-to-right paragraph direction.
16925 2015-05-02  K. Handa  <handa@gnu.org>
16927         * src/cmds.c (internal_self_insert): When we insert spaces for
16928         padding, set point before the padding spaces, not after them.
16930 2015-05-02  Nicolas Petton  <nicolas@petton.fr>
16932         * lisp/emacs-lisp/seq.el (seq-p): New alias to `sequencep'.
16934 2015-05-02  Dmitry Gutov  <dgutov@yandex.ru>
16936         Fix etags-xref-find for references
16937         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
16938         Use `cl-mapcan'.
16939         * lisp/progmodes/etags.el (etags-xref-find): Ditto.  Prompt for
16940         directory if no tags tables are loaded (bug#19468).
16942 2015-05-02  Philipp Stephani  <phst@google.com>
16944         Update the options in whitespace-style defcustom
16945         * lisp/whitespace.el (whitespace-style): Use `set' instead of a
16946         `repeat' because the option is really set-like.  Add missing
16947         options.  Reorder options to match the order in the
16948         documentation.  (Bug#20346)
16950 2015-05-02  Eli Zaretskii  <eliz@gnu.org>
16952         Fix error diagnostics of c-macro-expand
16953         * lisp/progmodes/cmacexp.el (c-macro-expansion): Don't bail out
16954         too early if no start-marker string was found -- that generally
16955         means cpp exited abnormally, and we still want to show its error
16956         messages to the user.
16958         Don't require Texinfo 5.0 for Emacs documentation
16959         * doc/emacs/docstyle.texi: Use "@set txicodequoteundirected" and
16960         "@set txicodequotebacktick" instead of "@codequotebacktick on" and
16961         "@codequoteundirected on", respectively, to avoid requiring
16962         Texinfo 5.x for Emacs documentation.
16964 2015-05-01  Simen Heggestøyl  <simenheg@gmail.com>
16966         * lisp/files.el (pwd):
16967         When called with a prefix argument, insert the current default
16968         directory at point.
16970 2015-05-01  Stefan Monnier  <monnier@iro.umontreal.ca>
16972         * lisp/isearch.el (isearch-mode-map): Allow backspace remapping
16973         * lisp/isearch.el (isearch-mode-map): Don't inhibit
16974         function-key-map remapping for backspace (bug#20466).
16976 2015-05-01  Dmitry Gutov  <dgutov@yandex.ru>
16978         Implement xref-find-references in etags and elisp-mode
16979         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references): New function.
16980         (elisp-xref-find): Use it.
16981         * lisp/progmodes/etags.el (etags-xref-find): Use `xref-collect-references'.
16982         * lisp/progmodes/xref.el (xref-collect-references):
16983         (xref--collect-reference): New functions.
16985 2015-05-01  Paul Eggert  <eggert@cs.ucla.edu>
16987         Prefer plain characters to Texinfo circumlocutions
16988         For example, prefer 'François' to 'Fran\c{c}ois', 'Fran\c cois',
16989         'Fran@,{c}ois' or 'Francois' (all of which were used!) in Texinfo sources.
16991         Fix single-quoting style in PDF manuals
16992         The PDF versions of the GNU manuals used curved single quotes to
16993         represent grave accent and apostrophe, which made it a pain to cut
16994         and paste code examples from them.  Fix the PDF versions to use
16995         grave accent and apostrophe for Lisp source code, keystrokes, etc.
16996         This change does not affect the info files, nor does it affect
16997         ordinary uses of curved single quotes in PDF.
16998         * doc/emacs/docstyle.texi: New file, which specifies treatment for
16999         grave accent and apostrophe, as well as the document encoding.
17000         * doc/emacs/emacs-xtra.texi, doc/emacs/emacs.texi:
17001         * doc/lispintro/emacs-lisp-intro.texi:
17002         * doc/lispref/back.texi, doc/lispref/book-spine.texi:
17003         * doc/lispref/elisp.texi, doc/lispref/lay-flat.texi:
17004         * doc/misc/ada-mode.texi, doc/misc/auth.texi:
17005         * doc/misc/autotype.texi, doc/misc/bovine.texi, doc/misc/calc.texi:
17006         * doc/misc/cc-mode.texi, doc/misc/cl.texi, doc/misc/dbus.texi:
17007         * doc/misc/dired-x.texi, doc/misc/ebrowse.texi, doc/misc/ede.texi:
17008         * doc/misc/ediff.texi, doc/misc/edt.texi, doc/misc/efaq-w32.texi:
17009         * doc/misc/efaq.texi, doc/misc/eieio.texi, doc/misc/emacs-gnutls.texi:
17010         * doc/misc/emacs-mime.texi, doc/misc/epa.texi, doc/misc/erc.texi:
17011         * doc/misc/ert.texi, doc/misc/eshell.texi, doc/misc/eudc.texi:
17012         * doc/misc/eww.texi, doc/misc/flymake.texi, doc/misc/forms.texi:
17013         * doc/misc/gnus-coding.texi, doc/misc/gnus-faq.texi:
17014         * doc/misc/gnus.texi, doc/misc/htmlfontify.texi:
17015         * doc/misc/idlwave.texi, doc/misc/ido.texi, doc/misc/info.texi:
17016         * doc/misc/mairix-el.texi, doc/misc/message.texi, doc/misc/mh-e.texi:
17017         * doc/misc/newsticker.texi, doc/misc/nxml-mode.texi:
17018         * doc/misc/octave-mode.texi, doc/misc/org.texi, doc/misc/pcl-cvs.texi:
17019         * doc/misc/pgg.texi, doc/misc/rcirc.texi, doc/misc/reftex.texi:
17020         * doc/misc/remember.texi, doc/misc/sasl.texi, doc/misc/sc.texi:
17021         * doc/misc/semantic.texi, doc/misc/ses.texi, doc/misc/sieve.texi:
17022         * doc/misc/smtpmail.texi, doc/misc/speedbar.texi:
17023         * doc/misc/srecode.texi, doc/misc/todo-mode.texi, doc/misc/tramp.texi:
17024         * doc/misc/url.texi, doc/misc/vhdl-mode.texi, doc/misc/vip.texi:
17025         * doc/misc/viper.texi, doc/misc/widget.texi, doc/misc/wisent.texi:
17026         * doc/misc/woman.texi:
17027         Use it instead of '@documentencoding UTF-8', to lessen the need for
17028         global changes like this in the future.
17029         * doc/emacs/Makefile.in (EMACS_XTRA):
17030         * doc/lispintro/Makefile.in (srcs):
17031         * doc/lispref/Makefile.in (srcs):
17032         Add dependency on docstyle.texi.
17033         * doc/misc/Makefile.in (style): New macro.
17034         (${buildinfodir}/%.info, %.dvi, %.pdf, %.html)
17035         (${buildinfodir}/ccmode.info, ${buildinfodir}/efaq%.info, gnus_deps):
17036         Use it.
17038 2015-05-01  Glenn Morris  <rgm@gnu.org>
17040         * test/automated/cl-lib-tests.el (cl-lib-adjoin-test): Fix it.
17042         * lisp/emacs-lisp/pcase.el (get-edebug-spec, edebug-match)
17043         (help-fns--signature): Declare.
17045         * lisp/emacs-lisp/pcase.el (pcase--make-docstring): Require help-fns.
17047 2015-05-01  Nicolas Petton  <nicolas@petton.fr>
17049         New macro seq-let, providing destructuring support to seq.el
17050         * lisp/emacs-lisp/seq.el (seq-let): New macro.  `seq-let' is similar
17051         to `cl-destructuring-bind' but works on all sequence types supported
17052         by `seq.el'.  Bump version number to 1.6.
17053         * test/automated/seq-tests.el: Add tests for seq-let.
17054         * doc/lispref/sequences.texi: Add documentation for seq-let.
17056 2015-05-01  Pontus Michael  <m.pontus@gmail.com>
17058         * lisp/simple.el (blink-matching-open): Better behavior in minibuffer.
17060 2015-05-01  Glenn Morris  <rgm@gnu.org>
17062         * lisp/emacs-lisp/ert.el (ert--special-operator-p): Fix previous.
17064 2015-05-01  Artur Malabarba  <bruce.connor.am@gmail.com>
17066         * lisp/emacs-lisp/bytecomp.el: Revert "Silence noninteractive compilations"
17067         This reverts commit 9a7ddde977378cb5276a81476ae458889c403267.
17068         This reverts commit 3c0ea587daf8b17960b90603a70e3ac4057d883d.
17069         With message: "* lisp/emacs-lisp/bytecomp.el: Use `inhibit-message'".
17070         (Bug#20445).
17072 2015-05-01  K. Handa  <handa@gnu.org>
17074         * lisp/international/mule-cmds.el (input-method-use-echo-area):
17075         Change :type to 'boolean.
17077 2015-05-01  Lars Magne Ingebrigtsen  <larsi@gnus.org>
17079         Start using proportional fonts in eww by default
17080         * lisp/net/shr.el (shr-use-fonts): Switch the default to t, since
17081         it seems to work well.
17083         Fix links in tables in shr
17084         * lisp/net/shr.el: Remove `shr-inhibit-decoration', because that
17085         makes (some) links in tables not work.
17087 2015-05-01  Jan D  <jan.h.d@swipnet.se>
17089         * lisp/term/ns-win.el (ns-get-cut-buffer-internal): Remove this alias.
17091 2015-04-30  Glenn Morris  <rgm@gnu.org>
17093         * lisp/emacs-lisp/ert.el (ert--special-operator-p):
17094         Update for 2015-02-08 change to indirect-function.
17096         * lisp/term/ns-win.el (ns-get-selection-internal):
17097         Remove declaration for function deleted 2014-10-21.
17099         * lisp/dom.el: Load subr-x when compiling, for when-let.
17101         Silence some compilation warnings
17102         * lisp/emacs-lisp/check-declare.el (compilation-forget-errors):
17103         * lisp/emulation/cua-base.el (delete-active-region):
17104         * lisp/net/net-utils.el (w32-get-console-output-codepage):
17105         * lisp/term/ns-win.el (ns-own-selection-internal)
17106         (ns-disown-selection-internal, ns-selection-owner-p)
17107         (ns-selection-exists-p, ns-get-selection):
17108         Declare for compiler.
17110         Function declaration updates prompted by 'make check-declare'
17111         * lisp/emacs-lisp/package.el (lm-homepage):
17112         * lisp/gnus/gnus-util.el (iswitchb-read-buffer):
17113         * lisp/gnus/mm-decode.el (libxml-parse-html-region):
17114         * lisp/gnus/mml.el (libxml-parse-html-region):
17115         * lisp/gnus/nnrss.el (libxml-parse-html-region):
17116         * lisp/net/eww.el (libxml-parse-html-region):
17117         * lisp/net/shr.el (libxml-parse-html-region):
17118         * lisp/vc/vc-bzr.el (vc-annotate-convert-time):
17119         * lisp/vc/vc-cvs.el (vc-annotate-convert-time):
17120         * lisp/vc/vc-git.el (vc-annotate-convert-time):
17121         * lisp/vc/vc-hg.el (vc-annotate-convert-time):
17122         * lisp/vc/vc-mtn.el (vc-annotate-convert-time):
17123         * lisp/vc/vc-rcs.el (vc-annotate-convert-time):
17124         Update declaration.
17126         Remove compatibility code for 20-year old function renaming
17127         * lisp/progmodes/idlw-shell.el (idlwave-shell-comint-filter):
17128         Make it an obsolete alias.
17129         (idlwave-shell-filter): Change all uses to comint-output-filter.
17131 2015-04-30  Tassilo Horn  <tsdh@gnu.org>
17133         Add ace-window face config
17134         * etc/themes/tsdh-light-theme.el (tsdh-light): Add ace-window face
17135         configuration.
17137 2015-04-30  Paul Eggert  <eggert@cs.ucla.edu>
17139         Unclutter 'make doc' output a bit
17140         * Makefile.in ($(DOCS), $(INSTALL_DOC), $(UNINSTALL_DOC)):
17141         Use make subst rather than sh IFS to split target string apart.
17142         This makes 'make' output easier to follow.
17144         Merge from gnulib
17145         * doc/misc/texinfo.tex: Update from gnulib.
17147 2015-04-30  Artur Malabarba  <bruce.connor.am@gmail.com>
17149         * lisp/emacs-lisp/package.el: Some speed optimizations on menu refresh.
17150         (package-menu--print-info): Obsolete.
17151         (package-menu--print-info-simple): New function.
17152         (package-menu--refresh): Use it, simplify code, and improve
17153         performance.
17154         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print-entry):
17155         Tiny performance improvement.
17157         * lisp/emacs-lisp/package.el (package--message): inhibit-message.
17159 2015-04-29  Paul Eggert  <eggert@cs.ucla.edu>
17161         Omit -Wstrict-overflow workaround in GCC 5
17162         * src/process.c: Remove workaround for GCC -Wstrict-overflow bug
17163         if it's GCC 5 or later, as the bug appears to be fixed in GCC 5.1.
17165         Merge from gnulib
17166         This incorporates:
17167         2015-04-29 extern-inline: no need for workaround in GCC 5.1
17168         2015-04-26 file-has-acl: port to CentOS 6
17169         * m4/acl.m4, m4/extern-inline.m4: Update from gnulib.
17171 2015-04-29  Helmut Eller  <eller.helmut@gmail.com>
17173         Set next-error-* in xref--xref-buffer-mode
17174         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
17175         Set `next-error-function' and `next-error-last-buffer'.
17176         (xref--next-error-function): New function.
17177         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01311.html)
17179 2015-04-29  Fabián Ezequiel Gallina  <fgallina@gnu.org>
17181         python.el: Fix warnings on looking-back calls missing LIMIT
17182         * lisp/progmodes/python.el (python-shell-accept-process-output):
17183         Pass LIMIT arg to looking-back.
17185 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
17187         * lisp/emacs-lisp/package.el: Use pushnew for downloads in progress.
17188         (package--download-and-read-archives): Use pushnew instead of
17189         append.  If something terrible happened during a previous
17190         download, simply refreshing should now make things work again.
17192 2015-04-29  Dmitry Gutov  <dgutov@yandex.ru>
17194         Introduce etags-xref-find-definitions-tag-order
17195         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
17196         New variable.
17197         (etags--xref-find-definitions): Use it (bug#19468).
17199 2015-04-29  Eli Zaretskii  <eliz@gnu.org>
17201         PATH- and completion-related fixes in Eshell on MS-Windows
17202         * lisp/eshell/esh-ext.el (eshell-search-path): When running on
17203         MS-Windows, prepend "." to list of directories produced from PATH,
17204         as Windows always implicitly searches the current directory first.
17205         (eshell-force-execution): Make it have a non-nil default value on
17206         MS-Windows and MS-DOS.
17207         * lisp/eshell/em-cmpl.el (eshell-complete-commands-list): If
17208         eshell-force-execution is non-nil, complete on readable files and
17209         directories, not only executables.  When running on MS-Windows,
17210         prepend "." to list of directories produced from PATH, as Windows
17211         always implicitly searches the current directory first.
17213 2015-04-29  Sam Steingold  <sds@gnu.org>
17215         Bury RCIRC buffers when there is no activity
17216         * lisp/net/rcirc.el (rcirc-non-irc-buffer): Remove.
17217         (rcirc-bury-buffers): New function.
17218         (rcirc-next-active-buffer): When there is no new activity, use
17219         `rcirc-bury-buffers' to hide all RCIRC buffers.
17221 2015-04-29  Krzysztof Jurewicz  <krzysztof.jurewicz@gmail.com>  (tiny change)
17223         Fix DBUS query result parsing for secrets-search-items
17224         * lisp/net/secrets.el (secrets-search-items): Fix DBUS query result
17225         parsing.  The function assumed that return value of the
17226         SearchItems method called on a collection is a list of two lists,
17227         however this is true only when no collection is specified.  GNOME
17228         had used to incorrectly return a list of two lists in both cases,
17229         but this was already fixed:
17230         https://bugzilla.gnome.org/show_bug.cgi?id=695115 .  Also fix an
17231         incorrect information in the secrets-search-items’ docstring.
17232         (Bug#20449)
17234 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
17236         * lisp/emacs-lisp/bytecomp.el (byte-compile--message):
17237         Use `inhibit-message' instead of hiding the previous message
17238         with (message nil).
17240 2015-04-29  Oleh Krehel  <ohwoeowho@gmail.com>
17242         Remove the deprecated INTERNAL_FIELD macro by expanding it
17243         * src/lisp.h (INTERNAL_FIELD): Remove.
17244         (DEFVAR_KBOARD): Modify accordingly.
17245         * src/alloc.c, src/buffer.c, src/buffer.h, src/category.c:
17246         * src/keyboard.c, src/keyboard.h, src/syntax.c: Adjust users.
17247         * src/buffer.c (compact_buffer): Use BVAR.
17249 2015-04-29  Glenn Morris  <rgm@gnu.org>
17251         Replace an obsolete function alias
17252         * lisp/isearch.el (isearch-yank-x-selection):
17253         * lisp/mouse-copy.el (mouse-drag-secondary-pasting)
17254         (mouse-drag-secondary-moving):
17255         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
17256         Replace obsolete alias x-get-selection with gui-get-selection.
17258 2015-04-29  Stefan Monnier  <monnier@iro.umontreal.ca>
17260         * lisp/mail/rmailsum.el: Use lexical-binding.
17262 2015-04-29  Glenn Morris  <rgm@gnu.org>
17264         * test/automated/package-test.el (package-test-update-archives-async):
17265         Skip test on hydra.nixos.org.
17267 2015-04-28  Glenn Morris  <rgm@gnu.org>
17269         * lisp/foldout.el: Update for 2015-01-30 outline.el changes.
17270         (foldout-zoom-subtree, foldout-exit-fold, foldout-mouse-show)
17271         (foldout-mouse-hide-or-exit): Use new names for outline functions.
17273         * lisp/cedet/semantic/bovine/c.el (semantic-c-do-lex-if):
17274         Update for 2014-06-26 hideif.el change.
17276         * lisp/mail/rmailsum.el: Fix search for encoded subjects.  (Bug#19088)
17277         (rmail--decode-and-apply): New function.
17278         (rmail-message-regexp-p-1, rmail-message-subject-p): Use it.
17280         * lisp/mail/rmail.el (rmail-highlighted-headers): Fix :type.
17282 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
17284         * lisp/emacs-lisp/package.el: Fix priority-hiding corner case
17285         (package-menu--refresh): Delegate obsolete-hiding to
17286         `package--remove-hidden'.
17287         (package--remove-hidden): Disregard high-priority package if it is
17288         older than the installed one.
17290 2015-04-28  Paul Eggert  <eggert@cs.ucla.edu>
17292         Update source file encoding list
17293         Update admin/notes/unicode, along with coding system cookies in
17294         other files, so that the two match each other better.
17295         * admin/notes/unicode: lisp/language/ethio-util.el and
17296         lisp/language/ethiopic.el also use utf-8-emacs.
17297         * admin/notes/hydra, doc/misc/dbus.texi, doc/misc/org.texi:
17298         * doc/misc/remember.texi, etc/refcards/cs-dired-ref.tex:
17299         * etc/refcards/cs-refcard.tex, etc/refcards/cs-survival.tex:
17300         * etc/refcards/sk-dired-ref.tex, etc/refcards/sk-refcard.tex:
17301         * etc/refcards/sk-survival.tex:
17302         Add "coding: utf-8" so that this file is not mishandled in a
17303         Latin-1 or Big-5 locale.
17304         * lisp/international/robin.el, lisp/org/ox-ascii.el:
17305         Specify utf-8, not utf-8-emacs, as these are plain UTF-8 files.
17306         * lisp/language/ethio-util.el: Fix trailer.
17308 2015-04-28  Eli Zaretskii  <eliz@gnu.org>
17310         Fix synchronous invocation of Ispell
17311         * lisp/textmodes/ispell.el (ispell-init-process): Assign a non-nil
17312         value to ispell-process-directory before calling ispell-init-process.
17313         Don't call set-process-coding-system if ispell-async-processp is nil.
17314         (Bug#20448)
17316 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
17318         * lisp/emacs-lisp/package.el: Skip space and comments in init file
17319         (package--ensure-init-file): Insert snippet at first
17320         non-whitespace non-comments line.  Respects local-vars at the top
17321         of the file.
17323 2015-04-28  Glenn Morris  <rgm@gnu.org>
17325         * lisp/mail/rmail.el (rmail-copy-headers):
17326         Handle rmail-nonignored-headers being nil.  (Bug#18878)
17328         * lisp/subr.el (delay-mode-hooks): Fix doc typo.
17330         * lisp/vc/vc-bzr.el (vc-bzr-after-dir-status):
17331         Don't get confused by a bzrlib version mismatch warning.
17333 2015-04-27  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
17335         Change default location of EUDC options file
17336         * etc/NEWS: Document change to EUDC options file's default location.
17337         * lisp/net/eudc-vars.el (eudc-options-file): Use
17338         `locate-user-emacs-file' to change default options file location.
17340 2015-04-27  Glenn Morris  <rgm@gnu.org>
17342         * test/automated/package-test.el (package-test-update-archives-async):
17343         Try to handle the test server script dying.
17345 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
17347         * lisp/saveplace.el (save-place-mode): New minor mode.
17348         (save-place): Redefine as an obsolete alias.
17350         * lisp/midnight.el: Make it a minor mode.  Allow predicates.
17351         * lisp/midnight.el: Use lexical-binding.
17352         (midnight-mode): Make it a proper minor mode.
17353         (midnight-buffer-display-time): Make arg non-optional.
17354         (midnight-find): Remove.
17355         (clean-buffer-list-kill-never-regexps)
17356         (clean-buffer-list-kill-regexps): Tweak type for new function choice.
17357         (clean-buffer-list-delay): Allow clean-buffer-list-kill-regexps to
17358         contain functions.
17359         (clean-buffer-list): Use cl-find.
17360         Allow clean-buffer-list-kill-never-regexps to contain functions.
17362 2015-04-27  Nicolas Petton  <nicolas@petton.fr>
17364         Bump version of seq.el to 1.5
17365         * lisp/emacs-lisp/seq.el (seq-doseq): Remove undocumented return value
17366         from seq-doseq.  Bump version number of seq.el.
17368 2015-04-27  Glenn Morris  <rgm@gnu.org>
17370         * lisp/mail/rmail.el (rmail-reply):
17371         Decode subject before matching "Re:" prefix.  (Bug#20396)
17373 2015-04-27  Artur Malabarba  <bruce.connor.am@gmail.com>
17375         * lisp/emacs-lisp/package.el: Small improvements
17376         (package--with-work-buffer-async): More informative error.
17377         (package-install-user-selected-packages): Rename to
17378         `package-install-selected-packages'.
17380 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
17382         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last
17383         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last change.
17384         (eieio--class-make): Remove leftover `tag'.
17386 2015-04-27  Glenn Morris  <rgm@gnu.org>
17388         * lisp/gnus/message.el (gnus-extract-address-components):
17389         Remove bogus declaration that was masking previous problem.
17391 2015-04-27  Nicolas Graner  <nicolas.graner@u-psud.fr>  (tiny change)
17393         * lisp/gnus/message.el (message-insert-formatted-citation-line):
17394         Fix typo.  (Bug#20318)
17396 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
17398         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Reuse oldc.
17400         * lisp/textmodes/reftex-toc.el: Improve multi-frame behavior
17401         * lisp/textmodes/reftex-toc.el (reftex-toc-revert): Avoid displaying
17402         the buffer in yet another frame.
17403         (reftex-toc-visit-location): Make sure toc-window has focus at the end
17404         when `final' is nil.
17405         (reftex--rebuilding-toc): Defvar to avoid `boundp' and
17406         silence warnings.  Use `--' to clarify that it's internal.
17407         (reftex-toc-next, reftex-toc-previous, reftex-toc-demote)
17408         (reftex-toc-promote): Clarify unused argument.
17409         (reftex--pro-or-de, reftex--start-line, reftex--mark-line):
17410         Add `reftex--' prefix.  Fix all users.
17411         (reftex-toc-promote-prepare): Use _ for dummy variable.
17412         (reftex-toc-restore-region): Rename `m.
17414 2015-04-27  Eli Zaretskii  <eliz@gnu.org>
17416         Fix a typo in bibtex.el
17417         * lisp/textmodes/bibtex.el (bibtex-insert-kill): Fix a typo from
17418         last change.  (Bug#20429)
17420         Fix redisplay of frame after loading new fonts
17421         * src/xdisp.c (redisplay_internal): When retrying redisplay of
17422         a frame because new fonts were loaded, disable all redisplay
17423         optimizations on that frame by calling SET_FRAME_GARBAGED.
17424         (Bug#20410)
17426 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
17428         * lisp/info.el (Info-menu): Properly provide the `default'
17429         (Bug#20391)
17431         * lisp/progmodes/elisp-mode.el (elisp--get-fnsym-args-string):
17432         Catch errors from documentation (bug#20418).
17433         (emacs-lisp-mode-abbrev-table): Remove redundant defvar.
17435 2015-04-26  Stefan Monnier  <monnier@iro.umontreal.ca>
17437         * lisp/emacs-lisp/package.el: Move variables to silence byte-compiler.
17438         Remove redundant ":group 'package".
17440 2015-04-26  Eli Zaretskii  <eliz@gnu.org>
17442         Fix a typo in rmail.el
17443         * lisp/mail/rmail.el (rmail-ensure-blank-line): Fix a typo in the
17444         last commit.  (Bug#20429)
17446 2015-04-26  Dmitry Gutov  <dgutov@yandex.ru>
17448         Introduce xref-prompt-for-identifier
17449         * lisp/progmodes/xref.el (xref-prompt-for-identifier): New option.
17450         (xref--read-identifier): Use it
17451         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01205.html).
17453 2015-04-26  João Távora  <joaotavora@gmail.com>
17455         `tex-insert-quote' after single `'' opens quotes instead of closing
17456         Without this, it's very hard to precede double quotes with the
17457         apostrophe character, i.e. insert the sequence '``
17458         (quote-backquote-backquote), commonly useful in portuguese, for
17459         instance.
17460         * lisp/textmodes/tex-mode.el (tex-insert-quote): Add ?' to the list of
17461         preceding chars making `tex-insert-quote' be in the "opening" context.
17463 2015-04-25  Dmitry Gutov  <dgutov@yandex.ru>
17465         Pass `id' to `completing-read' as def instead of initial input
17466         * lisp/progmodes/xref.el (xref--read-identifier): Pass `id' to
17467         `completing-read' as the default value instead of initial input
17468         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01182.html).
17470 2015-04-25  Paul Eggert  <eggert@cs.ucla.edu>
17472         Don't freeze with unreadable processes
17473         Don't freeze if an exiting process can't be read from.  (Bug#19860).
17474         This fixes a bug I introduced in
17475         2014-07-08T07:24:07Z@eggert@cs.ucla.edu
17476         "* process.c: Add sanity checks for file descriptors."
17477         Dmitry Gutov did most of the legwork in finding the problem.
17478         * src/process.c (wait_reading_process_output):
17479         Treat non-running processes that can't be read from
17480         the same as other non-running processes.
17482 2015-04-25  Alan Mackenzie  <acm@muc.de>
17484         Fix change from 2015-04-22 "On C-y, stop some text property entries ..."
17485         * lisp/subr.el (remove-yank-excluded-properties): Put
17486         `with-silent-modifications' around only the last three lines of code.
17488 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
17490         * lisp/emacs-lisp/package.el (package-all-keywords): Don't cache
17491         (package--all-keywords): Deleted variable.
17493         * etc/NEWS: Document package-hiding functionality.
17495 2015-04-25  Eli Zaretskii  <eliz@gnu.org>
17497         * lisp/window.el (recenter-last-op): Doc fix.  (Bug#20419)
17499         Clarify the doc string of 'replace-regexp-in-string'
17500         * lisp/subr.el (replace-regexp-in-string): Doc fix.  (Bug#20395)
17502         Improve doc string of 'insert-buffer-substring'
17503         * src/editfns.c (Finsert_buffer_substring): Doc fix.  (Bug#20421)
17505         MS-Windows followup for the recent gnulib update
17506         * nt/gnulib.mk (libgnu_a_SOURCES): Replace file-has-acl.c with
17507         acl-internal.c.
17509 2015-04-24  Paul Eggert  <eggert@cs.ucla.edu>
17511         Spelling fixes
17513         Merge from gnulib
17514         This incorporates:
17515         2015-04-24 file-has-acl: new module, split from acl
17516         2015-04-24 manywarnings: add GCC 5.1 warnings
17517         2015-04-21 lstat: fix cross-compilation 'ln -s' problem
17518         2015-04-15 qacl: Simplify HP-UX acl_nontrivial check
17519         2015-04-15 acl: On Linux, check for acls without libacl
17520         2015-04-14 tempname: avoid unused parameter warnings (trivial)
17521         * lib/acl-internal.c: New file, from gnulib.
17522         * lib/file-has-acl.c: Remove; no longer imported from gnulib.
17523         * lib/acl-internal.h, lib/gnulib.mk, lib/qcopy-acl.c, lib/tempname.c:
17524         * m4/acl.m4, m4/gnulib-comp.m4, m4/lstat.m4, m4/manywarnings.m4:
17525         Update from gnulib.
17527         Port --enable-gcc-warnings to GCC 5.1 x86-64
17528         * lib-src/ebrowse.c (dump_sym):
17529         * lib-src/hexl.c (main):
17530         * src/ccl.c (ccl_driver):
17531         * src/character.c (string_escape_byte8):
17532         * src/dbusbind.c (xd_retrieve_arg, xd_add_watch):
17533         * src/gnutls.c (Fgnutls_boot):
17534         * src/gtkutil.c (xg_check_special_colors):
17535         * src/image.c (x_build_heuristic_mask):
17536         * src/print.c (safe_debug_print, print_object):
17537         * src/term.c (produce_glyphless_glyph):
17538         * src/xdisp.c (get_next_display_element)
17539         (produce_glyphless_glyph):
17540         * src/xterm.c (x_draw_glyphless_glyph_string_foreground):
17541         Don't use a signed format to print an unsigned integer, or vice
17542         versa.  GCC 5.1's new -Wformat-signedness option warns about this.
17543         * src/image.c (png_load_body, jpeg_load_body):
17544         Silence a bogus setjump diagnostic from GCC 5.1 (GCC bug 54561).
17546 2015-04-24  Tassilo Horn  <tsdh@gnu.org>
17548         Add new faces to tsdh-light-theme
17549         * etc/themes/tsdh-light-theme.el (tsdh-light): New face
17550         definitions for Info-quoted, ace-jump-face-foreground,
17551         hl-paren-face, show-paren-match, and show-paren-mismatch.
17553 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
17555         * lisp/emacs-lisp/seq.el (seq-doseq): Fix the macro.
17557 2015-04-24  Glenn Morris  <rgm@gnu.org>
17559         * build-aux/gitlog-to-emacslog:
17560         Use raw log format rather than wrapped one.
17562 2015-04-24  Stefan Monnier  <monnier@iro.umontreal.ca>
17564         * lisp/emacs-lisp/seq.el (seq-doseq): Tighten the code.
17565         (seq-doseq): Fix out-of-scope binding.
17566         Don't call `seq-length at every iteration.
17567         Reduce `if's from 3 to 2 per iteration.
17568         (emacs-lisp-mode-hook): Don't tweak in Emacs≥25.
17570 2015-04-24  Glenn Morris  <rgm@gnu.org>
17572         * lisp/textmodes/text-mode.el (text-mode-hook):
17573         Move text-mode-hook-identify to default.
17575         * lisp/mouse.el (minor-mode-menu-from-indicator):
17576         Handle non-function members of minor-mode-map-alist.  (Bug#20201)
17578         * lisp/help-fns.el (describe-function): More type checking.
17579         (describe-function-1): Handle changed symbol-function.  (Bug#20201)
17581         * build-aux/gitlog-to-emacslog: Convert "Fixes:" to "(Bug#)".
17582         (Bug#20325)
17584 2015-04-24  Andreas Schwab  <schwab@linux-m68k.org>
17586         shr: strip leading whitespace when expanding URLs
17587         * lisp/net/shr.el (shr-expand-url): Strip leading whitespace from URL.
17589 2015-04-24  Eli Zaretskii  <eliz@gnu.org>
17591         Clarify "co-authored" some more
17593         * CONTRIBUTE: Clarify "co-authored-by".  (Bug#20400)
17595         Clarify doc strings of functions that search for properties
17596         * src/textprop.c (Fnext_char_property_change)
17597         (Fprevious_char_property_change)
17598         (Fnext_single_char_property_change)
17599         (Fprevious_single_char_property_change, Fnext_property_change)
17600         (Fnext_single_property_change, Fprevious_property_change)
17601         (Fprevious_single_property_change): Clarify doc strings wrt return
17602         value and the optional LIMIT argument.  (Bug#20411)
17604 2015-04-24  Glenn Morris  <rgm@gnu.org>
17606         * test/automated/message-mode-tests.el (message-mode-propertize):
17607         Handle non-writable HOME; eg on hydra.nixos.org.
17609 2015-04-23  Eli Zaretskii  <eliz@gnu.org>
17611         Avoid starting threads by w32-shell-execute
17612         * src/w32fns.c (Fw32_shell_execute): Convert "file:///" URLs into
17613         local file names, before invoking ShellExecute.  (Bug#20220)
17615 2015-04-23  Martin Rudalics  <rudalics@gmx.at>
17617         Fix following doc-links in `widget-documentation-link-action'
17618         * lisp/wid-edit.el (widget-documentation-link-action): Make
17619         following doc-links less simplistic (Bug#20398).
17621 2015-04-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
17623         Improve EUDC manual
17624         * doc/misc/eudc.texi (Troubleshooting):
17625         New LDAP troubleshooting subsection.
17627 2015-04-22  Paul Eggert  <eggert@cs.ucla.edu>
17629         Omit needless "\ " after multibyte then newline
17630         * src/print.c: Include <c-ctype.h>, for c_isxdigit.
17631         (print_object): When print-escape-multibyte is non-nil and a
17632         multibyte character is followed by a newline or formfeed, followed
17633         by a hex digit, don't output a needless "\ " before the hex digit.
17634         * test/automated/print-tests.el (print-hex-backslash): New test.
17636 2015-04-22  Oleh Krehel  <ohwoeowho@gmail.com>
17638         Add a new `inhibit-message' variable
17639         * src/xdisp.c (syms_of_xdisp): Define a boolean `inhibit_message'.
17640         (message3): Don't call `message3_nolog' (i.e. use the Echo Area) when
17641         `inhibit_message' is non-zero.
17642         * etc/NEWS: Add an entry.
17643         * doc/lispref/display.texi: Add an entry for `inhibit-message',
17644         mention it in `message'.
17646 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
17648         Fix last fix in `display-buffer-record-window'.
17649         * lisp/window.el (display-buffer-record-window): Fix last fix.
17651 2015-04-22  Eli Zaretskii  <eliz@gnu.org>
17653         Minor edits in CONTRIBUTE
17654         * CONTRIBUTE: Rearrange instructions about log messages.
17655         Use "Git" capitalized all over.
17656         Use 2 spaces between sentences.
17658 2015-04-22  Artur Malabarba  <bruce.connor.am@gmail.com>
17660         * lisp/files.el (basic-save-buffer): Fix argument.
17662         * lisp/cus-edit.el (custom-file): Consider init-file-had-error.
17663         In case `(and (null custom-file) init-file-had-error)' do the same
17664         thing we'd do if `(null user-init-file)', which is to either error out
17665         or return nil.  This is in line with `custom-save-all' which would
17666         throw an error in that situation.  (Bug#20355)
17668         * lisp/emacs-lisp/package.el: Hide lower-priority packages in menu.
17669         (package-menu-hide-low-priority): New variable, see its doc.
17670         (package-archive-priorities): Update doc.
17671         (package-desc-priority): New function.
17672         (package-desc-priority-version): Use it.
17673         (package--remove-hidden): New function.
17674         (package-menu--refresh): Use it.
17676         * lisp/emacs-lisp/package.el: Implement displaying obsolete packages.
17677         (package-menu--hide-obsolete): New variable.
17678         (package--remove-hidden): Use it.
17679         (package-menu-hide-obsolete): New interactive function to toggle
17680         the variable.
17681         (package--quick-help-keys): Document it.
17682         (package-menu-async): Add :version tag.
17683         (package-menu-mode-map): Bind package-menu-hide-obsolete.
17684         (package-desc-status): Indicate non-installed obsolete packages as
17685         avail-obso.
17686         (package-menu-mark-install): Allow installation of avail-obso.
17687         (package-menu--status-predicate): Sort avail-obso with available.
17689 2015-04-22  Alan Mackenzie  <acm@muc.de>
17691         On C-y, stop some text property entries being written into buffer-undo-list
17692         * lisp/subr.el (remove-yank-excluded-properties): Enclose the code in
17693         `with-silent-modifications'.
17695 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
17697         In display-buffer-record-window record selected window if necessary
17698         * lisp/window.el (display-buffer-record-window): Store selected window
17699         if it differs from 3rd element of 'quit-restore' parameter (Bug#20353).
17701 2015-04-22  Tassilo Horn  <tsdh@gnu.org>
17703         Fix reftex-citation bug
17704         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
17705         Fix `wrong-type-argument stringp nil' error that occurs when AUCTeX
17706         integration is enabled and there are no citations in the document
17707         so far.
17709 2015-04-21  Dmitry Gutov  <dgutov@yandex.ru>
17711         Add or reset based on the presence of MERGE_HEAD
17712         * lisp/vc/vc-git.el (vc-git-find-file-hook): Add
17713         `vc-git-resolve-when-done' to `after-save-hook' in either case.
17714         (vc-git-conflicted-files): Add a TODO.
17715         (vc-git-resolve-when-done): Depending on the presence of
17716         MERGE_HEAD, either update the resolved file in the index, or
17717         remove it from there.  (Bug#20292)
17719 2015-04-21  Glenn Morris  <rgm@gnu.org>
17721         * lisp/custom.el (custom-declare-group): No need to purecopy
17722         custom-current-group-alist members following recent change to set
17723         it to nil before dumping.
17725         * build-aux/gitlog-to-emacslog: Get footer from ChangeLog.2.
17726         (Bug#20399)
17728 2015-04-21  Daniel Colascione  <dancol@dancol.org>
17730         Unbreak no-op buffer save message
17731         * lisp/files.el (basic-save-buffer): Accept called-interactively as
17732         an argument instead of directly invoking called-interactively-p,
17733         which will always yield nil in that context.
17735 2015-04-21  Alan Mackenzie  <acm@muc.de>
17737         CC Mode: Do nothing in before/after-change-functions for text
17738         property changes
17739         Fixes bug#20266.
17740         * lisp/progmodes/cc-mode.el (c-basic-common-init): Make
17741         yank-handled-properties buffer local, and remove 'category from it.
17742         (c-called-from-text-property-change-p): New function.
17743         (c-before-change): Don't do anything if a call of the new function
17744         returns non-nil.
17745         (c-after-change): Don't do much if a call of the new function returns
17746         non-nil.
17747         (c-extend-after-change-region): Put changes to text property 'fontified
17748         inside c-save-buffer-state.
17750 2015-04-20  Stefan Monnier  <monnier@iro.umontreal.ca>
17752         Fix byte-compiler warnings about looking-back
17753         * lisp/vc/log-view.el (log-view-end-of-defun-1):
17754         * lisp/textmodes/tex-mode.el (latex-forward-sexp-1):
17755         * lisp/textmodes/reftex-ref.el (reftex-goto-label):
17756         * lisp/textmodes/bibtex.el (bibtex-insert-kill):
17757         * lisp/progmodes/sh-script.el (sh--maybe-here-document):
17758         * lisp/progmodes/ruby-mode.el (ruby-end-of-defun):
17759         * lisp/progmodes/ada-mode.el (ada-in-numeric-literal-p):
17760         * lisp/org/org.el (org-insert-heading, org-sort-entries):
17761         * lisp/org/org-mouse.el (org-mouse-end-headline)
17762         (org-mouse-context-menu):
17763         * lisp/org/org-clock.el (org-clock-cancel):
17764         * lisp/man.el (Man-default-man-entry):
17765         * lisp/mail/rmail.el (rmail-get-new-mail, rmail-insert-inbox-text)
17766         (rmail-ensure-blank-line):
17767         * lisp/mail/footnote.el (Footnote-delete-footnote):
17768         * lisp/mail/emacsbug.el (report-emacs-bug):
17769         * lisp/info.el (Info-follow-reference, Info-fontify-node):
17770         * lisp/info-look.el (info-lookup-guess-custom-symbol):
17771         * lisp/help-fns.el (help-fns--key-bindings):
17772         * lisp/files.el (hack-local-variables):
17773         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-cmd-complete)
17774         (viper-get-ex-pat, ex-expand-filsyms, viper-get-ex-file)
17775         (viper-complete-filename-or-exit):
17776         * lisp/emulation/viper-cmd.el (viper-backward-indent):
17777         * lisp/emacs-lisp/lisp-mode.el (calculate-lisp-indent):
17778         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
17779         * lisp/cus-edit.el (custom-face-edit-value-create):
17780         * lisp/calendar/todo-mode.el (todo-set-item-priority)
17781         (todo-filter-items-1, todo-convert-legacy-files)
17782         (todo-prefix-overlays): Add explicit second arg to looking-back.
17784 2015-04-20  Glenn Morris  <rgm@gnu.org>
17786         Avoid non-nil current-load-list at startup
17787         * src/process.c (init_process_emacs): Move Fprovide statement...
17788         (syms_of_process): ... to here.
17790         * lisp/loadup.el (custom-current-group-alist): Reset before dumping.
17792         * lisp/startup.el (command-line) <site-run-file>: Avoid rogue value
17793         in emacs -Q.
17795 2015-04-20  Ludovic Courtès  <ludo@gnu.org>
17797         * lisp/loadup.el (exec-path): Avoid storing build-time PATH in binary.
17798         (Bug#20330)
17800 2015-04-20  Glenn Morris  <rgm@gnu.org>
17802         * lisp/cus-start.el (exec-path): Set standard value, to avoid rogue.
17804         Tweak exec-path in uninstalled case
17805         * src/callproc.c (init_callproc): If running uninstalled, do not
17806         include eventual installation libexec directory in exec-path.
17808 2015-04-20  Artur Malabarba  <bruce.connor.am@gmail.com>
17810         * lisp/emacs-lisp/package.el: Filter by multiple keywords and
17811         cache keywords.
17812         (package-menu-filter): Accept a list of keywords.
17813         (package--all-keywords): New variable to cache known keywords.
17814         (package-all-keywords): Populate it if necessary.
17815         (package-refresh-contents): Reset it.
17817         * lisp/emacs-lisp/package.el: Make archive and status pseudo-keywords
17818         (package--has-keyword-p): Understand "arc:xxxx" and "status:xxxx"
17819         as special keywords which match agains package archive and status
17820         respectively.
17821         * etc/NEWS: Document it.
17823 2015-04-20  Eli Zaretskii  <eliz@gnu.org>
17825         Describe and index "empty overlays".
17826         * doc/lispref/display.texi (Overlays): Improve indexing.
17827         (Managing Overlays): Describe "empty" overlays.
17828         (Overlay Properties, Finding Overlays): Add cross-reference to
17829         where empty overlays are described.
17831 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
17833         Spelling fixes
17835         Quote 'like this' in top-level files
17836         * CONTRIBUTE, INSTALL, Makefile.in, README, configure.ac, make-dist:
17837         Prefer to single-quote 'like this' (instead of the older style
17838         `like this').
17839         * configure.ac: Fix some space-before-tab problems that 'git commit'
17840         complained about.
17842         Use bool for boolean in textprop.c, undo.c
17843         * src/textprop.c (soft, hard): Now constants instead of macros.
17844         (validate_plist): Rewrite to avoid need for boolean local.
17845         (interval_has_all_properties, interval_has_some_properties)
17846         (interval_has_some_properties_list, add_properties)
17847         (remove_properties, get_char_property_and_overlay)
17848         (Fnext_single_char_property_change)
17849         (Fprevious_single_char_property_change, add_text_properties_1)
17850         (Fremove_text_properties, Fremove_list_of_text_properties)
17851         (copy_text_properties):
17852         * src/tparam.c (tparam1):
17853         * src/undo.c (record_change, record_property_change)
17854         (syms_of_undo):
17855         Use 'true' and 'false' for booleans.
17857 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
17859         * lisp/vc/vc-git.el (vc-git-find-file-hook):
17860         Call `smerge-start-session' even when dealing with a stash
17861         conflict (bug#20292).
17863 2015-04-19  Vibhav Pant  <vibhavp@gmail.com>
17865         Add option to eshell/clear to clear scrollback.
17866         * lisp/eshell/esh-mode.el (eshell/clear-scrollback): New function.
17867         (eshell/clear): Add an optional SCROLLBACK argument.  If non-nil,
17868         scrollback contents are cleared.
17869         * etc/NEWS: Describe change.
17870         * doc/misc/eshell.texi: Add entry for `clear'.
17872 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
17874         * src/widget.c (set_frame_size): Prefer 'int' to 'unsigned'
17875         where either will do.
17877 2015-04-19  Steve Purcell  <steve@sanityinc.com>
17879         Assume package archive-contents are UTF8-encoded
17880         * lisp/emacs-lisp/package.el (package--read-archive-file):
17881         Set `coding-system-for-read' explicitly to 'utf-8 when reading the
17882         downloaded and cached archive-contents files, so that non-ASCII
17883         characters in package descriptions are displayed correctly in the
17884         `list-packages' menu.  (Bug#20231)
17886 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
17888         Abort when looking at stashed changes
17889         * lisp/vc/vc-git.el (vc-git-find-file-hook): Abort when looking at
17890         stashed changes (bug#20292).
17892 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
17894         Refactor low-level printing for simplicity
17895         * src/print.c (PRINTDECLARE): Remove.  Move its contents into
17896         PRINTPREPARE; doable now that we assume C99.  All callers changed.
17897         (PRINTCHAR): Remove, as it adds more mystery than clarity.
17898         All callers changed.
17899         (strout): Assume that caller computes length.  All callers changed.
17900         (print_c_string): New function.
17901         (write_string, write_string_1): Compute length instead of asking
17902         the caller to compute it.  All callers changed.
17903         (write_string): Simplify by using write_string_1.
17904         (write_string_1): Simplify by using print_c_string.
17905         (Fterpri): Compute default val more clearly.
17906         (Fprin1_to_string, print_object):
17907         Assume C99 to avoid unnecessary nesting.
17908         (print_object): Prefer print_c_string to multiple printchar, or
17909         to calling strout with -1 length.  Coalesce into sprintf when
17910         this is easy.
17912 2015-04-18  Paul Eggert  <eggert@cs.ucla.edu>
17914         Prefer "Bug#1234" in commit messages (Bug#20325)
17915         * .dir-locals.el (log-edit-mode): Don't rewrite Bug#,
17916         as this isn't useful for Git.
17917         * CONTRIBUTE: Suggest "Bug#1234" instead of "Fixes: debbugs:1234".
17919 2015-04-18  Glenn Morris  <rgm@gnu.org>
17921         * lisp/files.el (auto-mode-alist): Use conf mode for gitconfig, hgrc.
17922         (Bug#19506)
17924 2015-04-18  Tom Willemse  <tom@ryuslash.org>  (tiny change)
17926         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
17927         Do not use `chomp' as a function.  (Bug#19505)
17929 2015-04-18  Glenn Morris  <rgm@gnu.org>
17931         * lisp/net/browse-url.el (browse-url, browse-url-at-point): Doc fixes.
17933         * doc/emacs/misc.texi (Sorting): Small edit.
17934         (Bug#19896)
17936         * admin/admin.el (make-manuals): Add emacs-xtra in pdf and ps.
17938 2015-04-18  Simen Heggestøyl  <simenheg@gmail.com>
17940         css-mode.el: Support multi-line comment filling
17941         (Bug#20256)
17942         * lisp/textmodes/css-mode.el (css-fill-paragraph): Support multi-line
17943         comment filling.
17944         (css-adaptive-fill): New function.
17945         (css-mode): Set `adaptive-fill-function'.
17946         (scss-mode): Set `comment-continue'.
17948 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
17950         * lisp/emacs-lisp/seq.el (seq-concatenate, seq-into):
17951         Better error messages.
17953 2015-04-18  Ivan Radanov Ivanov  <ivanradanov@yahoo.co.uk>  (tiny change)
17955         Minor improvements in Bulgarian input methods
17956         * lisp/leim/quail/cyrillic.el (bulgarian-phonetic, bulgarian-bds):
17957         Replace U+042C with U+045D, as the former character is not used in
17958         the modern Bulgarian language.
17959         (Bug#20350)
17961 2015-04-17  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
17963         Improve EUDC manual
17964         * doc/misc/eudc.texi (LDAP Configuration): Mention simple and SASL
17965         authentication schemes.  Add index items.  Shorten example server
17966         name.
17968 2015-04-17  Dmitry Gutov  <dgutov@yandex.ru>
17970         Don't show both feature and function with the same name
17971         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
17972         Don't show both feature and function with the same name.
17974         (elisp--xref-identifier-location): Skip variable, if it's also
17975         a function
17976         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
17977         Avoid returning both the variable and the function for the same
17978         minor mode.
17980 2015-04-17  Wolfgang Jenkner  <wjenkner@inode.at>
17982         Fix fontification of keywords clobbered by the prompt
17983         * lisp/comint.el (comint-output-filter): Remove the uses of
17984         with-silent-modifications I introduced as part of the last change.
17985         This fixes, e.g., erratically missing highlighting when running
17986         ./configure --help; ./configure in a shell-mode buffer with
17987         compilation-shell-minor-mode turned on.
17989 2015-04-17  Glenn Morris  <rgm@gnu.org>
17991         * admin/authors.el (authors-valid-file-names)
17992         (authors-renamed-files-alist): Additions.
17994 2015-04-17  Stefan Monnier  <monnier@iro.umontreal.ca>
17996         * lisp/indent.el (indent-region): Don't deactivate the mark.
17997         (Bug#20357)
17999 2015-04-17  Sam Steingold  <sds@gnu.org>
18001         * lisp/net/rcirc.el (defun-rcirc-command): Mark `target' as ignorable.
18003 2015-04-16  Leo Liu  <sdl.web@gmail.com>
18005         * lisp/progmodes/xref.el (xref-push-marker-stack): Add optional arg.
18007 2015-04-16  Stefan Monnier  <monnier@iro.umontreal.ca>
18009         * lisp/erc/erc-pcomplete.el (erc-pcomplete):
18010         Don't use `pcomplete' any more.
18012 2015-04-16  Glenn Morris  <rgm@gnu.org>
18014         * admin/authors.el (authors-lax-changelogs): Update for erc changes.
18016 2015-04-16  Eli Zaretskii  <eliz@gnu.org>
18018         Don't link with -ljpeg on MS-Windows, to avoid dependency on DLL
18019         * configure.ac (LIBJPEG): Leave it empty for MinGW.
18021 2015-04-16  Glenn Morris  <rgm@gnu.org>
18023         * lisp/replace.el (query-replace-from-to-separator):
18024         Delay initialization to avoid rogue setting after startup.
18026 2015-04-16  Paul Eggert  <eggert@cs.ucla.edu>
18028         Pre-4.6 GCC succeeds with unknown option
18029         * configure.ac (emacs_cv_prog_cc_nopie): Port to pre-4.6 GCC.
18030         (Bug#20338)
18032 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
18034         '[:graph:]' now excludes whitespace, not just ' '
18035         * doc/lispref/searching.texi (Char Classes):
18036         * lisp/emacs-lisp/rx.el (rx): Document [:graph:] to be [:print:]
18037         sans whitespace (not sans space).
18038         * src/character.c (graphicp): Exclude all Unicode whitespace chars,
18039         not just space.
18040         * src/regex.c (ISGRAPH): Exclude U+00A0 (NO-BREAK SPACE).
18042 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
18044         * lisp/subr.el (substitute-key-definition-key, special-form-p)
18045         (macrop): Drop deprecated second arg to indirect-function.
18046         (looking-back): Make the second arg non-optional.
18048         * lisp/org/org-clock.el (org-x11idle-exists-p): Be honest about which
18049         command is actually sent to the shell.
18051 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
18053         Port jpeg configuration to Solaris 10 with Sun C
18054         * configure.ac: Check for jpeglib 6b by trying to link it, instead
18055         of relying on cpp magic that has problems in practice.  Check for
18056         both jpeglib.h and jerror.h features.  Remove special case for
18057         mingw32, which should no longer be needed (and if it were needed,
18058         should now be addressable by hotwiring emacs_cv_jpeglib).
18059         (Bug#20332)
18061 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
18063         Move some Elisp-specific code from lisp-mode.el to elisp-mode.el
18064         * lisp/emacs-lisp/lisp-mode.el (lisp--el-font-lock-flush-elisp-buffers):
18065         Move to elisp-mode.el.
18066         (lisp-mode-variables): (Re)move elisp-specific settings.
18067         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode): Add settings removed
18068         from lisp-mode-variables.
18069         (elisp--font-lock-flush-elisp-buffers): New function, moved from
18070         lisp-mode.el.
18072         * lisp/emacs-lisp/lisp-mode.el (lisp--el-non-funcall-position-p):
18073         Avoid pathological slowdown at top-level in large file.
18075 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
18077         Standardize names of ChangeLog history files
18078         Suggested by Glenn Morris in:
18079         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
18080         * Makefile.in (install-man): Don't treat ChangeLog.1 as a man page.
18081         * doc/man/ChangeLog.1: Rename back from doc/man/ChangeLog.01.
18082         * lisp/erc/ChangeLog.1: New file, containing the old contents of ...
18083         * lisp/erc/ChangeLog.01, lisp/erc/ChangeLog.02, lisp/erc/ChangeLog.03:
18084         * lisp/erc/ChangeLog.04, lisp/erc/ChangeLog.05, lisp/erc/ChangeLog.06:
18085         * lisp/erc/ChangeLog.07, lisp/erc/ChangeLog.08, lisp/erc/ChangeLog.09:
18086         Remove.
18088         Split top-level entries into pre- and post-April 7
18089         This more clearly distingiushes pre-April-7 ChangeLog entries (which
18090         are for top-level files only) from post-April-7 entries (which are
18091         about files at all levels.  Problem reported by Glenn Morris in:
18092         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
18093         * ChangeLog.1: Move post-April-7 entries from here ...
18094         * ChangeLog.2: ... to this new file.
18095         * Makefile.in (CHANGELOG_HISTORY_INDEX_MAX): Bump to 2.
18097 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
18099         Fix recent cus-start changes that added customize-rogues
18100         * lisp/cus-start.el (custom-delayed-init-variables): Initialize the
18101         vars early.
18102         * lisp/loadup.el ("cus-start"): Move to the end to reduce
18103         customize-rogue.
18105 2015-04-15  Nicolas Petton  <nicolas@petton.fr>
18107         Define cl-concatenate as an alias to seq-concatenate
18108         * lisp/emacs-lisp/cl-extra.el (cl-concatenate): Removes duplicated
18109           code by making cl-concatenate an alias to seq-concatenate.
18111 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
18113         * src/lread.c (intern_1): Make sure we'd find the symbol we add
18114         (Bug#20334)
18115         * src/xfaces.c (resolve_face_name): Don't use `intern' with
18116         Lisp_Strings.
18118 2015-04-15  Glenn Morris  <rgm@gnu.org>
18120         * doc/lispref/sequences.texi (Sequence Functions): Fix typo in previous.
18122 2015-04-15  Lars Magne Ingebrigtsen  <larsi@gnus.org>
18124         Clean up gnus-uu saving code slightly
18125         * lisp/gnus/gnus-uu.el (gnus-uu-save-article): Make the
18126         save-restriction/widen calls make more sense.
18128 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
18130         Make [:graph:] act like [:print:] sans space
18131         In POSIX [[:print:]] is equivalent to [ [:graph:]], so change
18132         [:graph:] so that it matches everything that [:print:] does,
18133         except for space.
18134         * doc/lispref/searching.texi (Char Classes):
18135         * etc/NEWS:
18136         * lisp/emacs-lisp/rx.el (rx):
18137         Document [:graph:] to be [:print:] sans ' '.
18138         * src/character.c, src/character.h (graphicp): New function.
18139         * src/regex.c (ISGRAPH) [emacs]: Use it.
18140         (BIT_GRAPH): New macro.
18141         (BIT_PRINT): Increase to 0x200, to make room for BIT_GRAPH.
18142         (re_wctype_to_bit) [! WIDE_CHAR_SUPPORT]:
18143         Return BIT_GRAPH for RECC_GRAPH.
18144         (re_match_2_internal) [emacs]: Use ISGRAPH if BIT_GRAPH,
18145         and ISPRINT if BIT_PRINT.
18147 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
18149         automated/eieio-test-methodinvoke.el (make-instance) <(subclass C)>:
18150         Don't use call-next-method in a cl-defmethod.
18152         * lisp/emacs-lisp/eieio-core.el (eieio--class): Derive from cl--class
18153         (eieio--class-p): Remove, provided by cl-defstruct.
18155 2015-04-14  Nicolas Petton  <nicolas@petton.fr>
18157         Add seq-intersection and seq-difference to the seq library
18158         * lisp/emacs-lisp/seq.el (seq-intersection, seq-difference):
18159         New functions.
18160         * test/automated/seq-tests.el: Add tests for seq-intersection and
18161         seq-difference.
18162         * doc/lispref/sequences.texi: Add documentation for seq-intersection
18163         and seq-difference.
18165 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
18167         * lisp/emacs-lisp/eieio-core.el (class-abstract-p): Don't inline,
18168         to avoid leaking internals.
18170 2015-04-14  Sam Steingold  <sds@gnu.org>
18172         package--ensure-init-file: widen requires save-restriction
18174 2015-04-14  Eli Zaretskii  <eliz@gnu.org>
18176         Improve the commit-msg Git hook for unibyte environments
18177         * build-aux/git-hooks/commit-msg: Set LC_ALL=C, before running Awk
18178         in unibyte environments.  (Suggested by Paul Eggert
18179         <eggert@cs.ucla.edu>.)  Use a more accurate approximation to
18180         [:print:], based on UTF-8 sequences of the unprintable characters.
18182         Describe problems with cursor caused by Windows Magnifier
18183         * etc/PROBLEMS: Describe the problem with cursor shape on
18184         MS-Windows due to Windows Magnifier.
18185         (Bug#20271)
18187         Make [:print:] support non-ASCII characters correctly
18188         * src/regex.c (ISPRINT): Call 'printablep' for multibyte characters.
18189         (BIT_PRINT): New bit mask.
18190         (re_wctype_to_bit): Return BIT_PRINT for RECC_PRINT.
18191         * src/character.c (printablep): New function.
18192         * src/character.h (printablep): Add prototype.
18193         * lisp/emacs-lisp/rx.el (rx): Doc fix: document the new behavior
18194         of 'print', 'alnum', and 'alphabetic'.
18195         * doc/lispref/searching.texi (Char Classes): Document the new
18196         behavior of [:print:].
18197         * etc/NEWS: Mention the new behavior of [:print:].
18199         Assign correct general-category and names to surrogates
18200         * admin/unidata/unidata-gen.el (unidata-setup-list): Don't ignore
18201         surrogates.  This avoids assigning them the default
18202         general-category of 'Cn', i.e. unassigned codepoints.
18203         (unidata-get-name): Give surrogates synthetic names.
18205 2015-04-14  Paul Eggert  <eggert@cs.ucla.edu>
18207         Assume C89 offsetof in xterm.c, xlwmenu.c
18208         * lwlib/xlwmenu.c (offset):
18209         * src/xterm.c (cvt_string_to_pixel_args):
18210         Use offsetof, not XtOffset.
18212 2015-04-14  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
18214         Assume C89 offsetof in widget.c
18215         * src/widget.c (XtOffset): Remove; no longer needed.
18216         (offset): Implement via offsetof instead of via pre-C89 XtOffset hack.
18218         Fix think-o in previous patch
18219         * src/window.c (count_windows, get_leaf_windows):
18220         Don't optimize count_windows incorrectly.
18222 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
18224         Avoid some int overflows in window.c
18225         * src/print.c (print_object):
18226         * src/window.c (sequence_number):
18227         * src/window.h (struct window.sequence_number):
18228         Don't assume window sequence number fits in int.
18229         * src/window.c (window_select_count):
18230         * src/window.h (struct window.use_time, window_select_count):
18231         Don't assume window use time fits in int.
18232         * src/window.c (Fsplit_window_internal):
18233         Don't assume user-supplied integer, or sum, fits in int.
18234         (Fset_window_configuration, count_windows, get_leaf_windows)
18235         (save_window_save, Fcurrent_window_configuration):
18236         Use ptrdiff_t for object counts.
18237         (Fset_window_configuration): Omit unused local 'n'.
18238         (count_windows): Simplify by writing in terms of get_leaf_windows.
18239         (get_leaf_windows): Don't store through FLAT if it's null.
18240         (extract_dimension): New static function.
18241         (set_window_margins, set_window_fringes, set_window_scroll_bars):
18242         Use it to avoid undefined behavior when converting user-supplied
18243         integer to 'int'.
18245 2015-04-13  Glenn Morris  <rgm@gnu.org>
18247         Minor doc copyedits
18248         * doc/emacs/custom.texi (Init Examples): Tweak example, replace typo.
18249         * doc/lispintro/emacs-lisp-intro.texi (condition-case): Typo fix.
18251 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
18253         [Gnus] Catch the invalid-operation that idna.el will issue
18254         * lisp/gnus/gnus-art.el (gnus-use-idna):
18255         * lisp/gnus/gnus-sum.el (gnus-summary-idna-message):
18256         * lisp/gnus/message.el (message-use-idna):
18257         Catch the invalid-operation that idna.el will issue.
18259 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
18261         * doc/lispref/processes.texi (Shell Arguments): Prefer diff -u.
18263 2015-04-13  Sam Steingold  <sds@gnu.org>
18265         package--ensure-init-file: widen before looking for
18266         "(package-initialize)"
18268 2015-04-13  Dmitry Gutov  <dgutov@yandex.ru>
18270         Change diff-switches default to `-u' (Bug#20290)
18271         * doc/emacs/files.texi (Comparing Files): Document the new default
18272         value of `diff-switches'.
18273         * doc/emacs/trouble.texi (Sending Patches): Document the preference
18274         for unified diff format.  Escape the plus in the suggested `-F' regexp
18275         value.
18276         * lisp/vc/diff.el (diff-switches): Change the default to `-u'.
18278 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
18280         (gnus-group--setup-tool-bar-update): Fix last change
18281         * lisp/gnus/gnus-group.el (gnus-group--setup-tool-bar-update):
18282         cursor-sensor-functions should be a list of functions.
18284 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
18286         * lisp/gnus/gnus-topic.el (gnus-topic-mode):
18287         Use gmm-called-interactively-p.
18289 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
18291         * lisp/loadup.el ("cus-start"): Load it after loaddefs.el
18292         (Bug#20321)
18293         * lisp/cus-start.el (read-buffer-function): Don't advertise
18294         iswitchb-read-buffer any more.
18295         (iswitchb): Don't tweak this obsolete group any more.
18297 2015-04-13  Artur Malabarba  <bruce.connor.am@gmail.com>
18299         * lisp/emacs-lisp/package.el: Fix package--ensure-init-file.
18301         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Implement docstrings.
18302         Adding a string after a constructor's argument list will use
18303         that string as the constructor function docstring.  If this string
18304         is absent but the struct itself was given a docstring, use that as
18305         the constructor's docstring.
18306         Fixes bug#17284.
18308 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
18310         Deprecate `intangible' and `point-entered' properties
18311         * lisp/emacs-lisp/cursor-sensor.el: New file.
18312         * lisp/simple.el (pre-redisplay-functions): New hook.
18313         (redisplay--pre-redisplay-functions): New function.
18314         (pre-redisplay-function): Use it.
18315         (minibuffer-avoid-prompt): Mark obsolete.
18316         (redisplay--update-region-highlight): Adapt it to work as a function on
18317         pre-redisplay-functions.
18318         * lisp/cus-start.el (minibuffer-prompt-properties--setter): New fun.
18319         (minibuffer-prompt-properties): Use it.  Use cursor-intangible rather
18320         than point-entered to make the prompt intangible.
18321         * lisp/forms.el: Move `provide' calls to the end.
18322         (forms-mode): Don't use `run-hooks' on a local var.
18323         (forms--make-format, forms--make-format-elt-using-text-properties):
18324         Use cursor-intangible rather than `intangible'.
18325         (forms-mode): Enable cursor-intangible-mode.
18326         * lisp/isearch.el (isearch-mode): Use defvar-local.
18327         (cursor-sensor-inhibit): Declare.
18328         (isearch-mode): Set cursor-sensor-inhibit.
18329         (isearch-done): Set it back.
18330         (isearch-open-overlay-temporary, isearch-open-necessary-overlays)
18331         (isearch-close-unnecessary-overlays): Don't bother with `intangible'
18332         any more.
18333         * lisp/ses.el (ses-localvars): Remove `mode-line-process'.
18334         (ses-sym-rowcol, ses-cell-value, ses-col-width, ses-col-printer):
18335         Add Edebug spec.
18336         (ses-goto-print, ses-print-cell, ses-adjust-print-width)
18337         (ses-goto-data, ses-setup, ses-copy-region): Don't let-bind
18338         inhibit-point-motion-hooks any more.
18339         (ses--cell-at-pos, ses--curcell): New functions, extracted from
18340         ses-set-curcell.
18341         (ses-set-curcell): Use them.
18342         (ses-print-cell, ses-setup): Use cursor-intangible instead of
18343         `intangible'.  Make sure cursor-intangible isn't sticky at BOB.
18344         (ses-print-cell-new-width, ses-reprint-all, ses-recalculate-all):
18345         Use ses--cell-at-pos.
18346         (ses--mode-line-process, ses--cursor-sensor-highlight): New functions,
18347         extracted from ses-command-hook.  Make them work with multiple windows
18348         displaying the same buffer.
18349         (ses-mode): Use them via mode-line-process and pre-redisplay-functions.
18350         Enable cursor-intangible-mode.
18351         (ses-command-hook): Remove cell highlight and mode-line update code.
18352         (ses-forward-or-insert, ses-copy-region-helper, ses-sort-column):
18353         Update for new name of text-property holding the cell name.
18354         (ses-rename-cell): Don't mess with mode-line-process.
18355         * lisp/erc/erc-stamp.el (erc-add-timestamp): Use the new
18356         cursor-sensor-functions property instead of point-entered.
18357         (erc-insert-timestamp-right, erc-format-timestamp):
18358         Use cursor-intangible rather than `intangible'.
18359         (erc-munge-invisibility-spec): Use add-to-invisibility-spec and
18360         remove-from-invisibility-spec.  Enable cursor-intangible-mode and
18361         cursor-sensor-mode if needed.
18362         (erc-echo-timestamp): Adapt to calling convention of
18363         cursor-sensor-functions.
18364         (erc-insert-timestamp-right): Remove unused vars `current-window' and
18365         `indent'.
18366         * lisp/gnus/gnus-group.el (gnus-tmp-*): Declare.
18367         (gnus-update-group-mark-positions): Remove unused `topic' var.
18368         (gnus-group-insert-group-line): Remove unused var `header'.
18369         (gnus-group--setup-tool-bar-update): New function.
18370         (gnus-group-insert-group-line): Use it.
18371         (gnus-group-update-eval-form): Declare local
18372         dynamically-bound variables.
18373         (gnus-group-unsubscribe-group): Use \` and \' to match string bounds.
18374         * lisp/gnus/gnus-topic.el (gnus-topic-jump-to-topic)
18375         (gnus-group-prepare-topics, gnus-topic-update-topic)
18376         (gnus-topic-change-level, gnus-topic-catchup-articles)
18377         (gnus-topic-remove-group, gnus-topic-delete, gnus-topic-indent):
18378         Use inhibit-read-only.
18379         (gnus-topic-prepare-topic): Use gnus-group--setup-tool-bar-update.
18380         (gnus-topic-mode): Use define-minor-mode and derived-mode-p.
18381         * lisp/textmodes/reftex-index.el (reftex-display-index):
18382         Use cursor-intangible-mode if available.
18383         (reftex-index-post-command-hook): Check cursor-intangible.
18384         * lisp/textmodes/reftex-toc.el (reftex-toc):
18385         Use cursor-intangible-mode if available.
18386         (reftex-toc-recenter, reftex-toc-post-command-hook):
18387         Check cursor-intangible.
18388         * lisp/textmodes/sgml-mode.el: Use lexical-binding.
18389         (sgml-tag): Use cursor-sensor-functions instead of point-entered.
18390         (sgml-tags-invisible): Use with-silent-modifications and
18391         inhibit-read-only.  Enable cursor-sensor-mode.
18392         (sgml-cursor-sensor): Rename from sgml-point-entered and adjust to
18393         calling convention of cursor-sensor-functions.
18394         * lisp/textmodes/table.el (table-cell-map-hook, table-load-hook)
18395         (table-point-entered-cell-hook, table-point-left-cell-hook):
18396         Don't autoload.
18397         (table-cell-entered-state): Remove var.
18398         (table--put-cell-point-entered/left-property)
18399         (table--remove-cell-properties):
18400         Use cursor-sensor-functions rather than point-entered/left.
18401         (table--point-entered/left-cell-function): Merge
18402         table--point-entered-cell-function and table--point-left-cell-function
18403         and adjust to calling convention of cursor-sensor-functions.
18405         Update ldef-boots.el
18407         * lisp/emacs-lisp/pcase.el (pcase-dolist): Autoload as well.
18409         * doc/misc/eieio.texi: Don't advertise now obsolete constructs
18411         Collapse successive char deletions in the undo log
18412         * src/cmds.c (remove_excessive_undo_boundaries): New function,
18413         extracted from Fself_insert_command.
18414         (Fdelete_char, Fself_insert_command): Use it.
18415         * src/fileio.c (Fmake_symbolic_link): Rename arg to `target'.
18416         * src/keyboard.c (syms_of_keyboard): `top-level' shouldn't be special.
18418         xterm and OSC 52: Add NEWS entry, and tweak the code
18419         * lisp/term/xterm.el (gui-set-selection) <nil>: Move method definition
18420         to top-level.
18421         (terminal-init-xterm-activate-set-selection): Set a terminal property.
18422         (xterm--set-selection): Use it instead of checking the value of
18423         `terminal-initted'.  Don't use string-bytes.
18425 2015-04-13  Philipp Stephani  <p.stephani2@gmail.com>
18427         xterm.el: Implement OSC-52 functionality for setting the X selection
18428         * lisp/term/xterm.el (xterm-max-cut-length): New var.
18429         (xterm--set-selection, terminal-init-xterm-activate-set-selection):
18430         New funs.
18431         (terminal-init-xterm, xterm--version-handler): Use them.
18433 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
18435         Remove left over code from when we used an obsolete/loaddefs.el file
18436         * lisp/subr.el (do-after-load-evaluation): Remove left over code from
18437         when we used an obsolete/loaddefs.el file.
18439         * lisp/cedet/semantic/fw.el (semantic-exit-on-input)
18440         (semanticdb-without-unloaded-file-searches): Use declare.
18441         (semantic-fw-add-edebug-spec): Remove.
18443         * lisp/completion.el (completion-lisp-mode-hook):
18444         Use completion-separator-chars rather than local key binding.
18446         * src/*.c: Set deactivate_mark buffer-locally
18447         (Bug#20260)
18448         * src/insdel.c (prepare_to_modify_buffer_1):
18449         * src/fileio.c (Finsert_file_contents): Set deactivate_mark
18450         buffer-locally.
18452 2015-04-12  Fabián Ezequiel Gallina  <fgallina@gnu.org>
18454         python.el: Keep symmetry on sexp navigation with parens
18455         (Bug#19954)
18456         * lisp/progmodes/python.el
18457         (python-nav--forward-sexp): Add argument skip-parens-p.
18458         (python-nav-forward-sexp, python-nav-backward-sexp)
18459         (python-nav-forward-sexp-safe)
18460         (python-nav-backward-sexp-safe): Use it.
18461         * test/automated/python-tests.el
18462         (python-nav-forward-sexp-1): Fix test.
18464 2015-04-12  João Távora  <joaotavora@gmail.com>
18466         Don't use `setq-local' in Gnus code
18467         This might break upstream builds with older Emacsen
18468         * lisp/gnus/message.el (message-mode): Use `set' and
18469         `make-local-variable' instead of `setq-local'.
18471 2015-04-12  Paul Eggert  <eggert@cs.ucla.edu>
18473         Update Makefile.in's .PHONY dependencies
18474         * Makefile.in (change-history-commit, master-branch-is-current)
18475         (no-ChangeLog): Now phony.
18477         Remove configure's --with-mmdf option
18478         * configure.ac (MAIL_USE_MMDF): Remove.
18479         * etc/NEWS: Document this.
18480         * lib-src/movemail.c: Assume MAIL_USE_MMDF is not defined.
18481         (Bug#20308)
18483         * doc/man/ChangeLog.01: Rename from doc/man/ChangeLog.1.
18484         That way, 'make install' won't think it's a man page.
18485         Reported by Ashish SHUKLA in:
18486         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00656.html
18488         Improve 'make change-history' prereq tests
18489         * Makefile.in (gen_origin): Fix to match what's in the master branch.
18490         (no-ChangeLog, master-branch-is-current): New rules.
18491         (change-history): Depend on them, to avoid similar future problems.
18492         Escape the local-variables string to pacify Emacs when editing
18493         Makefile.in.
18495 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
18497         * test/automated/package-test.el (with-package-test):
18498         Kill Packages buffer.
18500         * lisp/emacs-lisp/package.el: Improve transaction y-or-n prompt.
18501         (package-menu--prompt-transaction-p): Prompt for "Delete" first,
18502         "Upgrade" last, and use capitalized instead of all-caps.
18504         * lisp/emacs-lisp/package.el: Completely silence async operations.
18505         (package--make-autoloads-and-stuff): Silence autoloads.
18506         (package--save-selected-packages): New function, silences
18507         `customize-save-variable'.
18508         (package--user-selected-p, package-install-from-buffer)
18509         (package-delete, package-install): Use it.
18510         (package-install-from-archive)
18511         (package-menu--perform-transaction): Silence.
18512         (package-menu-execute): Feedback when operation starts.
18514         Use delay-mode-hooks when visiting the init-file
18515         * lisp/emacs-lisp/package.el (package--ensure-init-file):
18516         delay-mode-hooks.
18517         * lisp/cus-edit.el (custom-save-all): delay-mode-hooks.
18519         * lisp/files.el: Only message when saving if save-silently is nil.
18520         (save-silently): New variable.
18521         (files--message): New function.
18522         (find-file-noselect, save-buffer, basic-save-buffer)
18523         (basic-save-buffer-2, save-some-buffers, not-modified)
18524         (append-to-file): Use them.
18526 2015-04-12  Johan Bockgård  <bojohan@gnu.org>
18528         Support debug declarations in pcase macros
18529         * lisp/emacs-lisp/pcase.el (pcase-MACRO): New edebug spec.
18530         (pcase-UPAT): Use it.  Remove "`".
18531         (pcase--edebug-match-macro): New function.
18532         (pcase-defmacro): Support debug declarations.
18533         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
18534         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>:
18535         * lisp/emacs-lisp/pcase.el (\`): <pcase-defmacro>:
18536         Add debug declaration.
18538         pcase.el: Edebug support for `app' and vector patterns
18539         * lisp/emacs-lisp/pcase.el (pcase-FUN): New edebug spec.
18540         (pcase-UPAT): Use it.  Support `app' patterns.
18541         (pcase-QPAT): Support vector patterns.
18543         edebug.el: Disambiguate vector specifications
18544         * lisp/emacs-lisp/edebug.el (edebug-match-list): Always treat
18545         `(vector ...)' as a vector specification, not as a sublist.
18547         (gnus-summary-refer-thread): Don't clobber unread articles
18548         This fixes a bug where `A T' causes "random" articles to become marked
18549         as read.
18550         * lisp/gnus/gnus-sum.el (gnus-summary-refer-thread): Make sure
18551         gnus-newsgroup-unreads remains sorted.
18553         mouse-sel.el: Fix mouse-sel-get-selection-function
18554         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
18555         Use gui--last-selected-text-primary instead of no longer existing
18556         gui-last-selected-text.
18558         * lisp/rect.el (delete-whitespace-rectangle-line): Don't cross EOL.
18560         * lisp/net/nsm.el (nsm-query-user): Use cursor-in-echo-area.
18562 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
18564         * lisp/emacs-lisp/package.el (list-packages): Avoid redundant generate.
18566         * lisp/emacs-lisp/package.el (list-packages): Call refresh in
18567         right buffer.
18569         * lisp/emacs-lisp/bytecomp.el: Silence noninteractive compilations.
18570         (byte-compile--interactive): New var.
18571         (byte-compile--message): New function.
18572         (byte-compile-log-1, byte-force-recompile)
18573         (byte-recompile-directory, byte-recompile-file)
18574         (byte-compile-file, compile-defun)
18575         (byte-compile-file-form-defmumble, byte-compile)
18576         (byte-compile-file-form-defalias, display-call-tree): Use it.
18578         * lisp/files.el: Don't message when nothing happened.
18579         (save-some-buffers, basic-save-buffer): Before messaging to say
18580         "nothing was saved" check if (called-interactively-p 'any).
18582 2015-04-12  João Távora  <joaotavora@gmail.com>
18584         Summary: Improve sexp-based movement in message-mode
18585         Works by giving citations and smileys a different syntax.  This helps
18586         modes like `show-paren-mode', `electric-pair-mode', and C-M-*
18587         sexp-based movement.
18588         * lisp/gnus/message.el (message--syntax-propertize): New function.
18589         (message-mode): Set syntax-related vars.
18590         (message-smileys): New variable.
18591         * test/automated/message-mode-tests.el: New file
18593 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
18595         Use bool for boolean in window.c
18596         * src/window.c: Omit unnecessary static function decls.
18597         (adjust_window_count, select_window, Fselect_window)
18598         (window_body_width, Fwindow_body_height, Fwindow_body_width)
18599         (set_window_hscroll, check_window_containing, Fwindow_at)
18600         (Fwindow_end, Fset_window_start, Fpos_visible_in_window_p)
18601         (unshow_buffer, replace_window, recombine_windows)
18602         (add_window_to_list, candidate_window_p, next_window)
18603         (Fnext_window, Fprevious_window, window_loop, check_all_windows)
18604         (Fget_buffer_window, Fdelete_other_windows_internal)
18605         (replace_buffer_in_windows_safely, set_window_buffer)
18606         (Fset_window_buffer, Fforce_window_update)
18607         (temp_output_buffer_show, make_parent_window)
18608         (window_resize_check, window_resize_apply, Fwindow_resize_apply)
18609         (resize_frame_windows, Fsplit_window_internal)
18610         (Fdelete_window_internal, grow_mini_window, shrink_mini_window)
18611         (Fresize_mini_window_internal, mark_window_cursors_off)
18612         (window_scroll, window_scroll_pixel_based)
18613         (window_scroll_line_based, scroll_command, Fscroll_other_window)
18614         (Fscroll_left, Fscroll_right, displayed_window_lines, Frecenter)
18615         (Fmove_to_window_line, Fset_window_configuration)
18616         (delete_all_child_windows, apply_window_adjustment)
18617         (set_window_fringes, set_window_scroll_bars)
18618         (Fset_window_vscroll, foreach_window, foreach_window_1)
18619         (compare_window_configurations, Fcompare_window_configurations):
18620         Prefer 'bool', 'true', and 'false' for booleans.
18621         * src/window.h (WINDOW_MODE_LINE_LINES)
18622         (WINDOW_HEADER_LINE_LINES): Omit unnecessary "!!" on bool value.
18624 2015-04-11  Artur Malabarba  <bruce.connor.am@gmail.com>
18626         Speed up byte-compilation and autoload generation by avoiding mode-hooks
18627         This prevents emacs-lisp-mode-hook from being run everytime an
18628         autoload file is generated, which can account for a fraction of
18629         package installation time depending on the hooks the user has
18630         configured.
18631         * lisp/emacs-lisp/bytecomp.el (byte-compile-file): Use delay-mode-hooks.
18632         * lisp/emacs-lisp/autoload.el (autoload-find-file)
18633         (autoload-find-generated-file): Use delay-mode-hooks.
18635         * lisp/emacs-lisp/package.el: Improve `package-menu-refresh'.
18636         (package-menu-refresh): Respect async and do new package checking.
18637         (list-packages): Use `package-menu-refresh' instead of repeating code.
18639         * lisp/emacs-lisp/package.el: Improve package-menu-quick-help.
18640         (package--quick-help-keys): New variable.
18641         (package--prettify-quick-help-key): New function.
18642         (package-menu-quick-help): Use it.
18644         * lisp/emacs-lisp/package.el: Fix initially wrong compat table.
18645         (package--build-compatibility-table): Require finder.
18647         * test/automated/package-test.el: Fix new test.
18649         * lisp/emacs-lisp/package.el: Silence async operations.
18650         (package--silence): New variable.
18651         (package--message): New function.
18652         (package-import-keyring, package-refresh-contents)
18653         (package-compute-transaction, package-install, package-delete)
18654         (package-menu--perform-transaction, package-menu-execute): Use it.
18656         * test/automated/package-test.el: Test async functionality.
18657         (package-test-update-archives-async): New test.
18659 2015-04-11  Daiki Ueno  <ueno@gnu.org>
18661         Utilize `make-process' in epg.el
18662         * lisp/epg.el (epg-error-output): Abolish.
18663         (epg-context): New slot `error-buffer'.
18664         (epg--start): Use `make-process' and `make-pipe-process'.
18665         (epg--process-filter): Remove code separating stderr from stdout.
18666         (epg-wait-for-completion): Simplify `error-output' handling.
18667         (epg-reset): Dispose error buffer.
18669 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
18671         * .gitignore: Ignore doc temps and outputs.
18673         Port commit-msg to MSYS Bash+Gawk
18674         See Eli Zaretskii in:
18675         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00610.html
18676         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format)
18677         (cent_sign, print_at_sign, at_sign): Revert previous change.
18678         (print_at_sign): Prepend "BEGIN".
18679         (at_sign): Redirect from /dev/null to be safer with pre-POSIX awk.
18681         Port commit-msg to broken MS-Windows shell
18682         * build-aux/git-hooks/commit-msg (cent_sign):
18683         Just use UTF-8 here rather than ASCII + printf, as the latter fails
18684         on a broken MS-Windows shell.  Reported by Eli Zaretskii in:
18685         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00592.html
18687 2015-04-11  Chris Zheng  <chriszheng99@gmail.com>  (tiny change)
18689         Support GnuTLS v3.4 and later on MS-Windows
18690         * src/gnutls.c (syms_of_gnutls) <libgnutls-version>: New DEFSYM.
18691         * lisp/term/w32-win.el (dynamic-library-alist): Determine which
18692         GnuTLS DLL to load according to value of libgnutls-version.
18693         (Bug#20294)
18695 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
18697         Minor quoting etc. fixes to misc manuals
18698         Fix some minor quoting and spacing issues.  Distinguish more
18699         clearly among grave accent and apostrophe (which are ASCII) and
18700         single quote (which is not).  Prefer the standard terms
18701         "apostrophe" and "grave accent" to alternative names that can be
18702         confusing.  Use apostrophes to single-quote ASCII text.
18703         * doc/misc/remember.texi: Spell the mystic's pseudonym in UTF-8
18704         rather than approximating it in ASCII with grave accent.
18706 2015-04-11  Daiki Ueno  <ueno@gnu.org>
18708         Respect more keyword args in `make-process'
18709         * src/process.c (Fmake_process): Respect `:sentinel' and `:filter'
18710         keywords as documented.
18712 2015-04-10  Dmitry Gutov  <dgutov@yandex.ru>
18714         Extract ChangeLog entries when committing a directory
18715         * lisp/vc/vc-dispatcher.el (vc-log-edit): Update FIXME comment.
18716         * lisp/vc/log-edit.el (log-edit-changelog-insert-entries):
18717         Add a FIXME comment.
18718         (log-edit-changelog-entries): Extract from
18719         `log-edit-changelog-entries', handle FILE being a directory
18720         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00555.html).
18722 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
18724         Fix problems found by --enable-gcc-warnings
18725         * src/process.c (create_process, Fmake_pipe_process)
18726         (Fmake_network_process): Omit unused locals.
18728         Fix commit-msg to handle scissors lines
18729         * build-aux/git-hooks/commit-msg:
18730         Ignore every line after a scissors line, such as a line generated
18731         by 'git commit -v'.  Problem reported by Johan Bockgård in:
18732         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00580.html
18734         port commit-msg to Gawk 3.0.4 (1999)
18735         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format, cent_sign)
18736         (print_at_sign, at_sign): New vars.  Use them to avoid problems
18737         Eli Zaretskii encountered with Gawk 3.0.4 (1999) on MSYS.  See:
18738         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
18740         Have commit-msg report commit failure
18741         * build-aux/git-hooks/commit-msg: If the commit is aborted,
18742         say so.  Simplify by doing this at the end.  Problem reported
18743         by Eli Zaretskii in:
18744         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
18746 2015-04-10  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
18748         Clean up LDAP Configuration section of EUDC manual
18749         * doc/misc/eudc.texi: Combine indices.
18750         (LDAP Configuration): Use command markup.  Add index entries.
18751         Change formatting.  Wrap long lines.  Add noindent markup.
18753 2015-04-10  Daiki Ueno  <ueno@gnu.org>
18755         Add facility to collect stderr of async subprocess
18756         * src/w32.h (register_aux_fd): New function declaration.
18757         * src/w32.c (register_aux_fd): New function.
18758         * src/process.h (struct Lisp_Process): New member stderrproc.
18759         * src/process.c (PIPECONN_P): New macro.
18760         (PIPECONN1_P): New macro.
18761         (Fdelete_process, Fprocess_status, Fset_process_buffer)
18762         (Fset_process_filter, Fset_process_sentinel, Fstop_process)
18763         (Fcontinue_process): Handle pipe process specially.
18764         (create_process): Respect p->stderrproc.
18765         (Fmake_pipe_process): New function.
18766         (Fmake_process): Add new keyword argument :stderr.
18767         (wait_reading_process_output): Specially handle a pipe process when
18768         it gets an EOF.
18769         (syms_of_process): Register Qpipe and Smake_pipe_process.
18770         * doc/lispref/processes.texi (Asynchronous Processes): Document
18771         `make-pipe-process' and `:stderr' keyword of `make-process'.
18772         * lisp/subr.el (start-process): Suggest to use `make-process' handle
18773         standard error separately.
18774         * test/automated/process-tests.el (process-test-stderr-buffer)
18775         (process-test-stderr-filter): New tests.
18776         * etc/NEWS: Mention new process type `pipe' and its usage with the
18777         `:stderr' keyword of `make-process'.
18779 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
18781         Minor quoting etc. fixes to lispref manual
18782         * doc/lispref/tips.texi (Documentation Tips):
18783         Distinguish more clearly among grave accent, apostrophe,
18784         and single quote.
18785         * doc/lispref/README, doc/lispref/buffers.texi:
18786         * doc/lispref/commands.texi, doc/lispref/control.texi:
18787         * doc/lispref/customize.texi, doc/lispref/display.texi:
18788         * doc/lispref/elisp.texi, doc/lispref/files.texi:
18789         * doc/lispref/frames.texi, doc/lispref/hash.texi:
18790         * doc/lispref/help.texi, doc/lispref/internals.texi:
18791         * doc/lispref/loading.texi, doc/lispref/makefile.w32-in:
18792         * doc/lispref/markers.texi, doc/lispref/modes.texi:
18793         * doc/lispref/nonascii.texi, doc/lispref/objects.texi:
18794         * doc/lispref/os.texi, doc/lispref/positions.texi:
18795         * doc/lispref/strings.texi, doc/lispref/syntax.texi:
18796         * doc/lispref/text.texi, doc/lispref/tips.texi:
18797         * doc/lispref/two-volume-cross-refs.txt, doc/lispref/windows.texi:
18798         Use American-style double quoting in ordinary text,
18799         and quote 'like this' when single-quoting in ASCII text.
18800         Also, fix some minor spacing issues.
18802 2015-04-10  Michael Albinus  <michael.albinus@gmx.de>
18804         Handle symlinked test directory in tramp-tests.el
18805         * test/automated/tramp-tests.el (tramp-test18-file-attributes)
18806         (tramp--test-check-files): Use `file-truename' for directories.
18808 2015-04-10  Eli Zaretskii  <eliz@gnu.org>
18810         Fix 'recenter' when visual-line-mode is turned on
18811         * src/window.c (Frecenter): Use the same code for GUI and TTY
18812         frames alike; use vmotion only for "initial" frames.  This is
18813         because vmotion doesn't support visual-line-mode.  Rewrite the
18814         'iarg >= 0' case to use move_it_* functions instead of using
18815         vmotion, for the same reason.  Fix the clipping of the argument
18816         value to support scroll-margin in all cases and avoid unwarranted
18817         recentering.  Reported by Milan Stanojević <milanst@gmail.com> in
18818         http://lists.gnu.org/archive/html/help-gnu-emacs/2015-04/msg00092.html,
18819         which see.
18821 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
18823         * lisp/abbrev.el (define-abbrev-table): Refine last change.
18825         * lisp/emacs-lisp/cl-lib.el: Partial revert of "2015-04-05 Rationalize
18826         use of c[ad]+r", so as to keep the "cl-" prefix on all
18827         cl-lib definitions.
18829         * lisp/progmodes/vhdl-mode.el (vhdl-prepare-search-2):
18830         Use inhibit-point-motion-hooks.
18832         * lisp/cedet/semantic: Remove some dead code.
18833         * lisp/cedet/semantic/util-modes.el
18834         (semantic-stickyfunc-header-line-format): Emacs<22 is not supported
18835         any more.
18836         * lisp/cedet/semantic/fw.el (semantic-buffer-local-value): Emacs<21 is
18837         not supported any more.
18838         (semantic-safe): Use `declare'.
18839         * lisp/cedet/semantic/decorate.el (semantic-set-tag-intangible)
18840         (semantic-tag-intangible-p): Remove unused functions.
18841         * lisp/cedet/semantic/complete.el (semantic-displayor-window-edges):
18842         Remove unused function.
18844         * lisp/gnus/gnus-art.el (gnus-hidden-properties): Simplify.
18845         (gnus-article-hide-text, gnus-article-unhide-text)
18846         (gnus-article-unhide-text-type): Remove special handling of
18847         `intangible' since that property is not used any more.
18848         (gnus-article-treat-body-boundary): Use gnus-hidden-properties.
18850 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
18852         Use the VC root in `log-edit-listfun'
18853         * lisp/vc/vc-dispatcher.el (vc-log-edit): Use the VC root in
18854         `log-edit-listfun'.
18856 2015-04-09  Jay Belanger  <jay.p.belanger@gmail.com>
18858         Fix description of Unix time, mention new function.
18859         * lisp/calc/calc-forms.el (calcFunc-unixtime): Fix adjustment for
18860         Unix time.
18861         * doc/misc/calc.texi (Date Forms): Fix description of Unix time.
18862         (Basic Operations on Units): Mention `calc-convert-exact-units'.
18864 2015-04-09  Artur Malabarba  <bruce.connor.am@gmail.com>
18866         * lisp/emacs-lisp/package.el: Use mode-line-process for notification.
18868 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
18870         * lisp/vc/log-edit.el (log-edit-insert-changelog-entries):
18871         Don't add newline after the last entry.
18873 2015-04-09  Simen Heggestøyl  <simenheg@gmail.com>
18875         css-mode.el: Add "not" pseudo-class
18876         (Bug#20267)
18877         * lisp/textmodes/css-mode.el (css-pseudo-class-ids): Add "not" to
18878         list of CSS pseudo-classes.
18880 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
18882         * etc/NEWS: Add missing entry for "Stop messing with the EMACS env var".
18884 2015-04-09  Michael Albinus  <michael.albinus@gmx.de>
18886         Stop messing with the EMACS env var
18887         * doc/emacs/misc.texi (Interactive Shell): Remove description of
18888         EMACS env var.
18890 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
18892         Adapt 'make change-history' to coding cookie
18893         * Makefile.in (change-history): Adjust to change of format of
18894         ChangeLog file, which now has a coding cookie before an indented
18895         copyright notice.
18897 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
18899         Adapt 'make change-history' to coding cookie
18900         * Makefile.in (change-history): Adjust to change of format of
18901         ChangeLog file, which now has a coding cookie before an indented
18902         copyright notice.
18904         gitlog-to-changelog coding cookie and mv -i
18905         * build-aux/gitlog-to-emacslog: Use ChangeLog.1, not Makefile.in,
18906         for copyright notice prototype, so that we get a proper "coding:"
18907         cookie.  Use 'mv -i' to avoid unconditionally overwriting an
18908         existing ChangeLog.  Problems reported by Eli Zaretskii in:
18909         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00504.html
18911         Merge from gnulib
18912         * build-aux/gitlog-to-changelog: Update from gnulib, incorporating:
18913         2015-04-09 gitlog-to-changelog: port to MS-Windows
18915 2015-04-09  Boruch Baum  <boruch_baum@gmx.com>  (tiny change)
18917         * lisp/bookmark.el (bookmark-bmenu-goto-bookmark): Don't inf-loop.
18918         (Bug#20212)
18920 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
18922         Stop messing with the EMACS env var
18923         (Bug#20202)
18924         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
18925         * lisp/comint.el (comint-exec-1):
18926         * lisp/term.el (term-exec-1): Don't set EMACS envvar.
18927         * lisp/progmodes/compile.el (compilation-start): Same and bring
18928         INSIDE_EMACS's format in line with other users.
18930         css-mode.el (css-smie-rules): Fix indentation after complex selectors
18931         (Bug#20282)
18932         * lisp/textmodes/css-mode.el (css-smie-rules): Don't get confused by
18933         inner structure of selectors.
18935 2015-04-08  Fabián Ezequiel Gallina  <fgallina@gnu.org>
18937         python.el: Indent docstring lines to base-indent
18938         (Bug#19595)
18939         Thanks to immerrr <immerrr@gmail.com> for reporting and providing
18940         an initial patch.
18941         * lisp/progmodes/python.el
18942         (python-indent-context): Add :inside-docstring context.
18943         (python-indent--calculate-indentation): Handle :inside-docstring.
18944         (python-indent-region): Re-indent docstrings.
18945         * test/automated/python-tests.el (python-indent-region-5)
18946         (python-indent-inside-string-2): Fix tests.
18948         python.el: Increase native completion robustness
18949         (Bug#19755)
18950         Thanks to Carlos Pita <carlosjosepita@gmail.com> for reporting
18951         this and providing useful ideas.
18952         * lisp/progmodes/python.el
18953         (python-shell-completion-native-output-timeout): Increase value.
18954         (python-shell-completion-native-try-output-timeout): New var.
18955         (python-shell-completion-native-try): Use it.
18956         (python-shell-completion-native-setup): New readline setup avoids
18957         polluting current context, ensures output when no-completions are
18958         available and includes output end marker.
18959         (python-shell-completion-native-get-completions): Trigger with one
18960         tab only.  Call accept-process-output until output end is found or
18961         python-shell-completion-native-output-timeout is exceeded.
18963 2015-04-08  Samer Masterson  <samer@samertm.com>
18965         * lisp/eshell: Make backslash a no-op in front of normal chars
18966         (Bug#8531)
18967         * lisp/eshell/esh-arg.el (eshell-parse-argument-hook): Update comment.
18968         (eshell-parse-backslash): Return escaped character after backslash
18969         if it is special.  Otherwise, if the backslash is not in a quoted
18970         string, ignore the backslash and return the character after; if
18971         the backslash is in a quoted string, return the backslash and the
18972         character after.
18973         * test/automated/eshell.el (eshell-test/escape-nonspecial)
18974         (eshell-test/escape-nonspecial-unicode)
18975         (eshell-test/escape-nonspecial-quoted)
18976         (eshell-test/escape-special-quoted): Add tests for new
18977         `eshell-parse-backslash' behavior.
18979 2015-04-08  Gustav Hållberg  <gustav@gmail.com>  (tiny change)
18981         * lisp/vc/diff-mode.el (diff-hunk-file-names): Don't require a TAB
18982         after the file name.
18983         (Bug#20276)
18985 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
18987         Minor quoting etc. fixes to Emacs manual
18988         * doc/emacs/Makefile.in, doc/emacs/ack.texi, doc/emacs/building.texi:
18989         * doc/emacs/calendar.texi, doc/emacs/cmdargs.texi:
18990         * doc/emacs/custom.texi, doc/emacs/dired.texi, doc/emacs/emacs.texi:
18991         * doc/emacs/files.texi, doc/emacs/glossary.texi, doc/emacs/gnu.texi:
18992         * doc/emacs/indent.texi, doc/emacs/macos.texi:
18993         * doc/emacs/maintaining.texi, doc/emacs/makefile.w32-in:
18994         * doc/emacs/programs.texi, doc/emacs/rmail.texi:
18995         * doc/emacs/search.texi, doc/emacs/trouble.texi:
18996         * doc/emacs/vc1-xtra.texi:
18997         Use American-style double quoting in ordinary text,
18998         and quote 'like this' when single-quoting in ASCII text.
18999         Also, fix some minor spacing issues.
19001         Minor quoting etc. fixes to elisp intro
19002         * doc/lispintro/emacs-lisp-intro.texi: Consistently use
19003         American-style double quoting in ordinary text.  In ASCII text,
19004         consistently quote 'like this' instead of `like this', unless
19005         Emacs requires the latter.
19007 2015-04-08  Dmitry Gutov  <dgutov@yandex.ru>
19009         * CONTRIBUTE: Mention log-edit-insert-changelog.
19011         * CONTRIBUTE: Emphasize creating the top-level ChangeLog file manually.
19013 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
19015         * doc/misc/calc.texi (Summary): Avoid '@:' when usurped.
19017 2015-04-08  Stefan Monnier  <monnier@iro.umontreal.ca>
19019         * lisp/emacs-lisp/eieio-core.el (eieio-copy-parents-into-subclass):
19020         Fix inheritance of initargs.  (Bug#20270)
19022 2015-04-08  Artur Malabarba  <bruce.connor.am@gmail.com>
19024         * lisp/emacs-lisp/package.el (package-menu-mode): Mode-line notification
19025         while dowloading information.
19027         * lisp/emacs-lisp/package.el: More conservative `ensure-init-file'
19028         (package--ensure-init-file): Check file contents before visiting.
19029         (package-initialize): Call it.
19030         (package-install-from-buffer, package-install): Don't call it.
19032 2015-04-08  Eli Zaretskii  <eliz@gnu.org>
19034         * src/eval.c (init_eval_once): Bump max_lisp_eval_depth to 800.
19035         (Bug#17517)
19037 2015-04-08  Michael Albinus  <michael.albinus@gmx.de>
19039         * lisp/net/tramp-cache.el (tramp-flush-file-property):
19040         Fix nasty scoping bug.
19042 2015-04-08  Tassilo Horn  <tsdh@gnu.org>
19044         Add notice to visual commands section
19045         * doc/misc/eshell.texi (Input/Output): Add notice that some tools
19046         such as git call less with its -F option which omits pagination if
19047         the contents is less than one page long.  This interferes with
19048         eshell's visual (sub-)commands.
19050 2015-04-07  Dmitry Gutov  <dgutov@yandex.ru>
19052         * lisp/ffap.el (ffap-string-at-point-mode-alist): Support
19053         environment variable expansion in file names.  (Bug#19839)
19055 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
19057         Prefer double-quote to accent-grave in man pages
19059 2015-04-07  Stefan Monnier  <monnier@iro.umontreal.ca>
19061         (Bug#20257)
19062         * lisp/files.el (set-visited-file-name): Clear auto-save if nil.
19064 2015-04-07  Ivan Shmakov  <ivan@siamics.net>
19066         Update etc/PROBLEMS.
19067         * etc/PROBLEMS: Mention visible-cursor; a few more mentions of
19068         ~/.Xresources and xrdb(1); refer to 'GNU Coreutils' and
19069         'X Window System' or 'X' (were: 'GNU Fileutils' and 'X Windows',
19070         respectively); other minor updates and tweaks.  (Bug#20011)
19072 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
19074         Add doc strings for some Isearch state vars
19075         * lisp/misearch.el (multi-isearch-buffer-list)
19076         (multi-isearch-file-list): Add doc strings.
19077         (Bug#20232)
19079 2015-04-07  Alan Mackenzie  <acm@muc.de>
19081         Always mark "<" and ">" in #include directives with text properties.
19082         * lisp/progmodes/c-fonts.el (c-cpp-matchers): Replace a font-lock
19083         "anchored matcher" with an invocation of
19084         c-make-font-lock-search-function to allow fontification when there's
19085         no trailing space on an "#include <..>" line.
19087 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
19089         Generate a ChangeLog file from commit logs
19090         * .gitignore: Add 'ChangeLog'.
19091         * build-aux/gitlog-to-changelog: New file, from Gnulib.
19092         * build-aux/gitlog-to-emacslog: New file.
19093         * CONTRIBUTE: Document the revised workflow.
19094         * Makefile.in (clean): Remove *.tmp and etc/*.tmp*
19095         instead of just special cases.
19096         (CHANGELOG_HISTORY_INDEX_MAX, CHANGELOG_N, gen_origin): New vars.
19097         (ChangeLog, unchanged-history-files, change-history)
19098         (change-history-commit): New rules.
19099         * admin/admin.el (make-manuals-dist--1):
19100         Don't worry about doc/ChangeLog.
19101         * admin/authors.el: Add a FIXME.
19102         * admin/make-tarball.txt:
19103         * lisp/calendar/icalendar.el:
19104         * lisp/gnus/deuglify.el:
19105         * lisp/obsolete/gulp.el:
19106         * lwlib/README:
19107         Adjust to renamed ChangeLog history files.
19108         * admin/merge-gnulib (GNULIB_MODULES): Add gitlog-to-changelog.
19109         * admin/notes/repo: Call it 'master' a la Git, not 'trunk' a la Bzr.
19110         Remove obsolete discussion of merging ChangeLog files.
19111         New section "Maintaining ChangeLog history".
19112         * build-aux/git-hooks/pre-commit:
19113         Reject attempts to commit files named 'ChangeLog'.
19114         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
19115         * make-dist: Make and distribute top-level ChangeLog if there's a
19116         .git directory.  Distribute the new ChangeLog history files
19117         instead of scattered ChangeLog files.  Distribute the new files
19118         gitlog-to-changelog and gitlog-to-emacslog.
19119         (Bug#19113)
19121         Rename ChangeLogs for gitlog-to-changelog
19122         This patch was implemented via the following shell commands:
19123         find * -name ChangeLog |
19124         sed 's,.*,git mv & &.1,
19125         s, lisp/ChangeLog\.1$, lisp/ChangeLog.17,
19126         s, lisp/erc/ChangeLog\.1$, lisp/erc/ChangeLog.09,
19127         s, lisp/gnus/ChangeLog\.1$, lisp/gnus/ChangeLog.3,
19128         s, lisp/mh-e/ChangeLog\.1$, lisp/mh-e/ChangeLog.2,
19129         s, src/ChangeLog\.1$, src/ChangeLog.13,' |
19130         sh
19131         git commit -am"[this commit message]"
19133 This file records repository revisions from
19134 commit 9d56a21e6a696ad19ac65c4b405aeca44785884a (exclusive) to
19135 commit ea78129522f428888607151e4f91ade1f4839f3f (inclusive).
19136 See ChangeLog.1 for earlier changes.
19138 ;; Local Variables:
19139 ;; coding: utf-8
19140 ;; End:
19142   Copyright (C) 2015 Free Software Foundation, Inc.
19144   This file is part of GNU Emacs.
19146   GNU Emacs is free software: you can redistribute it and/or modify
19147   it under the terms of the GNU General Public License as published by
19148   the Free Software Foundation, either version 3 of the License, or
19149   (at your option) any later version.
19151   GNU Emacs is distributed in the hope that it will be useful,
19152   but WITHOUT ANY WARRANTY; without even the implied warranty of
19153   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
19154   GNU General Public License for more details.
19156   You should have received a copy of the GNU General Public License
19157   along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.