* loading.texi: Add `define-type' entry for load-history
[emacs.git] / ChangeLog.2
blob6988f9603b363737046913ee6a2dcf876402580a
1 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
3         Prefer xpalloc to doubling buffers by hand
5         * src/lread.c (grow_read_buffer): New function, which uses xpalloc.
6         (read1): Use it for simplicity.
7         * src/macros.c (store_kbd_macro_char):
8         * src/minibuf.c (read_minibuf_noninteractive):
9         * src/term.c (encode_terminal_code):
10         * src/xrdb.c (magic_db):
11         Prefer xpalloc to growing buffers by hand.
12         This doesn’t fix any bugs, but simplifies the code a bit.
14 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
16         Merge from gnulib
18         This incorporates:
19         2015-11-05 timespec-sub: fix overflow bug; add tests
20         2015-11-04 intprops: revise _WRAPV macros, revert _OVERFLOW
21         2015-11-03 intprops: add parentheses
22         * lib/intprops.h, lib/timespec-add.c, lib/timespec-sub.c:
23         Copy from gnulib.
25 2015-11-07  David Reitter  <david.reitter@gmail.com>
27         Provide NS notification objects where required to eliminate warnings
29         * nsterm.m (windowDidResize:, toggleFullScreen:):
30         Call notification functions with notification objects
31         as per delegate APIs.
33 2015-11-07  Noam Postavsky  <npostavs@users.sourceforge.net>
35         Add test for bug #21824
37         * test/automated/buffer-tests.el: New file.
38         (overlay-modification-hooks-message-other-buf): New test.
40 2015-11-07  Kelvin White  <kwhite@gnu.org>
42         * lisp/erc/erc-pcomplete.el (pcomplete-erc-nicks): Fix bug#18771.
44 2015-11-07  David Reitter  <david.reitter@gmail.com>
46         Ignore fullscreen exit notifications on NS when frame is dead
48         * nsterm.m (windowDidResize:, windowWillExitFullScreen:)
49         (windowDidExitFullScreen:): Return if frame is dead.
50         These functions may be called when a fullscreen frame
51         is closed; they are called before, not after.
53         May address Bug#21428.
55 2015-11-07  Eli Zaretskii  <eliz@gnu.org>
57         Speed up lookup in redisplay--variables
59         * lisp/frame.el (redisplay--variables): Make it a hash-table.
61         * src/xdisp.c (maybe_set_redisplay): Access redisplay--variables
62         as a hash-table.  This speeds up this function by an order of
63         magnitude: where previously a setq was slowed down by 100% by
64         introducing the maybe_set_redisplay test, it is now only 5%
65         slower.
66         (syms_of_xdisp) <redisplay--variables>: Doc fix.
68 2015-11-07  Artur Malabarba  <bruce.connor.am@gmail.com>
70         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Fix a bug.
72         The defsubst was being created as:
73             (cl-defsubst name (args) ("DOC") ...)
75         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors):
76         Add test.
78 2015-11-07  Mihai Olteanu  <mihai_olteanu@fastmail.fm>  (tiny change)
80         Update doc string of hexl-mode
82         * lisp/hexl.el (hexl-mode): Doc fix.  (Bug#21800)
84 2015-11-07  Eli Zaretskii  <eliz@gnu.org>
86         Fix error in copy-abbrev-table
88         * lisp/abbrev.el (define-abbrev): Don't erase the :abbrev-table-modiff
89         property of the abbrev-table.  (Bug#21828)
91         * test/automated/abbrev-tests.el: New file.
93 2015-11-07  Michael Albinus  <michael.albinus@gmx.de>
95         Add test to auto-revert-tests.el for Bug#21841
97         * test/automated/auto-revert-tests.el
98         (auto-revert-test01-auto-revert-several-files): New test.
99         (auto-revert-test02-auto-revert-tail-mode)
100         (auto-revert-test03-auto-revert-mode-dired): Rename them.
102 2015-11-07  Martin Rudalics  <rudalics@gmx.at>
104         * doc/lispref/windows.texi (Coordinates and Windows): Fix typo.
106 2015-11-07  Martin Rudalics  <rudalics@gmx.at>
108         In x_consider_frame_title don't set title of tooltip frames
110         * src/xdisp.c (x_consider_frame_title): Return immediately for
111         tooltip frames to avoid displaying empty tooltips.
113 2015-11-06  Anders Lindgren  <andlind@gmail.com>
115         Fixed NextStep fullscreen problem (bug#21770).
117         * src/nsterm.m (ns_constrain_all_frames): Don't constrain
118         fullscreen frames.
120 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
122         Ensure redisplay after evaluation
124         * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp):
125         Revert last change.
126         * lisp/frame.el (redisplay--variables): Populate the
127         redisplay--variables list.
128         * src/xdisp.c (maybe_set_redisplay): New function.
129         (syms_of_xdisp) <redisplay--variables>: New variable.
130         * src/window.h (maybe_set_redisplay): Declare prototype.
131         * src/data.c (set_internal): Call maybe_set_redisplay.  (Bug#21835)
133 2015-11-06  Artur Malabarba  <bruce.connor.am@gmail.com>
135         * test/automated/subr-tests.el (subr-test-when): Fix again.
137 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
139         Don't invoke overlay modification hooks in wrong buffer
141         * src/buffer.c (report_overlay_modification): When called with
142         AFTER non-zero, don't invoke overlay modification hooks if the
143         buffer recorded in last_overlay_modification_hooks is different
144         from the current buffer.  (Bug#21824)
146 2015-11-06  Juanma Barranquero  <lekktu@gmail.com>
148         * admin/notes/repo: Fix a few obsolete references to Bazaar.
150 2015-11-06  Artur Malabarba  <bruce.connor.am@gmail.com>
152         * test/automated/subr-tests.el (subr-test-when): Fix test.
154 2015-11-06  Martin Rudalics  <rudalics@gmx.at>
156         Avoid division by zero crash observed by Yuan MEI
158         See http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg00194.html.
160         * src/dispnew.c (required_matrix_height, required_matrix_width):
161         Avoid division by zero.
162         * src/xterm.c (x_term_init): Init dpyinfo->smallest_font_height and
163         dpyinfo->smallest_char_width to 1.
165 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
167         Ensure redisplay after "C-x C-e"
169         * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp): Make sure
170         redisplay happens to account for any side effects of the evaluated
171         sexp.  (Bug#21835)
173 2015-11-06  Michael Albinus  <michael.albinus@gmx.de>
175         Skip some file notification tests for cygwin
177         * test/automated/file-notify-tests.el (file-notify--test-with-events):
178         Remove argument TIMEOUT.  Adapt all callees.
179         (file-notify-test02-events, file-notify-test04-file-validity):
180         Skip for cygwin.  (Bug#21804)
182 2015-11-05  Stephen Leake  <stephen_leake@stephe-leake.org>
184         * lisp/progmodes/xref.el: Require semantic/symref during compilation.
186 2015-11-05  Daiki Ueno  <ueno@gnu.org>
188         Suppress redundant Pinentry startup messages
190         * lisp/net/pinentry.el (pinentry-start): Add optional QUIET argument.
191         * lisp/epg.el: Declare `pinentry-start'.
192         (epg--start): Call `pinentry-start' with QUIET argument set.
194 2015-11-05  Xue Fuqiao  <xfq.free@gmail.com>
196         * doc/emacs/ack.texi (Acknowledgments): Updates.
198 2015-11-05  Juanma Barranquero  <lekktu@gmail.com>
200         * test/automated/elisp-mode-test.el: Silence some run-time warnings.
201         (xref-elisp-deftest): Bind `find-file-suppress-same-file-warnings' to t.
203 2015-11-05  Tassilo Horn  <tsdh@gnu.org>
205         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
206         Add prettification support for \times.
208 2015-11-05  Juanma Barranquero  <lekktu@gmail.com>
210         * test/automated/process-tests.el: Skip tests when bash is unavailable.
211         (process-test-sentinel-accept-process-output)
212         (process-test-sentinel-sit-for): skip-unless bash executable found.
214 2015-11-05  Eli Zaretskii  <eliz@gnu.org>
216         Add test for bug #21831
218         * test/automated/process-tests.el
219         (start-process-should-not-modify-arguments): New test.  (Bug#21831)
220         Suggested by Nicolas Richard <youngfrog@members.fsf.org>
222 2015-11-04  Stefan Monnier  <monnier@iro.umontreal.ca>
224         * lisp/emacs-lisp/eieio-compat.el: Typo caught by tests.
226         (eieio--generic-static-object-generalizer): Fix typo.
227         * test/automated/eieio-tests.el: Byte-compile it again.  It looks
228         like the underlying cause of bug#17852 was fixed in the mean time.
230 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
232         Revert "* lisp/subr.el (when): Use `macroexp-progn'"
234         This reverts commit 8e843831eaf271801836b7a3e4dd3b4fb0bb72b8.
235         It breaks bootstrapping (duh).
237 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
239         * lisp/files.el (report-errors): Obsolete.
241         (normal-mode, hack-local-variables, dir-locals-find-file):
242         Use `with-demoted-errors' instead.
244 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
246         * lisp/subr.el (when): Use `macroexp-progn'.
248         * test/automated/subr-tests.el (subr-test-when): New test.
250 2015-11-04  Juanma Barranquero  <lekktu@gmail.com>
252         * lisp/progmodes/xref.el: Doc fixes.
253         (xref-make-file-location, xref-make-buffer-location, xref-make)
254         (xref-make-bogus-location, xref-make-match): Add cross-references.
255         (xref--insert-xrefs): Fix typo in docstring.
257 2015-11-04  Anders Lindgren  <andlind@gmail.com>
259         Render fringe bitmaps correctly on NextStep (bug#21301)
261         The fringe bitmaps were inverted, the background was not transparent,
262         the image data was horizontally mirrored, and periodic fringe bitmaps
263         were not supported.
265         * src/nsimage.m ([EmacsImage initFromXBM:width:height:fg:bg:]):
266         When both background and foreground colors are 0, set the background
267         alpha channel to 0 (making the background transparent).  When
268         copying the image data, do this from the most significant bit
269         (leftmost) to the least (rightmost), to avoid mirroring.
270         * src/nsterm.m (ns_draw_fringe_bitmap): Don't invert the image bits.
271         Add support for periodic images (e.g. the empty line indicator).
273 2015-11-03  Michael Heerdegen  <michael_heerdegen@web.de>
275         * lisp/emacs-lisp/pcase.el (pcase): Tweak docstring.
277 2015-11-03  Nicolas Petton  <nicolas@petton.fr>
279         * admin/MAINTAINERS: Add seq-tests.el, map-tests.el, and thunk-tests.el.
281         * admin/MAINTAINERS: Add thunk.el.
283 2015-11-03  Jay Belanger  <jay.p.belanger@gmail.com>
285         * lisp/calc/calc (calc-bug-address): Change maintainer address.
287 2015-11-03  Michael Albinus  <michael.albinus@gmx.de>
289         Fix a stupid error in gfilenotify.c
291         * src/gfilenotify.c (dir_monitor_callback): Cancel monitor only,
292         if we've got a `deleted' signal AND the file name is the watched one.
294 2015-11-03  Stephen Leake  <stephen_leake@stephe-leake.org>
296         Fix Bug#21816; case insensitive file system in elisp-mode-tests.el
298         * test/automated/elisp-mode-tests.el (xref-elisp-test-run):
299         Use case-insensitive string compare for file names.
300         (emacs-test-dir): Add 'downcase' to cause case differences (at
301         least on my system).
303 2015-11-02  Juanma Barranquero  <lekktu@gmail.com>
305         flymake-tests.el (warning-predicate-rx-gcc): Fix check
307         * test/automated/flymake-tests.el (warning-predicate-rx-gcc):
308         Also check that "make" is available, not just "gcc".
310 2015-11-02  Ken Brown  <kbrown@cornell.edu>
312         Document behavior of collation on Cygwin
314         * test/automated/fns-tests.el (fns-tests-collate-sort): Mark as
315         expected failure on Cygwin.
316         * doc/lispref/strings.texi (Text Comparison): Document that
317         punctuation and whitespace are not ignored for sorting on Cygwin.
319 2015-11-02  Dani Moncayo  <dmoncayo@gmail.com>
321         * build-aux/msys-to-w32: Prevent double slashes in w32 path list.
323 2015-11-01  Glenn Morris  <rgm@gnu.org>
325         * lisp/progmodes/f90.el (f90-no-block-limit): Add associate.
326         (Bug#21794)
327         * test/automated/f90.el (f90-test-bug21794): New test.
329 2015-11-01  Juanma Barranquero  <lekktu@gmail.com>
331         Fix incompatibility with TCC in test for bug#18745
333         * test/automated/process-tests.el (process-test-quoted-batfile):
334         Remove spaces unrelated to the bug being tested.
336 2015-11-01  Michael Albinus  <michael.albinus@gmx.de>
338         Improve completion in tramp-gvfs.el
340         * lisp/net/tramp-gvfs.el (tramp-zeroconf-parse-device-names):
341         Rename from `tramp-zeroconf-parse-service-device-names'.
342         (tramp-zeroconf-parse-webdav-device-names): Remove.  Code merged
343         with `tramp-zeroconf-parse-device-names'.
344         (tramp-gvfs-parse-device-names): New defun.
345         (top): Use it when `tramp-zeroconf-parse-device-names' is not
346         applicable.
348         * lisp/net/tramp.el (tramp-set-completion-function): The argument
349         could also be a zeroconf service type.
351 2015-10-31  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
353         * lisp/net/ntlm.el: Change version to 2.0.0.
355 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
357         Fix bug#21762
358         * lisp/progmodes/python.el (python-syntax-closing-paren-p): Check with
359         `eql' instead of `=' to accommodate the case that (syntax-after (point))
360         returns nil.
361         * test/automated/python-tests.el (python-indent-inside-paren-7):
362         New test.
364 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
366         * test/automated/python-tests.el: Avoid warnings.
367         (python-tests-with-temp-buffer, python-tests-with-temp-file):
368         Bind `python-indent-guess-indent-offset' to nil.
370 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
372         * src/alloc.c: Silence compiler warnings.
373         (pointers_fit_in_lispobj_p, mmap_lisp_allowed_p): #ifdef DOUG_LEA_MALLOC.
375 2015-10-31  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
377         * etc/NEWS: Fix js-jsx-mode entry punctuation.
379 2015-10-31  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
381         Add JSX indentation via js-jsx-mode  (Bug#21799)
383         * progmodes/js.el: Add JSX indentation support.
384         (js--jsx-end-tag-re)
385         (js--jsx-after-tag-re): New variables.
386         (js--jsx-find-before-tag)
387         (js--jsx-indented-element-p)
388         (js--as-sgml)
389         (js--expression-in-sgml-indent-line)
390         (js-jsx-indent-line)
391         (js-jsx-mode): New functions.
392         * test/indent/js-jsx.el: New file.
393         * etc/NEWS: Add information about js-jsx-mode.
395 2015-10-31  Michael Albinus  <michael.albinus@gmx.de>
397         Minor fix in filenotify.el
399         * lisp/filenotify.el (file-notify--event-file-name)
400         (file-notify--event-file1-name): Normalize result with
401         `directory-file-name'.
403 2015-10-31  Eli Zaretskii  <eliz@gnu.org>
405         Avoid errors in redisplay--pre-redisplay-functions
407         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect): Don't
408         use 'bobp', instead compare window-point with 1.  (Bug#21730)
410 2015-10-30  Paul Eggert  <eggert@cs.ucla.edu>
412         Merge from gnulib
414         This incorporates:
415         2015-10-30 intprops: add WRAPV and const flavors for GCC 5
416         2015-10-25 stdalign: port to Sun C 5.9
417         * doc/misc/texinfo.tex, lib/intprops.h, lib/stdalign.in.h:
418         Copy from gnulib.
420 2015-10-30  Eli Zaretskii  <eliz@gnu.org>
422         * src/w32proc.c (_NLSCMPERROR): Fix a typo in the name of this macro.
423         (w32_compare_strings): Adjust for the correction.
425 2015-10-30  Michael Albinus  <michael.albinus@gmx.de>
427         * test/automated/vc-tests.el (vc-test--state)
428         (vc-test--working-revision, vc-test--checkout-model):
429         Add result messages.
431 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
433         * test/automated/faces-tests.el: Add another test
435 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
437         * lisp/faces.el (faces--attribute-at-point): Fix bug
438         introduced by previous commit.
440 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
442         * test/automated/faces-tests.el: New file.
444 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
446         * lisp/faces.el: Refactor common code and fix a bug.
447         (faces--attribute-at-point): New function.  Fix a bug when the
448         face at point is a list of faces and the desired attribute is not
449         on the first one.
450         (foreground-color-at-point, background-color-at-point): Use it.
452 2015-10-30  Przemysław Wojnowski  <esperanto@cumego.com>
454         * etc/tutorials/TUTORIAL.translators: Fix PL names.
456 2015-10-30  Juanma Barranquero  <lekktu@gmail.com>
458         * lisp/character-fold.el: Provide `character-fold'.
460 2015-10-30  Tassilo Horn  <tsdh@gnu.org>
462         * etc/themes/tsdh-dark-theme.el (tsdh-dark): Add more faces
463         for Gnus and ivy.
465 2015-10-30  Michael Albinus  <michael.albinus@gmx.de>
467         Some minor fixes for tramp-gvfs.el
469         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
470         An attribute returned by gvfs-info might be empty.  In case of
471         undetermined uid or gid, return "UNKNOWN" or -1, respectively.
472         (tramp-zeroconf-parse-service-device-names): New defun.
473         Derived from `tramp-zeroconf-parse-workstation-device-names'.
474         (top): Add completion functions for "afp" and "smb" methods.
476 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
478         * test/automated/character-fold-tests.el: New file
480 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
482         * test/automated/sort-tests.el: New file.
483         Tests in this file are randomly generated and then tested with
484         regular, reverse, and case-fold sorting.
486 2015-10-30  Eli Zaretskii  <eliz@gnu.org>
488         Describe known problems with pinning Emacs to taskbar
490         * etc/PROBLEMS: Describe the problem with pinning Emacs to taskbar
491         on Windows 10.  For the details, see the discussion starting at
492         http://lists.gnu.org/archive/html/help-emacs-windows/2015-09/msg00000.html.
494 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
496         * lisp/isearch.el: Avoid an error that blocks isearch.
497         (isearch-update): Don't error if `isearch--current-buffer' has
498         been killed.
500         * test/automated/isearch-tests.el (isearch--test-update):
501         New file.
503 2015-10-30  Phil Sainty  <psainty@orcon.net.nz>
505         Fix documentation of 'beginning/end-of-buffer'
507         * lisp/simple.el (beginning-of-buffer, end-of-buffer): Clarify
508         conditions under which the mark will be pushed at the previous
509         position.  (Bug#21748)
511 2015-10-30  Tassilo Horn  <tsdh@gnu.org>
513         Add RefTeX feature idea: editing RefTeX TOC buffers
515         More face defs for ivy, swiper, ace-window, eshell
517 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
519         * lisp/gnus/auth-source.el: Silence lexical-binding warnings.
520         (auth-source-netrc-use-gpg-tokens): Simplify (symbol-value 'VAR) to
521         just VAR.
522         (auth-source-backend-parse): Use make-instance.
523         (auth-source-search): Remove unused key args.
524         Remove unused vars `accessor-key' and `backend'.  Avoid `eval'.
525         (auth-source-search-backends): Use slot names rather than their initarg.
526         (auth-source-netrc-create):
527         (auth-source-delete):
528         (auth-source-secrets-create, auth-source-plstore-search)
529         (auth-source-macos-keychain-create, auth-source-macos-keychain-search)
530         (auth-source-plstore-create, auth-source-netrc-search)
531         (auth-source-netrc-parse): Remove unused key args.
532         (auth-source-forget+): Simplify the arglist.
533         (auth-source-macos-keychain-search-items)
534         (auth-source-token-passphrase-callback-function): Mark unused args.
535         (auth-source-epa-extract-gpg-token): Remove unused var `plain'.
536         (pp-escape-newlines): Declare.
537         (auto-source--symbol-keyword): New function.
538         (auth-source-plstore-create, auth-source-netrc-create)
539         (auth-source-netrc-normalize): Use it.
540         (auth-source-netrc-search): Don't pass :delete to
541         auth-source-netrc-parse since it doesn't use it.
542         (auth-source-plstore-create, auth-source-netrc-create): Use plist-get
543         symbol-value to index in keyword args.
544         (auth-source-macos-keychain-result-append): Avoid setq.
545         (auth-source-netrc-create): Remove unused vars `file' and `add'.
546         (auth-source-user-or-password): Remove unused var `cname'.
548 2015-10-29  Juri Linkov  <juri@linkov.net>
550         * lisp/dired.el (dired-unmark-all-files-query): Declare.
551         (dired-unmark-all-files): Let-bind it and use instead of ‘query’.
552         (Bug#21746)
554 2015-10-29  Juri Linkov  <juri@linkov.net>
556         * lisp/ielm.el (ielm-indent-line): Use non-nil arg of comint-bol
557         to go to the beginning of text line instead of command line.
558         http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02360.html
560 2015-10-29  Eli Zaretskii  <eliz@gnu.org>
562         Fix encoding of saving *Help* buffers
564         * lisp/help-fns.el (describe-function-1): If we use curved quotes,
565         set help buffer's buffer-file-coding-system to UTF-8.  (Bug#21780)
567 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
569         * lisp/emacs-lisp/cl-generic.el: Add (major-mode MODE) context.
570         (cl--generic-derived-specializers): New function.
571         (cl--generic-derived-generalizer): New generalizer.
572         (cl-generic-generalizers): New specializer (derived-mode MODE).
573         (cl--generic-split-args): Apply the rewriter, if any.
574         (cl-generic-define-context-rewriter): New macro.
575         (major-mode): Use it to define a new context-rewriter, so we can write
576         `(major-mode MODE)' instead of `(major-mode (derived-mode MODE))'.
578         * lisp/frame.el (window-system): New context-rewriter so we can write
579         `(window-system VAL)' instead of (window-system (eql VAL)).
580         (cl--generic-split-args): Apply the rewriter, if any.
581         (frame-creation-function): Use the new syntax.
583         * lisp/term/x-win.el (window-system-initialization)
584         (handle-args-function, frame-creation-function)
585         (gui-backend-set-selection, gui-backend-selection-owner-p)
586         (gui-backend-selection-exists-p, gui-backend-get-selection):
587         * lisp/term/w32-win.el (window-system-initialization)
588         (handle-args-function, frame-creation-function)
589         (gui-backend-set-selection, gui-backend-get-selection)
590         (gui-backend-selection-owner-p, gui-backend-selection-exists-p):
591         * lisp/term/pc-win.el (gui-backend-get-selection)
592         (gui-backend-selection-exists-p, gui-backend-selection-owner-p)
593         (gui-backend-set-selection, window-system-initialization)
594         (frame-creation-function, handle-args-function):
595         * lisp/term/ns-win.el (window-system-initialization)
596         (handle-args-function, frame-creation-function)
597         (gui-backend-set-selection, gui-backend-selection-exists-p)
598         (gui-backend-get-selection):
599         * lisp/startup.el (handle-args-function):
600         * lisp/term/xterm.el (gui-backend-get-selection)
601         (gui-backend-set-selection): Use the new syntax.
603 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
605         * test/indent/css-mode.css: Add tests for url(...) syntax.
607 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
609         * lisp/emacs-lisp/smie.el: Use `declare' for `pure'.
610         (smie-precs->prec2, smie-merge-prec2s, smie-bnf->prec2)
611         (smie-prec2->grammar): Use `declare'.
613 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
615         * lisp/emacs-lisp/cl-generic.el: Accommodate future changes.
616         (cl--generic-generalizer): Add `name' field.
617         (cl-generic-make-generalizer): Add corresponding `name' argument.
618         (cl-generic-define-generalizer): New macro.
619         (cl--generic-head-generalizer, cl--generic-eql-generalizer)
620         (cl--generic-struct-generalizer, cl--generic-typeof-generalizer)
621         (cl--generic-t-generalizer): Use it.
622         (cl-generic-ensure-function): Add `noerror' argument.
623         (cl-generic-define): Use it so we don't follow aliases.
624         (cl-generic-define-method): Preserve pre-existing ordering of methods.
625         (cl--generic-arg-specializer): New function.
626         (cl--generic-cache-miss): Use it.
627         (cl-generic-generalizers): Only fset a temporary definition
628         during bootstrap.
629         (cl--generic-struct-tag, cl--generic-struct-specializers):
630         Allow extra arguments.
632         * lisp/emacs-lisp/eieio-compat.el
633         (eieio--generic-static-symbol-generalizer)
634         (eieio--generic-static-object-generalizer):
635         Use cl-generic-define-generalizer.
636         (eieio--generic-static-symbol-specializers): Allow extra arguments.
638         * lisp/emacs-lisp/eieio-core.el (eieio--generic-generalizer)
639         (eieio--generic-subclass-generalizer):
640         Use cl-generic-define-generalizer.
641         (eieio--generic-subclass-specializers): Allow extra arguments.
643 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
645         * lisp/emacs-lisp/bytecomp.el (compile-defun): Add defvars in scope.
647 2015-10-29  Michael Albinus  <michael.albinus@gmx.de>
649         Add "afp" method to Tramp
651         * doc/misc/tramp.texi (GVFS based methods): Describe `afp' method.
653         * lisp/net/tramp-gvfs.el (tramp-gvfs-methods): Add "afp" method.
654         (tramp-gvfs-handle-expand-file-name)
655         (tramp-gvfs-handler-mounted-unmounted)
656         (tramp-gvfs-connection-mounted-p, tramp-gvfs-mount-spec)
657         (tramp-gvfs-maybe-open-connection): Support also "afp".
658         (tramp-gvfs-handle-file-attributes): Handle the case of empty
659         "owner::user" and "owner::group" entries.
661 2015-10-29  Andy Moreton  <andrewjmoreton@gmail.com>
663         Handle negative coordinates in ‘x_calc_absolute_position’
665         * src/w32term.c (x_calc_absolute_position): Find display origin to
666         allow for negative coordinates.
668 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
670         (internal--syntax-propertize): Save match-data here (bug#21766)
672         * lisp/emacs-lisp/syntax.el (internal--syntax-propertize): Save match-data.
673         * lisp/simple.el (delete-trailing-whitespace): Undo last change.
675 2015-10-28  Dmitry Gutov  <dgutov@yandex.ru>
677         Don't require default-directory to end with a slash
679         * doc/lispref/files.texi (Magic File Names): Document the change
680         in unhandled-file-name-directory.
682         * lisp/url/url-handlers.el
683         (url-handler-unhandled-file-name-directory): Update accordingly.
685         * src/buffer.c (default-directory): Update the docsting.
687         * src/fileio.c (unhandled-file-name-directory): Default to calling
688         `file-name-as-directory'
689         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02294.html).
691 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
693         * lisp/isearch.el: Delete some outdated comments.
695 2015-10-28  Vibhav Pant  <vibhavp@gmail.com>
697         Fix eshell/clear not working if the output has a small line count
699         * lisp/eshell/esh-mode.el (eshell/clear): Use (window-size) as the
700         number of newlines to be inserted. This fixes the issue where
701         eshell/clear wouldn't work if the prompt was not at the bottom of the
702         window, and the output wasn't too long.
704 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
706         * lisp/files.el (write-file): Use vc-refresh-state.
708         * lisp/autorevert.el (auto-revert-handler): Use vc-refresh-state.
710         * lisp/vc/pcvs.el (cvs-revert-if-needed): Use vc-refresh-state.
712 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
714         * lisp/emacs-lisp/macroexp.el: Tweak macroexp-if optimizations.
715         (macroexp-unprogn): Make sure we never return an empty list.
716         (macroexp-if): Remove unused (and unsafe) optimization.
717         Optimize (if A T (if B T E)) into (if (or A B) T E) instead, which does
718         occur occasionally.
720 2015-10-28  Juanma Barranquero  <lekktu@gmail.com>
722         Fix bug#21766 and add test
723         * lisp/simple.el (delete-trailing-whitespace): Save match data when
724         calling `skip-syntax-backward'.
725         * test/automated/simple-test.el (simple-delete-trailing-whitespace):
726         New test.
728 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
730         * doc/lispref/sequences.texi (Sequence Functions): Fix typo.
732 2015-10-28  Paul Eggert  <eggert@cs.ucla.edu>
734         * src/dispnew.c (init_display): Simplify overflow checking.
736 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
738         * lisp/character-fold.el (character-fold-to-regexp): Fix case
739         where string ends in space
741 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
743         * lisp/emacs-lisp/seq.el (seq-mapn): New function.
745         * doc/lispref/sequences.texi (Sequence Functions): Document seq-mapn.
747 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
749         * lisp/character-fold.el: Make compatible with lax-whitespace.
750         (character-fold-to-regexp): Rework internals to play nice with
751         lax-whitespacing.
753         When the user types a space, we want to match the table entry for
754         ?\s, which is generally a regexp like "[ ...]".  However, the
755         `search-spaces-regexp' variable doesn't "see" spaces inside these
756         regexp constructs, so we need to use "\\( \\|[ ...]\\)" instead (to
757         manually expose a space).
759         Furthermore, the lax search engine acts on a bunch of spaces, not
760         on individual spaces, so if the string contains sequential spaces
761         like "  ", we need to keep them grouped together like this:
762         "\\(  \\|[ ...][ ...]\\)".
764 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
766         * lisp/isearch.el: Refactor momentary messages.
767         (isearch--momentary-message): New function.
768         (isearch-toggle-lax-whitespace, isearch-toggle-case-fold)
769         (isearch-toggle-invisible): Use it.
771 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
773         * lisp/isearch.el: Define all toggles with `isearch-define-mode-toggle'.
774         (isearch-define-mode-toggle): New macro.
775         (isearch-toggle-invisible): Rename to
776         `isearch-define-mode-toggle'.
777         (isearch-toggle-case-fold, isearch-toggle-invisible)
778         (isearch-toggle-regexp, isearch-toggle-lax-whitespace): Define
779         with `isearch-define-mode-toggle'.
781 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
783         Avoid using `add-to-list' on a let-local var in tramp-smb.el
785         * lisp/net/tramp-compat.el (tramp-compat-delete-dups): New defun.
786         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files): Use it.
788 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
790         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files):
791         Revert 692bce5b9eccfae19ae2a5a23a9ccd8d6bf86076, `delete-dups'
792         does not exist in XEmacs 21.4.
794 2015-10-28  Anders Lindgren  <andlind@gmail.com>
796         Fixed OS X startup crash
798         Input events started to arrive before ns_term_init() was finished.
799         Solved by blocking input.  This also seems to correct the "You
800         can't open the application "Emacs" because it may be damaged or
801         incomplete" error issued when double-clicking on the Emacs
802         application.
804         * nsterm.m (ns_constrain_all_frames, ns_init_term): Block input.
805         * nsterm.m (ns_send_appdefined, EmacsApp): Trace output.
807 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
809         * src/process.c (Fget_buffer_process): Improve docstring.
810         Document the fact that it doesn't return dead processes.
812 2015-10-28  Anders Lindgren  <andlind@gmail.com>
814         Fix incorrect NextStep tool-bar-mode -- wrong number of rows in frame.
816         * nsterm.h (struct ns_output): New flag, in_animation.
817         * nsfns.m (Fx_create_frame): Initialize in_animation flag.
818         * nsmenu.m (free_frame_tool_bar, update_frame_tool_bar): Set
819         in_animation flag around call to "setVisible". Set new tool bar
820         height before call to setVisible.
821         * nsterm.m (x_set_window_size): Don't call [view setRow:
822         andColumns:] as this fools the subsequent call to updateFrameSize
823         from performing the real resize.
824         (windowDidResize): Don't update anything when in_animation is
825         non-zero.
827         Trace output.
829         * nsmenu.m (free_frame_tool_bar, update_frame_tool_bar)
830         (EmacsToolbar):
831         * nsterm.m (x_set_window_size, updateFrameSize)
832         ([EmacsView setRows: andColumns:])
834 2015-10-28  Nicolas Petton  <nicolas@petton.fr>
836         * lisp/emacs-lisp/thunk.el (thunk-delay): Fix the macro.
838 2015-10-28  Tassilo Horn  <tsdh@gnu.org>
840         Prettify TeX macros not ending in a word char
842         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
843         Prettify macros which don't end in a word character.
845 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
847         Pipe Hg commit descriptions through 'tabindent'
849         * lisp/vc/vc-hg.el (vc-hg-log-format): Pipe commit description
850         through 'tabindent'.
851         (vc-hg-log-view-mode): Set tab-width to 2 locally.
852         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02259.html)
854 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
856         * lisp/net/tramp-smb.el: Avoid using `add-to-list' on a let-local var.
857         (tramp-smb-handle-directory-files): Use `delete-dups'.
859         * lisp/net/tramp.el (auto-save-file-name-transforms): Declare.
861 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
863         * lisp/international/ccl.el: Use lexical-binding.
864         (ccl-compile-if): Remove unused var `false-ic'.
865         (ccl-compile-write-repeat): Remove unused var `i'.
866         (ccl-compile-map-single): Remove unused var `id'.
867         (ccl-dump, ccl-dump-binary): Use explicit let-binding to bind the
868         dynamic var `ccl-code'.
870 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
872         * lisp/json.el (json-new-object): Optimize trivial `list' call.
874 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
876         * lisp/help.el: Fix bug with incorrect arglist string.
877         (help-add-fundoc-usage): Don't mistake a mis-formatted string
878         for a list.
880 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
882         * lisp/gnus/gnus-topic.el: Silence some warnings.
883         (gnus-topic-prepare-topic): Remove unused var `topic'.
884         (gnus-topic-remove-topic): Mark unused arg `hide'.
885         (gnus-tmp-header): Declare.
886         (gnus-topic-goto-missing-group): Remove unused var `entry'.
887         (gnus-topic-unmark-topic): Mark unused arg `dummy'.
888         (gnus-topic-copy-matching): Mark unused arg `copyp'.
889         Move initialization of `topic' into its declaration.
891 2015-10-27  Stephen Leake  <stephen_leake@stephe-leake.org>
893         Minor CEDET fixes
895         * lisp/cedet/cedet-global.el (cedet-gnu-global-gtags-call):
896         Handle warnings from gtags about invalid options.
897         (cedet-gnu-global-create/update-database): Do incremental update
898         properly.
900         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
901         Get monotone root right.
903 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
905         Fall back to polling in autorevert when needed
907         * lisp/autorevert.el (auto-revert-notify-handler): When a
908         `stopped' event arrives from file notification, fall back to polling.
910         * test/automated/file-notify-tests.el
911         (file-notify-test03-autorevert): Extend test for polling when file
912         notification ceases to work.
914 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
916         Show full commit messages in 'hg log' when appropriate
918         * lisp/vc/vc-hg.el (vc-hg-log-format): New variable.
919         (vc-hg-print-log, vc-hg-expanded-log-entry): Use it.
920         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02191.html)
922 2015-10-27  Nicolas Petton  <nicolas@petton.fr>
924         Use a plain SVG file for the icon
926         * etc/images/icons/hicolor/scalable/apps/emacs.svg: Use a plain SVG
927           format instead of the Inkscape SVG format.
929 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
931         Fix subtle bug in auto-revert-tests.el
933         * test/automated/auto-revert-tests.el
934         (auto-revert-test02-auto-revert-mode-dired): Narrow *Messages*
935         buffer where it belongs to.  (Bug#21668)
937 2015-10-26  Nicolas Petton  <nicolas@petton.fr>
939         * lisp/emacs-lisp/map.el: Better docstrings.
941         * lisp/emacs-lisp/seq.el: Better docstrings.
943         * lisp/emacs-lisp/seq.el: Rename all seq arguments to sequence.
945 2015-10-26  Phillip Lord  <phillip.lord@russet.org.uk>
947         * lisp/emacs-lisp/ert.el: Print results without newline escaping.
949 2015-10-26  Stephen Leake  <stephen_leake@stephe-leake.org>
951         Clarify that load-path contents should be directory file names
953         * doc/lispref/files.texi (Directory Names): Define and use "directory
954         file name".  Recommend `expand-file-name'.
956         * src/lread.c (load-path): Fix doc string; elements are directory file
957         names.
959 2015-10-26  Eli Zaretskii  <eliz@gnu.org>
961         Fix simple-test.el test
963         * test/automated/simple-test.el (simple-test--dummy-buffer):
964         Make sure indentation doesn't use TABs, otherwise the 6th test
965         might fail.
967 2015-10-26  Mark Oteiza  <mvoteiza@udel.edu>
969         * lisp/net/eww.el (eww-bookmark-prepare): Use truncate-string-to-width.
970         `substring' does not account for full width characters.
972 2015-10-26  Michael Albinus  <michael.albinus@gmx.de>
974         Further work on `stopped' events in filenotify.el
976         * doc/lispref/os.texi (File Notifications): Rework examples.
978         * lisp/filenotify.el (file-notify--rm-descriptor): Optional parameter.
979         (file-notify--rm-descriptor, file-notify-callback): Improve check
980         for sending `stopped' event.
981         (file-notify-add-watch): Check for more events for `inotify'.
983         * test/automated/file-notify-tests.el
984         (file-notify--test-expected-events): New defvar.
985         (file-notify--test-with-events): Use it.
986         (file-notify--test-cleanup): Make it more robust when deleting
987         directories.
988         (file-notify--test-event-test): Check also for watched directories.
989         (file-notify--test-event-handler): Suppress temporary .#files.
990         (file-notify-test02-events, file-notify-test04-file-validity):
991         Rework `stopped' events.
992         (file-notify-test05-dir-validity): Wait for events when appropriate.
994 2015-10-26  Artur Malabarba  <bruce.connor.am@gmail.com>
996         * src/keyboard.c (post-command-hook): Shorten docstring.
998 2015-10-26  Tassilo Horn  <tsdh@gnu.org>
1000         Fix infinite loop in sh-script's SMIE code
1002         * lisp/progmodes/sh-script.el (sh-smie-sh-forward-token): Fix infinite
1003         loop (bug#21747).
1005 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
1007         * lisp/isearch.el (search-default-regexp-mode): Revert to nil.
1008         Character-fold search _still_ doesn't play well with
1009         lax-whitespace.  So disable it by default (again) for now.
1011 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
1013         * lisp/isearch.el: No visual feedback for default search mode.
1014         During an isearch where character-folding is the default, we don't
1015         want to take up minibuffer space just to tell the user that
1016         "Char-fold " is on.  The same goes for other modes, if the user
1017         changes the default.  In contrast, if the user toggles OFF the
1018         default mode, they should see "Literal", to distinguish it from
1019         the default mode.
1020         (isearch--describe-regexp-mode): Return "" if describing the
1021         default mode, and return "literal " if describing a plain search
1022         and it is not default.
1024 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
1026         * test/automated/simple-test.el: New file.
1027         Define tests for `newline' and `open-line'.
1029 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
1031         * lisp/simple.el (open-line): Integrate with electric-indent-mode.
1032         Also run `post-self-insert-hook' when called interactively.
1034 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
1036         * lisp/simple.el (open-line): Fix docstring.
1037         Also explain apparently redundant line.
1039 2015-10-25  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
1040             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
1042         Sync with soap-client repository, version 3.0.1
1044         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
1045         Bump version to 3.0.1.
1047         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Update home page.
1049 2015-10-25  Eli Zaretskii  <eliz@gnu.org>
1051         * lisp/progmodes/grep.el (grep): Doc fix.  (Bug#21754)
1053 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
1055         * src/keyboard.c (post-command-hook): Extend the docstring.
1056         Mainly, explain how to use it without hanging Emacs, or giving the
1057         impression that it is hanging.  Also mention `pre-command-hook'.
1058         (pre-command-hook): Mention `post-command-hook'.
1060 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
1062         * lisp/custom.el (custom-declare-variable): Shorten code again.
1063         Without using pcase this time.  We can't use pcase because it is
1064         loaded after custom in loadup.el.  Also add a comment explaining
1065         this to future dummies like me.
1067 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
1069         * doc/lispref/os.texi (File Notifications): Document `stopped event'.
1071 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
1073         Introduce `stopped' event in file notification
1075         * lisp/filenotify.el (file-notify--rm-descriptor): New defun.
1076         (file-notify-rm-watch): Use it.
1077         (file-notify-callback): Implement `stopped' event.
1078         (file-notify-add-watch): Mention `stopped' in the docstring.
1079         Check, that upper directory exists.
1081         * test/automated/file-notify-tests.el (file-notify-test01-add-watch):
1082         Add two test cases.
1083         (file-notify-test02-events): Handle also `stopped' event.
1084         (file-notify-test04-file-validity): Add another test case.
1086 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
1088         Revert commit that broke 'make bootstrap'
1090         * lisp/custom.el (custom-declare-variable): Revert commit
1091         79fac080d277fed07b3c192890ad59d36d9f83b6.  custom.el needs to work
1092         even when pcase has not been defined yet, when doing bootstrapping.
1094 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
1096         Port recent inline functions fix to Standard C
1098         * src/lisp.h (LISP_MACRO_DEFUN, LISP_MACRO_DEFUN_VOID): Remove.
1099         All uses rewritten to define the function directly rather than to
1100         use a macro to define the function.  This conforms to Standard C,
1101         which does not allow stray semicolons at the top level.  I hope it
1102         also avoids the problems with TAGS.  Those macros, though clever,
1103         were pretty confusing anyway, and it wasn’t clear they were worth
1104         the aggravation even without the TAGS problem.
1106 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
1108         * lisp/isearch.el: Make character-fold search the default again.
1110 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
1112         * lisp/character-fold.el: Many improvements.
1113         (character-fold-search-forward, character-fold-search-backward):
1114         New command.
1115         (character-fold-to-regexp): Remove lax-whitespace hack.
1116         (character-fold-search): Remove variable.  Only isearch and
1117         query-replace use char-folding, and they both have their own
1118         variables to configure that.
1120 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
1122         * lisp/isearch.el: Generalize definition of regexp-function toggles.
1123         (isearch-specify-regexp-function): New macro for specifying
1124         possible values of `isearch-regexp-function'.
1125         (isearch-toggle-character-fold, isearch-toggle-symbol)
1126         (isearch-toggle-word): Define with `isearch-specify-regexp-function'.
1128 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
1130         * lisp/isearch.el (search-default-regexp-mode): New variable.
1131         (isearch-mode): Use it.
1133 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
1135         * lisp/isearch.el (search-exit-option, search-slow-window-lines)
1136         (search-slow-speed, search-upper-case)
1137         (search-nonincremental-instead, search-whitespace-regexp)
1138         (search-invisible, isearch-hide-immediately)
1139         (isearch-resume-in-command-history, search-ring-max)
1140         (regexp-search-ring-max, search-ring-update, search-highlight)
1141         (isearch-fail): Delete :group entries.
1143 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
1145         * lisp/custom.el (custom-declare-variable): Shorten code a bit.
1147 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
1149         addpm.c: Silence some warnings.
1151         * nt/addpm.c (DdeCommand): Cast pData argument of DdeClientTransaction
1152         to LPBYTE.
1153         (add_registry): Pass NULL to optional lpClass argument of
1154         RegCreateKeyEx, not an empty string.
1156 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
1158         addpm.c: Do not add obsolete GTK libraries to the path.
1160         * nt/addpm.c (REG_GTK, REG_RUNEMACS_PATH): Delete.
1161         (add_registry): Remove variables `size' and `gtk_key'.
1162         Do not add the GTK DLL directory to the library search path; it is
1163         confusing behavior (in particular, the same Emacs version with and
1164         without invoking addpm will use a different path), and the GTK image
1165         libraries are obsolete anyway.
1167 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
1169         addpm.c: Replace existing registry entries, but do not create new ones
1171         * nt/addpm.c (add_registry): If the Emacs registry key exists, replace
1172         existing values from previous versions, but do not add new ones; the
1173         key could exist for other reasons unrelated to old Emacsen, like X-style
1174         resources, or to set some environment variables like HOME or LANG, and
1175         in that case we don't want to populate it with obsolete values.
1177 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
1179         * nt/addpm.c (add_registry): Do not compute unused return value.
1181 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
1183         addpm.c: Don't pass REG_OPTION_NON_VOLATILE to RegOpenKeyEx
1185         * nt/addpm.c (add_registry): Pass 0 to ulOptions argument of
1186         RegOpenKeyEx, not REG_OPTION_NON_VOLATILE.  This doesn't change
1187         current behavior because REG_OPTION_NON_VOLATILE is defined to
1188         be 0L anyway, but that option is actually documented only for
1189         RegCreateKeyEx.
1191 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
1193         * src/w32notify.c (Fw32notify_add_watch): Fix version check.
1195 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
1197         Update frame title when redisplay scrolls selected window
1199         * src/xdisp.c (redisplay_window): Reconsider the frame's title
1200         when the mode-line of the frame's selected window needs to be
1201         updated.
1203 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
1205         Update frame title when scrolling the selected window
1207         * src/window.c (wset_update_mode_line): New function, sets either
1208         the window's update_mode_line flag or the global update_mode_lines
1209         variable.
1210         (Fset_window_start, set_window_buffer, window_scroll_pixel_based)
1211         (window_scroll_line_based): Call it instead of only setting the
1212         window's update_mode_line flag.
1214 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
1216         An even better fix for bug#21739
1218         * src/window.c (set_window_buffer): If the window is the frame's
1219         selected window, set update_mode_lines, not the window's
1220         update_mode_line flag.
1221         * src/buffer.c (Fkill_buffer): Undo last change.
1222         (set_update_modelines_for_buf): Function deleted.
1224 2015-10-24  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
1225             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
1227         Sync with soap-client repository, version 3.0.0
1229         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
1230         Bump version to 3.0.0.
1232         * lisp/net/soap-inspect.el: Merge in changes from Emacs master branch.
1234         * lisp/net/soap-client.el: Merge in changes from Emacs master branch.
1236         * lisp/net/soap-inspect.el: Shorten first line description.
1238         * lisp/net/soap-client.el: Make a small whitespace fix.
1240         * lisp/net/soap-inspect.el: Update copyright years.
1242         * lisp/net/soap-client.el (soap-encoded-namespaces): Move above
1243         first use in soap-encode-xs-element.
1245         * lisp/net/soap-client.el (soap-type-is-array?): new defun
1246         (soap-encode-xs-element): handle array elements in this function
1247         (soap-encode-xs-complex-type): flag error if asked to encode an
1248         array type, this is handled in `soap-encode-xs-element'
1250         * lisp/net/soap-inspect.el (soap-inspect-xs-attribute-group):
1251         Do not print type for attribute group.
1253         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute-group)
1254         New function.
1255         (soap-inspect-xs-attribute-group): Likewise.
1257         * lisp/net/soap-inspect.el
1258         (soap-resolve-references-for-xs-attribute-group): Resolve
1259         references of attributes in an attribute group.
1261         * lisp/net/soap-client.el (soap-decode-xs-attributes): Process attribute
1262         type directly, not through soap-wsdl-get.
1264         * lisp/net/soap-client.el (soap-xs-parse-attribute): Leave reference
1265         nil if reference attribute is nil.
1267         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
1268         Convert XML schema attributes to xsd:string.
1270         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute):
1271         New function.
1272         (soap-sample-value-for-xs-simple-type): Prepend attributes to result.
1273         (soap-sample-value-for-xs-complex-type): Likewise.
1274         (soap-inspect-xs-attribute): New function.
1275         (soap-inspect-xs-simple-type): Print attributes.
1276         (soap-inspect-xs-complex-type): Likewise.
1278         * lisp/net/soap-inspect.el (soap-resolve-references-for-xs-simple-type):
1279         Resolve references for attributes.
1280         (soap-resolve-references-for-xs-complex-type): Likewise.
1282         * lisp/net/soap-client.el (soap-xml-node-find-matching-child):
1283         Rename from soap-xml-node-first-child.
1284         (soap-xs-parse-attribute): Call soap-xml-node-find-matching-child.
1285         (soap-xs-parse-simple-type): Likewise.
1287         * lisp/net/soap-client.el (soap-invoke-async): Add error checking.
1289         * lisp/net/soap-client.el (soap-invoke-internal): New function.
1290         (soap-invoke-async): Call soap-invoke-internal.
1291         (soap-invoke): Likewise.
1293         * lisp/net/soap-client.el (soap-invoke-async): Ensure buffer passed to
1294         url-retrieve callback is killed.
1296         * lisp/net/soap-client.el (soap-parse-wsdl-phase-validate-node):
1297         Rename function.
1298         (soap-parse-wsdl-phase-fetch-imports): Likewise.
1299         (soap-parse-wsdl-phase-parse-schema): Likewise.
1300         (soap-parse-wsdl-phase-fetch-schema): Likewise.
1301         (soap-parse-wsdl-phase-finish-parsing): Likewise.
1302         (soap-parse-wsdl): Update calls.
1304         * lisp/net/soap-client.el (soap-invoke-async): Fix callback invocation.
1306         * lisp/net/soap-client.el (soap-invoke-async): New function.
1307         (soap-invoke): Reimplement using soap-invoke-async.
1309         * lisp/net/soap-client.el (soap-parse-server-response):
1310         Improve docstring.
1311         (soap-invoke): Inline call to soap-parse-server-response.
1313         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
1314         Prevent incorrect warning.
1316         * lisp/net/soap-client.el (soap-parse-server-response):
1317         Rename soap-process-url-response.  Destroy the mime part.
1318         (soap-invoke): Call soap-parse-server-response.
1320         * lisp/net/soap-client.el: Update copyright date.
1322         * lisp/net/soap-client.el: Fix checkdoc issues.
1324         * lisp/net/soap-client.el: Fix indentation and long lines.
1326         * lisp/net/soap-client.el (soap-time-format): Remove variable.
1327         (soap-encode-xs-basic-type): Simplify date-time format detection.
1328         (soap-decode-xs-basic-type): Remove soap-time-format support.
1330         * lisp/net/soap-client.el (soap-process-url-response): New function.
1331         (soap-fetch-xml-from-url): Call soap-process-url-response.
1332         (soap-parse-wsdl-phase-1): New function.
1333         (soap-parse-wsdl-phase-2): Likewise.
1334         (soap-parse-wsdl-phase-3): Likewise.
1335         (soap-parse-wsdl-phase-4): Likewise.
1336         (soap-parse-wsdl-phase-5): Likewise.
1337         (soap-parse-wsdl): Call phase functions.
1339         * lisp/net/soap-client.el (soap-decode-xs-basic-type):
1340         Remove one-argument and call.
1342         * lisp/net/soap-client.el (soap-decode-date-time): Improve docstring.
1344         * lisp/net/soap-client.el (soap-xmlschema-imports): Remove variable.
1345         (soap-parse-schema): Add wsdl argument.  Look up XML schema
1346         imports from wsdl.
1347         (soap-load-wsdl): Do not set soap-xmlschema-imports.
1348         (soap-parse-wsdl): Get XML schema imports from wsdl.
1350         * lisp/net/soap-client.el (soap-current-file): Remove variable.
1351         (soap-wsdl): Add current-file slot.
1352         (soap-fetch-xml-from-url): Add wsdl argument.  Look up current
1353         file from wsdl.
1354         (soap-fetch-xml-from-file): Likewise.
1355         (soap-fetch-xml): Likewise.
1356         (soap-load-wsdl): Always create wsdl object first.
1357         (soap-parse-wsdl): Pass wsdl to soap-fetch-xml.
1359         * lisp/net/soap-client.el (soap-xs-element): Add is-group slot.
1360         (soap-xs-parse-element): Set is-group slot.
1361         (soap-resolve-references-for-xs-element): Skip is-group elements.
1362         (soap-xs-complex-type): Add is-group slot.
1363         (soap-xs-parse-complex-type): Set is-group slot.
1364         (soap-xs-parse-sequence): Parse xsd:group elements.
1365         (soap-resolve-references-for-xs-complex-type): Inline elements
1366         from referenced xsd:group nodes.
1367         (soap-parse-schema): Parse xsd:group nodes.
1369         * lisp/net/soap-client.el (soap-invoke):
1370         Don't set url-http-version to 1.0.
1372         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
1373         Allow choice nodes to accept multiple values.
1375         * lisp/net/soap-client.el (soap-encode-body): Check parameters argument
1376         for extra header values.
1378         * lisp/net/soap-client.el (soap-well-known-xmlns):
1379         Add wsa and wsaw tags.
1380         (soap-operation): Add input-action and output-action slots.
1381         (soap-parse-operation): Parse wsaw:Action nodes.
1382         (soap-encode-body): Encode service-url for WS-Addressing.
1383         (soap-create-envelope): Likewise.
1384         (soap-invoke): Update soap-create-envelope call to provide
1385         service-url argument.
1387         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
1388         Support xsi:type override attribute.
1389         (soap-decode-array): Likewise.
1391         * lisp/net/soap-client.el (soap-parse-schema):
1392         Handle location attribute.
1394         * lisp/net/soap-client.el (soap-decode-type): Check that multiRef
1395         matched validation regexp.
1397         * lisp/net/soap-client.el (soap-encode-xs-simple-type):
1398         Encode xsd:list nodes.
1399         (soap-decode-xs-simple-type): Decode xsd:list nodes.
1401         * lisp/net/soap-client.el (soap-get-candidate-elements):
1402         Fix reference handling.
1404         * lisp/net/soap-client.el (soap-xs-simple-type): Add is-list slot.
1405         (soap-xs-parse-simple-type): Call soap-xs-add-list for xsd:list nodes.
1406         (soap-xs-add-list): New function.
1408         * lisp/net/soap-client.el (soap-encode-xs-element): When a boolean is
1409         expected, interpret nil as "false".
1411         * lisp/net/soap-client.el (soap-make-xs-basic-types): Add gYearMonth,
1412         gYear, gMonthDay, gDay and gMonth.
1414         * lisp/net/soap-client.el (soap-time-format): New variable.
1415         (soap-encode-xs-basic-type): Handle dateTime, time, date,
1416         gYearMonth, gYear, gMonthDay, gDay and gMonth.
1417         (soap-decode-date-time): New function.
1418         (soap-decode-xs-basic-type): Use soap-decode-date-time.
1420         * lisp/net/soap-client.el (soap-encode-xs-basic-type): Validate value
1421         after encoding.
1422         (soap-decode-xs-basic-type): Validate value before decoding.
1424         * lisp/net/soap-client.el (soap-validate-xs-basic-type): New function.
1425         (soap-validate-xs-simple-type): Call soap-validate-xs-basic-type.
1427         * lisp/net/soap-client.el (soap-xs-add-union): Append result to base
1428         instead of overwriting it.
1429         (soap-validate-xs-simple-type): Add union support.
1431         * lisp/net/soap-client.el (soap-xs-add-restriction): Translate pattern
1432         to Emacs regexp using xsdre-translate.
1433         (soap-validate-xs-simple-type): Validate value against pattern.
1435         * lisp/net/soap-client.el (soap-xs-add-union): Preserve WSDL order of
1436         inline simpleType nodes.
1437         (soap-decode-type): Handle union types.
1439         * lisp/net/soap-client.el (soap-decode-xs-attributes): Decode basic-type
1440         attributes.
1442         * lisp/net/soap-client.el (soap-get-xs-attributes-from-groups): Rename
1443         from soap-xs-attribute-group-consolidate, all callers updated
1444         (soap-get-xs-attributes): Rename from
1445         soap-xs-attributes-consolidate, all callers updated
1447         * lisp/net/soap-client.el (soap-xs-type): Add attribute-group slot.
1448         (soap-xs-attribute-group): New type.
1449         (soap-xs-parse-attribute-group): New function.
1450         (soap-resolve-references-for-xs-attribute-group): Likewise.
1451         (soap-xs-add-extension): Handle attribute groups.
1452         (soap-resolve-references-for-xs-simple-type): Likewise.
1453         (soap-xs-parse-complex-type): Likewise.
1454         (soap-xs-parse-extension-or-restriction): Likewise.
1455         (soap-resolve-references-for-xs-complex-type): Likewise.
1456         (soap-xs-attribute-group-consolidate): New function.
1457         (soap-xs-attributes-consolidate): Handle attribute groups.
1458         (soap-parse-schema): Likewise.
1460         * lisp/net/soap-client.el (soap-encode-xs-basic-type):
1461         Fix boolean encoding.
1463         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Print ref
1464         element names in warnings.
1466         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Fix splicing.
1468         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
1469         Eliminate invalid warnings for choice types.
1471         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
1472         Also encode base type attributes.
1474         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Fix compilation
1475         warning.  Print e-name in warnings, or element if e-name is nil.
1477         * lisp/net/soap-client.el (soap-xs-element): Add alternatives slot.
1478         (soap-xs-parse-element): Set substitution-group.
1479         (soap-resolve-references-for-xs-element): Populate alternatives slot.
1480         (soap-get-candidate-elements): New function.
1481         (soap-encode-xs-complex-type): Iterate through all candidate elements.
1482         Handle types with nil type indicator.  Fix warning logic.
1484         * lisp/net/soap-client.el (soap-current-wsdl): Move declaration
1485         earlier in the file to prevent compiler warning.
1487         * lisp/net/soap-client.el (soap-node-optional): New function.
1488         (soap-node-multiple): Likewise.
1489         (soap-xs-parse-element): Call soap-node-optional and
1490         soap-node-multiple.
1491         (soap-xs-complex-type): Add optional? and multiple? slots.
1492         (soap-xml-get-children-fq): New function.
1493         (soap-xs-element-get-fq-name): Likewise.
1494         (soap-xs-complex-type-optional-p): Likewise.
1495         (soap-xs-complex-type-multiple-p): Likewise.
1496         (soap-xs-attributes-consolidate): Likewise.
1497         (soap-decode-xs-attributes): Likewise.
1498         (soap-decode-xs-complex-type): Decode types with nil type indicator.
1499         Support children that use local namespaces.  Decode attributes.
1500         Add type considerations to optional? and multiple? warnings.
1502         * lisp/net/soap-client.el (soap-xs-parse-extension-or-restriction):
1503         Store parsed attributes.
1504         (soap-encode-xs-complex-type-attributes): Encode custom attributes.
1506         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
1507         Don't add the xsi:type attribute (Exchange refuses requests which have
1508         this attribute).
1510         * lisp/net/soap-client.el, soap-inspect.el: Convert to lexical binding,
1511         correct compiler warnings about unused function arguments and
1512         local variables.
1514         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Handle nil
1515         type indicator.
1516         (soap-parse-envelope): Handle response headers.
1517         (soap-parse-response): Likewise.  Only return non-nil decoded values.
1519         * lisp/net/soap-client.el (soap-validate-xs-simple-type):
1520         Return validated value.
1522         * lisp/net/soap-client.el (soap-xs-parse-element)
1523         (soap-xs-parse-simple-type)
1524         (soap-xs-parse-complex-type)
1525         (soap-parse-message)
1526         (soap-parse-operation): Add the current namespace to the element
1527         being created.
1528         (soap-resolve-references-for-xs-element)
1529         (soap-resolve-references-for-xs-simple-type)
1530         (soap-resolve-references-for-xs-complex-type)
1531         (soap-resolve-references-for-operation): Resolve the namespace to
1532         the namespace tag.
1533         (soap-make-wsdl): specify a namespace tag when creating the xsd
1534         and soapenc namespaces
1535         (soap-wsdl-resolve-references): don't update namespace tags in
1536         elements here
1537         (soap-parse-port-type): bind the urn: to soap-target-xmlns
1538         (soap-encode-body): don't add nil namespace tags to
1539         soap-encoded-namespaces
1541         * lisp/net/soap-inspect.el: Use `soap-make-wsdl` to construct the object
1542         for registering the soap-inspect method.  Make debbugs tests pass.
1543         * lisp/net/soap-client.el (soap-decode-any-type): Use soap-l2fq on the
1544         type name, also skip string only nodes when decoding a structure.
1545         (soap-xs-parse-complex-type): (BUG) Dispatch parsing for choice
1546         types too.
1547         (soap-encode-body): Grab the header value from the param table.
1549         * lisp/net/soap-client.el (soap-should-encode-value-for-xs-element):
1550         New function.
1551         (soap-encode-xs-element): Don't encode nil value unless needed.
1553         * lisp/net/soap-client.el (soap-bound-operation): New slot `soap-body`.
1554         (soap-parse-binding): Parse the message parts required in the body.
1555         (soap-encode-body): Encode only the parts that are declared to be
1556         part of the body.
1558         * lisp/net/soap-client.el (soap-encode-xs-element): use the fq name
1559         when writing out the tag.
1560         (soap-encode-body): Remove hack that inserts the xmlns in the
1561         element attributes list.
1563         * lisp/net/soap-client.el (soap-xs-attribute): Add "default" slot.
1564         (soap-xs-parse-attribute): Default slot is set from the XML
1565         "fixed" attribute.
1566         (soap-encode-xs-complex-type-attributes): Encode any attributes
1567         that have a default value.  Also, don't put the xsi:nil attribute
1568         when the complex type has no content anyway.
1570         * lisp/net/soap-client.el (soap-well-known-xmlns):
1571         Add the xml namespace.
1572         (soap-local-xmlns): Start with the xml namespace.
1573         (soap-xml-node-first-child): Skip xsd:annotation nodes too.
1574         (soap-make-xs-basic-types): More xsd types added.
1575         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
1576         Handle "language", "time", "date", "nonNegativeInteger".
1577         (soap-resolve-references-for-xs-element): Don't signal an error if
1578         the element does not have a type.
1579         (soap-xs-parse-simple-type): Subtypes are handled with ecase,
1580         added stum for xsd:list.
1581         (soap-xs-add-union): Call soap-l2fq on all union members.
1582         (soap-xs-add-extension): Call soap-l2fq on the base member.
1583         (soap-resolve-references-for-xs-simple-type): Don't signal an
1584         error if the simple type has no base.
1585         (soap-resolve-references-for-xs-simple-type): Bugfix, call
1586         soap-wsdl-get on each type of the base.
1588         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
1589         Referenced type can be eiher a simple type or a basic type.
1590         (soap-xs-add-restriction)
1591         (soap-xs-parse-extension-or-restriction): Use `soap-l2fq' on base.
1592         (soap-make-xs-basic-types)
1593         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
1594         Add support for more XMLSchema basic types.
1595         (soap-current-file, soap-xmlschema-imports): New defvars.
1596         (soap-parse-schema): Add locations from xsd:import tags to
1597         `soap-xmlschema-imports'.
1598         (soap-wsdl): Make destructor private.
1599         (soap-make-wsdl): New defun, SOAP-WSDL object constructor.
1600         (soap-wsdl-add-alias): Check if we try to replace aliases.
1601         (soap-fetch-xml-from-url, soap-fetch-xml-from-file)
1602         (soap-fetch-xml): New defuns.
1603         (soap-load-wsdl): Update to load the WSDL from either a file or
1604         an url.
1605         (soap-load-wsdl-from-url): Now an alias to `soap-load-wsdl'.
1606         (soap-parse-wsdl): Process wsdl:import tags and imports from
1607         `soap-xmlschema-imports'.
1608         * lisp/net/soap-client.el (soap-l2wk): Bugfix: call symbolp instead of
1609         symbol-name.
1610         (soap-l2fq): Make the name part always a string.
1611         (soap-name-p): New defun, used for name tests.
1613         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-complex-type):
1614         Supply sample values for choice types with a special tag.
1615         * lisp/net/soap-client.el (soap-encode-xs-complex-type):
1616         Handle anonymous elements correctly.
1617         (soap-encode-value): Accept nodes that have no namespace tag.
1619         * lisp/net/soap-client.el (soap-invoke): Encode the string for
1620         `url-request-data' as UTF-8.  Fixes issue 16.
1622 2015-10-24  Nicolas Petton  <nicolas@petton.fr>
1624         Update the new icon
1626         Move the E slightly to the right in the circle.
1628         * etc/images/icons/hicolor/128x128/apps/emacs.png:
1629         * etc/images/icons/hicolor/16x16/apps/emacs.png:
1630         * etc/images/icons/hicolor/24x24/apps/emacs.png:
1631         * etc/images/icons/hicolor/32x32/apps/emacs.png:
1632         * etc/images/icons/hicolor/48x48/apps/emacs.png:
1633         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
1634         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
1635         * nt/icons/emacs.ico: New icom update.
1637 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
1639         Avoid missing inline functions from lisp.h in TAGS
1641         * src/lisp.h (LISP_MACRO_DEFUN): Mention in the commentary the
1642         need to end each invocation with a semi-colon.
1643         Add a semi-colon at the end of each invocation of LISP_MACRO_DEFUN
1644         and LISP_MACRO_DEFUN_VOID.  This is to avoid missing in TAGS
1645         inline functions defined immediately after each invocation, and
1646         also avoid tagging every invocation of these macros.
1648 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
1650         A better fix for bug#21739
1652         * src/buffer.c (set_update_modelines_for_buf): New function.
1653         (Fkill_buffer): Use it to set the global variable
1654         update_mode_lines if the killed buffer was displayed in some
1655         window.  Don't set windows_or_buffers_changed.  This is a better
1656         fix for bug#21739 than the previous fix, since it will cause only
1657         redisplay of mode lines, not of entire windows, but will still
1658         catch attention of x_consider_frame_title in xdisp.c, which
1659         redraws the frame title.
1661 2015-10-24  Tassilo Horn  <tsdh@gnu.org>
1663         * lisp/dired-aux.el (dired-compress-files-alist): Add support for
1664         tar.bz2 and tar.xz archives.
1666 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
1668         Fix infloop in redisplay introduced by a recent change
1670         * src/xdisp.c (redisplay_internal): Avoid inflooping when
1671         redisplaying the selected window sets the selected frame's
1672         redisplay flag.  (Bug#21745)
1674 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
1676         * lisp/emacs-lisp/thunk.el: Better documentation.
1678 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
1680         Replace the old icon for Windows and Mac OSX
1682         * nt/icons/emacs.ico:
1683         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
1684         Use the new icons.
1686 2015-10-23  Stephen Leake  <stephen_leake@stephe-leake.org>
1688         * lisp/emacs-lisp/package.el (package-autoload-ensure-default-file):
1689         `load-path' should contain only directory names.
1691 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
1693         New library thunk.el
1695         thunk.el is extracted from stream.el in ELPA, with additional tests.
1697         * lisp/emacs-lisp/thunk.el: New file.
1698         * test/automated/thunk-tests.el: New file.
1699         * etc/NEWS: Add information about thunk.el
1701 2015-10-23  Michael Albinus  <michael.albinus@gmx.de>
1703         Fix bug#21669
1705         * lisp/filenotify.el (file-notify-rm-watch): Improve check for
1706         calling low-level functions.
1708         * test/automated/file-notify-tests.el (file-notify--test-timeout):
1709         Decrase to 6 seconds for remote directories.
1710         (file-notify-test02-events): Expect different number of
1711         `attribute-changed' events for the local and remote cases.  Apply
1712         short delays between the operations, in order to receive all
1713         events in the remote case.  Combine `attribute-change' tests.
1714         (Bug#21669)
1716 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
1718         Decode the HTML source when displaying it in EWW
1720         * lisp/net/eww.el (eww-view-source): Decode the HTML source
1721         according to its headers.
1723 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
1725         New default icon
1727         * etc/images/icons/hicolor/128x128/apps/emacs23.png:
1728         * etc/images/icons/hicolor/16x16/apps/emacs23.png:
1729         * etc/images/icons/hicolor/24x24/apps/emacs23.png:
1730         * etc/images/icons/hicolor/32x32/apps/emacs23.png:
1731         * etc/images/icons/hicolor/48x48/apps/emacs23.png:
1732         * etc/images/icons/hicolor/scalable/apps/emacs23.svg:
1733         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document23.svg:
1734         Move the old logo files to emacs23.*.
1735         * etc/images/icons/hicolor/128x128/apps/emacs.png:
1736         * etc/images/icons/hicolor/16x16/apps/emacs.png:
1737         * etc/images/icons/hicolor/24x24/apps/emacs.png:
1738         * etc/images/icons/hicolor/32x32/apps/emacs.png:
1739         * etc/images/icons/hicolor/48x48/apps/emacs.png:
1740         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
1741         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document.svg:
1742         New files.
1743         * etc/images/icons/README: Update the copyright information.
1745 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
1747         Fix redisplay of frame title when current buffer is killed
1749         * src/buffer.c (Fkill_buffer): Set windows_or_buffers_changed to a
1750         non-zero value, to redisplay more than just the affected windows.
1751         (Bug#21739)
1753 2015-10-23  Anders Lindgren  <andlind@gmail.com>
1755         NextStep maximization and NSTRACE rewrite
1757         Full-height, full-width, and maximized windows now cover the
1758         entire screen (except the menu bar), including the part where the
1759         system dock is placed.  The system zoom animation is no longer
1760         used.
1762         Made NonMaximized->FullWidth->FullHeight->NonMaximized restore the
1763         original size.
1765         * src/nsterm.m (ns_menu_bar_height): New function, return height of
1766         the menu bar, or 0 when it's hidden.
1767         (constrain_frame_rect): New function for constraining a frame.
1768         (ns_constrain_all_frames): Set frame size explicitly rather than
1769         relying on the system doing it for us by writing back the current
1770         frame size.
1771         (windowWillUseStandardFrame): Register non-maximized width or
1772         height as new user size.  When entering full width or height,
1773         the other size component is taken from the user size.
1774         (fullscreenState): New method for accessing the fullscreen state.
1775         (constrainFrameRect): Restrict frame to be placed under the menu bar,
1776         if present.  The old version, sometimes, restricted the height of a
1777         frame to the screen, this version never does this.
1778         (zoom): Perform zoom by setting the frame to the full size of the
1779         screen (minus the menu bar).  The default system function, with the
1780         zoom animation, is no longer used, as the final frame size doesn't
1781         cover the entire screen.
1783         Rework how to constrain resizing to the character grid.  The old
1784         system used "resizeIncrements" in NSWindows.  However, once a frame
1785         was resized so that it was not aligned to the text grid, it
1786         remained unaligned even after a resize.  In addition, it conflicted
1787         when resizing a fullheight window.
1789         * src/nsterm.m (windowWillResize): Restrict frame size to text grid,
1790         unless when pixelwise frame resizing is enabled.
1791         (updateFrameSize, initFrameFromEmacs)
1792         (toggleFullScreen, handleFS): Don't set resizeIncrements.
1794         Redesign the NS trace system.  The call structure is represented
1795         using indentations and vertical lines.  The NSTRACE macro accepts
1796         printf-style arguments.  New macros for printing various
1797         information.
1799         * src/nsterm.h (NSTRACE_ENABLED): Macro to enable trace system.
1800         (NSTRACE, NSTRACE_WHEN, NSTRACE_UNLESS): Macros to start a new
1801         block (typically a function), accept printf-style arguments.
1802         (NSTRACE_MSG): Macro for extra information, accepts
1803         printf-style arguments.
1804         (NSTRACE_what): Macros for printing various types.
1805         (NSTRACE_FMT_what): Macro with printf format string snippets.
1806         (NSTRACE_ARG_what): Macros for passing printf-style arguments,
1807         corresponds to NSTRACE_FMT_what.
1808         (NSTRACE_RETURN): Macro to print return value, accept
1809         printf-style arguments.
1810         (NSTRACE_RETURN_what): Macros to print return value for
1811         various types.
1813         * nsterm.m: Remove old NSTRACE macro
1814         * src/nsterm.m (nstrace_num): Trace counter.
1815         (nstrace_depth): Current call depth.
1816         (nstrace_leave): NSTRACE support function, called when the
1817         local variable "nstrace_enabled" goes out of scope using the
1818         "cleanup" extension.
1819         (ns_print_fullscreen_type_name): NSTRACE_FSTYPE support function.
1820         (constrain_frame_rect, ns_constrain_all_frames)
1821         (ns_update_auto_hide_menu_bar, ns_update_begin)
1822         (ns_update_window_begin, update_window_end, ns_update_end)
1823         (ns_focus, ns_unfocus, ns_ring_bell, ns_frame_raise_lower)
1824         (ns_frame_rehighlight, x_make_frame_visible)
1825         (x_make_frame_invisible, x_iconify_frame, x_free_frame_resources)
1826         (x_destroy_window, x_set_offset, x_set_window_size)
1827         (ns_fullscreen_hook, ns_lisp_to_color, ns_color_to_lisp)
1828         (ns_defined_color, frame_set_mouse_pixel_position)
1829         (note_mouse_movement, ns_mouse_position, ns_frame_up_to_date)
1830         (ns_define_frame_cursor, x_get_keysym_name, ns_redraw_scroll_bars)
1831         (ns_clear_frame, ns_clear_frame_area, ns_scroll_run)
1832         (ns_after_update_window_line, ns_shift_glyphs_for_insert)
1833         (dumpcursor, ns_draw_vertical_window_border)
1834         (ns_draw_window_divider, ns_draw_relief)
1835         (ns_dumpglyphs_box_or_relief, ns_maybe_dumpglyphs_background)
1836         (ns_dumpglyphs_image, ns_draw_glyph_string, ns_send_appdefined)
1837         (ns_read_socket, ns_select, ns_set_vertical_scroll_bar)
1838         (ns_set_horizontal_scroll_bar, ns_condemn_scroll_bars)
1839         (ns_redeem_scroll_bar, ns_judge_scroll_bars, ns_delete_terminal)
1840         (ns_create_terminal, ns_term_init, sendEvent)
1841         (applicationDidFinishLaunching, applicationDidBecomeActive)
1842         (timeout_handler, fd_handler, EmacsView_dealloc, changeFont)
1843         (acceptsFirstResponder, resetCursorRects, keyDown, mouseDown)
1844         (deltaIsZero, rightMouseDown, otherMouseDown, mouseUp)
1845         (rightMouseUp, otherMouseUp, scrollWheel, mouseMoved)
1846         (mouse_autoselect_window, in_window, mouseDragged)
1847         (rightMouseDragged, otherMouseDragged, windowShouldClose)
1848         (updateFrameSize, windowWillResize, windowDidResize)
1849         (windowDidBecomeKey, windowDidResignKey, windowWillMiniaturize)
1850         (initFrameFromEmacs, windowDidMove, windowDidDeminiaturize)
1851         (windowDidExpose, windowDidMiniaturize, windowWillEnterFullScreen)
1852         (windowDidEnterFullScreen, windowWillExitFullScreen)
1853         (windowDidExitFullScreen, toggleFullScreen, handleFS, setFSValue)
1854         (mouseEntered, mouseExited, menuDown, toolbarClicked, drawRect)
1855         (draggingEntered, performDragOperation, validRequestorForSendType)
1856         (setMiniwindowImage, constrainFrameRect, performZoom, zoom)
1857         (EmacsScroller_initFrame, EmacsScroller_setFrame)
1858         (EmacsScroller_dealloc, condemn, reprieve, judge)
1859         (resetCursorRects, setPosition, EmacsScroller_mouseDown)
1860         (EmacsScroller_mouseDragged, syms_of_nsterm): Use new trace system.
1862         * nsfns.m: Remove old NSTRACE macro
1863         * src/nsfns.m (x_set_icon_name, ns_set_name, x_explicitly_set_name)
1864         (x_implicitly_set_name, x_set_title, ns_set_name_as_filename)
1865         (ns_implicitly_set_icon_type, x_set_icon_type): Use new trace system.
1867         * nsimage.m: Remove old NSTRACE macro
1868         * src/nsimage.m (ns_image_from_XBM, ns_image_for_XPM)
1869         (ns_image_from_bitmap_file, ns_load_image): Use new trace system.
1871         * nsmenu.m: Remove old NSTRACE macro
1872         * src/nsmenu.m (ns_update_menubar, ns_menu_show, ns_popup_dialog):
1873         Use new trace system.
1875 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
1877         No need to use eval-and-compile
1879         * lisp/gnus/auth-source.el: Do require epg (when compiling) before
1880         autoload epg functions.
1882 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
1884         Fix auth-source-epa-make-gpg-token compilation (bug#21724)
1886         * lisp/gnus/auth-source.el: Add eval-and-compile to autoloads for
1887         epg-context-set-passphrase-callback, epg-decrypt-string, and
1888         epg-encrypt-string; require epg when compiling for the setf-method
1889         for epg-context-armor. (bug#21724)
1891 2015-10-22  Eli Zaretskii  <eliz@gnu.org>
1893         Include file cleanup for w32 files in src directory
1895         * src/w32xfns.c: Don't include keyboard.h, window.h, charset.h,
1896         fontset.h, blockinput.h.
1897         * src/w32uniscribe.c: Don't include dispextern.h, character.h,
1898         charset.h, fontset.h.
1899         * src/w32term.c: Don't include systty.h, systime.h, charset.h,
1900         character.h, ccl.h, dispextern.h, disptab.h, intervals.h,
1901         process.h, atimer.h, keymap.h, w32heap.h.  Include bitmap/gray.xbm
1902         in an ifdef-ed away block.
1903         Include fcntl.h for CYGWIN.
1904         (set_frame_param): Remove unused function.
1905         * src/w32select.c: Don't include charset.h and composite.h.
1906         (setup_config, Fw32_get_clipboard_data): Avoid compiler warnings
1907         due to pointer signedness mismatches.
1908         * src/w32reg.c (w32_get_string_resource): Avoid compiler warnings
1909         due to pointer signedness mismatches.
1910         * src/w32proc.c: Include unistd.h.  Don't include systime.h,
1911         process.h, dispextern.h.
1912         (sys_spawnve, Fw32_short_file_name, Fw32_long_file_name)
1913         (Fw32_application_type): Avoid compiler warnings due to pointer
1914         signedness mismatches.
1915         * src/w32menu.c: Don't include keymap.h, termhooks.h, window.h,
1916         character.h, charset.h, dispextern.h.
1917         (simple_dialog_show, add_menu_item): Avoid compiler warnings due
1918         to pointer signedness mismatches.
1919         * src/w32inevt.c: Don't include dispextern.h, window.h,
1920         termhooks.h, w32heap.h.
1921         * src/w32font.c: Don't include dispextern.h, character.h,
1922         charset.h, fontset.h, font.h.
1923         (intern_font_name, add_font_entity_to_list)
1924         (registry_to_w32_charset, w32_to_x_charset, fill_in_logfont)
1925         (list_all_matching_fonts): Avoid compiler warnings due to pointer
1926         signedness mismatches.
1927         * src/w32fns.c: Don't include character.h, intervals.h,
1928         dispextern.h, epaths.h, charset.h, ccl.h, fontset.h, systime.h,
1929         termhooks.h, w32heap.h, bitmap/gray.xbm, font.h, w32font.h.
1930         (w32_color_map_lookup, add_system_logical_colors_to_map)
1931         (x_decode_color, x_set_name, FPRINTF_WM_CHARS, Fxw_color_defined_p)
1932         (Fxw_color_values, x_display_info_for_name, Fset_message_beep)
1933         (x_create_tip_frame, Fx_file_dialog, Fsystem_move_file_to_trash)
1934         (w32_parse_hot_key, Ffile_system_info, w32_kbd_patch_key): Avoid
1935         compiler warnings, mainly due to pointer signedness mismatches.
1936         (unwind_create_frame_1): Remove unused function.
1937         * src/w32console.c: Don't include character.h, disptab.h, frame.h,
1938         window.h, termhooks.h, dispextern.h.
1939         (w32con_write_glyphs, w32con_write_glyphs_with_face): Fix pointer
1940         signedness mismatch.
1941         * src/w32.c: Include c-strcase.h and systty.h.  Don't include
1942         w32heap.h.
1944 2015-10-22  Tassilo Horn  <tsdh@gnu.org>
1946         Improve doc-view wrt. auto-revert-mode
1948         * lisp/doc-view.el (doc-view-revert-buffer): Don't revert when file
1949         is corrupted (bug#21729).
1950         (doc-view-mode): Set doc-view-revert-buffer as revert-buffer-function.
1952 2015-10-22  Oleh Krehel  <ohwoeowho@gmail.com>
1954         Describe dired-do-compress-to in the manual
1956         * etc/NEWS: Update.
1958         * lisp/dired-aux.el: Fix typo.
1960         * doc/emacs/dired.texi: Add entry.
1962 2015-10-22  Jürgen Hötzel  <juergen@archlinux.org>
1964         Further fix for proper locale handling in tramp-gvfs.el
1966         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
1967         Just suppress LC_MESSAGES locale category settings.
1969 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
1971         New lispref section “Security Considerations”
1973         This attempts to document some of the issues recently discussed
1974         on emacs-devel, and to indicate other such issues.  The section
1975         could be a lot longer.
1976         * doc/lispref/os.texi (Security Considerations):
1977         New node.
1978         * doc/lispref/elisp.texi (Top):
1979         * doc/lispref/processes.texi (Shell Arguments):
1980         * lisp/subr.el (shell-quote-argument):
1981         * src/callproc.c (syms_of_callproc):
1982         Reference it.
1984 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
1986         Merge from gnulib
1988         This incorporates:
1989         2015-10-18 stdalign: work around pre-4.9 GCC x86 bug
1990         2015-10-18 time_rz: avoid warning from bleeding-edge gcc's -Wnonnull
1991         * doc/misc/texinfo.tex, lib/stdalign.in.h, lib/time_rz.c:
1992         Copy from gnulib.
1994 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
1996         * lisp/gnus/mailcap.el (mailcap-mime-data): Remove fboundp checks.
1997         (mailcap-viewer-passes-test): Do it instead.  Thanks to Stefan Monnier.
1999 2015-10-21  Ken Brown  <kbrown@cornell.edu>
2001         Further include-file cleanup
2003         * src/sheap.c: Include stdlib.h.
2004         * src/unexcw.c: Include string.h.
2006 2015-10-21  Eli Zaretskii  <eliz@gnu.org>
2008         Fix logic in 'server-kill-emacs-query-function'
2010         * lisp/server.el (server-kill-emacs-query-function): Correct the
2011         logic that controls whether the user is asked for confirmation.
2012         (Bug#21723)
2014 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
2016         * lisp/isearch.el (isearch-search-fun-default): Simplify logic.
2017         (isearch--lax-regexp-function-p): New function.
2019 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
2021         * lisp/isearch.el: Support lax-whitespace in regexp-function searches.
2022         (isearch-search-fun-default): Let-bind `search-spaces-regexp'
2023         around `isearch-regexp-function'.
2025 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
2027         * lisp/isearch.el: Rename word search to regexp-function search.
2028         `isearch-word' went well beyond its original purpose, and the name
2029         no longer makes sense.  It is now called
2030         `isearch-regexp-function', and its value should always be a function
2031         that converts a string to a regexp (though setting it to t is still
2032         supported for now).
2033         (isearch-word): Make obsolete.
2034         (isearch-regexp-function): New variable.
2035         (isearch-mode, isearch-done, isearch--state, isearch--set-state)
2036         (with-isearch-suspended, isearch-toggle-regexp)
2037         (isearch-toggle-word, isearch-toggle-symbol)
2038         (isearch-toggle-character-fold, isearch-query-replace)
2039         (isearch-occur, isearch-highlight-regexp)
2040         (isearch-search-and-update, isearch-message-prefix)
2041         (isearch-search-fun-default, isearch-search)
2042         (isearch-lazy-highlight-new-loop, isearch-lazy-highlight-search):
2043         Use it.
2044         (isearch-lazy-highlight-regexp-function): New var.
2045         (isearch-lazy-highlight-word): Make obsolete.
2046         (isearch--describe-regexp-mode): New function.
2047         (isearch--describe-word-mode): Make obsolete.
2049         * lisp/info.el (Info-isearch-search):
2050         * lisp/replace.el (replace-search, replace-highlight):
2051         * lisp/obsolete/longlines.el (longlines-search-function):
2052         * lisp/hexl.el (hexl-isearch-search-function):
2053         * lisp/cedet/semantic/senator.el (senator-isearch-search-fun):
2054         Use the new var.
2056 2015-10-21  Oleh Krehel  <ohwoeowho@gmail.com>
2058         Add dired-do-compress-to command bound to "c"
2060         * lisp/dired-aux.el (dired-shell-command): Use the caller's
2061           `default-directory', return the result of `process-file'.
2062         (dired-compress-file-suffixes): Add comment on why "tar -zxf" isn't
2063         used by default.
2064         (dired-compress-files-alist): New defvar.
2065         (dired-do-compress-to): New command.
2067         * lisp/dired.el (dired-mode-map): Bind `dired-do-compress-to' to "c".
2068         (dired-do-compress-to): Add an autoload entry.
2070         * etc/NEWS: Add two entries.
2072 2015-10-21  Tassilo Horn  <tsdh@gnu.org>
2074         Make RefTeX work with LaTeX subfiles package
2076         * lisp/textmodes/reftex.el (reftex-TeX-master-file): Recognize subfiles
2077         document class argument as master file for referencing purposes.
2079 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
2081         * lisp/gnus/mailcap.el (mailcap-mailcap-entry-passes-test): Doc fix.
2083 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
2085         Include-file cleanup for src directory
2087         Omit ‘#include "foo.h"’ unless the file needs foo.h (Bug#21707).
2088         In a few cases, add ‘#include "foo.h"’ if the file needs foo.h
2089         but does not include it directly.  As a general rule, a source
2090         file should include foo.h if it needs the interfaces that foo.h
2091         defines.
2092         * src/alloc.c: Don’t include process.h.  Include dispextern.h,
2093         systime.h.
2094         * src/atimer.c: Don’t include blockinput.h.
2095         * src/buffer.c: Include coding.h, systime.h.  Don’t include
2096         keyboard.h, coding.h.
2097         * src/callint.c: Don’t include commands.h, keymap.h.
2098         * src/callproc.c: Don’t include character.h, ccl.h, composite.h,
2099         systty.h, termhooks.h.
2100         * src/casetab.c: Don’t include character.h.
2101         * src/category.c: Don’t include charset.h, keymap.h.
2102         * src/ccl.h: Don’t include character.h.
2103         * src/character.c: Don’t include charset.h.
2104         * src/charset.c: Don’t include disptab.h.
2105         * src/chartab.c: Don’t include ccl.h.
2106         * src/cm.c: Don’t include frame.h, termhooks.h.
2107         * src/cmds.c: Don’t include window.h, dispextern.h.
2108         * src/coding.c: Don’t include window.h, frame.h.
2109         * src/composite.c: Include composite.h.  Don’t include window.h,
2110         font.h.
2111         * src/data.c: Don’t include syssignal.h, termhooks.h, font.h.
2112         * src/dbusbind.c: Don’t include frame.h.
2113         * src/decompress.c: Don’t include character.h.
2114         * src/dired.c: Don’t include character.h, commands.h, charset.h.
2115         * src/dispnew.c: Don’t include character.h, indent.h, intervals.h,
2116         process.h, timespec.h.  Include systime.h.
2117         * src/doc.c: Include coding.h.  Don’t include keyboard.h.
2118         * src/editfns.c: Include composite.h.  Don’t include frame.h.
2119         * src/emacs.c: Include fcntl.h, coding.h.  Don’t include
2120         commands.h, systty.h..
2121         * src/fileio.c: Don’t include intervals.h, dispextern.h.
2122         Include composite.h.
2123         * src/filelock.c: Don’t include character.h, systime.h.
2124         * src/fns.c: Don’t include time.h, commands.h, keyboard.h,
2125         keymap.h, frame.h, blockinput.h, xterm.h.  Include composite.h.
2126         * src/font.c: Include termhooks.h.
2127         * src/font.h: Don’t include ccl.h, frame.h.  Add forward decls of
2128         struct composition_it, struct face, struct glyph_string.
2129         * src/fontset.c: Don’t include buffer.h, ccl.h, keyboard.h,
2130         intervals.h, window.h, termhooks.h.
2131         * src/frame.c: Don’t include character.h, commands.h, font.h.
2132         * src/frame.h: Don’t include dispextern.h.
2133         * src/fringe.c: Don’t include character.h.
2134         * src/ftcrfont.c: Don’t include dispextern.h, frame.h,
2135         character.h, charset.h, fontset.h.
2136         * src/ftfont.c: Don’t include frame.h, blockinput.h, coding.h,
2137         fontset.h.
2138         * src/ftxfont.c: Don’t include dispextern.h, character.h,
2139         charset.h, fontset.h.
2140         * src/gfilenotify.c: Don’t include frame.h, process.h.
2141         * src/gtkutil.c: Include dispextern.h, frame.h, systime.h.
2142         Don’t include syssignal.h, buffer.h, charset.h, font.h.
2143         * src/gtkutil.h: Don’t include frame.h.
2144         * src/image.c: Include fcntl.h and stdio.h instead of sysstdio.h.
2145         Don’t include character.h.
2146         * src/indent.c: Don’t include keyboard.h, termchar.h.
2147         * src/inotify.c: Don’t include character.h, frame.h.
2148         * src/insdel.c: Include composite.h.  Don’t include blockinput.h.
2149         * src/intervals.c: Don’t include character.h, keyboard.h.
2150         * src/intervals.h: Don’t include dispextern.h, composite.h.
2151         * src/keyboard.c: Don’t include sysstdio.h, disptab.h, puresize.h.
2152         Include coding.h.
2153         * src/keyboard.h: Don’t incldue systime.h.
2154         * src/keymap.c: Don’t include charset.h, frame.h.
2155         * src/lread.c: Include dispextern.h and systime.h.
2156         Don’t include frame.h.  Include systime.h.
2157         * src/macros.c: Don’t include commands.h, character.h, buffer.h.
2158         * src/menu.c: Include character.h, coding.h.  Don’t include
2159         dispextern.h.
2160         * src/menu.h: Don’t include systime.h.
2161         * src/minibuf.c: Don’t include commands.h, dispextern.h, syntax.h,
2162         intervals.h, termhooks.h.
2163         * src/print.c: Include coding.h.  Don’t include keyboard.h,
2164         window.h, dispextern.h, termchar.h, termhooks.h, font.h.
2165         Add forward decl of struct terminal.
2166         * src/process.c: Don’t include termhooks.h, commands.h,
2167         dispextern.h, composite.h.
2168         * src/region-cache.c: Don’t include character.h.
2169         * src/scroll.c: Don’t include keyboard.h, window.h.
2170         * src/search.c: Don’t include category.h, commands.h.
2171         * src/sound.c: Don’t include dispextern.h.
2172         * src/syntax.c: Don’t include command.h, keymap.h.
2173         * src/sysdep.c: Don’t include window.h, dispextern.h.
2174         * src/systime.h: Use ‘#ifdef emacs’, not ‘#ifdef EMACS_LISP_H’,
2175         * src/term.c: Don’t include systty.h, intervals.h, xterm.h.
2176         * src/terminal.c: Include character.h.
2177         Don’t include charset.h, coding.h.
2178         * src/textprop.c: Don’t include character.h.
2179         * src/undo.c: Don’t include character.h, commands.h, window.h.
2180         * src/unexsol.c: Don’t include character.h, charset.h.
2181         * src/widget.c: Include widget.h.  Don’t include keyboard.h,
2182         window.h, dispextern.h, blockinput.h, character.h, font.h.
2183         * src/widgetprv.h: Don’t include widget.h.
2184         * src/window.c: Don’t include character.h, menu.h, intervals.h.
2185         * src/xdisp.c: Include composite.h, systime.h.  Don’t include
2186         macros.h, process.h.
2187         * src/xfaces.c: Don’t include charset.h, keyboard.h, termhooks.h,
2188         intervals.h.
2189         * src/xfns.c: Don’t include menu.h, character.h, intervals.h,
2190         epaths.h, fontset.h, systime.h, atimer.h, termchar.h.
2191         * src/xfont.c: Don’t include dispextern.h, fontset.h, ccl.h.
2192         * src/xftfont.c: Don’t include dispextern.h, character.h, fontset.h.
2193         * src/xgselect.c: Don’t include timespec.h, frame.h.
2194         Include systime.h.
2195         * src/xgselect.h: Don’t include time.h.
2196         Use a forward decl to struct timespec instead.
2197         * src/xmenu.c: Don’t include keymap.h, character.h, charset.h,
2198         dispextern.h.  Include systime.h.
2199         * src/xml.c: Don’t include character.h.
2200         * src/xrdb.c [USE_MOTIF]: Don’t include keyboard.h.
2201         * src/xselect.c: Don’t include dispextern.h, character.h,
2202         buffer.h, process.h.
2203         * src/xsmfns.c: Don’t include systime.h, sysselect.h.
2204         * src/xterm.c: Don’t include syssignal.h, charset.h, disptab.h,
2205         intervals.h process.h, keymap.h, xgselect.h.  Include composite.h.
2207 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
2209         (/ N) now returns the reciprocal of N
2211         This is more compatible with Common Lisp and XEmacs (Bug#21690).  See:
2212         http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg01053.html
2213         * lisp/color.el (color-hue-to-rgb, color-hsl-to-rgb)
2214         (color-xyz-to-srgb, color-xyz-to-lab):
2215         * lisp/emacs-lisp/cl-extra.el (cl-float-limits):
2216         * lisp/net/shr-color.el (shr-color-hue-to-rgb)
2217         (shr-color-hsl-to-rgb-fractions):
2218         Exploit the change to simplify the code a bit.
2219         * lisp/emacs-lisp/bytecomp.el (byte-compile-quo):
2220         Don’t complain about single-argument calls to ‘/’.
2221         * src/data.c (arith_driver, float_arith_driver):
2222         Implement the change.
2224 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
2226         Call vc-dir-refresh after stash operations
2228         * lisp/vc/vc-git.el (vc-git-stash-apply-at-point)
2229         (vc-git-stash-pop-at-point): Call vc-dir-refresh (bug#13960).
2231         * lisp/vc/vc-dir.el (vc-dir-resynch-file): Expand FNAME as well,
2232         since it can be abbreviated (as returned by vc-find-root).
2234 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
2236         * lisp/vc/vc-svn.el:
2237         * lisp/vc/vc-mtn.el:
2238         * lisp/vc/vc-hg.el:
2239         * lisp/vc/vc-cvs.el:
2240         * lisp/vc/vc-git.el:
2241         * lisp/vc/vc-bzr.el: Don't declare vc-exec-after anymore.
2242         Its usages have been replaced with vc-run-delayed.
2244 2015-10-20  Dima Kogan  <dima@secretsauce.net>
2246         Fix memory leak in fontset handling
2248         * src/font.c (copy_font_spec): Make a deep copy of the input
2249         argument FONT.  (Bug#21651)
2251 2015-10-20  Michael Sperber  <mike@xemacs.org>
2253         * lisp/gnus/mailcap.el (mailcap-mime-data):
2254         Conditonalize `doc-view-mode', which does not exist on XEmacs.
2256 2015-10-20  Oleh Krehel  <ohwoeowho@gmail.com>
2258         Update the way directories are compressed
2260         * lisp/dired-aux.el (dired-compress-file-suffixes): Update the recipe
2261         for *.tar.gz decompression to use a pipe.
2262         Add an entry for the default directory compression (to *.tar.g).
2263         (dired-compress-file): Update.
2265         See https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg00949.html.
2267 2015-10-20  Michael Sperber  <mike@xemacs.org>
2269         Unbreak `group' option for `mail-sources'
2271         * nnml.el (nnml-retrieve-groups, nnml-request-scan):
2272         * nnmail.el (nnmail-get-new-mail-per-group)
2273         (nnmail-get-new-mail-1): Unbreak `group' option for `mail-sources'.
2275 2015-10-19  Nicolas Petton  <nicolas@petton.fr>
2277         New function seq-position
2279         * lisp/emacs-lisp/seq.el (seq-position): New function.
2280         * test/automated/seq-tests.el: New tests for seq-position.
2281         * doc/lispref/sequences.texi: Add documentation for `seq-position'.
2283 2015-10-19  Ken Brown  <kbrown@cornell.edu>
2285         Enable --with-wide-int build on 32-bit Cygwin
2287         * src/sheap.c (STATIC_HEAP_SIZE): Remove distinction between x86
2288         and x86_64 to enable --with-wide-int build on 32-bit Cygwin.
2290 2015-10-19  Glenn Morris  <rgm@gnu.org>
2292         * doc/emacs/ack.texi (Acknowledgments): Small, sad, update.
2294 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
2296         Resurrect image loading under auto-image-file-mode
2298         * src/image.c (x_find_image_fd): Handle the case of -2 returned by
2299         'openp' specially.  This special case was lost in the changes on
2300         2015-08-18.  (Bug#21685)
2302 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
2304         Fix return value of 'set-file-extended-attributes'
2306         * lisp/files.el (set-file-extended-attributes): Return non-nil
2307         when setting either ACLs or SELinux context succeeds.  Document
2308         the return value.  (Bug#21699)
2310         * doc/lispref/files.texi (Changing Files): Document the return
2311         value of set-file-extended-attributes.
2313 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
2315         Improve documentation of functions that change files
2317         * doc/lispref/files.texi (Changing Files): Document that these
2318         functions signal an error on failure.
2320 2015-10-18  Eli Zaretskii  <eliz@gnu.org>
2322         Fix doc string of 'shell-quote-argument'
2324         * lisp/subr.el (shell-quote-argument): Doc fix.  (Bug#21702)
2326 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
2328         Some minor Tramp changes
2330         * doc/misc/tramp.texi (Obtaining Tramp): Add http git cloning.
2332         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
2333         Expand `tramp-auto-save-directory'.
2335 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
2337         Minor edits in Tramp
2339         * lisp/net/tramp-adb.el (directory-listing-before-filename-regexp):
2340         Declare it.
2342         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
2343         Remove declaration.
2345 2015-10-17  Mark Oteiza  <mvoteiza@udel.edu>
2347         * lisp/emacs-lisp/eldoc.el: Add back-to-indentation to the command list.
2349 2015-10-17  Eli Zaretskii  <eliz@gnu.org>
2351         Avoid crashes when redisplayng a window changes faces or fonts
2353         * src/xdisp.c (redisplay_internal): If redisplaying the selected
2354         window or one of the frames turns on the frame's 'redisplay' flag,
2355         redisplay again.  (Bug#21428)
2357         * src/frame.c (x_set_font): Set the frame's 'fonts_changed' flag.
2359 2015-10-17  Michael Albinus  <michael.albinus@gmx.de>
2361         Solve timimg issues in file-notify-tests.el
2363         * test/automated/file-notify-tests.el (file-notify-test02-events):
2364         Rectify `attribute-change' tests.  There are timing issues with
2365         gfilenotify.  (Bug#21669)
2367 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
2369         Fix quoting of data within htmlfontify doc
2371         * doc/misc/htmlfontify.texi (Data Structures, Customization):
2372         Fix quoting of data structures.  A Lisp quote is needed only
2373         when data appears within Lisp code.
2375 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
2377         * lisp/emacs-lisp/package.el: Reload archive-contents if
2378         priorities change.
2379         (package--old-archive-priorities): New variable.
2380         (package-read-all-archive-contents, package-menu--refresh): Use it
2381         to decide when the `package-archive-contents' needs to be read
2382         again.
2384 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
2386         Make src headers idempotent and standalone
2388         Redo src/*.h so that each include file is idempotent (that is, can
2389         be included multiple times with the latter inclusions having no
2390         effect) and standalone (that is, can be included by itself,
2391         with no include file other than config.h needed as a prerequisite).
2392         This is standard practice in GNU programs nowadays.
2393         * lwlib/lwlib-widget.h, src/buffer.h, src/category.h, src/character.h:
2394         * src/charset.h, src/coding.h, src/commands.h, src/disptab.h:
2395         * src/fontset.h, src/gnutls.h, src/indent.h, src/keymap.h, src/macros.h:
2396         * src/regex.h [emacs]:
2397         * src/syntax.h, src/systty.h, src/termhooks.h:
2398         Include lisp.h, for Lisp_Object.
2399         * src/buffer.h, src/category.h, src/cm.h, src/commands.h, src/disptab.h:
2400         * src/indent.h, src/intervals.h, src/keyboard.h, src/macros.h:
2401         * src/process.h, src/puresize.h, src/region-cache.h, src/syntax.h:
2402         * src/syssignal.h, src/sysstdio.h, src/systty.h, src/termchar.h:
2403         * src/termopts.h, src/tparam.h, src/unexec.h:
2404         Protect against multiple inclusion.
2405         * src/buffer.h: Include character.h, for STRING_CHAR.
2406         * src/emacsgtkfixed.h (struct frame):
2407         * src/fontset.h (struct face):
2408         * src/region-cache.h (struct buffer):
2409         * src/termhooks.h (struct glyph):
2410         * src/xsettings.h (struct x_display_info):
2411         Add possibly-forward decl.
2412         * src/syntax.h: Include buffer.h, for BVAR.
2413         * src/sysselect.h: Include lisp.h, for eassume.
2414         * src/termchar.h: Include <stdio.h>, for FILE.
2415         * src/widget.h: Include <X11/IntrinsicP.h>, for Widget.
2416         * src/xsettings.h: Include <X11/Xlib.h>, for XEvent.
2418 2015-10-16  Jürgen Hötzel  <juergen@archlinux.org>
2420         Handle symlink targets containing spaces in tramp-gvfs.el
2422         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
2423         Handle symlink targets containing spaces.
2425 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
2427         * lisp/custom.el (custom-theme-load-path): Demote to defvar.
2429         `custom-theme-load-path' was a defcustom, but it shouldn't be for the
2430         same reason that `load-path' shouldn't.  Setting it via the customize
2431         interface is a trap for the user.
2433         Installed themes commonly add themselves to this variable, which means
2434         its value is not fit for being saved (it will permanently remember dirs
2435         that don't exist anymore).
2437         This is aggravated by the fact that Emacs always applies the `user'
2438         theme on top of any theme that's loaded, since this will apply the old
2439         variable value and remove any new directories that had been recently
2440         added by themes themselves.
2442         Not to mention, we already have `custom-theme-directory', which is safe
2443         to customize.
2445 2015-10-16  Stefan Monnier  <monnier@iro.umontreal.ca>
2447         * lisp/mpc.el: Rename the new toggling commands.
2448         (mpc-toggle-consume, mpc-toggle-repeat, mpc-toggle-single)
2449         (mpc-toggle-shuffle): Add "-toggle" in the name.
2451 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
2453         Improve the doc string of 'completion-boundaries'
2455         * lisp/minibuffer.el (completion-boundaries): Rename the argument
2456         TABLE to COLLECTION, for consistency with other high-level
2457         completion functions.  Document how COLLECTION is called if it
2458         is a function.  (Bug#21644)
2460 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
2462         * lisp/dired-aux.el (dired-shell-command): Fix compile warning.
2464 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
2466         Make dired-do-compress work for *.zip files
2468         * lisp/dired-aux.el (dired-check-process): Transform the top-level
2469           comment into a docstring.
2470         (dired-shell-command): New command.  This mirrors
2471         `dired-check-process', but is more user-friendly for passing
2472         arguments.
2473         (dired-compress-file-suffixes): Allow to specify the command switches
2474         along with input (%i) and output (%o) inside the PROGRAM part.
2475         Add an entry for *.zip files, and update the entry for *.tar.gz files
2476         to the new style.  Update the docstring.
2477         (dired-compress-file): When PROGRAM matches %i or %o, use the new
2478         logic.
2479         (dired-update-file-line): Avoid an error when at end of buffer.
2481         Fixes bug#21637.
2483 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
2485         Minor improvement in documentation of internals
2487         * doc/lispref/internals.texi (Writing Emacs Primitives): Document QUIT.
2489 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
2491         Improve documentation of COLLECTION in completion functions
2493         * doc/lispref/minibuf.texi (Minibuffer Completion): Add a
2494         cross-reference to "Programmed Completion".
2496         * src/minibuf.c (Fcompleting_read): Improve the doc string.
2497         (Bug#21644)
2499 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
2501         Add more release info to etc/HISTORY
2503         * etc/HISTORY: Add more release information about 19.x and 20.x
2504         versions.
2506 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
2508         New file etc/HISTORY
2510         * admin/FOR-RELEASE: Procedure for etc/HISTORY.
2511         * etc/HISTORY: New file.
2512         * etc/NEWS: Mention it.
2514 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
2516         js-mode: Don't misindent generator methods
2518         * lisp/progmodes/js.el (js--looking-at-operator-p): Distinguish
2519         generator methods from multiplication operator
2520         (https://github.com/mooz/js2-mode/issues/275).
2522 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
2524         Fix animation timeout delay calculation
2526         * lisp/image.el (image-animate-timeout):
2527         Don’t assume speed is floating-point.
2529 2015-10-15  Mark Oteiza  <mvoteiza@udel.edu>
2531         Add commands for controlling MPD modes
2533         * lisp/mpc.el (mpc-cmd-consume, mpc-cmd-random, mpc-cmd-repeat)
2534         (mpc-cmd-single): New functions.
2535         (mpc-consume, mpc-repeat, mpc-single, mpc-shuffle): New commands.
2536         (mpc-mode-menu): Add new commands as menu items.
2538 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
2540         Refer to `(elisp)Basic Completion' in completing-read docstring
2542         * src/minibuf.c (Fcompleting_read): Refer to `(elisp)Basic
2543         Completion' in the docstring (bug#21644).
2545 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
2547         * lisp/mpc.el (mpc-format): Always push form to pred
2549 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
2551         Spelling fixes
2553         * configure.ac (bitmapdir): Fix misspelling of bmd_acc.
2554         * test/automated/coding-tests.el (ert-test-coding-bogus-coding-systems):
2555         Fix misspelling of nonexistent file name.
2557 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
2559         * lisp/mpc.el (mpc-mode-menu, mpc-toggle-play): Fix docstrings
2561 2015-10-14  Michael Albinus  <michael.albinus@gmx.de>
2563         Some editing fixes in Tramp
2565         * lisp/net/tramp-gvfs.el:
2566         * doc/misc/tramp.texi: "customer option" -> "custom option".
2568         * lisp/net/tramp.el (tramp-completion-function-alist): Fix docstring.
2570 2015-10-14  Jürgen Hötzel  <juergen@archlinux.org>
2572         Use proper localization in tramp-gvfs.el
2574         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
2575         Suppress localized settings in order to proper parse gfvs output.
2577 2015-10-14  Warren Lynn  <wrn.lynn@gmail.com>  (tiny change)
2579         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band):
2580         Quote argument in proper order.  (Bug#21562)
2582 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
2584         Fix typos in docstrings
2586         * lisp/emacs-lisp/map.el:
2587         * lisp/emacs-lisp/seq.el: Fix typos in the docstrings of the pcase
2588           macros.
2590 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
2592         * lisp/mpc.el (mpc-volume-refresh): Check if buffer is live.
2594 2015-10-14  Oleh Krehel  <ohwoeowho@gmail.com>
2596         Make dired-jump work with tar-subfile-mode
2598         * lisp/dired-x.el (dired-jump): When in `tar-subfile-mode', instead of
2599           emitting an error, switch to `tar-superior-buffer'.
2601 2015-10-14  Juanma Barranquero  <lekktu@gmail.com>
2603         * .gitignore: Add build-aux/ar-lib.
2605 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
2607         Better docstrings in seq.el and map.el
2609         * lisp/emacs-lisp/map.el:
2610         * lisp/emacs-lisp/seq.el: Improve the docstring for the pcase patterns.
2612 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
2614         Merge from gnulib
2616         This incorporates:
2617         2015-10-13 binary-io, u64, unistd: port to strict C
2618         2015-09-26 c-ctype: do not worry about EBCDIC + char signed
2619         2015-09-25 c-ctype: port better to z/OS EBCDIC
2620         2015-09-25 gnulib-common.m4: fix gl_PROG_AR_RANLIB/AM_PROG_AR clash
2621         * doc/misc/texinfo.tex, lib/binary-io.c, lib/c-ctype.h, lib/u64.c:
2622         * lib/unistd.c, m4/gnulib-common.m4, m4/gnulib-comp.m4:
2623         Copy from gnulib.
2625 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
2627         Take XPNTR private
2629         * src/alloc.c (PURE_POINTER_P): Remove.
2630         All uses replaced with PURE_P.
2631         (XPNTR_OR_SYMBOL_OFFSET): New function.
2632         (XPNTR): Move here from lisp.h.
2633         Reimplement in terms of XPNTR_OR_SYMBOL_OFFSET.
2634         (mark_maybe_object, valid_lisp_object_p, survives_gc_p):
2635         Remove unnecessary cast.
2636         (purecopy): Use XPNTR_OR_SYMBOL_OFFSET instead of XPNTR,
2637         to avoid an unnecessary runtime test for symbols.
2638         * src/lisp.h (lisp_h_XPNTR, XPNTR): Remove, moving XPNTR to alloc.c.
2639         Only alloc.c needs XPNTR now.
2641 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
2643         Add MPC play/pause command
2645         * lisp/mpc.el (mpc-toggle-play): New command.
2646         (mpc-mode-map): Bind it to "s".
2647         (mpc-mode-menu): Add corresponding menu item.
2649 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
2651         Add bindings and menu items for prev and next tracks
2653         * lisp/mpc.el (mpc-mode-map): Bind ">" to mpc-next,
2654         "<" to mpc-prev.
2655         (mpc-mode-menu): Add corresponding menu items
2657 2015-10-13  Ken Raeburn  <raeburn@raeburn.org>
2659         Reduce face-related consing during frame creation.
2661         * faces.el (face--attributes-unspecified): Compute the "unspecified"
2662         attribute list once.
2663         (face-spec-reset-face): Use it instead of building the list.
2665 2015-10-13  Ken Raeburn  <raeburn@permabit.com>
2667         Do process ConfigureNotify events indicating size changes.
2669         * src/xterm.c (handle_one_xevent): If consecutive ConfigureNotify
2670         events don't have the same size, process each one.
2672 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
2674         Derive mpc-mode from special-mode
2676         lisp/mpc.el (mpc-mode-map): Make from sparse keymap.  Unbind g.
2677         (mpc-mode): Derive from special mode.
2678         (mpc-songs-mode-map): Don't set parent keymap.
2680 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
2682         Fix error messages for when covers are not found.
2684         The last change to mpc-format let the binding to file call
2685         mpc-file-local-copy with nil argument.  Instead, employ if-let here
2686         so nil bindings don't result in needless computation and errors.
2687         * lisp/mpc.el: Require 'subr-x at compile time.
2688         * lisp/mpc.el (mpc-format): Use if-let.
2690 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
2692         Make dired-do-compress work for *.tar.gz files
2694         * lisp/dired-aux.el (dired-compress-file-suffixes): Associate
2695           "tar -zxvf" to *.tar.gz; update docstring.
2697         (dired-compress-file): Allow to specify switches after the command in
2698         `dired-compress-file-suffixes'.
2700 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
2702         Make dired-do-compress work for directories
2704         * lisp/dired-aux.el (dired-compress-file): When FILE is a directory,
2705           instead of emitting an error, call "tar -czf FILE.tar.gz FILE".
2706         Also convert the top comment into a docstring.
2708 2015-10-13  Stefan Monnier  <monnier@iro.umontreal.ca>
2710         * lisp/mpc.el (mpc-songs-refresh): Don't side-effect `active'
2712         ... since it might come straight from the memoizing table.
2714 2015-10-13  Juanma Barranquero  <lekktu@gmail.com>
2716         * src/w32fns.c (x_change_tool_bar_height): Remove unused variable frame.
2718 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
2720         Use special-mode in eww list modes
2722         * lisp/net/eww.el (eww-bookmark-mode, eww-history-mode)
2723         (eww-buffers-mode): Derive from special-mode and remove redundant
2724         setting of buffer-read-only.
2725         (eww-mode-map): Remove redundant keymap parent setting.
2726         (eww-bookmark-mode-map, eww-history-mode-map, eww-buffers-mode-map):
2727         Remove redundant keymap suppressions and mappings.
2729 2015-10-13  Martin Rudalics  <rudalics@gmx.at>
2731         Allow setting frame pixel sizes from frame parameters (Bug#21415)
2733         Also fix some misfeatures in frame (re-)sizing code, add more
2734         debugging information and remove some dead code.
2736         * lisp/frame.el (frame-notice-user-settings, make-frame): Change
2737         parameter names when setting `frame-size-history'.
2738         (frame--size-history): New function.
2740         * src/frame.c (frame_inhibit_resize): If frame has not been made
2741         yet, return t if inhibit_horizontal_resize or
2742         inhibit_vertical_resize bit have been set.
2743         (adjust_frame_size): Simplify.
2744         (make_frame): Initialize inhibit_horizontal_resize,
2745         inhibit_vertical_resize, tool_bar_redisplayed, tool_bar_resized.
2746         (Fframe_after_make_frame): Reset inhibit_horizontal_resize and
2747         inhibit_vertical_resize slots.
2748         (x_set_frame_parameters): Handle `text-pixels' specification for
2749         width and height parameters.  Don't consider new_height or
2750         new_width changes.  Call adjust_frame_size instead of
2751         Fset_frame_size.
2752         (x_figure_window_size): Two new arguments x_width and y_width
2753         returning frame's figures width and height.  Calculate tool bar
2754         height before frame sizes so SET_FRAME_HEIGHT can pick it up.
2755         Handle `text-pixels' specification for width and height
2756         parameters.
2757         (Qtext_pixels, Qx_set_frame_parameters, Qset_frame_size)
2758         (Qx_set_window_size_1, Qx_set_window_size_2)
2759         (Qx_set_window_size_3, Qx_set_menu_bar_lines)
2760         (Qupdate_frame_menubar, Qfree_frame_menubar_1)
2761         (Qfree_frame_menubar_2): New symbols.
2762         * src/frame.h (structure frame): New booleans
2763         tool_bar_redisplayed, tool_bar_resized,
2764         inhibit_horizontal_resize, inhibit_vertical_resize.
2765         (x_figure_window_size): Update external declaration.
2766         * src/gtkutil.c (xg_frame_set_char_size): Set size hints before
2767         calling gtk_window_resize.
2768         (update_frame_tool_bar): Make inhibiting of frame resizing more
2769         discriminative.  Set tool_bar_resized bit.
2770         * src/nsfns.m (x_set_tool_bar_lines): Make inhibiting of frame
2771         resizing more discriminative.  Call adjust_frame_size instead of
2772         x_set_window_size.
2773         (Fx_create_frame): Handle x_width and x_height if
2774         set by x_figure_window_size.
2775         * src/nsterm.m (x_set_window_size): For GNUSTEP build don't
2776         subtract 3 from tool bar height.
2777         (x_set_window_size): Add frame_size_history_add call.
2778         (x_new_font): Call adjust_frame_size instead of
2779         x_set_window_size.
2780         * src/w32fns.c (x_change_tool_bar_height): Reset
2781         tool_bar_redisplayed and tool_bar_resized bits when adding tool
2782         bar.  Make inhibiting of frame resizing more discriminative.
2783         (w32_wnd_proc): Remove dead code in WM_WINDOWPOSCHANGING case.
2784         (Fx_create_frame): Handle x_width and x_height if set by
2785         x_figure_window_size.  Set size hints before adjusting frame size.
2786         (x_create_tip_frame): Adjust x_figure_window_size call.
2787         * src/w32term.c (x_set_window_size): Add frame_size_history_add
2788         call.
2789         * src/widget.c (set_frame_size): Remove dead code.  Add
2790         frame_size_history_add call.  When frame_resize_pixelwise is t
2791         use FRAME_PIXEL_WIDTH and FRAME_PIXEL_HEIGHT instead of
2792         pixel_width and pixel_height.
2793         (update_various_frame_slots): Remove dead code.
2794         (EmacsFrameResize): Add more information in
2795         frame_size_history_add call.
2796         (EmacsFrameQueryGeometry): Round only when frame_resize_pixelwise
2797         is not set.
2798         * src/xdisp.c (redisplay_tool_bar): Set tool_bar_redisplayed bits.
2799         * src/xfns.c (x_set_menu_bar_lines): Change argument name.
2800         (x_change_tool_bar_height): Reset tool_bar_redisplayed and
2801         tool_bar_resized bits when adding tool bar.  Make inhibiting of
2802         frame resizing more discriminative.
2803         (Fx_create_frame): Handle x_width and x_height if set by
2804         x_figure_window_size.  Set size hints before adjusting frame size.
2805         (x_create_tip_frame): Adjust x_figure_window_size call.
2806         * src/xmenu.c (update_frame_menubar): Don't handle Lucid specially.
2807         (set_frame_menubar): On Lucid never add core-border-width to
2808         avoid that adding XtNinternalBorderWidth adds it again.
2809         (free_frame_menubar): Handle frame_inhibit_resize true for Motif.
2810         * src/xterm.c (x_new_font): In non-toolkit case handle size
2811         change of menu bar.
2812         (x_set_window_size_1): Fix calls to frame_size_history_add.
2813         (x_wm_set_size_hint): Remove dead code.  Set
2814         size_hints.min_width and size_hints.min_height to base_width and
2815         base_height.
2817 2015-10-13  Michael Albinus  <michael.albinus@gmx.de>
2819         * test/automated/file-notify-tests.el (file-notify--test-timeout):
2820         Add docstring.  Increase to 10 seconds for remote
2821         directories.  (Bug#21669)
2823 2015-10-12  Paul Eggert  <eggert@cs.ucla.edu>
2825         Unmacroize ebrowse.c and etags.c a bit
2827         * lib-src/ebrowse.c (READ_CHUNK_SIZE): Now an enum constant.
2828         (streq, filename_eq, set_flag, has_flag): Now inline functions.
2829         (set_flag): First arg is now an address, not an lvalue.
2830         All callers changed.
2831         (filename_eq, set_flag, has_flag):
2832         Rename from FILENAME_EQ, SET_FLAG, HAS_FLAG.
2833         All callers changed.
2834         * lib-src/etags.c (streq, strcaseeq, strneq, strncaseeq):
2835         Now inline functions.  Remove asserts that are unnecessary these
2836         days (and in some cases were too-generous anyway).
2838 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
2840         Use highlight for current items
2842         * lisp/mpc.el (mpc-select-make-overlay, mpc-tagbrowser-all-select):
2843         Apply highlight face instead of region face.
2845 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
2847         Search for more cover image names in MPC
2849         * lisp/mpc.el (mpc-format): Also look for .folder.jpg or folder.jpg
2850         case insensitively
2852 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
2854         Remove or comment out unused variables
2856         * src/w32fns.c (x_set_mouse_color): Comment out variables cursor,
2857         nontext_cursor, mode_cursor, hand_cursor and count.
2858         (x_change_tool_bar_height): Remove variable old_text_height.
2859         (deliver_wm_chars): Remove variable strip_Alt.
2860         (Fw32_shell_execute): Remove variable document_a.
2861         (Fw32_frame_geometry): Remove variable fullboth.
2862         * src/w32term.c (w32_setup_relief_color): Comment out variable
2863         w32_display_info.
2864         (w32_horizontal_scroll_bar_handle_click): Remove variables start, end.
2865         (w32_read_socket): Comment out variables rows, columns.
2866         * src/w32uniscribe.c (uniscribe_check_otf_1): Remove variable rest.
2868 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
2870         * src/w32proc.c (sys_select): Fix bitwise test.
2872 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
2874         Minor typo corrections in doc strings
2876         * lisp/menu-bar.el (popup-menu, popup-menu-normalize-position):
2877         Doc fixes.
2879 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
2881         * nt/INSTALL: Recommend MSYS Automake/Autoconf from ezwinports.
2883 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
2885         Attempt to avoid crashes in plist-member
2887         * src/fns.c (Fplist_member): Don't call QUIT between a CONSP test
2888         and a call to XCDR.  (Bug#21655)
2890 2015-10-12  Mike FABIAN  <mfabian@redhat.com>
2892         * lisp/select.el (gui-get-primary-selection): In
2893         gui-get-primary-selection use gui--selection-value-internal (Bug#20906)
2895 2015-10-12  Tassilo Horn  <tsdh@gnu.org>
2897         Support RTF in doc-view
2899         * lisp/doc-view.el (doc-view-set-doc-type): Add entry for RTF extension.
2901 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
2903         * src/w32fns.c (get_wm_chars): Increment counter, not pointer.
2905 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
2907         Replace the usage of an obsolete function in auth-source.el
2909         * lisp/gnus/auth-source.el (auth-source-epa-make-gpg-token):
2910         Replace an usage of `epg-context-set-armor' with `setf'.
2912 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
2914         * lisp/gnus/auth-source.el: Use sharp-quoting with functions.
2916 2015-10-11  Jay Belanger  <jay.p.belanger@gmail.com>
2918         Have calc-yank recognize numbers in different bases.
2920         * lisp/calc/calc-yank.el (math-number-regexp): New function.
2921         (calc-yank): Use `math-number-regexp' to recognize numbers.
2923 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
2925         Handle an opaque-move X11 window manager operation more efficiently
2927         * src/xterm.c (handle_one_xevent): If a ConfigureNotify event is
2928         followed by more ConfigureNotify events for the same window, process
2929         only the last one.
2931 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
2933         Fix cursor setting for tip frame; re-enable cursor generation
2935         * src/xfns.c (x_create_tip_frame): Include the cursor in the window
2936         attributes sent when creating the new X window.  Don't skip setting
2937         the pointerColor parameter.
2939 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
2941         Rewrite x_set_mouse_color to sync less
2943         We can track serial numbers of X requests and correlate error events
2944         with the associated requests.  This way we can identify errors for
2945         specific calls without having to use XSync after every one.
2947         * src/xfns.c (enum mouse_cursor): New type.
2948         (struct mouse_cursor_types, struct mouse_cursor_data): New types.
2949         (mouse_cursor_types): New array listing the Lisp variables and default
2950         cursor appearances for each cursor type.
2951         (x_set_mouse_color_handler): New function; checks error event serial
2952         number against submitted requests.
2953         (x_set_mouse_color): Updated to use the new error handler callback,
2954         and to be more table-driven, to simplify repetitious code.
2956 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
2958         Add x_catch_errors_with_handler
2960         * src/xterm.c (struct x_error_message_stack): Add new fields for a
2961         callback function and associated data pointer.
2962         (x_error_catcher): If the callback function is set, call it after
2963         saving the error message string.
2964         (x_catch_errors_with_handler): Renamed from x_catch_errors but now
2965         accepts a callback function and data pointer.
2966         (x_catch_errors): Now a wrapper function.
2967         * src/xterm.h (x_special_error_handler): New typedef.
2968         (x_catch_errors_with_handler): Declare.
2970 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
2972         Introduce x_uncatch_errors_after_check to reduce XSync calls
2974         Both x_had_errors_p and x_check_errors call XSync, so if they're
2975         immediately followed by x_uncatch_errors, its XSync call will be
2976         redundant, resulting in a wasted round trip to the X server.
2978         * src/xterm.c (x_uncatch_errors_after_check): New routine; a copy of
2979         x_uncatch_errors without the XSync call.
2980         (XTmouse_position, x_wm_supports):
2981         * src/xfns.c (x_set_mouse_color):
2982         * src/xmenu.c (Fx_menu_bar_open_internal):
2983         * src/xselect.c (x_own_selection, x_get_foreign_selection):
2984         (Fx_get_atom_name): Call it instead of x_uncatch_errors.
2985         * src/xterm.h (x_uncatch_errors_after_check): Declare.
2987 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
2989         Document the optional prefix to `calc-yank'
2991         * doc/misc/calc.texi (Yanking into the Stack): Document the optional
2992         prefix to `calc-yank'.
2993         * lisp/calc/calc-yank.el (calc-yank): Ensure that things killed from
2994         the Calc buffer are yanked back unchanged.
2996 2015-10-10  Mark Oteiza  <mvoteiza@udel.edu>
2998         * lisp/calendar/calendar.el: Display buffer before executing body.
3000         In each use of this macro, the modeline is derived from a window width
3001         calculation, which will be wrong if (display-buffer) splits the window
3002         horizontally.
3004 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
3006         Use ‘echo’ safely with ‘\’ or leading ‘-’
3008         POSIX says that ‘echo FOO’ produces implementation-defined output
3009         if FOO contains leading ‘-’, or ‘\’ anywhere, so don’t assume GNU
3010         behavior in that case.
3011         * Makefile.in (removenullpaths): Remove.
3012         (epaths-force): Rewrite to avoid the need for ‘echo’.
3013         (install-etc): Be clearer about escaping the shell metacharacters
3014         ‘\’ and ‘$’.
3015         * Makefile.in (install-arch-indep, install-etcdoc):
3016         * admin/charsets/mapconv, admin/merge-gnulib, admin/merge-pkg-config:
3017         * admin/quick-install-emacs, build-aux/gitlog-to-emacslog:
3018         * configure.ac, lib-src/rcs2log, make-dist:
3019         * src/Makefile.in (lisp.mk):
3020         Don’t assume ‘echo’ outputs ‘\’ and leading ‘-’ unscathed.
3021         For example, use ‘printf '%s\n' "$foo"’ rather than ‘echo "$foo"’
3022         if $foo can contain arbitrary characters.
3023         * lisp/Makefile.in (TAGS): Use ‘ls’, not ‘echo’, to avoid ‘\’ issues.
3024         * doc/lispref/two-volume.make (vol1.pdf):
3025         * test/etags/make-src/Makefile (web ftp publish):
3026         Use ‘printf’ rather than ‘echo -e’.
3028 2015-10-10  Kaushal Modi  <kaushal.modi@gmail.com>
3030         Allow numbers with different radixes to be yanked.
3032         * lisp/calc/calc-yank.el (calc-yank): Allow radixes besides the
3033         default base 10.
3035 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
3037         Improve CHECK_IMPURE and PURE_P speedup
3039         * src/data.c (Faset): Use XVECTOR and XSTRING rather than XPNTR.
3041 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
3043         Use events instead of chars to keep track of steps.
3045         * lisp/calc/calc-prog.el (calc-kbd-loop): Use events instead of chars
3046         to keep track of steps.
3048 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
3050         Fix --enable-gcc-warnings problem with older GCC
3052         * src/puresize.h: Add INLINE_HEADER_BEGIN, INLINE_HEADER_END.
3053         This is for building with --enable-gcc-warnings with
3054         GCC 4.6 through 5.0.
3056 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
3058         Fix vertical-motion in truncated lines that end in a stretch
3060         * src/indent.c (Fvertical_motion): Expect overshoot when point is
3061         beyond window margin and lines are truncated, even if we have a
3062         stretch at point.  (Bug#21468)
3064 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
3066         Avoid link-time errors due to inline functions
3068         * src/emacs.c: Include puresize.h, to avoid link-time errors in
3069         unoptimized builds due to PURE_P and CHECK_IMPURE, which are now
3070         inline functions.
3072 2015-10-10  Andreas Schwab  <schwab@linux-m68k.org>
3074         * src/data.c (Faset): Fix last change.
3076 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
3078         CHECK_IMPURE and PURE_P speedup
3080         * src/intervals.c (create_root_interval):
3081         Do CHECK_IMPURE only for strings; not needed for buffers.
3082         Prefer ! STRINGP to BUFFERP, for a tad more speed.
3083         * src/puresize.h (CHECK_IMPURE, PURE_P):
3084         Now inline functions instead of macros.
3085         (PURE_P): Don’t use XPNTR; that is now the caller’s responsibility.
3086         All callers changed.
3087         (CHECK_IMPURE): New argument PTR, to save us the work of running XPNTR.
3088         All callers changed.
3090 2015-10-09  Noah Friedman  <friedman@splode.com>
3092         (tramp-open-connection-setup-interactive-shell): Send -onlcr as well.
3094 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
3096         * lisp/progmodes/cc-mode.el (c-after-font-lock-init): Only *move*
3098         our after-change-function, rather than re-adding it if it was removed.
3100 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
3102         * lisp/cedet/ede: Silence some compiler warnings
3104         * lisp/cedet/ede.el: Require cl-lib.  Silence some compiler warnings.
3105         (ede-menu-obj-of-class-p): Use cl-some rather than `eval'.
3106         (ede-apply-object-keymap, ede-reset-all-buffers)
3107         (ede-auto-add-to-target): Use dolist.
3108         (ede-new, ede-flush-deleted-projects, ede-global-list-sanity-check):
3109         Use field names rather than initarg names in `oref'.
3110         (ede-load-project-file): Remove unused var `file'.
3111         (ede-map-any-target-p): Use cl-some rather than ede-map-targets.
3112         (ede-set): Remove unused var `a'.
3114         * lisp/cedet/ede/emacs.el: Silence some compiler warnings.
3115         (ede-project-autoload): Avoid the old-style "name" argument.
3116         (ede-emacs-find-matching-target): Use field names rather than initarg
3117         names in `oref'.
3119         * lisp/cedet/ede/linux.el: Silence some compiler warnings.
3120         (ede-linux-load, ede-project-autoload): Avoid the old-style
3121         "name" argument.
3122         (ede-linux-find-matching-target): Use field names rather than initarg
3123         names in `oref'.
3125 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
3127         * lisp/textmodes/reftex.el: Silence byte-compiler warnings.
3129 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
3131         * lisp/progmodes/prolog.el (prolog-smie-rules): Try and avoid
3132         indenting too far after ":-".
3134 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
3136         Update case-table and categories of recently added characters
3138         * lisp/international/characters.el: Update information about Latin
3139         Extended-C, Latin Extended-D, Latin Extended-E, Cyrillic Extended,
3140         Georgian, Glagolitic, Deseret, Old Hungarian, and Warang Citi
3141         blocks.  (Byug#21654)
3143 2015-10-09  Martin Rudalics  <rudalics@gmx.at>
3145         * src/frame.c (adjust_frame_size): In minibuffer-only windows
3146         don't count minibuffer height twice.  (Bug#21643)
3148 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
3150         Avoid inflooping in font-lock
3152         * lisp/font-lock.el (font-lock-extend-region-wholelines): Bind
3153         inhibit-field-text-motion around the call to
3154         line-beginning-position, to avoid inflooping.  (Bug#21615)
3156 2015-10-09  Tassilo Horn  <tsdh@gnu.org>
3158         Refactor duplicated code; ensure default is in completions
3160         * lisp/textmodes/reftex-cite.el (reftex--query-search-regexps):
3161         New function.
3162         (reftex-extract-bib-entries): Use it.
3163         (reftex-extract-bib-entries-from-thebibliography): Use it.
3165 2015-10-09  Vincent Belaïche  <vincentb1@users.sourceforge.net>
3167         * doc/misc/autotype.texi (Skeletons as Abbrevs): "if" -> "ifst"
3168         in the example.
3170 2015-10-08  Stefan Monnier  <monnier@iro.umontreal.ca>
3172         * lisp/calc/calc.el: Silence byte-compiler warnings.
3173         (calc-scan-for-dels): Use ignore-errors.
3174         (calc-dispatch, calc-do-dispatch): Make unused arg optional.
3175         (calc-read-key-sequence): Remove unused var `prompt2'.
3176         (calc-kill-stack-buffer): Remove unused var `buflist'.
3177         (calc): Remove unused var `oldbuf'.
3178         (calc-refresh): Use inhibit-read-only.
3179         (calc-can-abbrev-vectors): Declare.
3180         (calc-record): Remove unused var `mainbuf'.
3181         (math-sub-bignum): Remove unused var `sum'.
3182         (math-svo-c, math-svo-wid, math-svo-off): Declare.
3184 2015-10-08  Daiki Ueno  <ueno@gnu.org>
3186         Use g_clear_error instead of g_error_free
3188         * src/image.c: Define g_clear_error instead of g_error_free.
3189         (init_svg_functions): Resolve symbol g_clear_error instead of
3190         g_error_free.
3191         (svg_load_image): Use g_clear_error instead of g_error_free, to
3192         suppress GLib warnings when ERR is not set.  See bug#21641.
3194 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
3196         * src/image.c (image_size_error): Simplify.
3198 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
3200         Fix problems caught with --enable-gcc-warnings
3202         * src/image.c (lookup_rgb_color):
3203         * src/xfns.c (x_defined_color):
3204         * src/xterm.c (x_parse_color):
3205         Remove unused locals.
3207 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
3209         * lisp/calc/calc.el (calc-digit-start-entry): Fix typo.
3211 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
3213         Format initial input uniformly
3215         * lisp/calc/calc.el (calc-digit-start-entry): New function.
3216         * lisp/calc/calc.el (calcDigit-start):
3217         * lisp/calc/calc-aent.el (calc-alg-digit-entry):
3218         Use `calc-digit-start-entry' to format input.
3220 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
3222         Disable non-working pointerColor setting for X tooltip frame
3224         It generates a bunch of server traffic, but there's some bug wherein
3225         the new mouse cursor settings don't seem to get used.  In most
3226         situations the cursor isn't likely to be seen anyway, so it's not
3227         urgent to fix.
3229         * src/xfns.c (x_create_tip_frame): Don't set pointerColor.
3231 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
3233         Reduce some unnecessary X calls
3235         * src/xfns.c (x_real_pos_and_offsets): Remove a redundant XGetGeometry
3236         call.  If border width is wanted, get it from the XGetGeometry call
3237         instead of calling XGetWindowAttributes on the same window.  Skip some
3238         X calls if we've already detected an error from the X server.
3239         * src/xterm.c (x_wm_supports): Delete x_sync before x_had_errors_p.
3240         (handle_one_xevent): Delete XSync call before x_uncatch_errors.
3242 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
3244         Reduce color allocation/query traffic in the TrueColor case
3246         When working with an X visual with TrueColor class, pixel values can
3247         be generated from the RGB values according to mask value provided by
3248         the server on connection.  Some of the image-handling code was already
3249         doing this.
3251         * src/xterm.h (x_make_truecolor_pixel): New function; code taken from
3252         lookup_rgb_color.
3253         (x_mutable_colormap): New function.
3254         * src/image.c (lookup_rgb_color): Move pixel composition code to
3255         x_make_truecolor_pixel.
3256         (x_kill_gs_process): Call x_mutable_colormap.
3257         * src/xfaces.c (x_free_colors, x_free_dpy_colors): Call
3258         x_mutable_colormap.
3259         * src/xftfont.c (xftfont_get_colors): Call x_query_colors.
3260         * src/xterm.c (x_query_colors): For a TrueColor display, decompose the
3261         pixel value into RGB values directly, and don't send a request to the
3262         server.
3263         (x_alloc_nearest_color): For a TrueColor display, construct the pixel
3264         value with x_make_truecolor_pixel.
3265         (x_copy_color): For an immutable color map, just return the provided
3266         pixel value.
3268 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
3270         Cache XParseColor results in the X display info structure
3272         With repeated lookups of foreground and background colors for multiple
3273         faces per frame, we issue a lot of redundant color name lookups to the
3274         X server, waiting every time for the response.  On a remote network
3275         with, say, 30ms round-trip time, this can add nearly a full second to
3276         creation of a new frame.
3278         * src/gtkutil.c (xg_check_special_colors): Call x_parse_color.
3279         * src/image.c (get_spec_bg_or_alpha_as_argb):
3280         (xpm_init_color_cache, xpm_lookup_color):
3281         * src/xfns.c (x_defined_color):
3282         * src/xterm.c (x_parse_color): New function; caches color names not
3283         starting with "#" in the display-info structure.
3284         (x_delete_display): Delete the cache content.
3285         * src/xterm.h (struct color_name_cache_entry): New type.
3286         (x_parse_color): Declare.
3287         (struct x_display_info): Add a new field for the cache.
3289 2015-10-07  Stefan Monnier  <monnier@iro.umontreal.ca>
3291         * src/syntax.c (syms_of_syntax): Make syntax-propertize--done local.
3293 2015-10-07  Eli Zaretskii  <eliz@gnu.org>
3295         Fix segfault in image_size_error
3297         * src/image.c (image_size_error): Pass a Lisp string to
3298         image_error, not a C string.  (Bug#21641)
3300 2015-10-07  Simen Heggestøyl  <simenheg@gmail.com>
3302         Highlight CSS variable definitions
3304         * lisp/textmodes/css-mode.el (css-nmstart-re): Tweak regexp to accept
3305         CSS variables.  (Bug#21638)
3307 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
3309         * test/automated/tabulated-list-test.el: New file.
3310         Test bug#21639 and some basic functionality.
3312 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
3314         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-sort):
3315         Check if column can be sorted before trying.  (Bug#21639)
3317 2015-10-07  Nicolas Richard  <youngfrog@members.fsf.org>
3319         Add test for `self-insert-command' (bug#21633)
3321         * test/automated/cmds-tests.el: New file.
3323 2015-10-07  Martin Rudalics  <rudalics@gmx.at>
3325         * src/window.c (resize_frame_windows): Don't set root window's
3326         top position when resizing horizontally.
3328 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
3330         * lisp/progmodes/prog-mode.el (prettify-symbols-alist):
3331         Document more possible values.
3333 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
3335         * lisp/textmodes/tex-mode.el: Use lexical-binding.
3337 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
3339         * lisp/indent.el (indent--default-inside-comment): New function.
3340         (indent-for-tab-command): Use it for `noindent' indentation.
3342 2015-10-06  Paul Eggert  <eggert@cs.ucla.edu>
3344         Fix bug in GC_CHECK_MARKED_OBJECTS check
3346         * src/alloc.c (mark_object): Fix bug in checking code.
3347         When GC_CHECK_MARKED_OBJECTS is defined, the bug caused
3348         CHECK_ALLOCATED_AND_LIVE_SYMBOL to repeatedly do the
3349         CHECK_ALLOCATED and CHECK_LIVE tests for the first symbol in each
3350         bucket.  The bug did not affect behavior either in the normal case
3351         where GC_CHECK_MARKED_OBJECTS is not defined, or where Emacs does
3352         not have an internal error that a properly-written
3353         CHECK_ALLOCATED_AND_LIVE_SYMBOL would detect.
3355 2015-10-06  Tassilo Horn  <tsdh@gnu.org>
3357         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
3358         Add prettified version for \\Bbb{Q}.
3360 2015-10-06  Artur Malabarba  <bruce.connor.am@gmail.com>
3362         * test/automated/package-test.el (package-test-install-single):
3363         Add a test for bug#21625.
3365 2015-10-06  Aaron Ecay  <aaronecay@gmail.com>
3367         * lisp/emacs-lisp/package.el (package-install): Fix error when pkg is
3368           not a package-desc object.  Also clarify documentation.  (Bug#21625)
3370 2015-10-06  Eli Zaretskii  <eliz@gnu.org>
3372         Fix display of characters adjacent to ZWJ and ZWNJ
3374         * src/bidi.c (bidi_resolve_neutral): Treat all Bn (a.k.a. "control")
3375         characters the same as directional formatting controls.
3376         (bidi_level_of_next_char): Include all Bn characters in rule L1,
3377         as mandated by the UBA.
3379 2015-10-06  Andreas Schwab  <schwab@suse.de>
3381         * src/cmds.c (Fself_insert_command): Don't use XFASTINT on a negative
3382         number.  (Bug#21633)
3384 2015-10-05  Xue Fuqiao  <xfq.free@gmail.com>
3386         * doc/lispref/objects.texi (Window Type): Add a cross reference.
3388         * src/buffer.c (syms_of_buffer): Typo fix.  (Bug#21622)
3390 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
3392         * lisp/language/misc-lang.el (composition-function-table):
3393         Fix entries for Arabic and Syriac.
3395 2015-10-05  Damien Cassou  <damien@cassou.me>
3397         Add first unit tests for auth-source.el
3399         * test/automated/auth-source-tests.el: New file.
3401 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
3403         Remove redundant redisplay code
3405         * src/xdisp.c (redisplay_internal, try_cursor_movement)
3406         (try_window_reusing_current_matrix, try_window_id): Remove
3407         redundant restrictions on redisplay optimizations based on the
3408         frame's 'redisplay' flag.  See
3409         http://osdir.com/ml/general/2015-10/msg02110.html for the relevant
3410         discussions.
3412 2015-10-04  Stefan Monnier  <monnier@iro.umontreal.ca>
3414         * src/xdisp.c (windows_or_buffers_changed): Improve docstring.
3416 2015-10-04  Xue Fuqiao  <xfq.free@gmail.com>
3418         Update tutorials/TUTORIAL.cn
3420         * etc/tutorials/TUTORIAL.cn: Improve translation.
3422 2015-10-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
3424         * src/macfont.m (macfont_encode_char, syms_of_macfont):
3425         Remove unused vars.
3427 2015-10-04  Stefan Merten  <stefan@merten-home.de>
3429         Pull in version numbers from rst.el upstream release.
3431         * lisp/textmodes/rst.el (rst-cvs-header, rst-svn-rev)
3432         (rst-svn-timestamp, rst-official-version)
3433         (rst-official-cvs-rev, rst-package-emacs-version-alist):
3434         Update version numbers.
3436 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
3438         * test/automated/coding-tests.el: New file.
3440 2015-10-04  Michael Albinus  <michael.albinus@gmx.de>
3442         Improve XEmacs compatibility of Tramp
3444         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
3445         Declare if it doesn't exist.
3446         (file-remote-p): Remove defalias, which was necessary for GNU Emacs 21.
3447         (redisplay): Make it an alias if it doesn't exist.
3449         * lisp/net/tramp.el (tramp-get-remote-tmpdir): Don't use
3450         `file-remote-p' (due to XEmacs compatibility).
3452         * lisp/net/trampver.el (locate-dominating-file)
3453         (tramp-compat-replace-regexp-in-string): Autoload.
3454         (tramp-repository-get-version): Do not dupe byte-compiler.
3456 2015-09-02  K. Handa  <handa@gnu.org>
3458         fix for the case that M17N_FLT_USE_NEW_FEATURE is not defined
3460         * src/ftfont.c (ftfont_drive_otf) [not M17N_FLT_USE_NEW_FEATURE]:
3461         Adjusted for the change of type of elements in the array
3462         MFLTGlyphString.glyphs.
3464 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
3465             Michael Heerdegen  <michael_heerdegen@web.de>
3467         shr: fix too long lines in rendered buffers (Bug#21012)
3469         * lisp/net/shr.el (shr-insert-document, shr-fill-text):
3470         Correct calculation of available width.
3471         (shr-find-fill-point): Don't overflow window edge if shr-kinsoku-shorten
3472         is nil.
3474 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
3476         Restore blank line before next section, erroneously erased
3477         in my previous commit
3479         * etc/compilation.txt (symbol ant): Add an additional trailing blank
3480         line to this section, so that there are two of them immediately before
3481         the next section.
3483 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
3485         Support MSW filename style for ant compilation error regexp
3487         * etc/compilation.txt (symbol ant):
3488         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
3489         Support MSW filename style.
3491 2015-10-03  Paul Eggert  <eggert@cs.ucla.edu>
3493         * nt/INSTALL: Minor spelling and quote fixes.
3495         * lisp/ibuffer.el: Fix docstring length (Bug#21541).
3497 2015-10-03  Simen Heggestøyl  <simenheg@gmail.com>
3499         Maintain ordering of JSON object keys by default
3501         * lisp/json.el (json-object-type): Mention order handling in doc-string.
3502         (json--plist-reverse): New utility function.
3503         (json-read-object): Maintain ordering for alists and plists.
3504         (json-pretty-print): Ensure that ordering is maintained.
3506         * test/automated/json-tests.el (test-json-plist-reverse): New test for
3507         `json--plist-reverse'.
3508         (json-read-simple-alist): Update test to accommodate for changes in
3509         `json-read-object'.
3511         * etc/NEWS: Document the new behavior of the pretty printing functions.
3513 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
3515         * src/coding.c (complement_process_encoding_system): Revert last change.
3517 2015-10-03  Ulf Jasper  <ulf.jasper@web.de>
3519         * admin/MAINTAINERS: Add entry for Ulf Jasper.
3521 2015-10-03  Xue Fuqiao  <xfq.free@gmail.com>
3523         Doc fix for `defmacro'
3525         * doc/lispref/objects.texi (Macro Type): `defmacro' is a macro now.
3527 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
3529         More validatation of coding systems
3531         * src/fileio.c (Finsert_file_contents): Remove redundant
3532         coding-system check.
3533         (choose_write_coding_system): Likewise.
3534         * src/coding.c (complement_process_encoding_system): Check argument
3535         for valid coding system.
3537 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
3539         Avoid crashes in coding_inherit_eol_type
3541         * src/coding.c (coding_inherit_eol_type): Check the validity of
3542         the arguments.  Suggested by Andreas Schwab <schwab@linux-m68k.org>.
3543         (Bug#21602)
3545 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
3547         More validatation of coding system in 'write-region'
3549         * src/coding.c (choose_write_coding_system): More validation of
3550         coding-system from various sources.  Suggested by Andreas Schwab
3551         <schwab@linux-m68k.org>.  (Bug#21602)
3553 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
3555         Avoid crashes due to invalid coding-system
3557         * src/fileio.c (choose_write_coding_system)
3558         (Finsert_file_contents): Check validity of coding-system-for-write
3559         and coding-system-for-read bound by the caller.  (Bug#21602)
3561 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
3563         Adapt to new prettify-symbols-unprettify-at-point default
3565         * etc/NEWS: Mention that unprettication of symbol at point is off
3566         by default.
3568 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
3570         Revert my two recent process.c changes
3572         Revert "Improve last commit to process.c" and "Remove callback-handled
3573         channels from Available set" because they did not fix bug#21313.
3575         This reverts commits bfa1aa8e2bdaf14adbbf1e9e824051d3f740694c and
3576         27f871907cc24f33a7d12ac3a4ab71a88f0bc554.
3578 2015-10-02  Markus Triska  <triska@metalevel.at>
3580         * lisp/progmodes/prolog.el: Update and extend operator table.
3581         (prolog-smie-grammar): Add multifile, public etc.
3583 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
3585         Allow autogen even when Git is not installed
3587         * autogen.sh: Test ‘git status’ before trying to use Git.
3589 2015-10-02  Stefan Monnier  <monnier@iro.umontreal.ca>
3591         * lisp/vc/vc-git.el (vc-git-region-history): Handle local changes.
3592         Adjust lto/lfrom when we have uncommitted changes.
3594 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
3596         Fix problems found by clang 3.5.0
3598         * src/cmds.c (Fdelete_char): Don’t assume XINT returns int.
3599         * src/font.c (font_parse_family_registry):
3600         Use &"str"[X] instead of "str"+X, to pacify clang -Wstring-plus-int.
3602 2015-10-02  Eli Zaretskii  <eliz@gnu.org>
3604         * nt/INSTALL: Update instructions for running autogen.sh.
3606         * nt/INSTALL: Point to ezwinports for libXpm binaries.
3608 2015-10-02  Daniel Colascione  <dancol@dancol.org>
3610         Fix winner in cl-lib not loaded case
3612         * lisp/winner.el (winner-change-fun): Don't use cl-lib functions
3613         without requiring CL
3615 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
3617         Fix a few problems with directed quotes
3619         This is in response to a problem report by Kaushal Modi in:
3620         http://bugs.gnu.org/21588#25
3621         * lisp/cedet/mode-local.el (describe-mode-local-overload):
3622         * lisp/emacs-lisp/bytecomp.el (byte-compile-fix-header):
3623         * lisp/info-xref.el (info-xref-check-all-custom):
3624         * lisp/mail/emacsbug.el (report-emacs-bug-hook):
3625         Prefer directed to undirected single quotes in diagnostics.
3627 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
3629         Revert "Attempt to fix slow redisplay caused by last changes"
3631         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
3632         (try_cursor_movement): Don't relax requirements for redisplay
3633         optimizations for the selected frame.  (Bug#21597)
3635         This reverts commit c4c1fb97727ff52bcfa83ad5ed94a64a93d12e59.
3637 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
3639         Fix slow redisplay when daemon frame exists
3641         * src/xdisp.c (redisplay_internal): Don't consider daemon frames
3642         when looking for frames that need to be redisplayed.  (Bug#21597)
3644 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
3646         Attempt to fix slow redisplay caused by last changes
3648         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
3649         (try_cursor_movement): Relax requirements for redisplay
3650         optimizations for the selected frame.  (Bug#21597)
3652 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
3654         * src/dired.c (Ffile_name_completion, Ffile_name_all_completions):
3655         Improve doc string.
3657 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
3659         * lisp/minibuffer.el (minibuffer-completion-help):
3660         Set default base-size, in case completion table does not set it.
3662 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
3664         Fix GUD display of GDB output with non-ASCII text
3666         * lisp/progmodes/gdb-mi.el (gdb-mi-decode-strings): New defcustom.
3667         (gdb-mi-decode): New function.
3668         (gud-gdbmi-marker-filter): If gdb-mi-decode-strings is non-nil,
3669         decode octal escapes in GDB output.  (Bug#21572)
3671 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
3673         * nt/INSTALL: Document where to find XPM support files.
3675 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
3677         Un- and re-prettification are not exclusive
3679         * lisp/progmodes/prog-mode.el (prettify-symbols--post-command-hook):
3680         Re-apply prettification to previous symbol also when unprettifying
3681         next one.
3683 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
3685         Don't unprettify symbol at point by default
3687         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
3688         Default to disabled (nil).
3690 2015-09-30  Artur Malabarba  <bruce.connor.am@gmail.com>
3692         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
3693         Support unprettifying when point is after a symbol.
3695         * etc/NEWS: Document `prettify-symbols-unprettify-at-point'.
3697 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
3699         Avoid assertion violations in push_prefix_prop
3701         * src/xdisp.c (push_prefix_prop): Avoid assertion violations when
3702         a line that has a line-prefix defined starts with an image.  (Bug#21428)
3704 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
3706         Disable some display optimizations when frames need redisplay
3708         These optimizations were previously disabled by the
3709         windows_or_buffers_changed flag, which now is not set
3710         when only some frames need to be redrawn.
3711         * src/xdisp.c (redisplay_internal): Redisplay any frame whose
3712         'redisplay' flag is set.
3713         (try_window_reusing_current_matrix, try_window_id)
3714         (try_cursor_movement): Disable these optimizations when the
3715         frame's 'redisplay' flag is set.
3717 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
3719         Don't modify buffer by unprettification
3721         * lisp/progmodes/prog-mode.el (prettify-symbols--compose-symbol):
3722         (prettify-symbols--post-command-hook, prettify-symbols-mode): Don't
3723         modify buffer when setting/removing custom prettify-symbols-start/end
3724         text properties.  Add them to font-lock-extra-managed-props, too.
3726 2015-09-30  Stefan Monnier  <monnier@iro.umontreal.ca>
3728         Try to avoid redisplaying all frames when creating a new one
3730         * src/xfns.c (x_set_menu_bar_lines, x_change_tool_bar_height):
3731         * src/xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
3732         (Finternal_set_lisp_face_attribute, update_face_from_frame_parameter):
3733         * src/frame.c (x_set_screen_gamma): Set the specific frame's
3734         `redisplay' bit rather than windows_or_buffers_changed.
3736         * src/window.c (apply_window_adjustment): Remove redundant setting of
3737         windows_or_buffers_changed.
3739         * src/xdisp.c (redisplay_internal): Set the specific frame's
3740         `redisplay' bit rather than update_mode_lines in response to
3741         cursor_type_changed.
3742         (syms_of_xdisp): Use hash-tables for redisplay_*_cause tables.
3743         (AINC): Adjust accordingly.
3745 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
3747         Implement unprettification of symbol at point
3749         * lisp/progmodes/prog-mode.el: Implement feature for unprettifying the
3750         symbol at point.
3751         (prettify-symbols--current-symbol-bounds): New variable.
3752         (prettify-symbols--post-command-hook): New function.
3753         (prettify-symbols-unprettify-at-point): New defcustom.
3754         (prettify-symbols-mode): Use it.
3755         (prettify-symbols--compose-symbol): Use them.
3757 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
3759         * src/macfont.m (mac_font_descriptor_supports_languages):
3760         Regard "zh" as synonym of "zh-Hans".
3762 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
3764         Work around crash when displaying etc/HELLO on OS X 10.11
3766         * src/macfont.m (mac_font_get_weight)
3767         (mac_font_descriptor_get_adjusted_weight): New functions.
3768         (macfont_store_descriptor_attributes): Adjust weight.
3770 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
3772         * src/macfont.m: Fix compilation with USE_CT_GLYPH_INFO.
3774 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
3776         * lisp/arc-mode.el (archive-rar-summarize): Better alignment
3777         of the columns.
3779 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
3781         Use unar and lsar to handle RAR archives in arc-mode
3783         * lisp/arc-mode.el (archive-rar-extract, archive-extract-by-file): Rely
3784         on unar and lsar instead of unrar-free for RAR archives (bug#17663).
3786 2015-09-30  Wieland Hoffmann  <themineo@gmail.com>  (tiny change)
3788         Clarify :create in auth-source's docs
3790         * lisp/gnus/auth-source.el (auth-source-search):
3791         Clarify :create's meaning.
3793 2015-09-30  Phil Sainty  <psainty@orcon.net.nz>
3795         Avoid empty -path arguments in rgrep
3797         * lisp/progmodes/grep.el (rgrep-default-command): Remove nil from
3798         the list produced according to grep-find-ignored-directories,
3799         before passing it to Find/Grep invocation.  (Bug#21548)
3801 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
3803         Clarify documentation of pos-visible-in-window-p
3805         * src/window.c (Fpos_visible_in_window_p): Clarify the meaning of
3806         t for POS.  See
3807         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg01040.html
3808         for the original report.
3810         * doc/lispref/windows.texi (Window Start and End): Clarify the
3811         meaning of t for the POSITION argument of pos-visible-in-window-p.
3813 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
3815         * lisp/progmodes/prolog.el: Fix various indentation cases.
3816         (prolog-operator-chars): New const (add \\).
3817         (prolog-smie-forward-token, prolog-smie-backward-token): Use it.
3818         (prolog-smie-rules): Add rules according to bug#21526.
3820 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
3822         * lisp/progmodes/sh-script.el: Old "dumb" continued line indent.
3823         (sh-indent-after-continuation): Add new value `always' (bug#17620)
3824         (sh-smie-sh-rules): Remove old handling of continued lines.
3825         (sh-smie--indent-continuation): New function.
3826         (sh-set-shell): Use it.
3828 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
3830         * lisp/progmodes/octave.el: Use grammar more; Handle enumeration fun.
3831         Remove redundant :group keyword args.
3832         (octave-begin-keywords, octave-else-keywords, octave-end-keywords):
3833         Remove variables.
3834         (octave-operator-table, octave-smie-bnf-table): Use let-when-compile to
3835         turn them into compile-time variables.
3836         Auto-generate the "foo ... end" rules from the "foo ... endfoo" rules.
3837         Add rules for break, continue, return, global, and persistent.
3838         Refine the rule for "until".
3839         (octave-smie--funcall-p, octave-smie--end-index-p)
3840         (octave-smie--in-parens-p): New functions.
3841         (octave-smie-backward-token, octave-smie-forward-token): Use them to
3842         distinguish the "enumeration" function and the "end" index from
3843         their corresponding keywords.
3844         (octave--block-offset-keywords): New constant.
3845         (octave-smie-rules): Use it.  Adjust rules for new global/persistent
3846         parsing.
3847         (octave-reserved-words): Redefine using octave-smie-grammar.
3848         (octave-font-lock-keywords): Use octave-smie--funcall-p and
3849         octave-smie--end-index-p.
3851 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
3853         * lisp/emacs-lisp/lisp-mode.el (let-when-compile): Work like let*.
3855 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
3857         * nt/INSTALL: Remove references to GTK site.
3858         That site no longer offers Windows downloads.
3860 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
3862         * nt/INSTALL: Add instructions for installing Git.
3864 2015-09-29  Katsumi Yamaoka  <yamaoka@jpl.org>
3866         * lisp/net/shr.el (shr-colorize-region): Allow 88-color tty to
3867         use colors.  Suggested by Eli Zaretskii.
3869 2015-09-28  Katsumi Yamaoka  <yamaoka@jpl.org>
3871         * lisp/net/shr.el (shr-colorize-region): Don't do it on a system
3872         not supporting 256 above colors (bug#21557).
3874 2015-09-28  Dmitry Gutov  <dgutov@yandex.ru>
3876         Revert "Don't rely on defaults in decoding UTF-8 encoded Lisp files"
3878         This reverts commit db828f62f6f17414fbbc3206dac123dc73dd6055.
3880 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
3882         Add documentation for seq.el
3884         * doc/lispref/sequences.texi: Add documentation regarding extending
3885         seq.el, as well as missing documentation for seq-elt, seq-length, seq-p,
3886         seq-do and seq-map.
3888 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
3890         Better documentation for seq-some
3892         * doc/lispref/sequences.texi:
3893         * lisp/emacs-lisp/seq.el: Update the documentation of seq-some to
3894         guarantee that the returned value is the first non-nil value that
3895         resulted from applying the predicate.
3897 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
3899         * lisp/arc-mode.el: Sharp-quote function arguments.
3901 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
3903         Avoid redisplay error in ediff-regions-wordwise
3905         * lisp/vc/ediff-util.el
3906         (ediff-clone-buffer-for-region-comparison): Make sure the mark is
3907         set before activating it.  (Bug#21567)
3909 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
3911         Another attempt to fix crashes due to prematurely freed faces
3913         * src/xdisp.c (redisplay_internal): Inhibit freeing of realized
3914         faces for as long as we might have desired matrices that reference
3915         those faces.  (Bug#21428)
3917 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
3919         Add auctex development list email address
3921 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
3923         * admin/MAINTAINERS: Add entries for AUCTeX team and myself.
3925 2015-09-28  Arash Esbati  <esbati@gmx.de>  (tiny change)
3927         Improve wrapfig package support and caption parsing
3929         * lisp/textmodes/reftex-vars.el (reftex-label-alist-builtin):
3930         Correct description string and add wraptable environment.
3931         (reftex-default-context-regexps): Improve caption regexp.
3933 2015-09-28  Anders Lindgren  <andlind@gmail.com>
3935         Respect value of frame_resize_pixelwise when handling fullscreen state
3937         * src/nsterm.m (handleFS): Respect frame_resize_pixelwise when
3938         setting size increments.
3940 2015-09-27  Michael Albinus  <michael.albinus@gmx.de>
3942         * src/gfilenotify.c (Fgfile_add_watch): Cleanup temporary variable.
3944 2015-09-27  Simen Heggestøyl  <simenheg@gmail.com>
3946         Add prettify-symbols-alist for js-mode
3948         * lisp/progmodes/js.el (js--prettify-symbols-alist): New defconst.
3949         (js-mode): Use it.
3951 2015-09-27  Eli Zaretskii  <eliz@gnu.org>
3953         * nt/subdirs.el: File deleted (no longer used).
3955 2015-09-26  Alan Mackenzie  <acm@muc.de>
3957         Fix follow-scroll-up/down, making them replacements for scroll-up/down
3959         1. Allow point to move between follow windows in scroll operations.
3960         2. Fix bug where `right-char' just before EOB caused spurious scrolling,
3961         when EOB was isolated in the last follow window.
3963         * lisp/follow.el (follow-fixed-window): New variable.
3964         (follow-get-scrolled-point): New function.
3965         (follow-scrol-up, follow-scroll-down): Add autoload cookies.
3966         Reformulate the code.  Put `scroll-command' properties on the functions.
3967         Correct minor errors in ...-down's doc string and code.
3968         (follow-calc-win-end): Amend incomplete doc string.  Use
3969         `pos-visible-in-window-p' to check whether EOB is in the window.
3970         (follow-estimate-first-window-start): Correct an off-by-1 error.
3971         (follow-adjust-window): Add handling for explicit scrolling operations.
3973 2015-09-26  Paul Eggert  <eggert@cs.ucla.edu>
3975         * admin/MAINTAINERS: Add self, plus list some more files
3976         sans maintaners.
3978 2015-09-26  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
3980         New DWIM commands for changing letter-case
3982         * lisp/simple.el (upcase-dwim, downcase-dwim, capitalize-dwim):
3983         New functions.  (Bug#21501)
3985 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
3987         * etc/PROBLEMS: Document problems with pasting on MS-Windows.
3989 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
3991         Make face realization be more frame-specific
3993         * src/frame.h (struct f): New flag face_change.
3994         * src/xfaces.c (Finternal_make_lisp_face)
3995         (Finternal_copy_lisp_face, Finternal_set_lisp_face_attribute)
3996         (update_face_from_frame_parameter): Set the face_change flag only
3997         for the frame whose faces are affected.
3998         * src/xdisp.c (init_iterator): If a frame's face_change flag is
3999         set, free faces only on that frame.
4000         (redisplay_internal): Disable "display optimization 1" if the
4001         frame's face_change flag is set.
4002         (redisplay_window): Don't allow skipping a window's redisplay if
4003         its frame's face_change flag is set.
4004         * src/frame.c (x_set_screen_gamma): Instead of calling
4005         Fclear_face_cache, call clear_face_cache and set
4006         windows_or_buffers_changed to a non-zero value.  This avoids
4007         setting the global face_change flag that triggers face realization
4008         on all frames and thorough redisplay of all of them.
4010         * lisp/term/tty-colors.el (tty-register-default-colors): Don't
4011         clear face cache if the selected frame is a GUI frame.
4013 2015-09-26  Tassilo Horn  <tsdh@gnu.org>
4015         Remove font-latex specific check
4017         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
4018         Use syntax-ppss data to identify verbatim contents.
4020 2015-09-25  Tassilo Horn  <tsdh@gnu.org>
4022         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
4023         Fix some false negatives.
4025 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
4027         Reorder Windows version in Emacs manifests
4029         * nt/emacs-x64.manifest:
4030         * nt/emacs-x86.manifest: Reorder Windows version from lowest to
4031         highest.
4033 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
4035         Update Emacs manifest files for Windows 10
4037         * nt/emacs-x86.manifest:
4038         * nt/emacs-x64.manifest: Declare compatibility with Windows 10.
4040 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
4042         Avoid non-ASCII decoding errors in C src files
4044         * src/nsterm.m:
4045         * src/lisp.h:
4046         * src/editfns.c:
4047         * src/doprnt.c: Add 'coding' cookies -- these files include
4048         Unicode characters and should be decoded as UTF-8.
4050 2015-09-25  Alan Mackenzie  <acm@muc.de>
4052         Resurrect edebug-set-initial-mode, repurposing it to set the global mode
4054         * lisp/emacs-lisp/edebug.el (edebug-initial-mode-alist): Uncomment, and
4055         amend to match current modes and functions.
4056         (edebug-set-initial-mode): Uncomment and change from setting a defun's
4057         `edebug-initial-mode''s property to setting the variable
4058         `edebug-initial-mode'.
4059         (top level): Create new binding C-x C-a C-m for
4060         `edebug-set-initial-mode'.
4062         * doc/lispref/edebug.texi (Edebug Execution Modes): Document
4063         `edebug-set-initial-mode' and its new key binding.
4064         (Edebug Options): Mention the new command in the pertinent place.
4066         * etc/NEWS: Write entry for this change.
4068 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
4070         Avoid non-ASCII decoding errors in Texinfo files
4072         * doc/misc/tramp.texi:
4073         * doc/lispref/strings.texi:
4074         * doc/lispref/positions.texi:
4075         * doc/lispref/help.texi:
4076         * doc/lispref/functions.texi:
4077         * doc/lispintro/emacs-lisp-intro.texi:
4078         * doc/emacs/text.texi:
4079         * doc/emacs/modes.texi:
4080         * doc/emacs/mini.texi:
4081         * doc/emacs/display.texi:
4082         * doc/emacs/custom.texi:
4083         * doc/emacs/basic.texi: Add 'coding' cookies -- these files use
4084         Unicode characters and should be decoded as UTF-8.
4085         * doc/lispref/frames.texi (Size Parameters): Don't use a non-ASCII
4086         apostrophe unnecessarily.
4088 2015-09-25  Paul Eggert  <eggert@cs.ucla.edu>
4090         Merge from gnulib
4092         This incorporates:
4093         2015-09-25 c-ctype: rewrite to use inline functions
4094         2015-09-24 maint: add coding cookies to non-ASCII sources
4095         2015-09-24 gitlog-to-changelog: trim only trailing whitespaces
4096         * build-aux/gitlog-to-changelog, doc/misc/texinfo.tex:
4097         * lib/acl-internal.c, lib/acl-internal.h, lib/c-ctype.c:
4098         * lib/c-ctype.h, lib/get-permissions.c, lib/qcopy-acl.c:
4099         * lib/set-permissions.c:
4100         Copy from gnulib.
4102 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
4104         Update publicsuffix.txt from upstream
4106         * etc/publicsuffix.txt: Update from
4107         https://publicsuffix.org/list/effective_tld_names.dat
4108         dated 2015-09-24 17:29:21 UTC.
4110 2015-09-24  Eli Zaretskii  <eliz@gnu.org>
4112         Prevent timers from messing up TTY menus
4114         * src/term.c (tty_menu_activate): Inhibit redisplay for as long as
4115         the TTY menu is open.  (Bug#21530)
4117 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
4119         No need to mention K&R C in c-mode intro
4121 2015-09-24  Stefan Monnier  <monnier@iro.umontreal.ca>
4123         Fix recent bootstrap problems
4125         * src/syntax.c (parse_sexp_propertize): Fix last fix.
4126         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): Fix paren typo.
4127         * lisp/emacs-lisp/lisp-mode.el: Require cl-lib for cl-progv.
4129 2015-09-24  Michael Albinus  <michael.albinus@gmx.de>
4131         * src/gfilenotify.c (Fgfile_add_watch): Decrease polling rate.
4133 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
4135         Properly quote nested xml comments (Bug#6267) (Bug#20001)
4137         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): New function.
4138         (nxml-mode): Set comment-quote-nested-function.
4140 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
4142         Allow major-modes full control over quoting nested comments
4144         * lisp/newcomment.el (comment-quote-nested-function): New variable.
4145         (comment-quote-nested-default): New function.
4146         (comment-quote-nested): Use `comment-quote-nested-function'.
4148 2015-09-23  Paul Eggert  <eggert@cs.ucla.edu>
4150         Prefer CALLN in a few more places
4152         * src/macfont.m (macfont_set_family_cache):
4153         * src/nsterm.m (append2):
4154         * src/xterm.c (x_cr_export_frames):
4155         Prefer CALLN to allocating the arg arrays by hand.
4157 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
4159         Adapt file-notify-test02-events test case
4161         * test/automated/file-notify-tests.el (file-notify-test02-events):
4162         Create a new watch for every test.
4164 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
4166         Continue gfilenotify.c implementation of missing parts
4168         * lisp/filenotify.el (file-notify-add-watch): Append `flags' to
4169         `gfile-add-watch' call.
4170         (file-notify-rm-watch): Modify `file-notify-descriptors' only
4171         after calling the low level functions.
4173         * src/gfilenotify.c (dir_monitor_callback): Check, whether
4174         event_type is expected.
4175         (Fgfile_add_watch): Allow also `change'and `attribute-change' for FLAGS.
4176         (Fgfile_rm_watch): Fix typo.
4177         (syms_of_gfilenotify): Declare Qchange and Qattribute_change.
4179 2015-09-23  Stefan Monnier  <monnier@iro.umontreal.ca>
4181         * src/syntax.c (parse_sexp_propertize): Handle spurious
4182         e_property_truncated flag.
4183         (update_syntax_table_forward): Remove invalid assertion.
4185 2015-09-23  Eli Zaretskii  <eliz@gnu.org>
4187         * src/xdisp.c (produce_stretch_glyph): Support ':relative-width'
4188         space display spec on text-mode terminals, by calling
4189         PRODUCE_GLYPHS instead of x_produce_glyphs.  Remove the
4190         HAVE_WINDOW_SYSTEM guards from the supporting code, as well as the
4191         test for a GUI frame.
4193 2015-09-23  Oleh Krehel  <ohwoeowho@gmail.com>
4195         Move let-when-compile to lisp-mode.el
4197         This fixes the bootstrapping problem of `let-when-compile' using
4198         `cl-progv' while being in subr.el (i.e. before cl stuff was loaded).
4200 2015-09-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
4202         * lisp/url/url-http.el (url-http-parse-headers): Do not
4203         automatically include Authorization header in redirect.
4204         (Bug#21350)
4206 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
4208         Clarify documentation of ':relative-width'
4210         * doc/lispref/display.texi (Specified Space): Document that
4211         ':relative-width' is only supported on GUI frames.
4213 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
4215         Fix 'current-column' in presence of :relative-width
4217         * src/indent.c (check_display_width): Support ':relative-width'
4218         in a display spec that specifies a stretch glyph.  (Bug#21533)
4220 2015-09-22  Ken Manheimer  <ken.manheimer@gmail.com>
4222         Reformat the pdbtrack remote-file fix ChangeLog.2 entry
4224         ... to conform better to CONTRIBUTE guidelines.
4226 2015-09-22  Stefan Monnier  <monnier@iro.umontreal.ca>
4228         * lisp/progmodes/prolog.el: Fix indentation of empty line
4230         * lisp/emacs-lisp/smie.el (smie-rules-function): Document new
4231         `empty-line-token' element.
4232         (smie-indent-empty-line): New function.
4233         (smie-indent-functions): Add it.
4235         * lisp/progmodes/prolog.el (prolog-smie-rules): Fix :list-intro
4236         behavior and use the new `empty-line-token' element (bug#21526).
4237         (prolog-mode-variables): Fix comment-start-skip setting to match
4238         comment-start.
4240         * test/indent/prolog.prolog: Add nested indentation tests.
4242         * lisp/newcomment.el (comment-normalize-vars): Fix default value of
4243         comment-start-skip not to misuse submatch 1.
4245 2015-09-22  Alan Mackenzie  <acm@muc.de>
4247         Make description of `edebug-initial-mode' user friendly
4249         Fixes bug#21365.
4251         * dec/lispref/edebug.texi (Edebug Execution Modes): Change the
4252         description of `edebug-initial-mode' from that of its implementation
4253         to that of its visual effect and use.  Move the paragraph higher up.
4255 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
4257         lisp/progmodes/gud.el (gud-format-command): Fix last commit
4259         * lisp/progmodes/gud.el (gud-format-command): Don't use Tramp internal
4260         functions 'tramp-file-name-localname' and 'tramp-dissect-file-name'.
4262 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
4264         Improve last commit to process.c
4266 2015-09-22  Michael Albinus  <michael.albinus@gmx.de>
4268         Implement gfile-valid-p
4270         * lisp/filenotify.el (file-notify-callback): Fix typo.
4271         (gfile-valid-p): Remove defalias.
4273         * src/gfilenotify.c (dir_monitor_callback): Cancel the monitor if
4274         the file or directory to be watched is deleted.
4275         (Fgfile_add_watch): Make watch_object a triple.
4276         (Fgfile_rm_watch): Check, whether watch is cancelled already.
4277         (Fgfile_valid_p): New defun.
4278         (syms_of_gfilenotify): Declare Sgfile_valid_p.
4280 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
4282         Remove callback-handled channels from Available set
4284         * src/process.c (wait_reading_process_output): Remove channel from
4285         Available set if it is handled by a callback, e.g., dbus or
4286         inotify (bug#21313).
4288 2015-09-21  Mark Oteiza  <mvoteiza@udel.edu>
4290         Use lunate epsilon for TeX \epsilon
4292         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
4293         Add \varepsilon using GREEK SMALL LETTER EPSILON, and change
4294         \epsilon to use GREEK LUNATE EPSILON SYMBOL
4296 2015-09-21  Stefan Monnier  <monnier@iro.umontreal.ca>
4298         * lisp/progmodes/prolog.el: Fix nested electric if-then-else
4300         * lisp/progmodes/prolog.el (prolog-find-unmatched-paren): Use innermost
4301         rather than outermost paren (bug#21526).
4303 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
4305         Improve git diff hunk headers for .el, .texi
4307         Problem reported by Alan Mackenzie in:
4308         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00826.html
4309         * .gitattributes (*.el, *.texi): New patterns.
4310         * autogen.sh: Configure diff.elisp.xfuncname and
4311         diff.texinfo.xfuncname if using Git.
4313 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
4315         Don't rely on defaults in decoding UTF-8 encoded Lisp files
4317         * lisp/replace.el:
4318         * lisp/textmodes/rst.el:
4319         * lisp/whitespace.el: Add an explicit UTF-8 encoding tag.
4321 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
4323         Clarify or replace a few \u escapes
4325         * doc/lispref/nonascii.texi (Character Properties)
4326         More-detailed commentary for \u escapes.
4327         * lisp/progmodes/python.el (python--prettify-symbols-alist):
4328         * lisp/replace.el (query-replace-from-to-separator):
4329         * lisp/textmodes/rst.el (rst-bullets, rst-re-alist-def)
4330         (rst-mode-syntax-table):
4331         * lisp/whitespace.el (whitespace-display-mappings):
4332         Prefer actual character to \u escape when this makes the code
4333         easier to follow in the usual case where Unicode chars can be
4334         displayed.
4336 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
4338         Pacify GCC -Wmaybe-uninitialized in xdisp.c
4340         * src/xdisp.c (face_before_or_after_it_pos): Use do-while rather
4341         than while loop to avoid GCC -Wmaybe-uninitialized diagnostic with
4342         charpos.  The loop should always execute at least once anyway.
4344 2015-09-21  Tassilo Horn  <tsdh@gnu.org>
4346         Signal error on invalid regexp
4348         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
4349         Signal an error when the user tries searching with a regexp
4350         matching the empty string.
4352 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
4354         Another fix of file-notify-tests for w32notify
4356         * test/automated/file-notify-tests.el (file-notify-test02-events):
4357         Further adaptation for w32notify: reduce the number of expected
4358         'changed' events.  (Bug#21435)
4360 2015-09-21  Michael Albinus  <michael.albinus@gmx.de>
4362         Adapt tests and manual for w32notify
4364         * doc/lispref/os.texi (File Notifications): w32notify does not
4365         send `attribute-changed' events.
4367         * test/automated/file-notify-tests.el (file-notify--test-with-events):
4368         Simplify parameters.  Adapt all callees.
4369         (file-notify-test02-events): w32notify does not send
4370         `attribute-changed' events.
4371         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
4372         Do not skip in case of w32notify.  Simply ignore this part of the test.
4374 2015-09-21  Dima Kogan  <dima@secretsauce.net>
4376         Fix setting breakpoints when remote-debugging
4378         * lisp/progmodes/gud.el (gud-format-command): Send localized file
4379         names to the debugger running on the remote.  (Bug#13304)
4381 2015-09-21  Nicolas Petton  <nicolas@petton.fr>
4383         Better docstring and parameter name for seq-find
4385         * lisp/emacs-lisp/seq.el (seq-find): Improve the docstring and rename
4386         the parameter `sentinel' to `default'.
4388         * doc/lispref/sequences.texi (Sequence Functions): Update the
4389           documentation for `seq-find' accordingly.
4391 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
4393         Avoid infinite recursion while displaying box face
4395         * src/xdisp.c (face_before_or_after_it_pos): Fix calculation of
4396         the previous string/buffer character position under bidi
4397         iteration.  (Bug#21428)
4399 2015-09-21  Anders Lindgren  <andlind@gmail.com>
4401         Keep upper edge unchanged when changing size of NS frame
4403         * src/nsterm.m (x_set_window_size): Keep upper frame edge unchanged
4404         (Bug#21415).
4406 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
4408         * lisp/progmodes/prolog.el: Improve handling of if/then/else.
4409         (prolog-smie-rules): Accommodate standard if/then/else special
4410         indentation.
4411         (prolog-mode): Add . to electric-indent-chars.
4412         (prolog-electric--if-then-else): Re-indent the line before adding space
4413         after the new char (bug#21526).
4415 2015-09-20  Mark Oteiza  <mvoteiza@udel.edu>
4417         Add prettify symbols to python-mode
4419         * lisp/progmodes/python.el (python-prettify-symbols-alist):
4420         New variable.
4421         (python-mode): Use it
4423 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
4425         * lisp/emacs-lisp/syntax.el (syntax-begin-function): Make obsolete.
4427 2015-09-20  Jostein Kjønigsen  <jostein@secure.kjonigsen.net>  (tiny change)
4429         (compilation-error-regexp-alist-alist): Tone down guile-file
4431         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
4432         Make guile-file a bit less enthusiastic (bug#21496).
4434 2015-09-20  Drew Csillag  <drew@thecsillags.com>
4436         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords):
4437         Fix m4_* highlighting.
4439         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords): Fix recognition
4440         of commands when they have a "m4_" prefix.
4442 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
4444         '.' -> `.' in doc string
4446         * lisp/emacs-lisp/timer.el (run-at-time): In doc string, quote
4447         individual chars with grave quotes instead of straight quotes, as
4448         this works better when they are translated to curved quotes.
4450 2015-09-20  Michael Albinus  <michael.albinus@gmx.de>
4452         Improve file notifications, especially for Tramp
4454         * doc/lispref/files.texi (Magic File Names):
4455         Mention `file-notify-valid-p'.
4457         * doc/lispref/os.texi (File Notifications):
4458         Describe `file-notify-valid-p'.
4460         * etc/NEWS: Add `file-notify-valid-p'.
4462         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch):
4463         Improve implementation.
4464         (tramp-gvfs-monitor-file-process-filter): Rename from
4465         `tramp-gvfs-file-gvfs-monitor-file-process-filter'.  Delete
4466         process if appropriate.
4468         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
4469         Improve implementation.
4470         (tramp-sh-gvfs-monitor-dir-process-filter): Rename from
4471         `tramp-sh-file-gvfs-monitor-dir-process-filter'.  Delete process
4472         if appropriate.
4473         (tramp-sh-inotifywait-process-filter): Rename from
4474         `tramp-sh-file-inotifywait-process-filter'.  Delete process if
4475         appropriate.
4477         * lisp/net/tramp.el (tramp-handle-file-notify-rm-watch):
4478         Use `delete-process'.
4479         (tramp-handle-file-notify-valid-p): Check also, that file or
4480         directory to be watched still exists.
4482         * test/automated/file-notify-tests.el (file-notify--test-timeout):
4483         New defun.  Use it at all places a timeout is needed.
4484         (file-notify--test-cleanup): Delete directories recursively.
4485         Cleanup also Tramp connections.
4486         (file-notify-test02-events): Add tests for `attribute-change'.
4487         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
4488         Add tests for `file-notify-rm-watch'.
4490 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
4492         Use %s to format strings instead of splicing them
4494         If FOO might contain quotes that are part of a file or variable
4495         name, the quotes should not be translated when showing FOO’s name
4496         in a diagnostic.  So, for example, (message (concat (FOO ": bar")))
4497         is not quite right, as it would translate FOO’s quotes.
4498         Change it to (message "%s: bar" FOO) instead.
4499         * lisp/allout.el (allout-process-exposed):
4500         * lisp/calc/calc-ext.el (calc-do-prefix-help):
4501         * lisp/calc/calc-store.el (calc-store-into):
4502         * lisp/calendar/todo-mode.el (todo-category-completions):
4503         * lisp/cedet/semantic/complete.el (semantic-completion-message):
4504         * lisp/org/ob-latex.el (convert-pdf):
4505         * lisp/org/org-crypt.el (org-crypt-check-auto-save):
4506         * lisp/org/ox-latex.el (org-latex-compile):
4507         * lisp/org/ox-man.el (org-man-compile):
4508         * lisp/org/ox-odt.el (org-odt--export-wrap):
4509         * lisp/org/ox-texinfo.el (org-texinfo-compile):
4510         * lisp/progmodes/ruby-mode.el (ruby-in-ppss-context-p):
4511         * lisp/progmodes/verilog-mode.el (verilog-batch-execute-func)
4512         (verilog-signals-combine-bus, verilog-read-defines)
4513         (verilog-getopt-file, verilog-expand-dirnames)
4514         (verilog-modi-lookup, verilog-modi-modport-lookup-one):
4515         * lisp/term/ns-win.el (ns-spi-service-call):
4516         Use %s to avoid translating quotes of file names etc. in diagnostics.
4518 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
4520         * lisp/progmodes/js.el (js--syntax-begin-function): Remove.
4521         (js-mode): Don't set syntax-begin-function.
4523 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
4525         * lisp/font-lock.el (font-lock-compile-keywords): Don't assume
4526         syntax-begin-function is a symbol.
4528 2015-09-20  Eli Zaretskii  <eliz@gnu.org>
4530         Improve documentation of 'run-at-time'
4531         * lisp/emacs-lisp/timer.el (run-at-time): Improve the doc string.
4532         In particular, don't refer to 'diary-entry-time', because it is
4533         unavailable until diary-lib is loaded.  Also, refer to
4534         'timer-duration-words', not 'timer-duration', as the latter's doc
4535         string says nothing about the accepted strings.
4537 2015-09-19  Jay Belanger  <jay.p.belanger@gmail.com>
4539         * lisp/calc/calc-ext.el (calc-do-prefix-help): Tidy up error message.
4541 2015-09-19  Ken Manheimer  <ken.manheimer@gmail.com>
4543         Repair pdbtrack remote file tracking
4544         * lisp/progmodes/python.el (python-pdbtrack-set-tracked-buffer):
4545         Rectify pdbtrack so it follows transitions from one remote source
4546         file to the next.
4548 2015-09-19  Artur Malabarba  <bruce.connor.am@gmail.com>
4550         * lisp/emacs-lisp/timer.el (run-at-time): Docstring formatting.
4552 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
4554         Adapt vc-src to the old-new vc-checkin API
4555         * lisp/vc/vc-src.el (vc-src-checkin): Accept and ignore an
4556         additional optional parameter.
4558 2015-09-19  Simen Heggestøyl  <simenheg@gmail.com>
4560         Add overflow module to CSS property list
4561         * lisp/textmodes/css-mode.el (css-property-ids): Add properties
4562         from CSS Overflow Module Level 3.
4564 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
4566         Fix documentation of "C-u C-x v v"
4567         * doc/emacs/maintaining.texi (Advanced C-x v v): Make the
4568         documentation of "C-u C-x v v" match what the code does.
4570         Resurrect the ability to specify a revision in vc-next-action
4571         * lisp/vc/vc-bzr.el (vc-bzr-checkin):
4572         * lisp/vc/vc-dav.el (vc-dav-checkin):
4573         * lisp/vc/vc-git.el (vc-git-checkin):
4574         * lisp/vc/vc-hg.el (vc-hg-checkin):
4575         * lisp/vc/vc-mtn.el (vc-mtn-checkin): Accept and silently ignore
4576         an additional optional argument, the revision to checkin.
4577         * lisp/vc/vc-sccs.el (vc-sccs-checkin):
4578         * lisp/vc/vc-cvs.el (vc-cvs-checkin):
4579         * lisp/vc/vc-rcs.el (vc-rcs-checkin): Allow to optionally specify
4580         a revision to checkin.
4581         * lisp/vc/vc.el (vc-next-action): Allow to optionally specify the
4582         revision when checking in files.
4583         See http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00688.html
4584         for the details.
4586 2015-09-18  Wilson Snyder  <wsnyder@wsnyder.org>
4588         * lisp/progmodes/verilog-mode.el (verilog-forward-sexp-function)
4589         (verilog-decls-princ, verilog-modport-princ)
4590         (verilog-modi-modport-lookup-one): Fix checkdoc warnings.
4592 2015-09-17  Jay Belanger  <jay.p.belanger@gmail.com>
4594         Fix the routine for help on Calc's prefixes
4595         * lisp/calc/calc-ext.el (calc-prefix-help-retry): New variable.
4596         (calc-do-prefix-help): Use `read-char' to determine the next Calc
4597         command.
4599 2015-09-17  Stefan Monnier  <monnier@iro.umontreal.ca>
4601         * lisp/font-lock.el (font-lock-beginning-of-syntax-function): Remove.
4602         (font-lock-fontify-block): Don't let-bind it.
4603         (font-lock-compile-keywords): Don't use it.
4604         (font-lock-set-defaults): Don't set it.  Allow the variable alist to
4605         start one slot earlier, instead.
4606         * lisp/emacs-lisp/syntax.el (font-lock-beginning-of-syntax-function):
4607         Don't declare.
4608         (syntax-ppss): Don't use it either.
4609         * lisp/font-core.el (font-lock-defaults): Remove SYNTAX-BEGIN
4610         from docstring.
4611         * doc/emacs/display.texi (Font Lock): Don't mention
4612         font-lock-beginning-of-syntax-function.
4613         * doc/lispref/modes.texi (Font Lock Basics): Update description of
4614         font-lock-defaults.
4615         (Syntactic Font Lock): Remove font-lock-beginning-of-syntax-function.
4616         * lisp/loadhist.el (unload-feature-special-hooks):
4617         Remove font-lock-beginning-of-syntax-function.
4618         * lisp/obsolete/lazy-lock.el (lazy-lock-fontify-region):
4619         * lisp/emacs-lisp/lisp.el (beginning-of-defun-raw): Don't let-bind
4620         font-lock-beginning-of-syntax-function.
4622 2015-09-17  Paul Eggert  <eggert@cs.ucla.edu>
4624         Backslash cleanup in Elisp source files
4625         This patch should not change behavior.  It typically omits backslashes
4626         where they are redundant (e.g., in the string literal "^\$").
4627         In a few places, insert backslashes where they make regular
4628         expressions clearer: e.g., replace "^\*" (equivalent to "^*") with
4629         "^\\*", which has the same effect as a regular expression.
4630         Also, use ‘\ %’ instead of ‘\%’ when avoiding confusion with SCCS IDs,
4631         and similarly use ‘\ $’ instead of ‘\$’ when avoiding confusion with
4632         RCS IDs, as that makes it clearer that the backslash is intended.
4634         Some more minor backslash fixes
4635         * test/automated/compile-tests.el (compile-tests--test-regexps-data):
4636         * test/automated/info-xref.el (info-xref-test-write-file):
4637         Double backslashes in strings.
4639         Fix several backslash typos in Elisp strings
4640         * lisp/calendar/todo-mode.el (todo-files, todo-rename-file)
4641         (todo-find-filtered-items-file, todo-reset-nondiary-marker)
4642         (todo-reset-done-string, todo-reset-comment-string)
4643         (todo-reset-highlight-item):
4644         * lisp/erc/erc-networks.el (erc-networks-alist):
4645         * lisp/gnus/gnus-art.el (gnus-button-handle-library):
4646         * lisp/gnus/gnus-group.el (gnus-read-ephemeral-gmane-group-url):
4647         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
4648         (nntp-telnet-shell-prompt):
4649         * lisp/gnus/spam-report.el (spam-report-gmane-regex):
4650         * lisp/image-dired.el (image-dired-rotate-original):
4651         (image-dired-get-exif-file-name):
4652         * lisp/international/latin1-disp.el (latin1-display-ucs-per-lynx):
4653         * lisp/mail/undigest.el (rmail-digest-parse-rfc1153strict):
4654         * lisp/mh-e/mh-letter.el (mh-file-is-vcard-p):
4655         * lisp/mh-e/mh-mime.el (mh-file-mime-type-substitutions):
4656         * lisp/net/shr-color.el (shr-color->hexadecimal):
4657         * lisp/org/org-bibtex.el (org-bibtex-fields):
4658         * lisp/org/org-docview.el (org-docview-export):
4659         * lisp/org/org-entities.el (org-entities):
4660         * lisp/org/ox-icalendar.el (org-icalendar-cleanup-string):
4661         * lisp/progmodes/cperl-mode.el (cperl-indent-exp):
4662         * lisp/progmodes/ebnf2ps.el (ebnf-file-suffix-regexp)
4663         (ebnf-style-database):
4664         * lisp/progmodes/idlw-help.el (idlwave-do-context-help1):
4665         * lisp/progmodes/ruby-mode.el (ruby-imenu-create-index-in-block):
4666         * lisp/progmodes/sql.el (sql-product-alist):
4667         * lisp/progmodes/verilog-mode.el (verilog-error-regexp-emacs-alist)
4668         (verilog-error-font-lock-keywords)
4669         (verilog-assignment-operator-re):
4670         * lisp/progmodes/vhdl-mode.el (vhdl-compiler-alist):
4671         * lisp/textmodes/reftex-parse.el (reftex-parse-from-file):
4672         * lisp/vc/add-log.el (change-log-version-number-regexp-list):
4673         Fix typo by replacing ‘\’ with ‘\\’ in a string literal.
4674         For example, to get the regular expression ‘\.’ use the string
4675         literal "\\.", not "\." (which is equivalent to ".").
4676         * lisp/emulation/viper-util.el (viper-glob-unix-files):
4677         Remove stray ‘\j’ from string.
4678         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
4679         (nntp-telnet-shell-prompt):
4680         Treat > like $ when matching a shell prompt.
4681         * lisp/progmodes/make-mode.el (makefile-browse):
4682         Properly quote a diagnostic.
4684         Fix minor quoting problems in diagnostics
4685         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
4686         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
4687         Follow text-quoting-style in diagnostic, and quote a file name.
4689 2015-09-17  Eli Zaretskii  <eliz@gnu.org>
4691         * doc/lispref/frames.texi (Cursor Parameters):
4692         Document 'x-stretch-cursor'.
4694 2015-09-16  Paul Eggert  <eggert@cs.ucla.edu>
4696         Omit unnecessary \ before paren in C docstrings
4697         Although \( is needed in docstrings in Elisp code, it is not needed in
4698         docstrings in C code, since C function definitiions do not start with
4699         a parenthesis.  The backslashes made the docstrings a bit harder to
4700         read and to format in columns.  Also, some C docstrings had ( in
4701         column 1 and this did not appear to be causing any problems.  So,
4702         simplify C docstrings by replacing \( with ( and \) with ).
4704         A few more minor quoting fixes in a script and a text file
4706         Minor quoting fixes in scripts and doc
4707         Prefer straight quotes in random script files, as they are not
4708         converted.  Prefer grave quotes in a couple of places in the manual
4709         that were missed earlier, as these quotes are converted.
4711         Minor backslash fixes in manuals and scripts
4712         * Makefile.in (install-arch-indep):
4713         * admin/charsets/compact.awk:
4714         * admin/charsets/gb180302.awk (gb_to_index):
4715         * admin/charsets/gb180304.awk (gb_to_index):
4716         Avoid undefined behavior in Awk regular expression backslashes.
4717         * doc/misc/efaq.texi (Matching parentheses):
4718         Omit unnecessary backslashes.
4719         * doc/misc/gnus-faq.texi (FAQ 5-8):
4720         Avoid undefined behavior in suggested sed backslash usage.
4722         Add -Wswitch to --enable-gcc-warnings
4723         Make --enable-gcc-warnings a bit pickier, by also using -Wswitch.
4724         * configure.ac (WERROR_CFLAGS): Don’t add -Wno-switch.
4725         * lib-src/etags.c (main, consider_token, C_entries):
4726         * src/coding.c (encode_invocation_designation):
4727         * src/data.c (Ftype_of):
4728         * src/eval.c (Fdefvaralias, default_toplevel_binding)
4729         (Fbacktrace__locals, mark_specpdl):
4730         * src/lisp.h (record_xmalloc):
4731         * src/syntax.c (scan_lists, scan_sexps_forward):
4732         * src/window.c (window_relative_x_coord):
4733         * src/xdisp.c (push_it, pop_it):
4734         * src/xterm.c (xg_scroll_callback, x_check_fullscreen):
4735         Error out or do nothing (as appropriate) if a switch statement
4736         with an enum value does not cover all of the enum.
4737         * src/dispextern.h (struct iterator_stack_entry.u.comp):
4738         Remove unused member discovered by using -Wswitch.
4739         * src/lisp.h (record_xmalloc): Add a ‘+ 0’ to pacify -Wswitch.
4740         * src/vm-limit.c (check_memory_limits):
4741         Simplify warning-diagnostic computation by using a table.
4743         etags ‘fatal’ function is now printf-like
4744         * lib-src/etags.c (fatal): Now printf-like.  All callers changed.
4745         Also, now static; not clear why it needed to be extern.
4746         (verror): New function, with most of the old contents of ‘error’.
4747         (fatal, error): Use it.
4749 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
4751         More adaptations in file-notify-tests.el
4752         * test/automated/file-notify-tests.el
4753         (file-notify-test05-dir-validity): Skip for w32notify in
4754         batch-mode.  (Bug#21432)
4756 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
4758         Adapt test in file-notify-tests.el
4759         * test/automated/file-notify-tests.el
4760         (file-notify-test04-file-validity): Skip for w32notify in
4761         batch-mode.  Add test lost last commit.
4763 2015-09-16  Dima Kogan  <dima@secretsauce.net>
4765         winner no longer holds on to dead frames
4766         * lisp/winner.el (winner-change-fun): Cull dead frames.
4767         This prevents a potentially massive memory leak.  See:
4768         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00619.html
4770 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
4772         Use common report_file_notify_error function
4773         * src/fileio.c (report_file_notify_error): New function.
4774         * src/inotify.c (report_inotify_error): Remove function.
4775         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
4776         (Finotify_rm_watch): Use report_file_notify_error.
4777         * src/lisp.h (report_file_notify_error): Declare external function.
4778         * src/w32notify.c (report_w32notify_error): Remove function.
4779         (Fw32notify_add_watch, Fw32notify_rm_watch):
4780         Use report_file_notify_error.
4782 2015-09-16  Jay Belanger  <jay.p.belanger@gmail.com>
4784         Fix documentation.
4785         * doc/misc/calc.texi (Single-Variable Statistics): Fix the wording of
4786         the documentation of the root mean square.
4788 2015-09-16  Martin Rudalics  <rudalics@gmx.at>
4790         Remove tool_bar_redisplayed_once and associated code.
4791         * src/frame.h (tool_bar_redisplayed_once): Remove slot.
4792         * src/frame.c (make_frame, x_set_font): Remove initialization of
4793         f->tool_bar_redisplayed_once.
4794         * src/w32fns.c (x_change_tool_bar_height):
4795         * src/xfns.c (x_change_tool_bar_height): Don't check for
4796         f->tool_bar_redisplayed_once.
4797         * src/xdisp.c (redisplay_internal): Remove handling of
4798         f->tool_bar_redisplayed_once.
4800 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
4802         Restore some of the quoting in the manuals
4803         * doc/lispref/windows.texi (Coordinates and Windows)
4804         (Coordinates and Windows):
4805         * doc/lispref/variables.texi (Lexical Binding)
4806         (File Local Variables):
4807         * doc/lispref/text.texi (Format Properties):
4808         * doc/lispref/symbols.texi (Symbol Components):
4809         * doc/lispref/strings.texi (Creating Strings):
4810         * doc/lispref/sequences.texi (Sequence Functions):
4811         * doc/lispref/searching.texi (Regexp Special, Regexp Search)
4812         (Search and Replace):
4813         * doc/lispref/processes.texi (Bindat Spec):
4814         * doc/lispref/os.texi (Idle Timers):
4815         * doc/lispref/objects.texi (Basic Char Syntax):
4816         * doc/lispref/numbers.texi (Float Basics, Random Numbers):
4817         * doc/lispref/nonascii.texi (Character Properties):
4818         * doc/lispref/modes.texi (Major Mode Conventions, Mode Hooks)
4819         (Mode Line Variables):
4820         * doc/lispref/minibuf.texi (Text from Minibuffer):
4821         * doc/lispref/loading.texi (Autoload):
4822         * doc/lispref/keymaps.texi (Controlling Active Maps):
4823         * doc/lispref/frames.texi (Frame Layout, Size and Position)
4824         (Size Parameters, Implied Frame Resizing):
4825         * doc/lispref/files.texi (Changing Files, Magic File Names):
4826         * doc/lispref/eval.texi (Self-Evaluating Forms):
4827         * doc/lispref/display.texi (Progress, Abstract Display)
4828         (Abstract Display Example, Bidirectional Display):
4829         * doc/lispref/commands.texi (Event Mod):
4830         * doc/emacs/windows.texi (Displaying Buffers):
4831         * doc/emacs/trouble.texi (Bug Criteria, Checklist):
4832         * doc/emacs/text.texi (Enriched Text):
4833         * doc/emacs/programs.texi (MixedCase Words):
4834         * doc/emacs/picture-xtra.texi (Insert in Picture)
4835         (Tabs in Picture):
4836         * doc/emacs/misc.texi (Emacs Server, Printing):
4837         * doc/emacs/mini.texi (Minibuffer History):
4838         * doc/emacs/maintaining.texi (Old Revisions, VC Change Log)
4839         (Pulling / Pushing):
4840         * doc/emacs/killing.texi (Yanking, Cut and Paste, Clipboard):
4841         * doc/emacs/help.texi (Help, Help Echo):
4842         * doc/emacs/glossary.texi (Glossary):
4843         * doc/emacs/frames.texi (Mouse Commands, Creating Frames)
4844         (Frame Commands):
4845         * doc/emacs/files.texi (Reverting, Saving, Directories):
4846         * doc/emacs/entering.texi (Exiting):
4847         * doc/emacs/emacs.texi (Top):
4848         * doc/emacs/cmdargs.texi (Window Size X, Icons X):
4849         * doc/emacs/anti.texi (Antinews): Restore quoting of text where
4850         appropriate or replace quoting with @dfn.
4851         * doc/misc/ediff.texi (Window and Frame Configuration):
4852         * doc/lispref/processes.texi (Network Feature Testing):
4853         * doc/lispref/display.texi (Display Margins): Quote the phrase
4854         after "a.k.a." where appropriate.
4856 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
4858         Clarify reftex-extra-bindings docs
4859         * lisp/textmodes/reftex-vars.el (reftex-extra-bindings):
4860         * doc/misc/reftex.texi (Key Bindings): Document that the variable
4861         only has an effect at load-time.
4863 2015-09-16  Daniel McClanahan  <danieldmcclanahan@gmail.com>  (tiny change)
4865         * lisp/emacs-lisp/lisp-mode.el (lisp--el-match-keyword): Fix
4866         search argument.  (Bug#21492) (Bug#21493)
4868 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
4870         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
4871         Add pretty symbols for \qquad and \varrho.
4873 2015-09-15  Jay Belanger  <jay.p.belanger@gmail.com>
4875         Add new functions for the root mean square of a (Calc) vector
4876         * lisp/calc/calc-stats.el (calcFunc-rms, calc-vector-rms):
4877         New functions.
4878         * lisp/calc/calc-ext.el (calc-init-extensions): Add keybinding for
4879         `calc-vector-rms', add autoloads for `calc-vector-rms' and
4880         `calcFunc-rms'.
4881         * lisp/calc/calc-map.el (calc-u-oper-keys): Add entry for
4882         `calcFunc-rms'.
4883         * lisp/calc/calc-menu.el (calc-vectors-menu): Add entry for
4884         `calc-vector-rms'.
4885         * doc/misc/calc.texi (Single-Variable Statistics): Document the rms
4886         command.
4888 2015-09-15  Stephen Leake  <stephen_leake@stephe-leake.org>
4890         Add monotone EDE generic project
4891         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
4892         Add monotone generic project.
4894         Revert premature commit
4895         * doc/lispref/files.texi: Revert premature commit of change to
4896         file-name-all-completions.
4898         Fix a bug in elisp--xref-find-definitions related to cl-generic defaults
4899         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions): Fix bug
4900         with cl-generic defaults.
4901         (elisp--xref-find-references): Add doc string.
4902         * test/automated/elisp-mode-tests.el (xref-elisp-generic-*): Improve
4903         tests to find bug.
4905         Fix bugs in eieio-oref-default related to class symbols
4906         * lisp/emacs-lisp/eieio-core.el (class-p): Handle symbol properly.
4907         (eieio-oref-default): Handle class properly.
4909 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
4911         Quote “fullboth” when defining it
4912         * doc/lispref/frames.texi (Size Parameters): Use @dfn for “fullboth”
4913         and rewrite the containing paragraph, which was awkward.  (Bug#21472).
4915 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
4917         Minor doc fix in emacs/ack.texi
4918         * doc/emacs/ack.texi (Acknowledgments): Fix an xref missing the
4919         first argument.
4921 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
4923         Adapt tests in auto-revert-tests.el
4924         * test/automated/auto-revert-tests.el (auto-revert--timeout):
4925         Make it a defconst.
4926         (auto-revert--wait-for-revert): New defun.
4927         (auto-revert-test00-auto-revert-mode)
4928         (auto-revert-test01-auto-revert-tail-mode)
4929         (auto-revert-test02-auto-revert-mode-dired): Use it.
4931 2015-09-15  Stefan Monnier  <monnier@iro.umontreal.ca>
4933         * lisp/emacs-lisp/lisp-mode.el (lisp-mode-symbol-regexp): New const.
4934         Use it everywhere "\\(\\sw\\|\\s_\\|\\\\.\\)+" was used.
4935         (cl-lib-fdefs): Add defgeneric.
4936         (cl-kw): Add all elements of eieio-kw and cl-lib-kw.
4937         (eieio-kw, cl-lib-kw, el-kw): Remove.
4939 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
4941         Quote less in manuals
4942         The manuals often used quotes ``...'' when it is better to use @dfn or
4943         @code or capitalized words or no quoting at all.  For example, there is
4944         no need for the `` and '' in “if a variable has one effect for
4945         @code{nil} values and another effect for ``non-@code{nil}'' values”.
4946         Reword the Emacs, Lisp intro, and Lisp reference manuals to eliminate
4947         unnecessary quoting like this, and to use @dfn etc. instead when called
4948         for (Bug#21472).
4950 2015-09-15  Mark Oteiza  <mvoteiza@udel.edu>
4952         * lisp/custom.el (load-theme): Only compute hash when needed.
4954 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
4956         Pacify --enable-gcc-warnings
4957         * src/inotify.c (report_inotify_error): Declare it _Noreturn.
4959 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
4961         Improve error reports in inotify.c
4962         * src/inotify.c (report_inotify_error): New function.  Clone of
4963         report_w32notify_error.
4964         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
4965         (Finotify_rm_watch): Use it.
4967 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
4969         Fix the file-notify tests for watch validation on w32
4970         * test/automated/file-notify-tests.el
4971         (file-notify-test04-file-validity): Move the directory deletion
4972         out of the file-notify--test-with-events macro.
4973         (file-notify-test04-file-validity)
4974         (file-notify-test05-dir-validity): Enlarge the timeout of
4975         read-event to 0.5, as 0.1 is borderline on w32.  (Bug#21432)
4977 2015-09-15  Tassilo Horn  <tsdh@gnu.org>
4979         Use OPEN BOX instead of space for \quad.
4980         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist): Use OPEN BOX
4981         character for \quad instead of a space.
4983 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
4985         Add missing *.pbm images
4986         * etc/images/connect.pbm: New file.
4987         * etc/images/custom/down-pushed.pbm: New file.
4988         * etc/images/custom/down.pbm: New file.
4989         * etc/images/custom/right-pushed.pbm: New file.
4990         * etc/images/custom/right.pbm: New file.
4991         * etc/images/describe.pbm: New file.
4992         * etc/images/disconnect.pbm: New file.
4993         * etc/images/ezimage/bits.pbm: New file.
4994         * etc/images/ezimage/bitsbang.pbm: New file.
4995         * etc/images/ezimage/box-minus.pbm: New file.
4996         * etc/images/ezimage/box-plus.pbm: New file.
4997         * etc/images/ezimage/box.pbm: New file.
4998         * etc/images/ezimage/checkmark.pbm: New file.
4999         * etc/images/ezimage/dir-minus.pbm: New file.
5000         * etc/images/ezimage/dir-plus.pbm: New file.
5001         * etc/images/ezimage/dir.pbm: New file.
5002         * etc/images/ezimage/doc-minus.pbm: New file.
5003         * etc/images/ezimage/doc-plus.pbm: New file.
5004         * etc/images/ezimage/doc.pbm: New file.
5005         * etc/images/ezimage/info.pbm: New file.
5006         * etc/images/ezimage/key.pbm: New file.
5007         * etc/images/ezimage/label.pbm: New file.
5008         * etc/images/ezimage/lock.pbm: New file.
5009         * etc/images/ezimage/mail.pbm: New file.
5010         * etc/images/ezimage/page-minus.pbm: New file.
5011         * etc/images/ezimage/page-plus.pbm: New file.
5012         * etc/images/ezimage/page.pbm: New file.
5013         * etc/images/ezimage/tag-gt.pbm: New file.
5014         * etc/images/ezimage/tag-minus.pbm: New file.
5015         * etc/images/ezimage/tag-plus.pbm: New file.
5016         * etc/images/ezimage/tag-type.pbm: New file.
5017         * etc/images/ezimage/tag-v.pbm: New file.
5018         * etc/images/ezimage/tag.pbm: New file.
5019         * etc/images/ezimage/unlock.pbm: New file.
5020         * etc/images/gnus/important.pbm: New file.
5021         * etc/images/gnus/mail-send.pbm: New file.
5022         * etc/images/gnus/receipt.pbm: New file.
5023         * etc/images/gnus/toggle-subscription.pbm: New file.
5024         * etc/images/gnus/unimportant.pbm: New file.
5025         * etc/images/gud/all.pbm: New file.
5026         * etc/images/gud/rcont.pbm: New file.
5027         * etc/images/gud/recstart.pbm: New file.
5028         * etc/images/gud/recstop.pbm: New file.
5029         * etc/images/gud/rfinish.pbm: New file.
5030         * etc/images/gud/rnext.pbm: New file.
5031         * etc/images/gud/rnexti.pbm: New file.
5032         * etc/images/gud/rstep.pbm: New file.
5033         * etc/images/gud/rstepi.pbm: New file.
5034         * etc/images/gud/thread.pbm: New file.
5035         * etc/images/lock-broken.pbm: New file.
5036         * etc/images/lock-ok.pbm: New file.
5037         * etc/images/lock.pbm: New file.
5038         * etc/images/mail/copy.pbm: New file.
5039         * etc/images/mail/forward.pbm: New file.
5040         * etc/images/mail/not-spam.pbm: New file.
5041         * etc/images/mail/outbox.pbm: New file.
5042         * etc/images/mail/preview.pbm: New file.
5043         * etc/images/mail/save-draft.pbm: New file.
5044         * etc/images/mh-logo.pbm: New file.
5045         * etc/images/mpc/add.pbm: New file.
5046         * etc/images/mpc/ffwd.pbm: New file.
5047         * etc/images/mpc/next.pbm: New file.
5048         * etc/images/mpc/pause.pbm: New file.
5049         * etc/images/mpc/play.pbm: New file.
5050         * etc/images/mpc/prev.pbm: New file.
5051         * etc/images/mpc/rewind.pbm: New file.
5052         * etc/images/mpc/stop.pbm: New file.
5053         * etc/images/redo.pbm: New file.
5054         * etc/images/smilies/braindamaged.pbm: New file.
5055         * etc/images/smilies/cry.pbm: New file.
5056         * etc/images/smilies/dead.pbm: New file.
5057         * etc/images/smilies/evil.pbm: New file.
5058         * etc/images/smilies/forced.pbm: New file.
5059         * etc/images/smilies/grin.pbm: New file.
5060         * etc/images/smilies/indifferent.pbm: New file.
5061         * etc/images/sort-ascending.pbm: New file.
5062         * etc/images/sort-column-ascending.pbm: New file.
5063         * etc/images/sort-criteria.pbm: New file.
5064         * etc/images/sort-descending.pbm: New file.
5065         * etc/images/sort-row-ascending.pbm: New file.
5066         * etc/images/unchecked.pbm: New file.
5067         * etc/images/zoom-in.pbm: New file.
5068         * etc/images/README: Update instructions for PBM files.
5070         Add separator.pbm tool-bar image
5071         * etc/images/separator.pbm: New file.  Having it avoids the side
5072         effect of changing the tool-bar height when the default font's size
5073         changes and XPM image support is not available, due to the SPC
5074         characters that are left in the Lisp string used to display the tool
5075         bar, because there are no images to display instead of those SPC
5076         characters.
5078         Make show-paren-match face visible on mono-color displays
5079         * lisp/faces.el (show-paren-match): Use the underline face for
5080         mono-color displays.  (Bug#21481)
5082 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
5084         Don’t double-encode non-ASCII mail clipboard
5085         * lisp/mail/mailclient.el (mailclient-send-it):
5086         Also fix the case when mailclient-place-body-on-clipboard-flag
5087         is non-nil.  Problem reported by Eli Zaretskii (Bug#21471#37).
5089 2015-09-14  Michael Albinus  <michael.albinus@gmx.de>
5091         Adapt file-notify-tests.el test cases
5092         * lisp/filenotify.el (file-notify-rm-watch): Ignore `file-notify-error'.
5093         * src/inotify.c (Finotify_valid_p): Adapt docstring.
5094         * test/automated/file-notify-tests.el
5095         (file-notify-test03-autorevert)
5096         (file-notify-test04-file-validity)
5097         (file-notify-test04-file-validity-remote)
5098         (file-notify-test05-dir-validity)
5099         (file-notify-test05-dir-validity-remote): Adapt docstring.
5100         (file-notify-test04-file-validity): Let events arrive before
5101         calling final `file-notify-valid-p'.  Do not ignore errors.
5102         (file-notify-test05-dir-validity): Do not manipulate
5103         `temporary-file-directory', it isn't necessary.  Let events arrive
5104         before calling final `file-notify-valid-p'.  Do not ignore errors.
5106 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
5108         Don’t double-encode non-ASCII for mail client
5109         * lisp/mail/mailclient.el (mailclient-encode-string-as-url):
5110         Use RFC 6068’s list of unreserved characters.
5111         (mailclient-send-it): When encoding the body as a URL,
5112         first decode it as per Content-Type: and Content-Transfer-Encoding:,
5113         as URLs must use percent-encoded UTF-8 (Bug#21471).
5114         * doc/misc/url.texi (mailto): Update RFC number.
5116 2015-09-14  Stefan Monnier  <monnier@iro.umontreal.ca>
5118         * lisp/progmodes/cc-langs.el (c-make-init-lang-vars-fun): Use dolist.
5120 2015-09-14  Alan Mackenzie  <acm@muc.de>
5122         Replace `cadar' with `cadr/car', since `cadar' is problematic on Emacs
5123         (c-make-init-lang-vars-fun): Replace two occurrences of `cadar' with
5124         `cadr/car'.
5126 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
5128         Clarify documentation of char-table extra slots
5129         * doc/lispref/sequences.texi (Char-Tables): Clarify that extra
5130         slot numbers are zero-based.  (Bug#21467)
5132 2015-09-14  Alan Mackenzie  <acm@muc.de>
5134         Elisp mode: Make font-lock and imenu handle escaped characters in symbols
5135         Fixes bug#21449.
5136         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression)
5137         (lisp--el-match-keyword, lisp-el-font-lock-keywords-1)
5138         (lisp-cl-font-lock-keywords-1, lisp-el-font-lock-keywords-2)
5139         (lisp-cl-font-lock-keywords-2, lisp-string-in-doc-position-p):
5140         Insert "\\|\\\\." into regexps which match symbols.
5142 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
5144         Improve the doc string of w32notify-valid-p
5145         * src/w32notify.c (Fw32notify_valid_p): Mention in the doc string
5146         that removing a watch makes its object invalid.
5148 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
5150         Fix tests for file-notify-valid-p
5151         * test/automated/file-notify-tests.el (file-notify--test-cleanup):
5152         Use delete-directory to delete file-notify--test-tmpfile if it is
5153         a directory.  Likewise for file-notify--test-tmpfile1.
5154         (file-notify-test04-file-validity)
5155         (file-notify-test05-dir-validity): Delete the parent directory of
5156         the test.  Ignore errors when cleaning up after the test.
5158 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
5160         Report file-notify-error in w32notify.c
5161         * src/w32notify.c (report_w32notify_error): New function.
5162         (Fw32notify_add_watch, Fw32notify_rm_watch): Use it to report
5163         errors, instead of calling report_file_error.  (Bug#21432)
5165         Implement w32notify-valid-p
5166         * src/w32notify.c (Fw32notify_valid_p): New function.  (Bug#21432)
5167         * lisp/filenotify.el (w32notify-valid-p): No longer an alias for
5168         'identity'.
5170 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
5172         Test file-notify-valid-p
5173         * test/automated/file-notify-tests.el
5174         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
5175         New tests.
5177 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
5179         Fix markup in ELisp manual
5180         * doc/lispref/frames.texi (Font and Color Parameters): Fix markup
5181         of the 'alpha' parameter value.  (Bug#21470)
5183 2015-09-13  Michael Albinus  <michael.albinus@gmx.de>
5185         Introduce `file-notify-valid-p'
5186         * lisp/filenotify.el (file-notify-valid-p): New defun.
5187         (gfile-valid-p, w32notify-valid-p): Make them an alias to `identity'.
5188         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist)
5189         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist)
5190         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist)
5191         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
5192         <file-notify-valid-p>: Add handler.
5193         * lisp/net/tramp.el (tramp-file-name-for-operation):
5194         Add `file-notify-valid-p'.
5195         (tramp-handle-file-notify-valid-p): New defun.
5196         * src/inotify.c (Finotify_valid_p): New defun.
5197         (syms_of_inotify): Declare Sinotify_valid_p.
5199 2015-09-13  Paul Eggert  <eggert@cs.ucla.edu>
5201         Port Unicode char detection to FreeBSD+svgalib
5202         Problem reported by Ashish SHUKLA in:
5203         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00531.html
5204         * configure.ac: Check for struct unipair.unicode instead of for
5205         <linux/kd.h>, since that’s more specific to what the code
5206         actually needs.
5207         * src/terminal.c: Use HAVE_STRUCT_UNIPAIR_UNICODE, not HAVE_LINUX_KD_H.
5209         * src/indent.c (Fvertical_motion): Simplify bugfix (Bug#21468).
5211 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
5213         Fix vertical cursor motion across overlay strings with newlines
5214         * src/indent.c (Fvertical_motion): Don't leave point in the middle
5215         of an overlay string with newlines, as that will position the
5216         cursor after the string at whatever column is there.  (Bug#21468)
5218 2015-09-12  Michael Albinus  <michael.albinus@gmx.de>
5220         Fix tests in file-notify-tests.el
5221         * test/automated/file-notify-tests.el: Remove Tramp declarations.
5222         (file-notify-test00-availability): Print remote command w/o Tramp
5223         internal functions.
5224         (file-notify-test02-events, file-notify-test02-events-remote):
5225         Adapt docstring.
5226         (file-notify-test03-autorevert): Use `format-message' when
5227         inspecting *Messages* buffer.
5229 2015-09-12  Stefan Monnier  <monnier@iro.umontreal.ca>
5231         Bind inhibit-modification-hooks rather than a/b-c-f
5232         * lisp/wid-edit.el (widget-editable-list-insert-before)
5233         (widget-editable-list-delete-at):
5234         * lisp/progmodes/cperl-mode.el (cperl-find-pods-heres)
5235         (cperl-font-lock-unfontify-region-function):
5236         * lisp/progmodes/antlr-mode.el (save-buffer-state-x):
5237         * lisp/obsolete/longlines.el (longlines-mode):
5238         * lisp/obsolete/fast-lock.el (save-buffer-state):
5239         * lisp/mouse.el (mouse-save-then-kill-delete-region):
5240         * lisp/gnus/message.el (message-hide-headers):
5241         * lisp/eshell/esh-mode.el (eshell-send-input, eshell-output-filter):
5242         * lisp/ibuffer.el (ibuffer-update-title-and-summary)
5243         (ibuffer-redisplay-engine): Bind inhibit-modification-hooks to t rather
5244         than after/before-change-functions to nil.
5246 2015-09-11  Stefan Monnier  <monnier@iro.umontreal.ca>
5248         (jit-lock-deferred-fontify): Pay attention to skipped redisplays
5249         * lisp/jit-lock.el (jit-lock-deferred-fontify): Make sure we refresh
5250         the buffers, even if the forced redisplay is interrupted.
5252         * lisp/emacs-lisp/eieio-core.el (class-p): Accept class objects
5254         Merge syntax-propertize--done and parse-sexp-propertize-done
5255         * lisp/emacs-lisp/syntax.el (syntax-propertize--done): Remove.
5256         (syntax-propertize): Set syntax-propertize--done even if
5257         syntax-propertize-function is nil.  Avoid recursive invocations.
5258         (syntax-propertize-chunks): New var.
5259         (internal--syntax-propertize): Use it.  Rename from syntax--jit-propertize.
5260         Simplify.
5261         (parse-sexp-propertize-function): Don't set any more.
5262         * src/syntax.c (SETUP_SYNTAX_TABLE): Call parse_sexp_propertize as needed.
5263         (parse_sexp_propertize): Don't assume charpos is not yet propertized.
5264         Call Qinternal__syntax_propertize instead of
5265         Vparse_sexp_propertize_function.  Truncate e_property if needed.
5266         (update_syntax_table_forward): Streamline.
5267         (syms_of_syntax): Define Qinternal__syntax_propertize.
5268         (syntax_propertize__done): Rename from parse_sexp_propertize_done.
5270 2015-09-11  Paul Eggert  <eggert@cs.ucla.edu>
5272         Prefer straight quoting in some text files
5273         Mostly this just changes ` to ' in static text.  Some exceptions:
5274         * INSTALL.REPO: Use curved quotes, as the diagnostic in question
5275         typically does that now.
5276         * admin/quick-install-emacs (TRY, top level):
5277         Use straight quoting in diagnostics.
5278         * src/README: Fix working-directory confusion.
5280         * CONTRIBUTE: Move send-email here from git-workflow.
5282 2015-09-11  Michael Albinus  <michael.albinus@gmx.de>
5284         Improve file notifications in Tramp
5285         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
5286         Set proper events to watch for.
5287         (tramp-sh-file-gvfs-monitor-dir-process-filter): Report only
5288         watched events.
5290 2015-09-11  Eli Zaretskii  <eliz@gnu.org>
5292         Fix NS build with --enable-checking='glyphs'
5293         * src/nsfns.m (unwind_create_frame): Make the preprocessor
5294         conditionals for referencing 'dpyinfo' consistent throughout the
5295         function.  (Bug#21426)
5297 2015-09-10  Nicolas Petton  <nicolas@petton.fr>
5299         Add seq-find
5300         This function is similar to `seq-some' but returns the found element.
5301         In the cases where nil can be the found element, a sentinel optional
5302         argument can be provided to avoid ambiguities.
5303         * lisp/emacs-lisp/seq.el (seq-find): New function.
5304         * test/automated/seq-tests.el (test-seq-find): Add tests for `seq-find'.
5305         * doc/lispref/sequences.texi (Sequence Functions): Add documentation for
5306         seq-find.
5308 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
5310         Document file-notify--test-with-events.
5311         * test/automated/file-notify-tests.el (file-notify--test-with-events):
5312         Add docstring.
5314 2015-09-10  Michael Albinus  <michael.albinus@gmx.de>
5316         Report used native library in file-notify-tests.el
5317         * test/automated/file-notify-tests.el
5318         (tramp-get-remote-gvfs-monitor-dir)
5319         (tramp-get-remote-inotifywait): Declare them.
5320         (file-notify-test00-availability): Print used native library.
5322 2015-09-10  Mark Oteiza  <mvoteiza@udel.edu>
5324         * lisp/mpc.el (mpc--proc-connect): Use file-name-absolute-p.
5325         (mpc-file-local-copy): Check for absolute path.  Check more config
5326         locations.
5328 2015-09-10  Eli Zaretskii  <eliz@gnu.org>
5330         Improve documentation of categories
5331         * doc/lispref/syntax.texi (Categories): Clarify the example of
5332         using define-category and modify-category-entry.  (Bug#21448)
5334 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
5336         Revert some stray curved quotes I missed earlier
5337         Problem reported by David Kastrup in:
5338         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00440.html
5339         * lisp/international/mule-cmds.el (leim-list-header):
5340         Use format-message with an ASCII-only format.
5342         Prefer NUMBERP to spelling it out
5343         * src/editfns.c (styled_format):
5344         * src/frame.h (NUMVAL):
5345         * src/image.c (parse_image_spec):
5346         * src/lisp.h (CHECK_NUMBER_OR_FLOAT)
5347         (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER):
5348         * src/process.c (Fsignal_process):
5349         * src/xdisp.c (calc_pixel_width_or_height, on_hot_spot_p):
5350         * src/xfaces.c (check_lface_attrs):
5351         * src/xselect.c (x_fill_property_data, x_send_client_event):
5352         Use NUMBERP rather than INTEGERP || FLOATP.
5354 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
5356         Improve file-notify-tests
5357         * test/automated/file-notify-tests.el: Use lexical-binding.
5358         (file-notify--test-cleanup): New function.
5359         (file-notify-test00-availability, file-notify-test01-add-watch)
5360         (file-notify-test02-events, file-notify-test03-autorevert): Use it.
5361         (file-notify--test-with-events): New macro.
5362         (file-notify-test02-events): Use it.
5364 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
5366         Add patch-sending instructions to git-workflow
5367         From a suggestion by Mitchel Humpherys in:
5368         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00421.html
5369         * admin/notes/git-workflow (Sending patches): New section.
5371         Port to GIFLIB 5.0.6 and later
5372         Problem reported by Mitchel Humpherys in:
5373         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00420.html
5374         * src/image.c (HAVE_GIFERRORSTRING) [HAVE_GIF]: New macro.
5375         (GifErrorString, init_gif_functions) [HAVE_GIF && WINDOWSNT]:
5376         (gif_load) [HAVE_GIF]: Use it.
5378 2015-09-10  Glenn Morris  <rgm@gnu.org>
5380         * lisp/cedet/ede/auto.el (ede-project-autoload): Doc fix.
5382 2015-09-09  Glenn Morris  <rgm@gnu.org>
5384         * test/automated/file-notify-tests.el (file-notify-test02-events):
5385         Fix recent change.
5387 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
5389         Refix movemail GCC pacification
5390         Problem reported by Ken Brown in:
5391         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00406.html
5392         * lib-src/movemail.c (main): Fix previous change.
5394 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
5396         * lisp/calendar/time-date.el (time-to-seconds, time-less-p):
5397         Mark unused vars with underscore.
5399         * src/syntax.c (SETUP_SYNTAX_TABLE): Move truncation...
5400         (parse_sexp_propertize): ...from here.
5402         * lisp/filenotify.el: Use lexical-binding
5403         (file-notify-add-watch): Avoid add-to-list.
5405 2015-09-09  Tassilo Horn  <tsdh@gnu.org>
5407         Start checking event types in file-notify tests
5408         * test/automated/file-notify-tests.el (file-notify--test-events):
5409         New variable.
5410         (file-notify--test-event-handler): Append received event to
5411         file-notify--test-events for later analysis.
5412         (file-notify-test02-events): Assert that the expected notifications have
5413         arrived in the expected order.
5415 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
5417         Merge from gnulib and texinfo
5418         This incorporates:
5419         2015-08-03 Improve port of stdalign to C++11
5420         * lib/stdalign.in.h: Copy from gnulib.
5421         * doc/misc/texinfo.tex: Copy from texinfo.
5423 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
5425         Make syntax.c call syntax-propertize on demand
5426         * lisp/emacs-lisp/syntax.el (syntax--jit-propertize): New function.
5427         (parse-sexp-propertize-function): Use it.
5428         (syntax-propertize): Disable parse-sexp-propertize-function.
5429         * src/syntax.c (parse_sexp_propertize, update_syntax_table_forward):
5430         New functions.
5431         (syms_of_syntax): New vars `parse-sexp-propertize-done' and
5432         `parse-sexp-propertize-function'.
5433         * src/syntax.h (struct gl_state_s): Add `e_property_truncated' field.
5434         (UPDATE_SYNTAX_TABLE_FORWARD): Use update_syntax_table_forward.
5435         (SETUP_BUFFER_SYNTAX_TABLE): Set e_property_truncated.
5436         * lisp/progmodes/elisp-mode.el (elisp-byte-code-syntax-propertize):
5437         Don't assume `point' is set.
5439 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
5441         Fix indentation of an @example in ELisp manual
5442         * doc/lispref/syntax.texi (Categories): Untabify the example.
5443         (Bug#21448)
5445 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
5447         Define internal-char-font even if --without-x
5448         The function is used now even in non-graphical environments.
5449         Problem reported by Glenn Morris in:
5450         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00401.html
5451         * src/font.c (Finternal_char_font): Move here ...
5452         * src/fontset.c (Finternal_char_font): ... from here.
5454 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
5456         * lisp/emacs-lisp/cl-generic.el (cl-generic-generalizers):
5457         Remove warning.
5459 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
5461         Fix display of complex local data types in GDB-MI
5462         * lisp/progmodes/gdb-mi.el (gdb-locals-handler-custom): If a
5463         variable has no value, display "<complex data type>" as a
5464         placeholder, instead of a confusing "nil".  (Bug#21438)
5466 2015-09-09  Oleh Krehel  <ohwoeowho@gmail.com>
5468         Remove redundant redefinition of seq-drop-while from seq.el
5469         * lisp/emacs-lisp/seq.el (seq-drop-while): Define only once.
5471 2015-09-09  Phil Sainty  <psainty@orcon.net.nz>
5473         * lisp/emacs-lisp/package.el (package--ensure-init-file):
5474         More robust check for `package-initialize' calls in init file.
5475         This function accepts an optional argument, but calls passing
5476         an argument would not have been detected.
5478 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
5480         Port movemail to RHEL 6 with --enable-gcc-warnings
5481         * lib-src/movemail.c (main): Declare local only if needed.
5483         Port recent Linux console changes to RHEL 6
5484         * src/terminal.c [HAVE_LINUX_KD_H]: Include <sys/ioctl.h>.
5486         Improvements for curved quotes on Linux consule
5487         This should help Emacs work better out-of-the-box on Linux consoles,
5488         which have only limited support for displaying Unicode characters.
5489         Also, undo the recent change that caused text-quoting-style to
5490         affect quote display on terminals, so that the two features are
5491         independent.  See Alan Mackenzie in:
5492         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00244.html
5493         Finally, add a style parameter to startup--setup-quote-display,
5494         so that this function can also be invoked after startup, with
5495         different styles depending on user preference at the time.
5496         * configure.ac: Check for linux/kd.h header.
5497         * doc/emacs/display.texi (Text Display): Document quote display.
5498         * doc/lispref/display.texi (Active Display Table):
5499         * etc/NEWS:
5500         * lisp/startup.el (startup--setup-quote-display, command-line):
5501         text-quoting-style no longer affects quote display.
5502         * doc/lispref/frames.texi (Terminal Parameters): Fix typo.
5503         * lisp/international/mule-util.el (char-displayable-p):
5504         * lisp/startup.el (startup--setup-quote-display):
5505         On a text terminal supporting glyph codes, use the reported
5506         glyph codes instead of the terminal coding system, as this
5507         is more accurate on the Linux console.
5508         * lisp/startup.el (startup--setup-quote-display):
5509         New optional arg STYLE.
5510         * src/fontset.c (Finternal_char_font):
5511         Report glyph codes for a text terminal, if they are available.
5512         Currently this is supported only for the Linux console.
5513         * src/termhooks.h (struct terminal): New member glyph-code-table.
5514         * src/terminal.c [HAVE_LINUX_KD_H]: Include <errno.h>, <linux/kd.h>.
5515         (calculate_glyph_code_table) [HAVE_LINUX_KD_H]: New function.
5516         (terminal_glyph_code): New function.
5518 2015-09-08  Juri Linkov  <juri@linkov.net>
5520         * lisp/info.el (Info-fontify-node): Don't stop at the non-title
5521         underline.  (Bug#21433)
5523 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
5525         * lisp/calendar/time-date.el (with-decoded-time-value): Fix debug spec.
5527 2015-09-08  Tassilo Horn  <tsdh@gnu.org>
5529         Fix double-reporting of rename events with inotify
5530         * lisp/filenotify.el (file-notify-callback): Fix double-reporting
5531         of rename events with inotify (bug#21435).
5533 2015-09-08  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
5535         * lisp/play/tetris.el (tetris-move-down): New command (bug#21360).
5536         (tetris-mode-map): Use it.
5538 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
5540         Remove a few simple cases of global redisplay
5541         * src/dispnew.c (redraw_frame): Don't redisplay all frames.
5542         * src/xdisp.c (echo_area_display): Set the frame's `redisplay' bit
5543         rather than returning a "resized_p" boolean.
5544         (redisplay_internal): Adjust call accordingly.
5545         * src/xfaces.c (free_realized_faces): Don't redisplay all frames.
5546         (free_all_realized_faces): Set windows_or_buffers_changed so as to ease
5547         tracking of this undesirable situation.
5549         * src/process.c (status_notify): Avoid global redisplay (bug#11822)
5550         * src/process.c (status_notify): Only set the update_mode_line on the
5551         relevant buffers rather than setting it globally.
5553 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
5555         * lisp/electric.el (electric-quote-post-self-insert-function):
5556         Don't use syntax-ppss if comment-use-syntax is nil (e.g. message-mode).
5557         (electric-quote-mode): Activate everywhere in message-mode.
5559 2015-09-07  Paul Eggert  <eggert@cs.ucla.edu>
5561         Go back to grave quoting in source-code docstrings etc.
5562         This reverts almost all my recent changes to use curved quotes
5563         in docstrings and/or strings used for error diagnostics.
5564         There are a few exceptions, e.g., Bahá’í proper names.
5565         * admin/unidata/unidata-gen.el (unidata-gen-table):
5566         * lisp/abbrev.el (expand-region-abbrevs):
5567         * lisp/align.el (align-region):
5568         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet)
5569         (outlineify-sticky):
5570         * lisp/apropos.el (apropos-library):
5571         * lisp/bookmark.el (bookmark-default-annotation-text):
5572         * lisp/button.el (button-category-symbol, button-put)
5573         (make-text-button):
5574         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
5575         * lisp/calc/calc-embed.el (calc-do-embedded):
5576         * lisp/calc/calc-ext.el (calc-user-function-list):
5577         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
5578         * lisp/calc/calc-help.el (calc-describe-key)
5579         (calc-describe-thing, calc-full-help):
5580         * lisp/calc/calc-lang.el (calc-c-language)
5581         (math-parse-fortran-vector-end, math-parse-tex-sum)
5582         (math-parse-eqn-matrix, math-parse-eqn-prime)
5583         (calc-yacas-language, calc-maxima-language, calc-giac-language)
5584         (math-read-giac-subscr, math-read-math-subscr)
5585         (math-read-big-rec, math-read-big-balance):
5586         * lisp/calc/calc-misc.el (calc-help, report-calc-bug):
5587         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
5588         (calc-auto-recompute):
5589         * lisp/calc/calc-prog.el (calc-fix-token-name)
5590         (calc-read-parse-table-part, calc-user-define-invocation)
5591         (math-do-arg-check):
5592         * lisp/calc/calc-store.el (calc-edit-variable):
5593         * lisp/calc/calc-units.el (math-build-units-table-buffer):
5594         * lisp/calc/calc-vec.el (math-read-brackets):
5595         * lisp/calc/calc-yank.el (calc-edit-mode):
5596         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
5597         * lisp/calendar/appt.el (appt-display-message):
5598         * lisp/calendar/diary-lib.el (diary-check-diary-file)
5599         (diary-mail-entries, diary-from-outlook):
5600         * lisp/calendar/icalendar.el (icalendar-export-region)
5601         (icalendar--convert-float-to-ical)
5602         (icalendar--convert-date-to-ical)
5603         (icalendar--convert-ical-to-diary)
5604         (icalendar--convert-recurring-to-diary)
5605         (icalendar--add-diary-entry):
5606         * lisp/calendar/time-date.el (format-seconds):
5607         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
5608         (timeclock-make-hours-explicit, timeclock-log-data):
5609         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
5610         (todo-item-mark, todo-check-format)
5611         (todo-insert-item--next-param, todo-edit-item--next-key)
5612         (todo-mode):
5613         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
5614         * lisp/cedet/mode-local.el (describe-mode-local-overload)
5615         (mode-local-print-binding, mode-local-describe-bindings-2):
5616         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
5617         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
5618         * lisp/cus-start.el (standard):
5619         * lisp/cus-theme.el (describe-theme-1):
5620         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
5621         (custom--sort-vars-1, load-theme):
5622         * lisp/descr-text.el (describe-text-properties-1, describe-char):
5623         * lisp/dired-x.el (dired-do-run-mail):
5624         * lisp/dired.el (dired-log):
5625         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
5626         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
5627         (ad-disable-advice, ad-remove-advice, ad-set-argument)
5628         (ad-set-arguments, ad--defalias-fset, ad-activate)
5629         (ad-deactivate):
5630         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
5631         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
5632         (byte-optimize-while, byte-optimize-apply):
5633         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
5634         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
5635         (byte-compile-log-file, byte-compile-format-warn)
5636         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
5637         (byte-compile-cl-warn)
5638         (byte-compile-warn-about-unresolved-functions)
5639         (byte-compile-file, byte-compile--declare-var)
5640         (byte-compile-file-form-defmumble, byte-compile-form)
5641         (byte-compile-normal-call, byte-compile-check-variable)
5642         (byte-compile-variable-ref, byte-compile-variable-set)
5643         (byte-compile-subr-wrong-args, byte-compile-setq-default)
5644         (byte-compile-negation-optimizer)
5645         (byte-compile-condition-case--old)
5646         (byte-compile-condition-case--new, byte-compile-save-excursion)
5647         (byte-compile-defvar, byte-compile-autoload)
5648         (byte-compile-lambda-form)
5649         (byte-compile-make-variable-buffer-local, display-call-tree)
5650         (batch-byte-compile):
5651         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use):
5652         * lisp/emacs-lisp/chart.el (chart-space-usage):
5653         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
5654         (check-declare-warn, check-declare-file)
5655         (check-declare-directory):
5656         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
5657         (checkdoc-message-text-engine):
5658         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer)
5659         (cl--describe-class):
5660         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
5661         (cl--generic-describe, cl-generic-generalizers):
5662         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
5663         (cl-symbol-macrolet):
5664         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
5665         * lisp/emacs-lisp/copyright.el (copyright)
5666         (copyright-update-directory):
5667         * lisp/emacs-lisp/edebug.el (edebug-read-list):
5668         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
5669         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
5670         (eieio-oref):
5671         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
5672         * lisp/emacs-lisp/eieio-speedbar.el:
5673         (eieio-speedbar-child-make-tag-lines)
5674         (eieio-speedbar-child-description):
5675         * lisp/emacs-lisp/eieio.el (defclass, change-class):
5676         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
5677         (elint-init-form, elint-check-defalias-form)
5678         (elint-check-let-form):
5679         * lisp/emacs-lisp/ert.el (ert-get-test, ert-results-mode-menu)
5680         (ert-results-pop-to-backtrace-for-test-at-point)
5681         (ert-results-pop-to-messages-for-test-at-point)
5682         (ert-results-pop-to-should-forms-for-test-at-point)
5683         (ert-describe-test):
5684         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
5685         (find-function-library):
5686         * lisp/emacs-lisp/generator.el (iter-yield):
5687         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
5688         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
5689         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
5690         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
5691         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
5692         (advice--make, define-advice):
5693         * lisp/emacs-lisp/package-x.el (package-upload-file):
5694         * lisp/emacs-lisp/package.el (package-version-join)
5695         (package-disabled-p, package-activate-1, package-activate)
5696         (package--download-one-archive)
5697         (package--download-and-read-archives)
5698         (package-compute-transaction, package-install-from-archive)
5699         (package-install, package-install-selected-packages)
5700         (package-delete, package-autoremove, describe-package-1)
5701         (package-install-button-action, package-delete-button-action)
5702         (package-menu-hide-package, package-menu--list-to-prompt)
5703         (package-menu--perform-transaction)
5704         (package-menu--find-and-notify-upgrades):
5705         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
5706         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
5707         * lisp/emacs-lisp/ring.el (ring-previous, ring-next):
5708         * lisp/emacs-lisp/rx.el (rx-check, rx-anything)
5709         (rx-check-any-string, rx-check-any, rx-check-not, rx-=)
5710         (rx-repeat, rx-check-backref, rx-syntax, rx-check-category)
5711         (rx-form):
5712         * lisp/emacs-lisp/smie.el (smie-config-save):
5713         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
5714         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
5715         * lisp/emacs-lisp/testcover.el (testcover-1value):
5716         * lisp/emacs-lisp/timer.el (timer-event-handler):
5717         * lisp/emulation/viper-cmd.el (viper-toggle-parse-sexp-ignore-comments)
5718         (viper-toggle-search-style, viper-kill-buffer)
5719         (viper-brac-function):
5720         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
5721         * lisp/env.el (setenv):
5722         * lisp/erc/erc-button.el (erc-nick-popup):
5723         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login, english):
5724         * lisp/eshell/em-dirs.el (eshell/cd):
5725         * lisp/eshell/em-glob.el (eshell-glob-regexp)
5726         (eshell-glob-entries):
5727         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
5728         * lisp/eshell/esh-opt.el (eshell-show-usage):
5729         * lisp/facemenu.el (facemenu-add-new-face)
5730         (facemenu-add-new-color):
5731         * lisp/faces.el (read-face-name, read-face-font, describe-face)
5732         (x-resolve-font-name):
5733         * lisp/files-x.el (modify-file-local-variable):
5734         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
5735         (set-auto-mode, hack-one-local-variable--obsolete)
5736         (dir-locals-set-directory-class, write-file, basic-save-buffer)
5737         (delete-directory, copy-directory, recover-session)
5738         (recover-session-finish, insert-directory)
5739         (file-modes-char-to-who, file-modes-symbolic-to-number)
5740         (move-file-to-trash):
5741         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer):
5742         * lisp/find-cmd.el (find-generic, find-to-string):
5743         * lisp/finder.el (finder-commentary):
5744         * lisp/font-lock.el (font-lock-fontify-buffer):
5745         * lisp/format.el (format-write-file, format-find-file)
5746         (format-insert-file):
5747         * lisp/frame.el (get-device-terminal, select-frame-by-name):
5748         * lisp/fringe.el (fringe--check-style):
5749         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
5750         * lisp/help-fns.el (help-fns--key-bindings)
5751         (help-fns--compiler-macro, help-fns--parent-mode)
5752         (help-fns--obsolete, help-fns--interactive-only)
5753         (describe-function-1, describe-variable):
5754         * lisp/help.el (describe-mode)
5755         (describe-minor-mode-from-indicator):
5756         * lisp/image.el (image-type):
5757         * lisp/international/ccl.el (ccl-dump):
5758         * lisp/international/fontset.el (x-must-resolve-font-name):
5759         * lisp/international/mule-cmds.el (prefer-coding-system)
5760         (select-safe-coding-system-interactively)
5761         (select-safe-coding-system, activate-input-method)
5762         (toggle-input-method, describe-current-input-method)
5763         (describe-language-environment):
5764         * lisp/international/mule-conf.el (code-offset):
5765         * lisp/international/mule-diag.el (describe-character-set)
5766         (list-input-methods-1):
5767         * lisp/mail/feedmail.el (feedmail-run-the-queue):
5768         * lisp/mouse.el (minor-mode-menu-from-indicator):
5769         * lisp/mpc.el (mpc-playlist-rename):
5770         * lisp/msb.el (msb--choose-menu):
5771         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
5772         * lisp/net/imap.el (imap-interactive-login):
5773         * lisp/net/mairix.el (mairix-widget-create-query):
5774         * lisp/net/newst-backend.el (newsticker--sentinel-work):
5775         * lisp/net/newst-treeview.el (newsticker--treeview-load):
5776         * lisp/net/rlogin.el (rlogin):
5777         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
5778         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
5779         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
5780         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
5781         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
5782         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
5783         (org-babel-goto-named-result):
5784         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
5785         * lisp/org/ob-ref.el (org-babel-ref-resolve):
5786         * lisp/org/org-agenda.el (org-agenda-prepare):
5787         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
5788         (org-clock-resolve):
5789         * lisp/org/org-ctags.el (org-ctags-ask-rebuild-tags-file-then-find-tag):
5790         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
5791         * lisp/org/org-habit.el (org-habit-parse-todo):
5792         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
5793         (org-mouse-context-menu):
5794         * lisp/org/org-table.el (org-table-edit-formulas):
5795         * lisp/org/ox.el (org-export-async-start):
5796         * lisp/proced.el (proced-log):
5797         * lisp/progmodes/ada-mode.el (ada-get-indent-case)
5798         (ada-check-matching-start, ada-goto-matching-start):
5799         * lisp/progmodes/ada-prj.el (ada-prj-display-page):
5800         * lisp/progmodes/ada-xref.el (ada-find-executable):
5801         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
5802         * lisp/progmodes/etags.el (etags-tags-apropos-additional):
5803         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
5804         (flymake-start-syntax-check-process):
5805         * lisp/progmodes/python.el (python-shell-get-process-or-error)
5806         (python-define-auxiliary-skeleton):
5807         * lisp/progmodes/sql.el (sql-comint):
5808         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
5809         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate):
5810         * lisp/recentf.el (recentf-open-files):
5811         * lisp/replace.el (query-replace-read-from)
5812         (occur-after-change-function, occur-1):
5813         * lisp/scroll-bar.el (scroll-bar-columns):
5814         * lisp/server.el (server-get-auth-key):
5815         * lisp/simple.el (execute-extended-command)
5816         (undo-outer-limit-truncate, list-processes--refresh)
5817         (compose-mail, set-variable, choose-completion-string)
5818         (define-alternatives):
5819         * lisp/startup.el (site-run-file, tty-handle-args, command-line)
5820         (command-line-1):
5821         * lisp/subr.el (noreturn, define-error, add-to-list)
5822         (read-char-choice, version-to-list):
5823         * lisp/term/common-win.el (x-handle-xrm-switch)
5824         (x-handle-name-switch, x-handle-args):
5825         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
5826         * lisp/textmodes/reftex-ref.el (reftex-label):
5827         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
5828         * lisp/textmodes/two-column.el (2C-split):
5829         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
5830         (tutorial--find-changed-keys):
5831         * lisp/type-break.el (type-break-noninteractive-query):
5832         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
5833         (wdired-do-perm-changes):
5834         * lisp/whitespace.el (whitespace-report-region):
5835         Prefer grave quoting in source-code strings used to generate help
5836         and diagnostics.
5837         * lisp/faces.el (face-documentation):
5838         No need to convert quotes, since the result is a docstring.
5839         * lisp/info.el (Info-virtual-index-find-node)
5840         (Info-virtual-index, info-apropos):
5841         Simplify by generating only curved quotes, since info files are
5842         typically that ways nowadays anyway.
5843         * lisp/international/mule-diag.el (list-input-methods):
5844         Don’t assume text quoting style is curved.
5845         * lisp/org/org-bibtex.el (org-bibtex-fields):
5846         Revert my recent changes, going back to the old quoting style.
5848 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
5850         * lisp/emacs-lisp/package.el: Reduce autoloading before compiling.
5851         (package--autoloads-file-name)
5852         (package--activate-autoloads-and-load-path): New function.
5853         (package-activate-1): Delegate autoloading and load-path
5854         configuration to `package--activate-autoloads-and-load-path'.
5855         (package--compile): Before compilation, call
5856         `package--activate-autoloads-and-load-path' instead of
5857         `package-activate-1'.
5859 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
5861         * src/keyboard.c (read_key_sequence): Complete last fix (bug#21403).
5863 2015-09-07  Eli Zaretskii  <eliz@gnu.org>
5865         Fix deletion of symlinks to directories on MS-Windows
5866         * src/w32.c (sys_unlink): If 'unlink' fails, and the argument is a
5867         symlink to a directory, try again with 'rmdir'.
5868         (is_symlink): If the argument is a symlink to a directory, set a
5869         bit in the return value to indicate that fact.
5871 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
5873         * lisp/emacs-lisp/package.el (package-initialize): Set enable-at-startup
5874         When `package-initialize' is called as part of loading the init file,
5875         the user probably doesn't want it to be called again afterwards.
5876         In this situation, `package-initialize' now sets
5877         `package-enable-at-startup' to nil to prevent that.  The user can have
5878         the old behavior by setting this variable to t after the call to
5879         `package-initialize'.  (Bug#21423)
5880         * doc/emacs/package.texi (Package Installation): Document it.
5881         * doc/lispref/package.texi (Packaging Basics): Document it.
5882         * etc/NEWS: Document it.
5884 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
5886         Bump version of ntlm.el to 2.00
5887         * lisp/net/ntlm.el: Bump version to 2.00.  New maintainer.
5888         Add comm keyword.
5890 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
5892         * doc/misc/gnus.texi (Mail Source Specifiers):
5893         Allow :mailbox to be a list.
5895 2015-09-06  Dmitry Gutov  <dgutov@yandex.ru>
5897         * lisp/progmodes/etags.el (etags-tags-completion-table):
5898         Allow even one non-regular character before the implicit tag name.
5899         Reported at http://emacs.stackexchange.com/questions/15269/.
5901 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
5903         Add support for NTLMv2 authentication
5904         * lisp/net/ntlm.el (ntlm): New customization group.
5905         (ntlm-compatibility-level): New defcustom.
5906         (ntlm-compute-timestamp): New function.
5907         (ntlm-generate-nonce): Likewise.
5908         (ntlm-build-auth-response): Add support for NTLMv2 authentication.
5910 2015-09-06  Artur Malabarba  <bruce.connor.am@gmail.com>
5912         * lisp/emacs-lisp/package.el: Rename custom faces.
5913         All of the recently introduced faces, like `package-name-face', have
5914         been renamed to no end in `-face' to comply with the convention
5915         described in (info "(elisp) Defining Faces").
5916         (package-name, package-description)
5917         (package-status-built-in, package-status-external)
5918         (package-status-available, package-status-new)
5919         (package-status-held, package-status-disabled)
5920         (package-status-installed, package-status-dependency)
5921         (package-status-unsigned, package-status-incompat)
5922         (package-status-avail-obso): New faces.
5923         (package-menu--print-info-simple): Use them.
5925 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
5927         mail-source.el: Make the imap mail-source's :mailbox handle a list
5928         * lisp/gnus/mail-source.el (mail-source-fetch-imap):
5929         Allow :mailbox to be  a list.
5931 2015-09-06  Eric Abrahamsen  <eric@ericabrahamsen.net>
5933         nnimap.el: Handle nil arg to nnimap-request-group
5934         * lisp/gnus/nnimap.el (nnimap-request-group): Handle nil "info" arg.
5935         This arg isn't always passed in, check it's not nil before making it
5936         into a list.  The active arg will also be nil if the group is new,
5937         check for that.
5939 2015-09-06  Michael Albinus  <michael.albinus@gmx.de>
5941         File notifications: Support renaming over directory boundaries
5942         * lisp/filenotify.el (file-notify-handle-event):
5943         (file-notify--pending-event): Adapt docstring.
5944         (file-notify--descriptor, file-notify-callback): Reimplement in
5945         order to support renaming over directory boundaries.
5946         (file-notify-add-watch): Adapt `file-notify--descriptor' call.
5947         * doc/lispref/os.texi (File Notifications): Remove limitation of
5948         file renaming to the same directory.
5950 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
5952         Spelling fix (Bug#21420)
5954 2015-09-05  Nicolas Petton  <nicolas@petton.fr>
5956         Improve the semantic of map-some
5957         Update map-some to return the returned by the predicate, similar to
5958         seq-some.
5959         * lisp/emacs-lisp/map.el (map-some): Update the function to return the
5960           return value of the predicate.
5961         * test/automated/map-tests.el (test-map-some): Update the test to check
5962           for non-nil values only.
5964         Rename map-contains-key-p and map-some-p
5965         Remove the "-p" suffix from both function names.
5966         * lisp/emacs-lisp/map.el (map-contains-key, map-some):
5967           Rename the functions.
5968         * test/automated/map-tests.el (test-map-contains-key, test-map-some):
5969           Update both test functions.
5971         Improve the semantic of seq-some
5972         Update seq-some to return non-nil if the predicate returns non-nil for
5973         any element of the seq, in which case the returned value is the one
5974         returned by the predicate.
5975         * lisp/emacs-lisp/seq.el (seq-some): Update the function and its
5976           docstring.
5977         * test/automated/seq-tests.el (test-seq-some): Add a regression test.
5978         * doc/lispref/sequences.texi (Sequence Functions): Update the
5979           documentation for seq-some.
5981         Rename seq-some-p to seq-some and seq-contains-p to seq-contains
5982         * lisp/emacs-lisp/seq.el (seq-some, seq-contains): Rename the functions
5983           without the "-p" prefix.
5984         * test/automated/seq-tests.el (test-seq-some, test-seq-contains): Update
5985           the tests accordingly.
5986         * doc/lispref/sequences.texi (Sequence Functions): Update the
5987           documentation for seq.el.
5989 2015-09-05  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
5991         text-quoting-style for usage of fn names with ‘’
5992         * lisp/help.el (help--docstring-quote): Don’t assume
5993         text-quoting-style is ‘curve’ when generating usage strings for
5994         functions whose names contain curved quotes.
5996 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
5998         Fix fix for describe-function keybinding confusion
5999         This fixes a bug introduced by the previous patch.
6000         * lisp/help-fns.el (help-fns--signature):
6001         Last arg of help-fns--signature is now a buffer, or nil if a
6002         raw signature is wanted.  All callers changed.
6003         (describe-function-1): Use this to do the right thing with signatures.
6005 2015-09-05  Johan Bockgård  <bojohan@gnu.org>
6007         * doc/lispref/frames.texi (Mouse Tracking): Fix typo.
6009         Use PAT rather than UPAT in pcase macros
6010         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
6011         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>: Use PAT rather
6012           than UPAT.
6014 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
6016         Fix describe-function keybinding confusion
6017         * lisp/help-fns.el (describe-function-1): Compute signature
6018         in the original buffer, not in standard-output, so that
6019         substitute-command-keys uses the proper keybindings.
6020         This fixes Bug#21412, introduced in commit
6021         2015-06-11T10:23:46-0700!eggert@cs.ucla.edu.
6023 2015-09-05  Xue Fuqiao  <xfq.free@gmail.com>
6025         * doc/emacs/programs.texi (Program Modes): Remove an index entry.
6027 2015-09-05  Robert Pluim  <rpluim@gmail.com>  (tiny change)
6029         Avoid read error messages from 'inotify'
6030         * src/process.c (wait_reading_process_output): Add a
6031         'tls_available' set and manipulate it instead of 'Available' when
6032         checking TLS inputs.  Assign the value to 'Available' only if we
6033         find any TLS data waiting to be read.  This avoids error messages
6034         from 'inotify' that tries to read data it shouldn't.  (Bug#21337)
6036 2015-09-05  Eli Zaretskii  <eliz@gnu.org>
6038         Avoid errors in thing-at-point with 2nd argument non-nil
6039         * lisp/thingatpt.el (thing-at-point): Only call 'length' on
6040         sequences.  (Bug#21391)
6042 2015-09-05  Philip  <pipcet@gmail.com>  (tiny change)
6044         Fix segfaults due to using a stale face ID
6045         * src/xdisp.c (forget_escape_and_glyphless_faces): New function.
6046         (display_echo_area_1, redisplay_internal): Call it to avoid
6047         reusing stale face IDs for 'escape-glyph' and 'glyphless-char'
6048         faces, which could case a segfault if the frame's face cache was
6049         freed since the last redisplay.  (Bug#21394)
6050         * src/xfaces.c (free_realized_faces):
6051         Call forget_escape_and_glyphless_faces.
6052         * src/dispextern.h (forget_escape_and_glyphless_faces): Add prototype.
6054 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
6056         Fix minor problems with " in manual
6058 2015-09-04  Michael Albinus  <michael.albinus@gmx.de>
6060         * doc/misc/tramp.texi (Frequently Asked Questions): New item for ad-hoc
6061         multi-hop files.
6063 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
6065         Support automated ‘make check’ in non-C locale
6066         This lets the builder optionally test Emacs behavior in other locales.
6067         The C locale is still the default for tests.
6068         * test/automated/Makefile.in (TEST_LOCALE): New macro.
6069         (emacs): Use it.
6070         * test/automated/flymake-tests.el (flymake-tests--current-face):
6071         Use C locale for subprocesses so that tests behave as expected.
6072         * test/automated/python-tests.el:
6073         (python-shell-prompt-validate-regexps-1)
6074         (python-shell-prompt-validate-regexps-2)
6075         (python-shell-prompt-validate-regexps-3)
6076         (python-shell-prompt-validate-regexps-4)
6077         (python-shell-prompt-validate-regexps-5)
6078         (python-shell-prompt-validate-regexps-6)
6079         (python-shell-prompt-set-calculated-regexps-1):
6080         Adjust expected output to match locale.
6081         * test/automated/tildify-tests.el (tildify-test--test)
6082         (tildify-space-test--test, tildify-space-undo-test--test):
6083         This test assumes UTF-8 encoding.
6085 2015-09-03  Paul Eggert  <eggert@cs.ucla.edu>
6087         Fix some more docstring etc. quoting problems
6088         Mostly these fixes prevent the transliteration of apostrophes
6089         that should stay apostrophes.  Also, prefer curved quotes in
6090         Bahá’í proper names, as that’s the preferred Bahá’í style and
6091         these names are chock-full of non-ASCII characters anyway.
6092         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-autoload)
6093         (eieio-defclass-internal):
6094         * lisp/emacs-lisp/eieio.el (defclass):
6095         * lisp/hi-lock.el (hi-lock-mode):
6096         Don’t transliterate Lisp apostrophes when generating a
6097         doc string or diagnostic.
6098         * lisp/international/mule-diag.el (list-coding-systems-1):
6099         * lisp/international/ogonek.el (ogonek-jak, ogonek-how):
6100         * lisp/mail/sendmail.el (sendmail-query-user-about-smtp):
6101         * lisp/vc/ediff-mult.el (ediff-redraw-registry-buffer):
6102         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
6103         Substitute quotes before putting them in the help buffer.
6105 2015-09-03  Stefan Monnier  <monnier@iro.umontreal.ca>
6107         Re-add the notion of echo_prompt lost in the translation
6108         * src/keyboard.h (struct kboard): Replace echo_after_prompt with new
6109         echo_prompt which contains the actual string.  Update all uses.
6110         * src/keyboard.c (kset_echo_prompt): New function.
6111         (echo_update): Add echo_prompt at the very beginning.
6112         (read_char): Remove workaround for bug#19875, not needed any more.
6113         (read_key_sequence): Set echo_prompt rather than echo_string
6114         (bug#21403).
6115         (mark_kboards): Mark echo_prompt.
6117         Fix disassembly of non-compiled lexical functions (bug#21377)
6118         * lisp/emacs-lisp/bytecomp.el (byte-compile): Handle `closure' arg.
6119         * lisp/emacs-lisp/disass.el: Use lexical-binding.
6120         (disassemble): Recognize `closure's as well.
6121         (disassemble-internal): Use indirect-function and
6122         help-function-arglist, and accept `closure's.
6123         (disassemble-internal): Use interactive-form.
6124         (disassemble-1): Use functionp.
6126         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
6127         Don't compose inside verbatim blocks!
6129 2015-09-03  Mark Oteiza  <mvoteiza@udel.edu>
6131         * lisp/thingatpt.el (thing-at-point-uri-schemes): Add "man:"
6132         (bug#19441).
6134         * lisp/mpc.el (mpc--proc-connect): Handle unix sockets (bug#19394).
6136 2015-09-03  Dmitry Gutov  <dgutov@yandex.ru>
6138         vc-git-mode-line-string: Explicitly re-apply the face
6139         * lisp/vc/vc-git.el (vc-git-mode-line-string): Explicitly re-apply
6140         the face (bug#21404).
6142 2015-09-02  Paul Eggert  <eggert@cs.ucla.edu>
6144         Treat initial-scratch-message as a doc string
6145         * doc/emacs/building.texi (Lisp Interaction):
6146         * doc/lispref/os.texi (Startup Summary):
6147         * etc/NEWS: Document this.
6148         * lisp/startup.el (initial-scratch-message):
6149         Look up find-file’s key rather than hardcoding it.
6150         (command-line-1): Substitute the doc string.
6151         This also substitutes the quotes, which will help test display
6152         quoting at startup.
6154         Fix describe-char bug with glyphs on terminals
6155         * lisp/descr-text.el (describe-char): Terminals can have glyphs in
6156         buffers too, so don’t treat them differently from graphic displays.
6157         Without this fix, describe-char would throw an error on a terminal
6158         if given a glyph with a non-default face.
6160         Follow text-quoting-style in display table init
6161         This attempts to fix a problem reported by Alan Mackenzie in:
6162         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00112.html
6163         * doc/lispref/display.texi (Active Display Table):
6164         Mention how text-quoting-style affects it.
6165         * doc/lispref/help.texi (Keys in Documentation):
6166         Say how to set text-quoting-style in ~/.emacs.
6167         * etc/NEWS: Document the change.
6168         * lisp/startup.el (startup--setup-quote-display):
6169         Follow user preference if text-quoting-style is set.
6170         (command-line): Setup quote display again if user expresses
6171         a preference in .emacs.
6173 2015-09-02  K. Handa  <handa@gnu.org>
6175         Fix typo
6176         * src/ftfont.c (ftfont_drive_otf): otf_positioning_type_components_mask
6177         -> OTF_positioning_type_components_mask.
6179         Fix previous change
6180         * src/ftfont.c (ftfont_drive_otf): Remember some bits of
6181         OTF_Glyph->positioning_type in MFLTGlyphFT->libotf_positioning_type.
6183 2015-09-01  David Caldwell  <david@porkrind.org>  (tiny change)
6185         * lisp/vc/vc-hooks.el (vc-refresh-state): New command.
6186         Rename from vc-find-file-hook and make interactive.
6187         (vc-find-file-hook): Redefine as obsolete alias.
6189 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
6191         Escape ` and ' in doc
6192         Escape apostrophes and grave accents in docstrings if they are
6193         are supposed to stand for themselves and are not quotes.  Remove
6194         apostrophes from docstring examples like ‘'(calendar-nth-named-day
6195         -1 0 10 year)’ that confuse source code with data.  Do some other
6196         minor docstring fixups as well, e.g., insert a missing close quote.
6198 2015-09-01  Stefan Monnier  <monnier@iro.umontreal.ca>
6200         Generalize the prefix-command machinery of C-u
6201         * lisp/simple.el (prefix-command-echo-keystrokes-functions)
6202         (prefix-command-preserve-state-hook): New hooks.
6203         (internal-echo-keystrokes-prefix): New function.
6204         (prefix-command--needs-update, prefix-command--last-echo): New vars.
6205         (prefix-command-update, prefix-command-preserve): New functions.
6206         (reset-this-command-lengths): New compatibility definition.
6207         (universal-argument--mode): Call prefix-command-update.
6208         (universal-argument, universal-argument-more, negative-argument)
6209         (digit-argument): Call prefix-command-preserve-state.
6210         * src/keyboard.c: Call internal-echo-keystrokes-prefix to build
6211         the "prefix argument" to echo.
6212         (this_command_key_count_reset, before_command_key_count)
6213         (before_command_echo_length): Delete variables.
6214         (echo_add_key): Always add a space.
6215         (echo_char): Remove.
6216         (echo_dash): Don't give up when this_command_key_count is 0, since that
6217         is now the case after a prefix command.
6218         (echo_update): New function, extracted from echo_now.
6219         (echo_now): Use it.
6220         (add_command_key, read_char, record_menu_key): Remove old disabled code.
6221         (command_loop_1): Don't refrain from pushing an undo boundary when
6222         prefix-arg is set.  Remove other prefix-arg special case, now handled
6223         directly in the prefix commands instead.  But call echo_now if there's
6224         a prefix state to echo.
6225         (read_char, record_menu_key): Use echo_update instead of echo_char.
6226         (read_key_sequence): Use echo_now rather than echo_dash/echo_char.
6227         (Freset_this_command_lengths): Delete function.
6228         (syms_of_keyboard): Define Qinternal_echo_keystrokes_prefix.
6229         (syms_of_keyboard): Don't defsubr Sreset_this_command_lengths.
6230         * lisp/simple.el: Use those new hooks for C-u.
6231         (universal-argument--description): New function.
6232         (prefix-command-echo-keystrokes-functions): Use it.
6233         (universal-argument--preserve): New function.
6234         (prefix-command-preserve-state-hook): Use it.
6235         (command-execute): Call prefix-command-update if needed.
6236         * lisp/kmacro.el (kmacro-step-edit-prefix-commands)
6237         (kmacro-step-edit-prefix-index): Delete variables.
6238         (kmacro-step-edit-query, kmacro-step-edit-insert): Remove ad-hoc
6239         support for prefix arg commands.
6240         (kmacro-step-edit-macro): Don't bind kmacro-step-edit-prefix-index.
6241         * lisp/emulation/cua-base.el (cua--prefix-override-replay)
6242         (cua--shift-control-prefix): Use prefix-command-preserve-state.
6243         Remove now unused arg `arg'.
6244         (cua--prefix-override-handler, cua--prefix-repeat-handler)
6245         (cua--shift-control-c-prefix, cua--shift-control-x-prefix):
6246         Update accordingly.
6247         (cua--prefix-override-timeout): Don't call reset-this-command-lengths
6248         any more.
6249         (cua--keep-active, cua-exchange-point-and-mark): Don't set mark-active
6250         if the mark is not set.
6252 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
6254         Rework quoting in Emacs Lisp Introduction
6255         * doc/lispintro/emacs-lisp-intro.texi (Sample let Expression)
6256         (if in more detail, type-of-animal in detail, else): Rework the
6257         early example to use " rather than ' so that we don’t burden
6258         complete novices with the low-priority detail of text quoting style.
6259         (Complete zap-to-char, kill-region, Complete copy-region-as-kill)
6260         (kill-new function, kill-ring-yank-pointer)
6261         (Complete forward-sentence, Loading Files)
6262         (Code for current-kill, Code for current-kill, yank):
6263         Resurrect the Emacs 22 versions of the code, which uses grave
6264         quoting style in doc strings.
6265         (Complete zap-to-char): Mention how quoting works in doc strings.
6267         Setup quote display only if interactive
6268         * lisp/startup.el (command-line):
6269         Skip call to startup--setup-quote-display if noninteractive.
6270         Without this change, python-shell-prompt-validate-regexps-1
6271         fails in test/automated/python-tests.el when run in an
6272         en_US.utf8 locale on Fedora.
6274 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
6276         Use defalias at the top level
6277         * lisp/gnus/gnus-util.el (gnus-format-message):
6278         * lisp/net/tls.el (tls-format-message): Use defalias at the top level
6279         so as to make eval-and-compile unnecessary.  Thanks to Stefan Monnier.
6281 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
6283         terminal-init-w32console mimicks command-line
6284         Problem reported by Eli Zaretskii.
6285         * lisp/startup.el (startup--setup-quote-display):
6286         New function, refactored from a part of ‘command-line’.
6287         (command-line): Use it.
6288         * lisp/term/w32console.el (terminal-init-w32console):
6289         Use it, so that this function stays consistent with ‘command-line’.
6291         Display replacement quotes with shadow glyphs
6292         * lisp/startup.el (command-line): When displaying ASCII
6293         replacements for curved quotes, use a shadow glyph instead of a
6294         regular one, to avoid ambiguity.
6296 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
6298         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Mask "Password:".
6300 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
6302         Docstring fixes re quotes in C code
6303         Fix some docstring quoting problems, mostly by escaping apostrophe.
6305 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
6307         Some Tramp password fixes
6308         * lisp/net/tramp.el (tramp-clear-passwd): Clear also the passwords
6309         of the hops.
6310         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Move "-p" "Password:"
6311         at the beginning of the command.  Otherwise, it could be
6312         interpreted as password prompt if the remote host echoes the
6313         command.
6314         (tramp-remote-coding-commands): Add "openssl enc -base64".
6316 2015-09-01  Dmitry Gutov  <dgutov@yandex.ru>
6318         Make vc-git-working-revision always return the commit hash
6319         * lisp/vc/vc-git.el (vc-git-working-revision):
6320         Return the commit hash (bug#21383).
6321         (vc-git--symbolic-ref): New function, extracted from above.
6322         (vc-git-mode-line-string): Use it.
6324 2015-09-01  K. Handa  <handa@gnu.org>
6326         Use the new type MFLTGlyphFT for MFLTGlyphString.glyphs
6327         * src/ftfont.c (MFLTGlyphFT): New type.
6328         (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_drive_otf)
6329         (ftfont_shape_by_flt): Make MFLTGlyphFT the actual type of
6330         elements in the array MFLTGlyphString.glyphs.
6332 2015-09-01  Stephen Leake  <stephen_leake@stephe-leake.org>
6334         Improve comments in elisp-mode.el, elisp-mode-tests.el
6335         * lisp/progmodes/elisp-mode.el: Clean up FIXMEs, comments.
6337         Delete Emacs 25 test in mode-local.el
6338         * lisp/cedet/mode-local.el (describe-mode-local-overload):
6339         Fix missed an edit in previous commit.
6341         Show all known mode-local overrides in *Help*
6342         * lisp/cedet/mode-local.el (describe-mode-local-overload):
6343         Assume Emacs 25. Add all known mode-local overrides.
6345 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
6347         * lisp/gnus/gnus-sum.el (gnus-summary-search-article):
6348         Ensure that the article where the search word is found is displayed
6349         and pointed to in the summary buffer.
6351 2015-08-31  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
6353         * lisp/newcomment.el (comment-dwim): Use `use-region-p'.
6354         When the region is active, but is empty (length 0), act as though
6355         the region was not active; that is, put a comment at the end of
6356         the line.  (Bug#21119)
6358 2015-08-31  Katsumi Yamaoka  <yamaoka@jpl.org>
6360         Port tls.el to older Emacs
6361         * lisp/net/tls.el (tls-format-message):
6362         Alias to format-message, or format if not available.
6363         (open-tls-stream): Use it.
6365 2015-08-31  Rüdiger Sonderfeld  <ruediger@c-plusplus.net>
6367         hideif.el: Recognize .h++ as C++ header
6368         * lisp/progmodes/hideif.el (hide-ifdef-header-regexp): Add .h++.
6370         isearch: Document character folding mode
6371         * lisp/isearch.el (isearch-forward):
6372         Mention `isearch-toggle-character-fold' in doc string.
6374 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
6376         Quoting fixes in ERC and Eshell
6377         * lisp/erc/erc-autoaway.el (erc-autoaway-set-away):
6378         * lisp/erc/erc-backend.el (define-erc-response-handler):
6379         * lisp/erc/erc-fill.el (erc-fill-static-center):
6380         * lisp/eshell/em-dirs.el (eshell-save-some-last-dir):
6381         * lisp/eshell/em-glob.el (eshell-glob-entries):
6382         * lisp/eshell/em-hist.el (eshell-save-some-history):
6383         * lisp/eshell/em-unix.el (eshell-remove-entries, eshell/rm)
6384         (eshell-shuffle-files):
6385         * lisp/eshell/esh-cmd.el (eshell-do-eval):
6386         * lisp/eshell/esh-proc.el (eshell-process-interact)
6387         (eshell-query-kill-processes):
6388         Respect ‘text-quoting-style’ in diagnostics and doc strings.
6390         Quoting fixes in Gnus
6391         * lisp/gnus/gnus-agent.el:
6392         (gnus-agent-possibly-synchronize-flags-server):
6393         * lisp/gnus/gnus-art.el (gnus-article-browse-delete-temp-files):
6394         * lisp/gnus/gnus-eform.el (gnus-edit-form):
6395         * lisp/gnus/gnus-group.el (gnus-group-edit-group)
6396         (gnus-group-nnimap-edit-acl):
6397         * lisp/gnus/gnus-topic.el (gnus-topic-edit-parameters):
6398         * lisp/gnus/mail-source.el (mail-source-delete-old-incoming):
6399         * lisp/gnus/message.el (message-strip-subject-encoded-words)
6400         (message-check-recipients, message-send-form-letter):
6401         * lisp/gnus/mm-decode.el (mm-display-part):
6402         * lisp/gnus/mm-uu.el (mm-uu-pgp-signed-extract-1):
6403         * lisp/gnus/mml-smime.el (mml-smime-get-dns-cert)
6404         (mml-smime-get-ldap-cert):
6405         * lisp/gnus/spam-report.el (spam-report-process-queue):
6406         Respect ‘text-quoting-style’ in diagnostics.
6407         * lisp/gnus/gnus-art.el (article-display-face)
6408         * lisp/gnus/gnus-fun.el (gnus-display-x-face-in-from):
6409         Use straight quoting in email.
6410         * lisp/gnus/rfc2231.el (rfc2231-decode-encoded-string):
6411         Escape apostrophes in doc strings.
6413         Quoting fixes in lisp mail, mh-e, net, url
6414         * lisp/mail/emacsbug.el (report-emacs-bug)
6415         (report-emacs-bug-hook): Use straight quotes in outgoing email,
6416         * lisp/mail/feedmail.el (feedmail-message-action-help-blat):
6417         * lisp/mail/rmail.el (rmail-unknown-mail-followup-to):
6418         * lisp/mail/rmailout.el (rmail-output-read-file-name):
6419         * lisp/net/imap.el (imap-interactive-login):
6420         * lisp/net/tls.el (open-tls-stream):
6421         * lisp/url/url-auth.el (url-register-auth-scheme):
6422         Respect ‘text-quoting-style’ in diagnostics.
6423         * lisp/mh-e/mh-e.el (mh-sortm-args):
6424         Quote docstring example using text quotes, not as a Lisp quote.
6426 2015-08-31  Stephen Leake  <stephen_leake@stephe-leake.org>
6428         Fix some byte-compiler warnings in EDE
6429         This fixes a bug that caused ede-generic-new-autoloader to overwrite the
6430         existing autoloader list, rather than add to it.
6431         * lisp/cedet/ede/auto.el (ede-project-class-files): Delete obsolete name
6432         argument to eieio class constructor.
6433         (ede-show-supported-projects): New.
6434         (ede-add-project-autoload): Replace obsolete `eieio-object-name-string'
6435         with (oref ... name).
6436         (ede-auto-load-project): Use slot name, not initarg key.
6437         * lisp/cedet/ede/generic.el (ede-generic-load)
6438         (ede-generic-find-matching-target): Use slot name, not initarg key.
6439         (ede-find-target): Use oref-default on class name.
6440         (ede-generic-new-autoloader): Delete obsolete name argument to eieio
6441         class constructor.
6442         (ede-enable-generic-projects): Make project type names unique.
6444 2015-08-31  Eli Zaretskii  <eliz@gnu.org>
6446         Fix directory accessibility tests for w32 network volumes
6447         * src/w32.c (faccessat): Don't fail with network volumes without a
6448         share.
6449         (w32_accessible_directory_p): Handle network volumes without a
6450         share.
6452         Fix handling long file names in readdir on MS-Windows
6453         * src/w32.c (sys_readdir): Append "\*" to the directory after
6454         converting it to UTF-16/ANSI, not before, to avoid overflowing the
6455         260-character limit on file names in filename_to_utf16/ansi.
6457         Make file-accessible-directory-p reliable on MS-Windows
6458         * src/w32.c (w32_accessible_directory_p): New function.
6459         * src/w32.h (w32_accessible_directory_p): Add prototype.
6460         * src/fileio.c (file_accessible_directory_p) [WINDOWSNT]: Call
6461         w32_accessible_directory_p to test a directory for accessibility
6462         by the current user.  (Bug#21346)
6463         (Ffile_accessible_directory_p): Remove the w32 specific caveat
6464         from the doc string.
6466 2015-08-31  Martin Rudalics  <rudalics@gmx.at>
6468         Don't call do_pending_window_change in signal handlers (Bug#21380)
6469         * src/gtkutil.c (xg_frame_resized):
6470         * src/xterm.c (x_set_window_size):
6471         * src/w32term.c (x_set_window_size): Don't call
6472         do_pending_window_change.
6474 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
6476         Quoting fixes in lisp/org
6477         * lisp/org/org-agenda.el (org-search-view, org-todo-list)
6478         (org-tags-view):
6479         * lisp/org/org-capture.el (org-capture-mode)
6480         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
6481         (org-ctags-ask-append-topic):
6482         * lisp/org/org.el (org-time-string-to-time)
6483         (org-time-string-to-absolute):
6484         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
6485         (org-ctags-ask-append-topic):
6486         * lisp/org/org.el (org-time-string-to-time)
6487         (org-time-string-to-absolute):
6488         Respect ‘text-quoting-style’ in diagnostics.
6489         * lisp/org/org-agenda.el (org-agenda-custom-commands)
6490         (org-agenda-dim-blocked-tasks): Plural of TODO is TODOs, not TODO’s.
6491         * lisp/org/org-capture.el (org-capture-fill-template):
6492         Avoid contraction in output file that might be ASCII.
6493         * lisp/org/org-compat.el (format-message):
6494         Define if not already defined, for backward compatibility.
6495         * lisp/org/org-src.el (org-edit-src-save):
6496         * lisp/org/org.el (org-cycle, org-ctrl-c-ctrl-c):
6497         Escape apostrophes in diagnostics.
6499         Treat “instead” strings as docstrings
6500         * lisp/emacs-lisp/bytecomp.el (byte-compile-form):
6501         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
6502         Substitute quotes in instead strings.
6504 2015-08-31  Nicolas Petton  <nicolas@petton.fr>
6506         Better documentation of seq-let
6507         * doc/lispref/sequences.texi (Sequence Functions): Rephrase the
6508         documentation of seq-let.
6510 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
6512         * lisp/international/ccl.el: Fix quoting.
6514         Quoting fixes in lisp/international and lisp/leim
6515         * lisp/international/ccl.el (ccl-dump, ccl-dump-call):
6516         * lisp/international/ja-dic-utl.el (skkdic-lookup-key):
6517         * lisp/international/mule-cmds.el:
6518         (select-safe-coding-system-interactively, leim-list-file-name):
6519         * lisp/international/quail.el (quail-use-package, quail-help):
6520         * lisp/international/titdic-cnv.el (tit-process-header)
6521         (miscdic-convert):
6522         Respect text quoting style in doc strings and diagnostics.
6523         * lisp/international/quail.el (lisp/international/quail.el):
6524         * lisp/leim/quail/ethiopic.el ("ethiopic"):
6525         Escape apostrophes in doc strings.
6527         Make ‘text-quoting-style’ a plain defvar
6528         It doesn’t need customization, as it’s likely useful only by experts.
6529         Suggested by Stefan Monnier in:
6530         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg01020.html
6531         * lisp/cus-start.el: Remove doc.c section for builtin customized vars.
6533         Quoting fixes in lisp/textmodes
6534         * lisp/textmodes/bibtex.el (bibtex-validate)
6535         (bibtex-validate-globally, bibtex-search-entries):
6536         * lisp/textmodes/ispell.el (ispell-command-loop):
6537         * lisp/textmodes/page-ext.el (search-pages, pages-directory):
6538         * lisp/textmodes/texinfmt.el (texinfmt-version)
6539         (texinfo-format-region, texinfo-format-buffer-1):
6540         * lisp/textmodes/two-column.el (2C-split):
6541         Respect text quoting style in doc strings and diagnostics.
6542         * lisp/textmodes/conf-mode.el (conf-mode-map, conf-quote-normal):
6543         * lisp/textmodes/sgml-mode.el (sgml-specials, sgml-mode):
6544         Escape apostrophes in doc strings.
6546         Documentation fixes re quotes
6547         Prefer curved quotes in examples if users will typically see
6548         curved quotes when the examples run.
6549         Mention format-message when appropriate.
6550         Don’t use @code in examples.
6551         Quote an apostrophe with @kbd.
6553         Quoting fixes in lisp/progmodes
6554         * lisp/progmodes/cc-engine.el (c-bos-report-error):
6555         * lisp/progmodes/cpp.el (cpp-edit-reset):
6556         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
6557         * lisp/progmodes/etags.el (etags-tags-apropos-additional)
6558         (etags-tags-apropos, list-tags, tags-apropos):
6559         * lisp/progmodes/executable.el (executable-set-magic):
6560         * lisp/progmodes/octave.el (octave-sync-function-file-names)
6561         (octave-help, octave-find-definition-default-filename)
6562         (octave-find-definition):
6563         Respect text quoting style in doc strings and diagnostics.
6564         * lisp/progmodes/cc-langs.el (c-populate-syntax-table):
6565         * lisp/progmodes/verilog-mode.el (verilog-auto-reset-widths):
6566         * lisp/progmodes/vhdl-mode.el (vhdl-electric-quote):
6567         Escape apostrophes in doc strings.
6568         * lisp/progmodes/cmacexp.el (c-macro-expansion):
6569         Use straight quoting in ASCII comment.
6570         * lisp/progmodes/idlwave.el (idlwave-auto-fill-split-string)
6571         (idlwave-pad-keyword):
6572         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate)
6573         (vhdl-electric-open-bracket, vhdl-electric-close-bracket):
6574         (vhdl-electric-semicolon, vhdl-electric-comma)
6575         (vhdl-electric-period, vhdl-electric-equal):
6576         Use directed quotes in diagnostics and doc strings.
6578 2015-08-30  Xue Fuqiao  <xfq.free@gmail.com>
6580         Minor documentation and NEWS tweak
6581         * doc/lispintro/emacs-lisp-intro.texi (fwd-para let):
6582         Add an index entry.
6583         * etc/NEWS: Fix a typo in character-fold-to-regexp.
6585 2015-08-30  Michael Albinus  <michael.albinus@gmx.de>
6587         * lisp/net/tramp-sh.el (tramp-convert-file-attributes):
6588         Revert patch from 2015-08-24.  Tramp shall behave like for local files.
6589         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
6590         Adapt test.
6592 2015-08-30  Paul Eggert  <eggert@cs.ucla.edu>
6594         Text quoting fixes in cedet, emulation, emacs-lisp
6595         * lisp/cedet/ede.el (ede-check-project-directory):
6596         * lisp/cedet/semantic/analyze/debug.el
6597         (semantic-analyzer-debug-insert-include-summary):
6598         * lisp/cedet/semantic/bovine/c.el (semantic-c-describe-environment):
6599         * lisp/cedet/semantic/decorate/include.el
6600         (semantic-decoration-unknown-include-describe)
6601         (semantic-decoration-all-include-summary):
6602         * lisp/cedet/semantic/ia.el (semantic-ia-fast-jump):
6603         * lisp/emulation/edt.el (edt-load-keys):
6604         * lisp/emulation/viper-cmd.el
6605         (viper-display-current-destructive-command)
6606         (viper-query-replace, viper-brac-function):
6607         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-compile):
6608         * lisp/emulation/viper-macs.el (viper-unrecord-kbd-macro):
6609         Respect text quoting style in doc string or diagnostic.
6610         * lisp/cedet/mode-local.el (describe-mode-local-overload):
6611         Use format-message to avoid overtranslating quotes.
6612         * lisp/emacs-lisp/checkdoc.el (checkdoc-in-sample-code-p):
6613         Escape an apostrophe in a docstring.
6614         * lisp/emacs-lisp/warnings.el (lwarn): Fix doc string.
6616 2015-08-29  Daniel Colascione  <dancol@dancol.org>
6618         Fix which-func for curly quotes: look for symbol, not message
6619         * lisp/progmodes/which-func.el (which-func-ff-hook): Look for new
6620         imenu-unavailable error symbol instead of trying to match message
6621         exactly.
6622         * lisp/imenu.el (imenu-unavailable): New error.
6623         (imenu-unavailable-error): New function.
6625 2015-08-29  Eli Zaretskii  <eliz@gnu.org>
6627         Fix Python tests on MS-Windows
6628         * test/automated/python-tests.el
6629         (python-shell-calculate-command-1): Run python-shell-interpreter
6630         through shell-quote-argument before comparing with what
6631         python-shell-calculate-command returns.
6632         (python-shell-calculate-pythonpath-1)
6633         (python-shell-calculate-pythonpath-2)
6634         (python-shell-calculate-process-environment-2): Use path-separator
6635         instead of a literal ':'.
6636         (python-shell-calculate-exec-path-2)
6637         (python-shell-calculate-exec-path-3)
6638         (python-shell-calculate-exec-path-4)
6639         (python-shell-with-environment-1)
6640         (python-shell-with-environment-2): Run "/env/bin" through
6641         expand-file-name before comparing with exec-path.  (Bug#21375)
6643 2015-08-29  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
6645         Use Core Text types/functions/variables/enumerators directly
6646         * src/macfont.h (FontDescriptorRef, FontRef, FontSymbolicTraits)
6647         (CharacterCollection): Remove typedefs.  All uses replaced with
6648         definitions.
6649         (MAC_FONT_NAME_ATTRIBUTE, MAC_FONT_FAMILY_NAME_ATTRIBUTE)
6650         (MAC_FONT_TRAITS_ATTRIBUTE, MAC_FONT_SIZE_ATTRIBUTE)
6651         (MAC_FONT_CASCADE_LIST_ATTRIBUTE)
6652         (MAC_FONT_CHARACTER_SET_ATTRIBUTE, MAC_FONT_LANGUAGES_ATTRIBUTE)
6653         (MAC_FONT_FORMAT_ATTRIBUTE, MAC_FONT_SYMBOLIC_TRAIT)
6654         (MAC_FONT_WEIGHT_TRAIT, MAC_FONT_WIDTH_TRAIT)
6655         (MAC_FONT_SLANT_TRAIT): Remove macros.  All uses replaced with
6656         definitions.
6657         (MAC_FONT_TRAIT_ITALIC, MAC_FONT_TRAIT_BOLD)
6658         (MAC_FONT_TRAIT_MONO_SPACE, MAC_FONT_TRAIT_COLOR_GLYPHS)
6659         (MAC_FONT_FORMAT_BITMAP)
6660         (MAC_CHARACTER_COLLECTION_IDENTITY_MAPPING)
6661         (MAC_CHARACTER_COLLECTION_ADOBE_JAPAN1): Remove enumerators.
6662         All uses replaced with definitions.
6663         (kCTFontTraitItalic, kCTFontTraitBold, kCTFontTraitMonoSpace)
6664         (kCTFontTraitColorGlyphs, kCTCharacterCollectionIdentityMapping)
6665         (kCTCharacterCollectionAdobeJapan1 kCTFontOrientationDefault):
6666         Add compatibility enumerators for older versions.
6667         (mac_font_descriptor_create_with_attributes)
6668         (mac_font_descriptor_create_matching_font_descriptors)
6669         (mac_font_descriptor_create_matching_font_descriptor)
6670         (mac_font_descriptor_copy_attribute)
6671         (mac_font_descriptor_supports_languages)
6672         (mac_font_create_with_name, mac_font_get_size)
6673         (mac_font_copy_family_name, mac_font_copy_character_set)
6674         (mac_font_get_glyphs_for_characters, mac_font_get_ascent)
6675         (mac_font_get_descent, mac_font_get_leading)
6676         (mac_font_get_underline_position)
6677         (mac_font_get_underline_thickness, mac_font_copy_graphics_font)
6678         (mac_font_copy_non_synthetic_table): Remove macros.  All uses
6679         replaced with definitions.
6680         (mac_font_create_preferred_family_for_attributes)
6681         (mac_font_get_advance_width_for_glyph)
6682         (mac_font_get_bounding_rect_for_glyph)
6683         (mac_font_create_available_families, mac_font_shape):
6684         Remove macros for renamed functions.
6685         (mac_nsctfont_copy_font_descriptor): Remove unused macro.
6686         * src/macterm.m (mac_font_descriptor_supports_languages):
6687         Rename from mac_ctfont_descriptor_supports_languages.
6688         (mac_font_create_preferred_family_for_attributes): Rename from
6689         mac_ctfont_create_preferred_family_for_attributes.
6690         (mac_font_get_advance_width_for_glyph): Rename from
6691         mac_ctfont_get_advance_width_for_glyph.
6692         Use kCTFontOrientationDefault also for older versions.
6693         (mac_font_get_bounding_rect_for_glyph): Rename from
6694         mac_ctfont_get_bounding_rect_for_glyph.
6695         Use kCTFontOrientationDefault also for older versions.
6696         (mac_font_create_available_families): Rename from
6697         mac_ctfont_create_available_families.
6698         (mac_font_equal_in_postscript_name): Rename from
6699         mac_ctfont_equal_in_postscript_name.  All uses changed.
6700         (mac_font_create_line_with_string_and_font): Rename from
6701         mac_ctfont_create_line_with_string_and_font.  All uses changed.
6702         (mac_font_shape): Rename from mac_ctfont_shape.
6703         (mac_font_family_compare): Remove unused declaration.
6705 2015-08-29  Paul Eggert  <eggert@cs.ucla.edu>
6707         Fix minor text quoting in calc, calendar, vc
6708         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
6709         * lisp/calc/calc-help.el (calc-j-prefix-help):
6710         * lisp/calc/calc-misc.el (calc-help):
6711         * lisp/calc/calc.el (calc-algebraic-mode, calc-mode):
6712         Escape an apostrophe in a docstring.
6713         * lisp/calc/calc-forms.el (calc-hms-notation):
6714         * lisp/calc/calc-mode.el (calc-display-raw, calc-algebraic-mode):
6715         Escape an apostrophe in a diagnostic.
6716         * lisp/calc/calc-misc.el (calc-help):
6717         * lisp/calendar/diary-lib.el (diary-include-files):
6718         * lisp/calendar/todo-mode.el (todo-prefix, todo-item-mark):
6719         * lisp/vc/diff-mode.el (diff-delete-trailing-whitespace):
6720         * lisp/vc/ediff-diff.el (ediff-same-contents):
6721         * lisp/vc/ediff-merg.el (ediff-re-merge):
6722         * lisp/vc/ediff-ptch.el (ediff-patch-file-internal):
6723         * lisp/vc/ediff-util.el (ediff-test-save-region)
6724         (ediff-status-info):
6725         * lisp/vc/ediff.el (ediff-merge-revisions)
6726         (ediff-merge-revisions-with-ancestor):
6727         * lisp/vc/pcvs.el (cvs-mode-checkout, cvs-vc-command-advice):
6728         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
6729         Respect text quoting style in doc string or diagnostic.
6730         * lisp/calc/calc-prog.el (calc-kbd-push, calc-kbd-pop):
6731         * lisp/vc/add-log.el (change-log-goto-source):
6732         Avoid double-formatting.
6733         * lisp/vc/ediff-init.el (format-message):
6734         New backward-compatibility alias.
6736 2015-08-28  Paul Eggert  <eggert@cs.ucla.edu>
6738         Fix minor text quoting problems in lisp top level
6739         * lisp/apropos.el (apropos-describe-plist):
6740         * lisp/cus-theme.el (customize-themes):
6741         * lisp/dired.el (dired-log):
6742         * lisp/help-fns.el (describe-variable):
6743         * lisp/hexl.el (hexl-insert-multibyte-char):
6744         * lisp/info.el (Info-finder-find-node):
6745         * lisp/json.el (json-read-string):
6746         * lisp/novice.el (disabled-command-function)
6747         (disabled-command-function):
6748         * lisp/startup.el (normal-mouse-startup-screen):
6749         * lisp/woman.el (WoMan-log, WoMan-warn):
6750         Respect text quoting style in doc string or diagnostic.
6751         * lisp/replace.el (replace-character-fold):
6752         * src/syntax.c (Fmodify_syntax_entry):
6753         Escape an apostrophe in a docstring.
6754         * lisp/tempo.el (tempo-define-template):
6755         Remove confusing apostrophe from docstring.
6756         * lisp/whitespace.el (whitespace-mark-x):
6757         Use directed quotes in docstring.
6759 2015-08-28  Simen Heggestøyl  <simenheg@gmail.com>
6761         Fix indentation rule in css-mode
6762         * lisp/textmodes/css-mode.el (css-smie-rules): Fix indentation of
6763         brackets in presence of pseudo-selectors.  (Bug#21328)
6765 2015-08-28  Eli Zaretskii  <eliz@gnu.org>
6767         Fix a bug in recording a macro while flyspell-mode is active
6768         * lisp/subr.el (sit-for): Don't call read-event when recording a
6769         macro.  (Bug#21329)
6771 2015-08-27  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
6773         Tweak startup screen quoting
6774         * lisp/startup.el (normal-splash-screen): Use standard
6775         "M-" abbrevation rather than a confusingly-different one.
6776         (normal-no-mouse-startup-screen): Follow ‘text-quoting-style’.
6778 2015-08-27  Paul Eggert  <eggert@cs.ucla.edu>
6780         Add test case for ‘format’ bug and refactor
6781         * src/editfns.c (styled_format): Refactor internally, mostly by
6782         moving declarations closer to uses.  This should not affect behavior.
6783         * test/automated/textprop-tests.el (textprop-tests-format): New test.
6785         Fix ‘format’ bug with property offsets
6786         * src/editfns.c (styled_format): Fix recently-introduced ‘format’
6787         bug in calculating string property offsets (Bug#21351).
6789         Use straight quotes in lib-src diagnostics
6790         These auxiliary programs can’t use Emacs’s text-quoting-style,
6791         and it’s too much trouble to redo that mechanism by hand.
6792         So just use straight quotes for now.
6793         * lib-src/ebrowse.c (main):
6794         * lib-src/emacsclient.c (decode_options, main):
6795         * lib-src/etags.c (Ada_help, default_C_help, Cplusplus_help)
6796         (Forth_help, HTML_help, Lisp_help, Makefile_help, Objc_help)
6797         (Perl_help, PHP_help, Python_help, Scheme_help, TeX_help, auto_help)
6798         (none_help, print_language_names, print_help, add_regex)
6799         (suggest_asking_for_help):
6800         * lib-src/make-docfile.c (write_c_args, scan_c_stream):
6801         Use straight quotes in diagnostics.
6803         ‘text-quoting-style’ fixes for admin
6804         * admin/admin.el (cusver-scan, cusver-check):
6805         * admin/authors.el (authors-canonical-file-name):
6806         * admin/bzrmerge.el (bzrmerge-missing):
6807         Respect ‘text-quoting-style’ in diagnostics.
6809 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
6811         Assume GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS
6812         This removes the need for GCPRO1 etc.  Suggested by Stefan Monnier in:
6813         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00918.html
6814         * doc/lispref/internals.texi (Writing Emacs Primitives):
6815         * etc/NEWS:
6816         Document the change.
6817         * src/alloc.c (gcprolist, dump_zombies, MAX_ZOMBIES, zombies)
6818         (nzombies, ngcs, avg_zombies, max_live, max_zombies, avg_live)
6819         (Fgc_status, check_gcpros, relocatable_string_data_p, gc-precise):
6820         * src/bytecode.c (mark_byte_stack) [BYTE_MARK_STACK]:
6821         * src/eval.c (gcpro_level) [DEBUG_GCPRO]:
6822         * src/lisp.h (struct handler.gcpro, struct gcpro, GC_MARK_STACK)
6823         (GC_USE_GCPROS_AS_BEFORE, GC_MAKE_GCPROS_NOOPS)
6824         (GC_MARK_STACK_CHECK_GCPROS, GC_USE_GCPROS_CHECK_ZOMBIES)
6825         (BYTE_MARK_STACK, GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5, GCPRO6)
6826         (GCPRO7, UNGCPRO, RETURN_UNGCPRO):
6827         Remove.  All uses removed.  The code now assumes
6828         GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS.
6829         * src/bytecode.c (relocate_byte_stack):
6830         Rename from unmark_byte_stack, since it now only relocates.
6831         All callers changed.
6832         * src/frame.c (make_frame): Add an IF_LINT to pacify GCC 5.2
6833         with GCPROs removed.
6834         * src/systime.h: Use EMACS_LISP_H as the canary instead of GCPRO1.
6835         * test/automated/finalizer-tests.el (finalizer-basic)
6836         (finalizer-circular-reference, finalizer-cross-reference)
6837         (finalizer-error):
6838         * test/automated/generator-tests.el (cps-test-iter-close-finalizer):
6839         Remove tests, as they depend on gc-precise.
6841 2015-08-26  Nicolas Petton  <nicolas@petton.fr>
6843         Improve seq-concatenate for new sequence types
6844         Use the new `seq-into-sequence' in seqs passed to `seq-concatenate' to
6845         ensure that concatenation happens on sequences only.  This makes it
6846         possible to use `seq-concatenate' for new types of seqs.
6847         * lisp/emacs-lisp/seq.el (seq-into-sequence, seq-concatenate):
6848         New function used in `seq-concatenate'.
6849         * test/automated/seq-tests.el (test-seq-into-sequence): New unit test
6850         for seq-into-sequence.
6852 2015-08-26  Stephen Leake  <stephen_leake@stephe-leake.org>
6854         Add mode local overrides to xref-find-definitions
6855         * lisp/cedet/mode-local.el (xref-mode-local--override-present)
6856         (xref-mode-local-overload): New; add mode local overrides to
6857         xref-find-definitions.
6858         * test/automated/elisp-mode-tests.el: Add mode local override tests.
6859         (xref-elisp-test-run): Handle indented defuns.
6860         (xref-elisp-generic-*): Improve doc strings.
6861         * lisp/progmodes/elisp-mode.el (elisp-xref-find-def-functions): New.
6862         (elisp--xref-find-definitions): Use it.
6864         Add mode local overrides to describe-function
6865         * lisp/cedet/mode-local.el (describe-mode-local-overload):
6866         New; add mode local overrides to describe-function.
6867         * etc/NEWS: Document change.
6869 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
6871         Prefer straight quoting in some etc text files
6872         These files are plain text and might be used by non-Emacs apps.
6873         They’re mostly ASCII, so just use straight quotes.
6875         Fix quoting in ‘message_with_string’
6876         * src/nsfont.m (nsfont_open): Use directed quotes in format; they
6877         should work now.
6878         * src/xdisp.c (message_to_stderr): New function, refactored from
6879         part of ‘message3_nolog’.
6880         (message3_nolog): Use it.
6881         (message_with_string): Use it.  Don’t mishandle NUL bytes when
6882         noninteractive.  Prefer AUTO_STRING when it’s most likely faster.
6883         Use ‘format-message’, not ‘format’, so that quotes are translated.
6885 2015-08-26  Eli Zaretskii  <eliz@gnu.org>
6887         Mention false positives of file-accessible-directory on w32
6888         * src/fileio.c (Ffile_accessible_directory_p): Doc fix.
6889         (Bug#21346)
6891 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
6893         Treat error strings as help
6894         * src/print.c (print_error_message): Translate quotes and command
6895         keys in errmsg so that users see, e.g., "Symbol’s value as
6896         variable is void: foo" when text-quoting-style is curved.
6898 2015-08-26  Michael Albinus  <michael.albinus@gmx.de>
6900         * lisp/net/tramp-cache.el (top): Use `message', not `format-message'.
6902 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
6904         Top-level elisp files respect ‘text-quoting-style’
6905         In top-level elisp files, use format-message in diagnostic formats,
6906         so that they follow user preference as per ‘text-quoting-style’
6907         rather than being hard-coded to quote `like this'.
6908         * lisp/allout.el (allout-get-configvar-values):
6909         * lisp/apropos.el (apropos-symbols-internal):
6910         * lisp/dired-aux.el (dired-do-shell-command, dired-create-files)
6911         (dired-do-create-files-regexp, dired-create-files-non-directory):
6912         * lisp/dired-x.el (dired-do-run-mail):
6913         * lisp/dired.el (dired-log, dired-dnd-handle-local-file):
6914         * lisp/disp-table.el (standard-display-european):
6915         * lisp/find-dired.el (find-dired):
6916         * lisp/forms.el (forms-mode):
6917         * lisp/ido.el (ido-buffer-internal):
6918         * lisp/info.el (Info-index-next):
6919         * lisp/outline.el (outline-invent-heading):
6920         * lisp/printing.el (pr-ps-outfile-preprint, pr-i-ps-send):
6921         * lisp/proced.el (proced-log):
6922         * lisp/ps-print.el (ps-print-preprint, ps-get-size):
6923         * lisp/recentf.el (recentf-open-files, recentf-save-list):
6924         * lisp/savehist.el (savehist-save):
6925         * lisp/server.el (server-ensure-safe-dir):
6926         * lisp/ses.el (ses-rename-cell):
6927         * lisp/simple.el (list-processes--refresh):
6928         * lisp/startup.el (command-line):
6929         * lisp/strokes.el (strokes-unset-last-stroke)
6930         (strokes-execute-stroke):
6931         Use format-message so that quotes are restyled.
6932         * lisp/cus-edit.el (custom-raised-buttons, customize-browse):
6933         Don’t quote ‘raised’.
6934         * lisp/descr-text.el (describe-char):
6935         * lisp/dirtrack.el (dirtrack-debug-message):
6936         * lisp/hexl.el (hexl-insert-multibyte-char):
6937         Apply substitute-command-keys to help string.
6938         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
6939         (wdired-do-perm-changes):
6940         Let dired-log do the formatting.
6942 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
6944         Go back to grave quoting in Tramp
6945         * lisp/net/tramp-adb.el:
6946         * lisp/net/tramp-cache.el:
6947         * lisp/net/tramp-compat.el:
6948         * lisp/net/tramp-gvfs.el:
6949         * lisp/net/tramp-gw.el:
6950         * lisp/net/tramp-sh.el:
6951         * lisp/net/tramp-smb.el:
6952         * lisp/net/tramp.el:
6953         Stick with grave quoting in diagnostics strings.  This is more
6954         portable to older Emacs, desirable for Tramp.
6955         * lisp/net/tramp-cache.el: Use ‘format-message’, not ‘format’,
6956         for diagnostic that needs requoting.
6957         * lisp/net/tramp-compat.el (format-message):
6958         Fall back on simple ‘format’, since that’s good enough now.
6960         Go back to grave quoting in Gnus
6961         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
6962         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
6963         (gnus-agent-fetch-headers):
6964         * lisp/gnus/gnus-int.el (gnus-start-news-server):
6965         * lisp/gnus/gnus-registry.el:
6966         (gnus-registry--split-fancy-with-parent-internal)
6967         (gnus-registry-post-process-groups):
6968         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
6969         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
6970         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
6971         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
6972         * lisp/gnus/spam.el (spam-check-blackholes):
6973         Stick with grave quoting in diagnostics strings.  This is more
6974         portable to older Emacs, desirable for Gnus.
6976         Fix customization of text-quoting-style
6977         * lisp/cus-edit.el (custom-guess-type, custom-variable-documentation):
6978         * lisp/wid-edit.el (widget-docstring):
6979         Get raw docstring here since it’s cooked later and should not be
6980         cooked twice.
6981         * lisp/cus-edit.el (custom-group-value-create):
6982         Cook the docstring before inserting it.
6983         * lisp/cus-start.el (text-quoting-style): Quote the customization
6984         docstrings according to the new rules.  Give curved examples.
6986         format-message now curves ` and '
6987         That way, the caller doesn’t have to use curved quotes to
6988         get diagnostics that match the text-quoting-style preferences.
6989         Suggested by Dmitry Gutov in:
6990         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00893.html
6991         This means we no longer need %qs, so remove that format.
6992         While we’re at it, fix an unlikely bug and lessen the pressure
6993         on the garbage collector by processing the string once rather
6994         than twice in the usual case.
6995         * doc/lispref/strings.texi (Formatting Strings):
6996         * etc/NEWS: Document this.
6997         * lisp/subr.el (format-message): Remove; now done in C.
6998         * src/callint.c (Fcall_interactively):
6999         * src/editfns.c (Fmessage, Fmessage_box):
7000         Use Fformat_message instead of Finternal__text_restyle
7001         followed by Fformat.
7002         * src/doc.c (LSQM, RSQM): Remove; all uses changed to use
7003         uLSQM and uRSQM.
7004         (Fsubstitute_command_keys): Prefer AUTO_STRING to build_string
7005         when pure ASCII now suffices.  Fix unlikely bug when parsing
7006         unibyte string containing non-ASCII bytes.  Use inline code
7007         rather than memcpy, as it’s a tiny number of bytes.
7008         (Finternal__text_restyle): Remove; no longer used.
7009         (syms_of_doc): Don’t declare it.
7010         * src/editfns.c (Fformat): Rewrite in terms of new function
7011         ‘styled_format’.
7012         (Fformat_message): New function, moved here from subr.el.
7013         (styled_format): New function, with the old guts of Fformat,
7014         except it now optionally transliterates quotes, and it transliterates
7015         traditional grave accent and apostrophe quoting as well.
7016         Remove recently-added q flag; no longer needed or used.
7017         (syms_of_editfns): Define format-message.
7018         * src/lisp.h (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
7019         Remove; no longer need to be global symbols.
7020         * src/xdisp.c (vadd_to_log): Use Fformat_message, not Fformat,
7021         so that callers can use `%s'.
7022         * src/image.c (image_size_error, xbm_load_image, xbm_load)
7023         (xpm_load, pbm_load, png_load_body, jpeg_load_body, tiff_load)
7024         (gif_load, imagemagick_load_image, imagemagick_load, svg_load)
7025         (svg_load_image, gs_load, x_kill_gs_process):
7026         * src/lread.c (load_warn_old_style_backquotes):
7027         * src/xfaces.c (load_pixmap):
7028         * src/xselect.c (x_clipboard_manager_error_1):
7029         Use `%s' instead of %qs in formats.
7031 2015-08-25  Eli Zaretskii  <eliz@gnu.org>
7033         Minor fixes in doc/emacs/search.texi
7034         * doc/emacs/search.texi (Basic Isearch): Fix a typo.
7035         (Special Isearch): Use @w{} to generate several consecutive spaces
7036         with Texinfo 6.  (Bug#21345)
7038 2015-08-25  Michael Albinus  <michael.albinus@gmx.de>
7040         * lisp/net/tramp-sh.el (tramp-awk-encode, tramp-awk-decode)
7041         (tramp-awk-coding-test): New defconsts.
7042         (tramp-remote-coding-commands): Use them.
7043         (tramp-find-inline-encoding): Check for Perl only if necessary.
7045 2015-08-25  Xue Fuqiao  <xfq.free@gmail.com>
7047         * doc/lispintro/emacs-lisp-intro.texi (Run a Program): Add some
7048         index entries for the special form `quote'.
7050 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
7052         Spelling fixes
7054         Gnus format-message typo fix
7055         * lisp/gnus/gnus-util.el (gnus-format-message):
7056         Fix typo when running in older Emacs.
7058         Prefer directed to neutral quotes in docstings and diagnostics.
7059         In docstrings, escape apostrophes that would otherwise be translated
7060         to curved quotes using the newer, simpler rules.
7061         * admin/unidata/unidata-gen.el (unidata-gen-table):
7062         * lisp/align.el (align-region):
7063         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet):
7064         * lisp/bookmark.el (bookmark-default-annotation-text):
7065         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
7066         * lisp/calc/calc-lang.el (math-read-giac-subscr)
7067         (math-read-math-subscr):
7068         * lisp/calc/calc-misc.el (report-calc-bug):
7069         * lisp/calc/calc-prog.el (calc-fix-token-name)
7070         (calc-read-parse-table-part):
7071         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
7072         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
7073         * lisp/dabbrev.el (dabbrev-expand):
7074         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
7075         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
7076         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
7077         * lisp/emulation/viper-cmd.el (viper-toggle-search-style):
7078         * lisp/erc/erc-button.el (erc-nick-popup):
7079         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login):
7080         * lisp/eshell/em-dirs.el (eshell/cd):
7081         * lisp/eshell/em-glob.el (eshell-glob-regexp):
7082         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
7083         * lisp/eshell/esh-arg.el (eshell-parse-arguments):
7084         * lisp/eshell/esh-opt.el (eshell-show-usage):
7085         * lisp/files-x.el (modify-file-local-variable):
7086         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer)
7087         (filesets-update-pre010505):
7088         * lisp/find-cmd.el (find-generic, find-to-string):
7089         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
7090         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
7091         (gnus-agent-fetch-headers):
7092         * lisp/gnus/gnus-int.el (gnus-start-news-server):
7093         * lisp/gnus/gnus-registry.el:
7094         (gnus-registry--split-fancy-with-parent-internal):
7095         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
7096         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
7097         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
7098         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
7099         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
7100         * lisp/gnus/spam.el (spam-check-blackholes):
7101         * lisp/mail/feedmail.el (feedmail-run-the-queue):
7102         * lisp/mpc.el (mpc-playlist-rename):
7103         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
7104         * lisp/net/mairix.el (mairix-widget-create-query):
7105         * lisp/net/tramp-cache.el:
7106         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
7107         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
7108         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
7109         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
7110         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
7111         (org-babel-goto-named-result):
7112         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
7113         * lisp/org/ob-ref.el (org-babel-ref-resolve):
7114         * lisp/org/org-agenda.el (org-agenda-prepare):
7115         * lisp/org/org-bibtex.el (org-bibtex-fields):
7116         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
7117         (org-clock-resolve):
7118         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
7119         * lisp/org/org-habit.el (org-habit-parse-todo):
7120         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
7121         (org-mouse-context-menu):
7122         * lisp/org/org-table.el (org-table-edit-formulas):
7123         * lisp/org/ox.el (org-export-async-start):
7124         * lisp/play/dunnet.el (dun-score, dun-help, dun-endgame-question)
7125         (dun-rooms, dun-endgame-questions):
7126         * lisp/progmodes/ada-mode.el (ada-goto-matching-start):
7127         * lisp/progmodes/ada-xref.el (ada-find-executable):
7128         * lisp/progmodes/antlr-mode.el (antlr-options-alists):
7129         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
7130         (flymake-start-syntax-check-process):
7131         * lisp/progmodes/python.el (python-define-auxiliary-skeleton):
7132         * lisp/progmodes/sql.el (sql-comint):
7133         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
7134         * lisp/server.el (server-get-auth-key):
7135         * lisp/subr.el (version-to-list):
7136         * lisp/textmodes/reftex-ref.el (reftex-label):
7137         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
7138         * lisp/vc/ediff-diff.el (ediff-same-contents):
7139         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
7140         * test/automated/tramp-tests.el (tramp-test33-asynchronous-requests):
7141         Use directed rather than neutral quotes in diagnostics.
7143         Treat ' like ’ even when not matching `
7144         This is simpler and easier to explain, and should encourage better
7145         typography.  Do this in Electric Quote mode and when translating
7146         quotes in docstrings.  Inspired by a suggestion by Dmitry Gutov in:
7147         https://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00806.html
7148         * doc/emacs/text.texi (Quotation Marks):
7149         * doc/lispref/help.texi (Keys in Documentation):
7150         * etc/NEWS:
7151         Document this.
7152         * lisp/electric.el (electric-quote-post-self-insert-function):
7153         * src/doc.c (Fsubstitute_command_keys):
7154         Always treat ' like ’ even when not matched by an open quote.
7156 2015-08-25  Glenn Morris  <rgm@gnu.org>
7158         * doc/emacs/cal-xtra.texi (Holiday Customizing): Fix typo in example.
7159         * lisp/calendar/holidays.el (calendar-holidays): Fix doc typo.
7161 2015-08-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
7163         * src/macfont.m (macfont_create_family_with_symbol):
7164         Accept localized names.
7166 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
7168         Tramp diagnostics as per ‘text-quoting-style’
7169         * lisp/net/tramp-adb.el (tramp-adb-handle-file-truename)
7170         (tramp-adb-get-ls-command, tramp-adb-handle-make-directory)
7171         (tramp-adb-handle-delete-directory)
7172         (tramp-adb-handle-delete-file)
7173         (tramp-adb-handle-file-local-copy)
7174         (tramp-adb-handle-write-region, tramp-adb-handle-copy-file)
7175         (tramp-adb-send-command-and-check, tramp-adb-wait-for-output)
7176         (tramp-adb-maybe-open-connection):
7177         * lisp/net/tramp-cache.el:
7178         * lisp/net/tramp-compat.el (tramp-compat-temporary-file-directory)
7179         (tramp-compat-octal-to-decimal)
7180         (tramp-compat-coding-system-change-eol-conversion):
7181         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler)
7182         (tramp-gvfs-do-copy-or-rename-file)
7183         (tramp-gvfs-handle-delete-directory)
7184         (tramp-gvfs-handle-delete-file)
7185         (tramp-gvfs-handle-expand-file-name)
7186         (tramp-gvfs-handle-file-local-copy)
7187         (tramp-gvfs-handle-file-notify-add-watch)
7188         (tramp-gvfs-handle-make-directory)
7189         (tramp-gvfs-handle-write-region, tramp-gvfs-url-file-name):
7190         * lisp/net/tramp-gw.el (tramp-gw-gw-proc-sentinel)
7191         (tramp-gw-aux-proc-sentinel, tramp-gw-open-connection):
7192         * lisp/net/tramp-sh.el (tramp-sh-handle-file-truename)
7193         (tramp-sh-handle-set-visited-file-modtime)
7194         (tramp-sh-handle-set-file-modes)
7195         (tramp-sh-handle-file-name-all-completions)
7196         (tramp-sh-handle-add-name-to-file, tramp-do-copy-or-rename-file)
7197         (tramp-do-copy-or-rename-file-directly)
7198         (tramp-do-copy-or-rename-file-out-of-band)
7199         (tramp-sh-handle-make-directory)
7200         (tramp-sh-handle-delete-directory, tramp-sh-handle-delete-file)
7201         (tramp-sh-handle-insert-directory, tramp-process-sentinel)
7202         (tramp-sh-handle-start-file-process)
7203         (tramp-sh-handle-file-local-copy)
7204         (tramp-sh-handle-write-region, tramp-sh-handle-vc-registered)
7205         (tramp-sh-handle-file-notify-add-watch, tramp-maybe-send-script)
7206         (tramp-find-file-exists-command, tramp-open-shell)
7207         (tramp-find-shell)
7208         (tramp-open-connection-setup-interactive-shell)
7209         (tramp-find-inline-encoding, tramp-find-inline-compress)
7210         (tramp-compute-multi-hops, tramp-maybe-open-connection)
7211         (tramp-wait-for-output, tramp-send-command-and-check)
7212         (tramp-send-command-and-read, tramp-get-remote-path)
7213         (tramp-get-ls-command, tramp-get-ls-command-with-dired)
7214         (tramp-get-ls-command-with-quoting-style)
7215         (tramp-get-test-command, tramp-get-remote-ln)
7216         (tramp-get-remote-perl, tramp-get-remote-stat)
7217         (tramp-get-remote-readlink, tramp-get-remote-trash)
7218         (tramp-get-remote-touch, tramp-get-remote-gvfs-monitor-dir)
7219         (tramp-get-remote-inotifywait, tramp-get-remote-id)
7220         (tramp-get-remote-python):
7221         * lisp/net/tramp-smb.el (tramp-smb-errors)
7222         (tramp-smb-handle-add-name-to-file, tramp-smb-handle-copy-file)
7223         (tramp-smb-handle-delete-directory)
7224         (tramp-smb-handle-delete-file)
7225         (tramp-smb-handle-file-local-copy)
7226         (tramp-smb-handle-make-directory)
7227         (tramp-smb-handle-make-directory-internal)
7228         (tramp-smb-handle-make-symbolic-link)
7229         (tramp-smb-handle-rename-file, tramp-smb-handle-set-file-acl)
7230         (tramp-smb-handle-set-file-modes)
7231         (tramp-smb-handle-write-region, tramp-smb-get-file-entries):
7232         * lisp/net/tramp.el (tramp-debug-message, tramp-error)
7233         (tramp-process-actions):
7234         Generate diagnostics according to ‘text-quoting-style’, by
7235         using curved quotes in format strings and ‘format-message’
7236         when appropriate.
7237         * lisp/net/tramp-compat.el (format-message):
7238         Define a replacement, if it’s an older version of Emacs
7239         that doesn’t have it already.
7241         * etc/NEWS: Clarify text-quoting-style and electric-quote-mode.
7243 2015-08-24  Xue Fuqiao  <xfq.free@gmail.com>
7245         Fix documentation for `save-excursion'
7246         * doc/lispref/positions.texi (Excursions):
7247         * doc/lispintro/emacs-lisp-intro.texi (save-excursion)
7248         (Template for save-excursion, Point and mark): `save-excursion'
7249         does not save&restore the mark any more.
7251 2015-08-24  Michael Albinus  <michael.albinus@gmx.de>
7253         * lisp/net/tramp-sh.el (tramp-stat-marker, tramp-stat-quoted-marker):
7254         New defconsts.
7255         (tramp-do-file-attributes-with-stat)
7256         (tramp-do-directory-files-and-attributes-with-stat): Use them.
7257         (tramp-convert-file-attributes): Remove double slashes in symlinks.
7258         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
7259         Handle symlinks with "//" in the file name.
7261         Revert fbb5531fa11d13854b274d28ccd329c9b6652cfc for tramp.el.
7263 2015-08-24  Nicolas Petton  <nicolas@petton.fr>
7265         Fix cl-subseq and cl-concatenate
7266         * lisp/emacs-lisp/cl-extra.el (cl-subseq, cl-concatenate): Do not use
7267         seq functions.
7268         * lisp/emacs-lisp/seq.el (seq-concatenate): Call cl-concatenate in
7269         seq-concatenate.
7271 2015-08-24  Pip Cet  <pipcet@gmail.com>  (tiny change)
7273         Fix full-screen code when there is no window manager (Bug#21317)
7274         * src/xterm.h (x_wm_supports): Declare external.
7275         * src/xterm.c (wm_suppports): Rename to `x_wm_supports', export.
7276         (do_ewmh_fullscreen, x_ewmh_activate_frame): Adjust for rename.
7277         (x_check_fullscreen): Call `x_wm_set_size_hint', restore
7278         `fullscreen' frame parameter.
7279         * src/gtkutil.c (x_wm_set_size_hint): Set size hints when running
7280         without a window manager.
7282 2015-08-24  Glenn Morris  <rgm@gnu.org>
7284         * lisp/version.el (emacs-version): No longer include build host.
7285         * doc/lispref/intro.texi (Version Info): Update example.
7287 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
7289         * doc/lispref/elisp.texi: Fix typo in previous change.
7291         More-conservative ‘format’ quote restyling
7292         Instead of restyling curved quotes for every call to ‘format’,
7293         create a new function ‘format-message’ that does the restyling,
7294         and using the new function instead of ‘format’ only in contexts
7295         where this seems appropriate.
7296         Problem reported by Dmitry Gutov and Andreas Schwab in:
7297         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00826.html
7298         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00827.html
7299         * doc/lispref/commands.texi (Using Interactive):
7300         * doc/lispref/control.texi (Signaling Errors, Signaling Errors):
7301         * doc/lispref/display.texi (Displaying Messages, Progress):
7302         * doc/lispref/elisp.texi:
7303         * doc/lispref/help.texi (Keys in Documentation):
7304         * doc/lispref/minibuf.texi (Minibuffer Misc):
7305         * doc/lispref/strings.texi (Formatting Strings):
7306         * etc/NEWS:
7307         Document the changes.
7308         * lisp/abbrev.el (expand-region-abbrevs):
7309         * lisp/apropos.el (apropos-library):
7310         * lisp/calc/calc-ext.el (calc-record-message)
7311         (calc-user-function-list):
7312         * lisp/calc/calc-help.el (calc-describe-key, calc-full-help):
7313         * lisp/calc/calc-lang.el (math-read-big-balance):
7314         * lisp/calc/calc-store.el (calc-edit-variable):
7315         * lisp/calc/calc-units.el (math-build-units-table-buffer):
7316         * lisp/calc/calc-yank.el (calc-edit-mode):
7317         * lisp/calendar/icalendar.el (icalendar-export-region)
7318         (icalendar--add-diary-entry):
7319         * lisp/cedet/mode-local.el (mode-local-print-binding)
7320         (mode-local-describe-bindings-2):
7321         * lisp/cedet/semantic/complete.el (semantic-completion-message):
7322         * lisp/cedet/semantic/edit.el (semantic-parse-changes-failed):
7323         * lisp/cedet/semantic/wisent/comp.el (wisent-log):
7324         * lisp/cedet/srecode/insert.el (srecode-insert-show-error-report):
7325         * lisp/descr-text.el (describe-text-properties-1, describe-char):
7326         * lisp/dframe.el (dframe-message):
7327         * lisp/dired-aux.el (dired-query):
7328         * lisp/emacs-lisp/byte-opt.el (byte-compile-log-lap-1):
7329         * lisp/emacs-lisp/bytecomp.el (byte-compile-log)
7330         (byte-compile-log-file, byte-compile-warn, byte-compile-form):
7331         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
7332         (cconv-analyze-form):
7333         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
7334         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
7335         * lisp/emacs-lisp/cl-macs.el (cl-symbol-macrolet):
7336         * lisp/emacs-lisp/edebug.el (edebug-format):
7337         * lisp/emacs-lisp/eieio-core.el (eieio-oref):
7338         * lisp/emacs-lisp/eldoc.el (eldoc-minibuffer-message)
7339         (eldoc-message):
7340         * lisp/emacs-lisp/elint.el (elint-file, elint-log):
7341         * lisp/emacs-lisp/find-func.el (find-function-library):
7342         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
7343         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
7344         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
7345         * lisp/emacs-lisp/package.el (package-compute-transaction)
7346         (package-install-button-action, package-delete-button-action)
7347         (package-menu--list-to-prompt):
7348         * lisp/emacs-lisp/timer.el (timer-event-handler):
7349         * lisp/emacs-lisp/warnings.el (lwarn, warn):
7350         * lisp/emulation/viper-cmd.el:
7351         (viper-toggle-parse-sexp-ignore-comments)
7352         (viper-kill-buffer, viper-brac-function):
7353         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
7354         * lisp/facemenu.el (facemenu-add-new-face):
7355         * lisp/faces.el (face-documentation, read-face-name)
7356         (face-read-string, read-face-font, describe-face):
7357         * lisp/files.el (find-alternate-file, hack-local-variables)
7358         (hack-one-local-variable--obsolete, write-file)
7359         (basic-save-buffer, delete-directory):
7360         * lisp/format.el (format-write-file, format-find-file)
7361         (format-insert-file):
7362         * lisp/help-fns.el (help-fns--key-bindings)
7363         (help-fns--compiler-macro, help-fns--obsolete)
7364         (help-fns--interactive-only, describe-function-1)
7365         (describe-variable):
7366         * lisp/help.el (describe-mode):
7367         * lisp/info-xref.el (info-xref-output):
7368         * lisp/info.el (Info-virtual-index-find-node)
7369         (Info-virtual-index, info-apropos):
7370         * lisp/international/kkc.el (kkc-error):
7371         * lisp/international/mule-cmds.el:
7372         (select-safe-coding-system-interactively)
7373         (select-safe-coding-system, describe-input-method):
7374         * lisp/international/mule-conf.el (code-offset):
7375         * lisp/international/mule-diag.el (describe-character-set)
7376         (list-input-methods-1):
7377         * lisp/international/quail.el (quail-error):
7378         * lisp/minibuffer.el (minibuffer-message):
7379         * lisp/mpc.el (mpc--debug):
7380         * lisp/msb.el (msb--choose-menu):
7381         * lisp/net/ange-ftp.el (ange-ftp-message):
7382         * lisp/net/gnutls.el (gnutls-message-maybe):
7383         * lisp/net/newst-backend.el (newsticker--sentinel-work):
7384         * lisp/net/newst-treeview.el (newsticker--treeview-load):
7385         * lisp/net/nsm.el (nsm-query-user):
7386         * lisp/net/rlogin.el (rlogin):
7387         * lisp/net/soap-client.el (soap-warning):
7388         * lisp/net/tramp.el (tramp-debug-message):
7389         * lisp/nxml/nxml-outln.el (nxml-report-outline-error):
7390         * lisp/nxml/nxml-parse.el (nxml-parse-error):
7391         * lisp/nxml/rng-cmpct.el (rng-c-error):
7392         * lisp/nxml/rng-match.el (rng-compile-error):
7393         * lisp/nxml/rng-uri.el (rng-uri-error):
7394         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
7395         * lisp/org/org-ctags.el:
7396         (org-ctags-ask-rebuild-tags-file-then-find-tag):
7397         * lisp/proced.el (proced-log):
7398         * lisp/progmodes/ebnf2ps.el (ebnf-log):
7399         * lisp/progmodes/flymake.el (flymake-log):
7400         * lisp/progmodes/vhdl-mode.el (vhdl-warning-when-idle):
7401         * lisp/replace.el (occur-1):
7402         * lisp/simple.el (execute-extended-command)
7403         (undo-outer-limit-truncate, define-alternatives):
7404         * lisp/startup.el (command-line):
7405         * lisp/subr.el (error, user-error, add-to-list):
7406         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
7407         (tutorial--find-changed-keys):
7408         * src/callint.c (Fcall_interactively):
7409         * src/editfns.c (Fmessage, Fmessage_box):
7410         Restyle the quotes of format strings intended for use as a
7411         diagnostic, when restyling seems appropriate.
7412         * lisp/subr.el (format-message): New function.
7413         * src/doc.c (Finternal__text_restyle): New function.
7414         (syms_of_doc): Define it.
7416 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
7418         * etc/NEWS: The new ‘q’ flag is not an incompatible change.
7420 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
7422         python.el: Fix python-shell-buffer-substring on indented code
7423         (Bug#21086)
7424         * lisp/progmodes/python.el (python-shell-buffer-substring):
7425         Respect current line indentation when calculating string.
7426         * test/automated/python-tests.el
7427         (python-shell-buffer-substring-10)
7428         (python-shell-buffer-substring-11)
7429         (python-shell-buffer-substring-12): New tests.
7431 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
7433         Fix minor glitches from ‘format’ reversion
7434         * doc/lispref/strings.texi (Formatting Strings):
7435         After reversion, ‘text-quoting-style’ is documented in ‘Keys in
7436         Documentation’, not below.
7437         * src/syntax.c (Finternal_describe_syntax_value):
7438         Prefer AUTO_STRING to build_string where either will do, as
7439         AUTO_STRING is a bit faster.
7441 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
7443         python.el: Defer shell setup code until first interactive prompt
7444         * lisp/progmodes/python.el
7445         (python-shell-comint-watch-for-first-prompt-output-filter):
7446         New function.
7447         (inferior-python-mode): Use it.
7448         (python-shell-first-prompt-hook): New hook.
7449         (python-shell-send-setup-code)
7450         (python-shell-completion-native-turn-on-maybe-with-msg): Attach to
7451         this hook instead of inferior-python-hook.
7453 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
7455         Remove the calls to `seq-into` from `seq-concatenate`
7456         Since most new types of seq would have to be defined as sequences (cons
7457         cells or CL structs, mostly), there is no need to convert the seqs to
7458         sequences (which can be a fairly expensive operation).
7459         * lisp/emacs-lisp/seq.el (seq-concatenate): Do not ensure that seqs are
7460         sequences.
7462 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
7464         python.el: Fix completion for pdb interactions
7465         * lisp/progmodes/python.el (python-shell-completion-setup-code):
7466         Simplify.  Toggle print_mode for native wrapped completer.
7467         (python-shell-completion-native-setup): Ensure process buffer.
7468         Add print_mode attribute to completer wrapper to toggle returning
7469         or printing candidates.
7470         (python-shell-completion-native-get-completions): Cleanup.
7471         (python-shell-completion-get-completions): Cleanup.
7472         (python-shell-completion-at-point): Perform prompt checks.
7473         Force fallback completion in pdb interactions.
7475 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
7477         Make seq.el more extensible by using cl-defmethod
7478         * lisp/emacs-lisp/seq.el: Define seq.el functions using cl-defmethod to
7479         make it easier to extend seq.el with new "seq types".
7480         * test/automated/seq-tests.el (test-setf-seq-elt): New test.
7481         * lisp/emacs-lisp/cl-extra.el (cl-subseq): Move back the definition of
7482         subseq in cl-extra.el, and use it in seq.el.
7484 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
7486         python.el: Fix prompt detection with user overridden interpreter
7487         * lisp/progmodes/python.el (python-shell-prompt-detect):
7488         Honor buffer local python-shell-interpreter and
7489         python-shell-interpreter-interactive-arg.
7491 2015-08-23  Eli Zaretskii  <eliz@gnu.org>
7493         Support exec-directory with non-ASCII characters on Windows
7494         * src/w32proc.c (sys_spawnve): Make sure exec-directory is encoded
7495         in the system's ANSI codepage, when it is used for invoking
7496         cmdproxy.
7498 2015-08-23  Andreas Schwab  <schwab@linux-m68k.org>
7500         Revert "Extend ‘format’ to translate curved quotes"
7501         This reverts commit 244c801689d2f7a80480d83cd7d092d4762ebe08.
7503         Revert "Prefer ‘format’ to ‘substitute-command-keys’"
7504         This reverts commit 6af5aad26411ffe21c3fe4bc5438347110910111.
7506 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
7508         * doc/lispintro/emacs-lisp-intro.texi (Switching Buffers):
7509         Clarify "invisible window".
7511 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
7513         * doc/emacs/modes.texi (Choosing Modes): Minor doc fix for
7514         magic-fallback-mode-alist.
7516 2015-08-22  Fabián Ezequiel Gallina  <fgallina@gnu.org>
7518         python.el: fallback completion, ffap and eldoc setup enhancements
7519         Setup codes are now sent continuously so that the current frame is
7520         always taken into account.  This allows working within debuggers
7521         and always keeping a fresh version of setup codes that will return
7522         proper results.
7523         * lisp/progmodes/python.el (python-shell-setup-codes): Cleanup.
7524         (python-shell-send-setup-code): Send code only when
7525         python-shell-setup-codes is non-nil.
7526         (python-shell-completion-string-code): Cleanup trailing newline.
7527         (python-shell-completion-get-completions): Always use
7528         python-shell-completion-setup-code.
7529         (python-ffap-setup-code): Work with any object, not only modules.
7530         (python-ffap-string-code): Cleanup trailing newline.
7531         (python-ffap-module-path): Always use python-ffap-setup-code.
7532         (python-eldoc-string-code): Cleanup trailing newline.
7533         (python-eldoc--get-doc-at-point): Always use
7534         python-eldoc-setup-code.  Return non-nil only if docstring is
7535         found.
7537         python.el: Increase native completion robustness
7538         * lisp/progmodes/python.el (python-shell-completion-native-setup):
7539         Make completer print real candidates and just return dummy ones to
7540         avoid input modification.
7541         (python-shell-completion-native-get-completions): Set
7542         comint-redirect-insert-matching-regexp to non-nil and make
7543         comint-redirect-finished-regexp match the last dummy candidate.
7544         Use python-shell-accept-process-output to wait for the full list
7545         of candidates.
7547 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
7549         Fix invocation of programs via cmdproxy.exe
7550         * src/w32proc.c (sys_spawnve): Use exec-directory, not
7551         invocation-directory, for finding cmdproxy.exe.  When Emacs is
7552         run from the source tree, look for cmdproxy.exe in the same source
7553         tree.  (Bug#21323)
7555 2015-08-22  Simen Heggestøyl  <simenheg@gmail.com>
7557         Handle comments inside unquoted URIs in css-mode
7558         * lisp/textmodes/css-mode.el (css--uri-re): New defconst.
7559         (css-syntax-propertize-function): New defconst.
7560         (css--font-lock-keywords): Handle parens around unquoted URIs.
7561         (css-mode): Set `syntax-propertize-function'.
7563 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
7565         Support invocation of Hunspell with multiple dictionaries
7566         * lisp/textmodes/ispell.el (ispell-parse-hunspell-affix-file):
7567         Support lists of dictionaries of the form "DICT1,DICT2,...".
7568         (ispell-hunspell-add-multi-dic): New command.  (Bug#20495)
7570         Minor formatting changes in ispell.el
7571         * lisp/textmodes/ispell.el (ispell-create-debug-buffer)
7572         (ispell-print-if-debug, ispell-aspell-find-dictionary)
7573         (ispell-aspell-add-aliases, ispell-hunspell-dict-paths-alist)
7574         (ispell-hunspell-dictionary-alist)
7575         (ispell-hunspell-fill-dictionary-entry)
7576         (ispell-find-hunspell-dictionaries, ispell-send-replacement)
7577         (ispell-buffer-with-debug, ispell-complete-word)
7578         (ispell-current-dictionary, ispell-current-personal-dictionary)
7579         (ispell-accept-output, ispell-minor-mode)
7580         (ispell-personal-dictionary, ispell-dictionary-alist)
7581         (ispell-really-aspell, ispell-really-hunspell)
7582         (ispell-encoding8-command, ispell-aspell-supports-utf8)
7583         (ispell-aspell-dictionary-alist, ispell-set-spellchecker-params):
7584         Fix whitespace, inconsistent capitalization, and arguments in doc
7585         strings.
7587 2015-08-22  Martin Rudalics  <rudalics@gmx.at>
7589         * lisp/window.el (adjust-window-trailing-edge): Fix bug where this
7590         function refused to resize a size-preserved window.
7592 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
7594         * doc/lispref/windows.texi (Selecting Windows): Improve
7595         documentation and indexing of 'window-use-time'.
7597 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
7599         * lisp/progmodes/cc-vars.el, lisp/progmodes/cc-styles.el:
7600         * lisp/progmodes/cc-mode.el, lisp/progmodes/cc-menus.el:
7601         * lisp/progmodes/cc-langs.el, lisp/progmodes/cc-guess.el:
7602         * lisp/progmodes/cc-fonts.el, lisp/progmodes/cc-engine.el:
7603         * lisp/progmodes/cc-defs.el, lisp/progmodes/cc-cmds.el:
7604         * lisp/progmodes/cc-bytecomp.el, lisp/progmodes/cc-awk.el:
7605         * lisp/progmodes/cc-align.el, lisp/net/soap-client.el:
7606         Fix up commenting style.
7608 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
7610         text-quoting-style in emacs-lisp diagnostics
7611         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
7612         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
7613         (ad-disable-advice, ad-remove-advice, ad-set-argument)
7614         (ad-set-arguments):
7615         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
7616         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
7617         (byte-optimize-while, byte-optimize-apply):
7618         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
7619         (byte-compile-log-file, byte-compile-format-warn)
7620         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
7621         (byte-compile-cl-warn)
7622         (byte-compile-warn-about-unresolved-functions)
7623         (byte-compile-file, byte-compile-fix-header)
7624         (byte-compile--declare-var, byte-compile-file-form-defmumble)
7625         (byte-compile-form, byte-compile-normal-call)
7626         (byte-compile-variable-ref, byte-compile-variable-set)
7627         (byte-compile-subr-wrong-args, byte-compile-setq-default)
7628         (byte-compile-negation-optimizer)
7629         (byte-compile-condition-case--old)
7630         (byte-compile-condition-case--new, byte-compile-save-excursion)
7631         (byte-compile-defvar, byte-compile-autoload)
7632         (byte-compile-lambda-form)
7633         (byte-compile-make-variable-buffer-local, display-call-tree)
7634         (batch-byte-compile):
7635         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
7636         (cconv-analyze-form):
7637         * lisp/emacs-lisp/chart.el (chart-space-usage):
7638         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
7639         (check-declare-warn, check-declare-file)
7640         (check-declare-directory):
7641         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
7642         (checkdoc-message-text-engine):
7643         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer):
7644         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
7645         (cl-symbol-macrolet):
7646         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
7647         * lisp/emacs-lisp/copyright.el (copyright)
7648         (copyright-update-directory):
7649         * lisp/emacs-lisp/edebug.el (edebug-read-list):
7650         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
7651         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
7652         (eieio-oref, eieio-oset-default):
7653         * lisp/emacs-lisp/eieio-speedbar.el:
7654         (eieio-speedbar-child-make-tag-lines)
7655         (eieio-speedbar-child-description):
7656         * lisp/emacs-lisp/eieio.el (defclass, change-class):
7657         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
7658         (elint-init-form, elint-check-defalias-form)
7659         (elint-check-let-form):
7660         * lisp/emacs-lisp/ert.el (ert-get-test):
7661         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
7662         (find-function-library):
7663         * lisp/emacs-lisp/generator.el (iter-yield):
7664         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
7665         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
7666         * lisp/emacs-lisp/package-x.el (package-upload-file):
7667         * lisp/emacs-lisp/package.el (package-version-join)
7668         (package-disabled-p, package-activate-1, package-activate)
7669         (package--download-one-archive)
7670         (package--download-and-read-archives)
7671         (package-compute-transaction, package-install-from-archive)
7672         (package-install, package-install-selected-packages)
7673         (package-delete, package-autoremove)
7674         (package-install-button-action, package-delete-button-action)
7675         (package-menu-hide-package, package-menu--list-to-prompt)
7676         (package-menu--perform-transaction)
7677         (package-menu--find-and-notify-upgrades):
7678         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
7679         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
7680         * lisp/emacs-lisp/ring.el (ring-next, ring-previous):
7681         * lisp/emacs-lisp/rx.el (rx-check, rx-anything):
7682         * lisp/emacs-lisp/smie.el (smie-config-save):
7683         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
7684         * lisp/emacs-lisp/testcover.el (testcover-1value):
7685         Use curved quotes in diagnostic format strings.
7687 2015-08-21  Fabián Ezequiel Gallina  <fgallina@gnu.org>
7689         python.el: Ensure remote process-environment on non-interactive processes
7690         * lisp/progmodes/python.el
7691         (python-shell-tramp-refresh-process-environment): New function.
7692         (python-shell-with-environment): Use it.
7693         * test/automated/python-tests.el (python-shell-with-environment-2):
7694         Update.
7696         python.el: Enhancements to process environment setup.
7697         * lisp/progmodes/python.el (python-shell-process-environment)
7698         (python-shell-extra-pythonpaths, python-shell-exec-path)
7699         (python-shell-virtualenv-root): Update docstring.  Remove :safe.
7700         (python-shell-setup-codes): Remove :safe.
7701         (python-shell-remote-exec-path): New defcustom.
7702         (python-shell--add-to-path-with-priority): New macro.
7703         (python-shell-calculate-pythonpath): Give priority to
7704         python-shell-extra-pythonpaths.  Update docstring.
7705         (python-shell-calculate-process-environment): Give priority to
7706         python-shell-process-environment.  Update docstring.
7707         (python-shell-calculate-exec-path): Give priority to
7708         python-shell-exec-path and calculated virtualenv bin directory.
7709         Update docstring.
7710         (python-shell-tramp-refresh-remote-path): New function.
7711         (python-shell-with-environment): Use it when working remotely and
7712         do not modify tramp-remote-path.  Allow nesting.
7713         (python-shell-calculate-command): Remove useless
7714         python-shell-with-environment call.
7715         * test/automated/python-tests.el (python-shell-calculate-pythonpath-1)
7716         (python-shell-calculate-pythonpath-2)
7717         (python-shell-calculate-process-environment-6)
7718         (python-shell-calculate-process-environment-7)
7719         (python-shell-calculate-process-environment-8)
7720         (python-shell-calculate-exec-path-3)
7721         (python-shell-calculate-exec-path-4)
7722         (python-shell-calculate-exec-path-5)
7723         (python-shell-calculate-exec-path-6)
7724         (python-shell-with-environment-3): New tests.
7725         (python-shell-calculate-process-environment-2)
7726         (python-shell-calculate-process-environment-3)
7727         (python-shell-calculate-process-environment-4)
7728         (python-shell-calculate-process-environment-5)
7729         (python-shell-calculate-exec-path-1)
7730         (python-shell-calculate-exec-path-2)
7731         (python-shell-with-environment-1)
7732         (python-shell-with-environment-2): Update and simplify.
7734 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
7736         Avoid hard-coding "M-x command" in docstrings
7737         * lisp/calendar/todo-mode.el (todo-mode):
7738         * lisp/desktop.el (desktop-save-mode):
7739         * lisp/edmacro.el (edit-kbd-macro):
7740         * lisp/emacs-lisp/package.el (package-menu-execute):
7741         * lisp/emulation/viper-cmd.el (viper-ask-level):
7742         * lisp/emulation/viper-init.el (viper-expert-level):
7743         * lisp/filesets.el (filesets-add-buffer):
7744         * lisp/follow.el (follow-mode):
7745         * lisp/gnus/auth-source.el (auth-sources):
7746         * lisp/international/ogonek.el (ogonek-informacja)
7747         (ogonek-information):
7748         * lisp/net/tramp.el (tramp-process-actions):
7749         * lisp/org/org-gnus.el (org-gnus-no-new-news):
7750         * lisp/org/org.el (org-ellipsis):
7751         * lisp/progmodes/python.el (python-shell-get-process-or-error):
7752         * lisp/progmodes/vhdl-mode.el (vhdl-mode):
7753         * lisp/server.el (server-start):
7754         * lisp/type-break.el (type-break-noninteractive-query):
7755         * lisp/userlock.el (ask-user-about-supersession-help):
7756         * lisp/whitespace.el (whitespace-report-region):
7757         Prefer (substitute-command-keys "`\\[foo-command]'")
7758         to "`M-x foo-command'" in docstrings and the like.
7760 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
7762         Use add-function for prettify-symbols-compose-predicate
7763         * lisp/textmodes/tex-mode.el (tex-common-initialization): Set
7764         prettify-symbols-compose-predicate in terms of add-function.
7765         * etc/NEWS: Mention prettify-symbols-compose-predicate and
7766         prettify-symbols-mode support in tex-mode.
7768 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
7770         * lisp/emacs-lisp/smie.el (smie-indent-current-column): New fun.
7771         (smie-indent-exps, smie-indent-keyword): Use it.
7772         * test/indent/css-mode.css: Test alignment with leading comment.
7774 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
7776         Respect text-quoting-style in (*Finder*) menus
7777         * lisp/info.el (info--prettify-description):
7778         Treat description as a docstring, so that it's requoted as
7779         per text-quoting-style.
7781 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
7783         Document `window-use-time' in Elisp manual
7784         * doc/lispref/windows.texi (Selecting Windows): Document
7785         `window-use-time'.
7787 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
7789         * src/w32uniscribe.c (_WIN32_WINNT): Define to 0x0600.
7790         This is a cleaner fix for Bug#21260 than the previous change.
7792 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
7794         Respect text-quoting-style in calc
7795         In calc, tespect text-quoting-style preference in diagnostic
7796         formats and fix a few similar problems in docstrings.
7797         * lisp/calc/calc-aent.el (math-read-factor):
7798         * lisp/calc/calc-embed.el (calc-do-embedded):
7799         * lisp/calc/calc-ext.el (calc-user-function-list)
7800         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
7801         * lisp/calc/calc-help.el (calc-describe-key)
7802         (calc-describe-thing):
7803         * lisp/calc/calc-lang.el (calc-c-language)
7804         (math-parse-fortran-vector-end, math-parse-tex-sum)
7805         (math-parse-eqn-matrix, math-parse-eqn-prime)
7806         (calc-yacas-language, calc-maxima-language, calc-giac-language)
7807         (math-read-big-rec, math-read-big-balance):
7808         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
7809         (calc-auto-recompute):
7810         * lisp/calc/calc-prog.el (calc-user-define-invocation)
7811         (math-do-arg-check):
7812         * lisp/calc/calc-store.el (calc-edit-variable):
7813         * lisp/calc/calc-units.el (math-build-units-table-buffer):
7814         * lisp/calc/calc-vec.el (math-read-brackets):
7815         * lisp/calc/calc-yank.el (calc-edit-mode):
7816         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
7817         Use curved quotes in diagnostic format strings.
7818         * lisp/calc/calc-help.el (calc-describe-thing):
7819         Format docstrings with substitute-command-keys.
7820         * lisp/calc/calc-help.el (calc-j-prefix-help):
7821         * lisp/calc/calc-misc.el (calc-help):
7822         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
7823         Escape a docstring "`".
7825 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
7827         Fix documentation of 'menu-set-font' and 'set-frame-font'
7828         * lisp/menu-bar.el (menu-set-font): Doc fix.  (Bug#21303)
7829         * doc/lispref/frames.texi (Frame Font): Document that
7830         set-frame-font with the last argument 't' will also make the font
7831         the default for the future GUI frames.
7833         Document '--create-frame' option to emacsclient
7834         * doc/emacs/misc.texi (emacsclient Options): Document the
7835         '--create-frame' option.  (Bug#21308)
7837 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
7839         * lisp/progmodes/js.el (js-mode): Don't eagerly syntax propertize.
7841 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
7843         Document 'get-mru-window' in the ELisp manual
7844         * doc/lispref/windows.texi (Cyclic Window Ordering): Document
7845         'get-mru-window'.  (Bug#21306)
7847         Clarify documentation of 'get-buffer-window-list'
7848         * doc/lispref/windows.texi (Buffers and Windows): Mention that the
7849         current window, if relevant, will be the first in the list
7850         returned by 'get-buffer-window-list'.
7851         * lisp/window.el (get-buffer-window-list): Doc fix.  (Bug#21305)
7853 2015-08-21  Vasilij Schneidermann  <v.schneidermann@gmail.com>
7855         In `ielm' use `pop-to-buffer-same-window' (Bug#20848)
7856         * lisp/ielm.el (ielm): Use `pop-to-buffer-same-window' instead of
7857         `switch-to-buffer'.
7859 2015-08-21  Kaushal Modi  <kaushal.modi@gmail.com>  (tiny change)
7861         In woman.el use `display-buffer' instead of `switch-to-buffer' (Bug#21047)
7862         * lisp/woman.el (woman-really-find-file, WoMan-find-buffer): Use
7863         `display-buffer' instead of `switch-to-buffer'.
7865 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
7867         Follow user preference in calendar diagnostics
7868         Respect text-quoting-style preference in diagnostic formats by
7869         using curved quotes (which are translated as per text-quoting-style)
7870         instead of grave accent and apostrophe (which are not).
7871         * lisp/calendar/appt.el (appt-display-message):
7872         * lisp/calendar/diary-lib.el (diary-check-diary-file)
7873         (diary-mail-entries, diary-from-outlook):
7874         * lisp/calendar/icalendar.el (icalendar-export-region)
7875         (icalendar--convert-float-to-ical)
7876         (icalendar--convert-date-to-ical)
7877         (icalendar--convert-ical-to-diary)
7878         (icalendar--convert-recurring-to-diary)
7879         (icalendar--add-diary-entry):
7880         * lisp/calendar/time-date.el (format-seconds):
7881         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
7882         (timeclock-make-hours-explicit):
7883         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
7884         (todo-item-mark, todo-check-format)
7885         (todo-insert-item--next-param, todo-edit-item--next-key)
7886         (todo-mode):
7887         Use curved quotes in diagnostic format strings.
7888         * lisp/calendar/icalendar.el (icalendar-import-format-sample):
7889         * test/automated/icalendar-tests.el (icalendar--import-format-sample):
7890         Just use straight quoting for simple test case.
7892 2015-08-21  Michael Albinus  <michael.albinus@gmx.de>
7894         * src/gfilenotify.c (Fgfile_add_watch):
7895         Handle errors from g_file_monitor.
7897 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
7899         In frames.texi use "minibuffer-less frame" instead of "non-minibuffer frame"
7900         * doc/lispref/frames.texi (Frame Layout): Use "minibuffer-less
7901         frame" instead of "non-minibuffer frame".
7903         Fix frame geometry related text
7904         * doc/lispref/frames.texi (Frame Layout):
7905         Rename `x-frame-geometry' to `frame-geometry'.
7906         * doc/lispref/frames.texi (Mouse Position):
7907         * doc/lispref/windows.texi (Coordinates and Windows):
7908         Use `set-mouse-absolute-pixel-position' instead of
7909         `x-set-mouse-absolute-pixel-position'.
7911         Sanitize frame geometry related functions
7912         * src/nsfns.m (Fx_frame_geometry): Rename to Fns_frame_geometry.
7913         (Fx_frame_edges): Rename to Fns_frame_edges.
7914         * src/w32fns.c (Fx_frame_geometry): Rename to Fw32_frame_geometry.
7915         (Fx_frame_edges): Rename to Fw32_frame_edges.
7916         (Fx_mouse_absolute_pixel_position): Rename to
7917         Fw32_mouse_absolute_pixel_position.
7918         (Fx_set_mouse_absolute_pixel_position): Rename to
7919         Fw32_set_mouse_absolute_pixel_position.
7920         * lisp/frame.el (x-frame-geometry, w32-frame-geometry)
7921         (ns-frame-geometry, x-frame-edges, w32-frame-edges)
7922         (ns-frame-edges, w32-mouse-absolute-pixel-position)
7923         (x-mouse-absolute-pixel-position)
7924         (w32-set-mouse-absolute-pixel-position)
7925         (x-set-mouse-absolute-pixel-position): Declare.
7926         (frame-geometry, mouse-absolute-pixel-position)
7927         (set-mouse-absolute-pixel-position): New functions.
7928         (frame-edges): Rewrite in terms of x-/w32-/ns-frame-edges.
7930 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
7932         Fix MinGW64 build broken by latest w32uniscribe.c changes
7933         * src/w32uniscribe.c (UNISCRIBE_OPENTYPE): Define to 0x0100, for
7934         MinGW64.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
7935         (Bug#21260)
7937 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
7939         Add TeX defaults for prettify-symbol-mode
7940         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
7941         Rename from tex-prettify-symbols-alist.
7942         (tex--prettify-symbols-compose-p): New function.
7943         (tex-common-initialization): Use them as prettify-symbols-alist
7944         and prettify-symbols-compose-predicate.
7946         Generalize prettify-symbols to arbitrary modes
7947         * lisp/progmodes/prog-mode.el
7948         (prettify-symbols-default-compose-p): New function.
7949         (prettify-symbols-compose-predicate): New variable.
7950         (prettify-symbols--compose-symbol): Use it.
7952 2015-08-20  Paul Eggert  <eggert@cs.ucla.edu>
7954         Don't quote symbols 'like-this' in docstrings etc.
7955         * admin/unidata/uvs.el (uvs-insert-fields-as-bytes):
7956         * lisp/allout-widgets.el (allout-widgets-count-buttons-in-region):
7957         * lisp/allout.el (allout-add-resumptions, allout-mode):
7958         * lisp/calculator.el (calculator-operators):
7959         * lisp/cedet/data-debug.el (dd-propertize):
7960         * lisp/cedet/ede/proj-prog.el (ede-proj-target-makefile-program):
7961         * lisp/cedet/semantic/analyze/debug.el:
7962         (semantic-analyzer-debug-global-miss-text):
7963         * lisp/cedet/semantic/lex-spp.el:
7964         (semantic-lex-spp-replace-or-symbol-or-keyword):
7965         * lisp/cedet/semantic/symref.el:
7966         (semantic-symref-cleanup-recent-buffers-fcn):
7967         * lisp/cedet/semantic/tag.el (semantic-tag-class):
7968         * lisp/cedet/srecode/el.el (srecode-semantic-handle-:el-custom):
7969         * lisp/gnus/nnmairix.el (nnmairix-propagate-marks-upon-close):
7970         * lisp/gnus/pop3.el (pop3-authentication-scheme):
7971         * lisp/help-fns.el (describe-function-orig-buffer):
7972         * lisp/imenu.el (imenu--history-list):
7973         * lisp/mail/feedmail.el (feedmail-confirm-outgoing)
7974         (feedmail-display-full-frame, feedmail-deduce-bcc-where)
7975         (feedmail-queue-default-file-slug)
7976         (feedmail-queue-buffer-file-name):
7977         * lisp/net/mairix.el (mairix-searches-mode-map):
7978         * lisp/net/newst-backend.el (newsticker-retrieval-method)
7979         (newsticker-auto-mark-filter-list):
7980         * lisp/obsolete/vi.el (vi-mode):
7981         * lisp/progmodes/cc-engine.el (c-literal-type):
7982         * lisp/progmodes/cpp.el (cpp-face):
7983         * lisp/progmodes/ebrowse.el (ebrowse-electric-list-looper):
7984         * lisp/progmodes/elisp-mode.el (elisp--xref-make-xref):
7985         * lisp/progmodes/pascal.el (pascal-auto-lineup):
7986         * lisp/progmodes/prog-mode.el (prog-widen):
7987         * lisp/progmodes/verilog-mode.el (verilog-regexp-words)
7988         (verilog-auto-lineup, verilog-auto-reset-widths)
7989         (verilog-auto-arg-format, verilog-auto-inst-template-numbers):
7990         * lisp/textmodes/flyspell.el (flyspell-maybe-correct-transposition)
7991         (flyspell-maybe-correct-doubling):
7992         * lisp/textmodes/table.el (table-justify, table-justify-cell)
7993         (table-justify-row, table-justify-column, table-insert-sequence)
7994         (table--justify-cell-contents):
7995         * lisp/url/url-auth.el (url-get-authentication):
7996         * lisp/window.el (display-buffer-record-window):
7997         * lisp/xml.el (xml-parse-file, xml-parse-region):
7998         * src/gfilenotify.c (Fgfile_add_watch):
7999         Don't quote symbols with apostrophes in doc strings.
8000         Use asymmetric quotes instead.
8001         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
8002         Likewise for symbol in diagnostic.
8003         * lisp/image.el (image-extension-data):
8004         * lisp/register.el (frame-configuration-to-register):
8005         * src/buffer.c (syms_of_buffer):
8006         Remove bogus apostrophes after symbols.
8007         * lisp/thumbs.el (thumbs-conversion-program):
8008         Quote Lisp string values using double-quotes, not apostrophes.
8010 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
8012         Describe frame geometry and related functions in Elisp manual
8013         * doc/lispref/display.texi (Size of Displayed Text, Line Height)
8014         (Showing Images): Update references.
8015         * doc/lispref/elisp.texi (Top): Update node listing.
8016         * doc/lispref/frames.texi (Frame Geometry): New node.
8017         Move `Size and Position' section here.
8018         (Size Parameters): Update references.
8019         (Mouse Position): Update references and nomenclature.
8020         Describe new functions `x-mouse-absolute-pixel-position' and
8021         `x-set-mouse-absolute-pixel-position'.
8022         * doc/lispref/windows.texi (Window Sizes): Update references.
8023         (Resizing Windows): Update references.  Move description of
8024         `fit-frame-to-buffer' here.
8025         (Coordinates and Windows): Update nomenclature and references.
8026         Describe new arguments of `window-edges'.  Comment out
8027         descriptions of `window-left-column', `window-top-line',
8028         `window-pixel-left' and `window-pixel-top'.  Describe
8029         `window-absolute-pixel-position'.
8031 2015-08-20  Alan Mackenzie  <acm@muc.de>
8033         Handling of `c-parse-state'.  Fix low level bug.
8034         * lisp/progmodes/cc-engine.el (c-remove-stale-state-cache-backwards):
8035         Add "CASE 3.5" to handle `cache-pos' being only slightly before `here'.
8037 2015-08-20  Andreas Politz  <politza@hochschule-trier.de>
8039         * lisp/wid-edit.el (widget-color--choose-action): Quit *Color*
8040         window instead of deleting it.
8042 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
8044         In w32fns.c's Fx_frame_geometry rewrite check whether frame has a titlebar
8045         * src/w32fns.c (Fx_frame_geometry): Use title_bar.rgstate[0] to
8046         determine whether frame has a titlebar.
8047         Suggested by Eli Zaretskii <eliz@gnu.org>
8049 2015-08-20  Tassilo Horn  <tsdh@gnu.org>
8051         Add a prettify-symbols-alist for (La)TeX
8052         * lisp/textmodes/tex-mode.el (tex-prettify-symbols-alist):
8053         New variable holding an alist suitable as prettify-symbols-alist in
8054         (La)TeX modes.
8056 2015-08-19  Alan Mackenzie  <acm@muc.de>
8058         Make electric-pair-mode, delete-selection-mode and CC Mode cooperate.
8059         Fixes debbugs#21275.
8060         In Emacs >= 25, let electric-pair-mode take precedence over
8061         delete-selection-mode.
8062         * lisp/delsel.el (delete-selection-uses-region-p): New function,
8063         previously a lambda expression in a property value for
8064         `self-insert-command'.
8065         (top-level): Set the `delete-selection' property of
8066         `self-insert-command' to `delete-selection-uses-region-p'.
8067         * lisp/progmodes/cc-cmds.el (top-level): Give the `delete-selection'
8068         property for c-electric-\(brace\|paren\) the value
8069         `delete-selection-uses-region-p' when the latter function exists.
8071 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
8073         Fix key binding quoting in tutorial *Help*
8074         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
8075         When generating help for custom key bindings, use the user-preferred
8076         quoting style rather than hardcoding the grave style.
8078 2015-08-19  Eli Zaretskii  <eliz@gnu.org>
8080         Improve and future-proof OTF fonts support in w32uniscribe.c
8081         * src/w32uniscribe.c (uniscribe_otf_capability): Add commentary
8082         about the expected results and why the new Uniscribe APIs are not
8083         used in this function.
8084         (ScriptGetFontScriptTags_Proc, ScriptGetFontLanguageTags_Proc)
8085         (ScriptGetFontFeatureTags_Proc): New function typedefs.
8086         (uniscribe_new_apis): New static variable.
8087         (uniscribe_check_features): New function, implements OTF features
8088         verification while correctly accounting for features in the list
8089         after the nil member, if any.
8090         (uniscribe_check_otf_1): New function, retrieves the features
8091         supported by the font for the requested script and language using
8092         the Uniscribe APIs available from Windows Vista onwards.
8093         (uniscribe_check_otf): If the new Uniscribe APIs are available,
8094         use them in preference to reading the font data directly.  Call
8095         uniscribe_check_features to verify that the requested features are
8096         supported, replacing the original incomplete code.
8097         (syms_of_w32uniscribe): Initialize function pointers for the new
8098         Uniscribe APIs.  (Bug#21260)
8099         (otf_features): Scan the script, langsys, and feature arrays back
8100         to front, so that the result we return has them in alphabetical
8101         order, like ftfont.c does.
8102         * src/w32fns.c (syms_of_w32fns) <w32-disable-new-uniscribe-apis>:
8103         New variable for debugging w32uniscribe.c code.
8105 2015-08-19  Artur Malabarba  <bruce.connor.am@gmail.com>
8107         * lisp/isearch.el (isearch-search-fun-default): Revert a5bdb87
8108         Remove usage of `isearch-lax-whitespace' inside the `iearch-word'
8109         clause of `isearch-search-fun-default'.  That lax variable does not
8110         refer to lax-whitespacing.  Related to (bug#21777).
8111         This reverts commit a5bdb872edb9f031fe041faf9a8c0be432e5f64c.
8112         * lisp/character-fold.el (character-fold-search): Set to nil.
8113         Default to nil for now, until someone implements proper
8114         lax-whitespacing with char-fold searching.
8116 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
8118         Fix doc-string of `help-mode-finish'.
8119         * lisp/help-mode.el (help-mode-finish): Fix doc-string.
8121         In nsimage.m include coding.h (Bug#21292)
8122         * src/nsimage.m (top-level): Include coding.h (Bug#21292).
8124         Move window edge functions to Elisp.
8125         * src/window.c (Fwindow_edges, Fwindow_pixel_edges)
8126         (Fwindow_absolute_pixel_edges, Fwindow_inside_edges)
8127         (Fwindow_inside_pixel_edges, Fwindow_inside_absolute_pixel_edges):
8128         Move to window.el.
8129         (calc_absolute_offset): Remove.
8130         * lisp/frame.el (frame-edges): New function.
8131         * lisp/window.el (window-edges, window-pixel-edges)
8132         (window-absolute-pixel-edges): Move here from window.c.
8133         (window-body-edges, window-body-pixel-edges)
8134         (window-absolute-body-pixel-edges): Move here from window.c and
8135         rename "inside" to "body".  Keep old names as aliases.
8136         (window-absolute-pixel-position): New function.
8138 2015-08-19  Katsumi Yamaoka  <yamaoka@jpl.org>
8140         [Gnus]: Use overlay functions directly
8141         * lisp/gnus/gnus-art.el (gnus-mime-inline-part, gnus-mm-display-part)
8142         (gnus-insert-mime-button, gnus-mime-buttonize-attachments-in-header)
8143         (gnus-article-highlight-signature, gnus-article-extend-url-button)
8144         (gnus-article-add-button, gnus-insert-prev-page-button)
8145         (gnus-insert-next-page-button, gnus-insert-mime-security-button):
8146         * lisp/gnus/gnus-cite.el (gnus-cite-delete-overlays)
8147         (gnus-cite-add-face):
8148         * lisp/gnus/gnus-html.el (gnus-html-wash-tags):
8149         * lisp/gnus/gnus-salt.el (gnus-tree-read-summary-keys)
8150         (gnus-tree-recenter, gnus-highlight-selected-tree):
8151         * lisp/gnus/gnus-sum.el (gnus-summary-show-all-threads)
8152         (gnus-summary-show-thread, gnus-summary-hide-thread)
8153         (gnus-highlight-selected-summary):
8154         * lisp/gnus/gnus-util.el (gnus-put-overlay-excluding-newlines):
8155         * lisp/gnus/message.el (message-fix-before-sending)
8156         (message-toggle-image-thumbnails):
8157         * lisp/gnus/mm-decode.el (mm-convert-shr-links):
8158         * lisp/gnus/sieve.el (sieve-highlight, sieve-insert-scripts):
8159         Use overlay functions directly instead of using gnus-overlay-*,
8160         message-overlay-*, and sieve-overlay-*.
8161         * lisp/gnus/gnus-sum.el (gnus-remove-overlays):
8162         * lisp/gnus/gnus.el (gnus-make-overlay, gnus-copy-overlay)
8163         (gnus-delete-overlay, gnus-overlay-get, gnus-overlay-put)
8164         (gnus-move-overlay, gnus-overlay-buffer, gnus-overlay-start)
8165         (gnus-overlay-end, gnus-overlays-at, gnus-overlays-in):
8166         * lisp/gnus/message.el (message-delete-overlay, message-make-overlay)
8167         (message-overlay-get, message-overlay-put, message-overlays-in):
8168         * lisp/gnus/sieve.el (sieve-make-overlay, sieve-overlay-put)
8169         (sieve-overlays-at): Remove.
8171 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
8173         In w32fns.c condition TITLEBAR_INFO declaration on WINDOWS version
8174         * src/w32fns.c (TITLEBAR_INFO): Make it a typedef so MinGW64
8175         builds can use the declaration from the system headers.
8176         (GetTitleBarInfo_Proc, Fx_frame_geometry): Adapt to new
8177         definition of TITLEBAR_INFO.
8178         Suggested by Eli Zaretskii  <eliz@gnu.org>
8180 2015-08-19  Glenn Morris  <rgm@gnu.org>
8182         * lisp/gnus/nnmaildir.el (nnmaildir-flag-mark-mapping): Add "P".
8184 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
8186         Use new q ‘format’ flag when fixing quotes in C
8187         * src/image.c (image_size_error): New function.  All uses of
8188         image_error with "Invalid image size ..."  changed to use it.
8189         * src/image.c (image_size_error, xbm_load_image, xbm_load)
8190         (xpm_load, xpm_load_image, xpm_load, pbm_load, png_load_body)
8191         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
8192         (imagemagick_load, svg_load, svg_load_image, gs_load)
8193         (x_kill_gs_process):
8194         * src/lread.c (load_warn_old_style_backquotes):
8195         * src/xfaces.c (load_pixmap):
8196         * src/xselect.c (x_clipboard_manager_error_1):
8197         Use %qs, not uLSQM and uRSQM.
8198         * src/syntax.c (Finternal_describe_syntax_value):
8199         Prefer Fsubstitute_command_keys to Fformat, as this lets
8200         us use AUTO_STRING.
8201         * src/xdisp.c (vadd_to_log): Use AUTO_STRING on the format argument,
8202         as it's now guaranteed to be ASCII.
8203         * src/xselect.c (x_clipboard_manager_error_2):
8204         Avoid grave accent in low-level stderr diagnostic.
8206 2015-08-19  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
8208         New q flag for ‘format’
8209         * doc/lispref/processes.texi (Sentinels):
8210         Don't hardwire grave quoting style in example.
8211         * doc/lispref/strings.texi (Formatting Strings):
8212         * etc/NEWS:
8213         Document new q flag.
8214         * src/editfns.c (Fformat): Implement it.
8216 2015-08-18  Daiki Ueno  <ueno@gnu.org>
8218         pinentry.el: Add debugging support
8219         * lisp/net/pinentry.el (pinentry-debug): New variable.
8220         (pinentry-debug-buffer): New variable.
8221         (pinentry--process-filter): Send input to the debug buffer, if
8222         `pinentry-debug' is set.
8224         pinentry.el: Improve multiline prompt
8225         * lisp/net/pinentry.el (pinentry--prompt): Simplify the interface.
8226         (pinentry--process-filter): Use `pinentry--prompt' for CONFIRM
8227         command.
8229 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
8231         Fix multibyte confusion in diagnostics
8232         * src/print.c (print_error_message):
8233         Don't assume that the caller's name is unibyte.
8234         * src/xdisp.c (vadd_to_log):
8235         Don't assume that the formatted diagnostic is unibyte.
8237         Fix file name encodings in diagnostics
8238         Also, close some minor races when opening image files, by opening
8239         them once instead of multiple times.
8240         * src/gtkutil.c (xg_get_image_for_pixmap):
8241         * src/image.c (xpm_load, tiff_load, gif_load, imagemagick_load)
8242         (svg_load):
8243         * src/nsimage.m (allocInitFromFile:):
8244         * src/xfns.c (xg_set_icon):
8245         Encode file name, since x_find_image_file no longer does that.
8246         * src/image.c (x_find_image_fd): New function.
8247         (x_find_image_file): Use it.  Do not encode resulting file name,
8248         since callers sometimes need it decoded.
8249         (slurp_file): File arg is now a fd, not a file name.
8250         All callers changed.  This saves us having to open the file twice.
8251         (xbm_load, xpm_load, pbm_load, png_load_body, jpeg_load_body)
8252         (svg_load):
8253         Use x_find_image_fd and fdopen to save a file-open.
8254         Report file name that failed.
8255         * src/lread.c (openp): If PREDICATE is t, open the file in binary mode.
8257 2015-08-18  Dmitry Gutov  <dgutov@yandex.ru>
8259         Allow blink-matching-paren to jump off screen
8260         * doc/emacs/programs.texi (Matching): Mention the
8261         `blink-matching-paren' value `jump-offscreen'.
8262         * lisp/simple.el (blink-matching-paren): New possible value.
8263         (blink-matching-paren-on-screen): Clarify the docstring.
8264         (blink-matching-open): Handle `jump-offscreen' (bug#21286).
8266         Refine the previous change
8267         * lisp/simple.el (blink-matching-open): Use minibuffer-message
8268         outside of save-excursion (bug#21286).
8270 2015-08-18  Martin Rudalics  <rudalics@gmx.at>
8272         Rewrite and add frame geometry related functions.
8273         * src/frame.c (Fframe_position): New function.
8274         (Fset_frame_position): Rename parameters and rewrite doc-string.
8275         (syms_of_frame): Remove Qframe_position, Qframe_outer_size,
8276         Qtitle_height and Qframe_inner_size.  Add Qouter_edges,
8277         Qouter_position, Qouter_size, Qnative_edges, Qinner_edges,
8278         Qtitle_bar_size.
8279         * src/nsfns.m (frame_geometry): New function.
8280         (Fx_frame_geometry): Call frame_geometry.
8281         (Fx_frame_edges): New function.
8282         * src/w32fns.c (C_CHILDREN_TITLEBAR, TITLEBAR_INFO)
8283         (GetTitleBarInfo_Proc): Define these so we can use the
8284         GetTitleBarInfo API.
8285         (Fw32_frame_menu_bar_size, Fw32_frame_rect): Remove.
8286         (Fx_frame_geometry): Rewrite.
8287         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
8288         (Fx_set_mouse_absolute_pixel_position): New functions.
8289         * src/xfns.c (frame_geometry): New function.
8290         (Fx_frame_geometry): Call frame_geometry.
8291         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
8292         (Fx_set_mouse_absolute_pixel_position): New functions.
8294 2015-08-18  Michael Albinus  <michael.albinus@gmx.de>
8296         Improve Tramp's compatibility
8297         * lisp/net/tramp.el (tramp-get-method-parameter):
8298         * lisp/net/tramp-adb.el (tramp-adb-parse-device-names)
8299         (tramp-adb-get-device):
8300         * lisp/net/trampver.el (tramp-repository-get-version):
8301         Use `tramp-compat-replace-regexp-in-string'.
8303 2015-08-18  Pierre Téchoueyres  <pierre.techoueyres@free.fr>  (tiny change)
8305         * lisp/net/tramp-cmds.el (tramp-reporter-dump-variable):
8306         Encode/decode string.
8308 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
8310         Clarify what happens to match data on failure
8311         Problem reported by Ernesto Alfonso (Bug#21279).
8312         * doc/lispref/searching.texi (Regexp Search, Simple Match Data):
8313         Document more carefully what happens to match data after a failed
8314         search.
8315         * src/search.c (Fmatch_beginning, Fmatch_end): Document that
8316         the return value is undefined if the last search failed.
8317         (Fmatch_data): Simplify doc string line 1.
8319 2015-08-18  Daiki Ueno  <ueno@gnu.org>
8321         Revert "pinentry.el: Support external passphrase cache"
8322         This reverts commit e086e55a664ec27fbca7b3231c4b32cb78a89337.
8323         pinentry.el shouldn't directly interact with the secrets service,
8324         but ask the caller to cache the passphrase.
8326 2015-08-17  Xue Fuqiao  <xfq.free@gmail.com>
8328         * doc/emacs/sending.texi (Mail Misc): Fix two index entries for
8329         Message mode hooks.
8331 2015-08-17  Daiki Ueno  <ueno@gnu.org>
8333         epg.el: Make gpgconf output parsing future proof
8334         * lisp/epg.el (epg--start): Count the number of fields in "gpgconf
8335         --list-options" output.
8337         pinentry.el: Support external passphrase cache
8338         * lisp/net/pinentry.el (pinentry-use-secrets): New user option.
8339         (pinentry--allow-external-password-cache): New local variable.
8340         (pinentry--key-info): New local variable.
8341         (secrets-enabled, secrets-search-items, secrets-get-secret):
8342         Declare.
8343         (pinentry--send-passphrase): New function, split from
8344         `pinentry--process-filter'.
8345         (pinentry--process-filter): Use secrets.el to retrieve passphrase
8346         from login keyring.
8348         pinentry.el: Popup window for multiline prompt
8349         * lisp/net/pinentry.el (pinentry): New custom group.
8350         (pinentry-popup-prompt-window): New user option.
8351         (pinentry-prompt-window-height): New user option.
8352         (pinentry--prompt-buffer): New variable.
8353         (pinentry-prompt-mode-map): New variable.
8354         (pinentry-prompt-mode): New function.
8355         (pinentry--prompt): New function.
8356         (pinentry--process-filter): Use `pinentry--prompt' instead of
8357         `read-passwd' and `y-or-n-p'.
8359 2015-08-17  Katsumi Yamaoka  <yamaoka@jpl.org>
8361         message.el: Silent the byte compiler
8362         * lisp/gnus/message.el (message-overlay-put, message-make-overlay)
8363         (message-kill-all-overlays, message-overlays-in, message-overlay-get)
8364         (message-delete-overlay, message-window-inside-pixel-edges):
8365         Declare before using.
8367         * lisp/gnus/message.el (message-overlay-get, message-overlays-in)
8368         (message-window-inside-pixel-edges): XEmacs compatible functions.
8370 2015-08-17  Lars Magne Ingebrigtsen  <larsi@gnus.org>
8372         * lisp/gnus/message.el (message-toggle-image-thumbnails): New command.
8374 2015-08-17  Noah Friedman  <friedman@splode.com>
8376         * lisp/simple.el (blink-matching-open): Restore point before
8377         calling minibuffer-message.
8379 2015-08-17  Ronnie Schnell  <ronnie@driver-aces.com>
8381         * lisp/play/dunnet.el: Update version number in header (now
8382         matches help).
8384 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
8386         Curved quotes in --batch diagnostics in non-UTF-8
8387         When run with --batch, check that curved quotes are compatible with
8388         the system locale before outputting them in diagnostics.
8389         Problem reported by Eli Zaretskii in:
8390         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00594.html
8391         * lisp/startup.el (command-line): Set internal--text-quoting-flag
8392         after the standard display table is initialized.
8393         * src/doc.c (default_to_grave_quoting_style): New function.
8394         (text_quoting_style): Use it.
8395         (text_quoting_flag): New static var, visible to Lisp as
8396         internal--text-quoting-flag.
8397         * src/emacs.c: Include <wchar.h> if available.
8398         (using_utf8): New function.
8399         (main): Use it to initialize text_quoting_flag.
8400         * src/regex.h (btowc) [WIDE_CHAR_SUPPORT && emacs]:
8401         Don't define, as it's not needed and it clashes with wchar.h.
8403 2015-08-17  Glenn Morris  <rgm@gnu.org>
8405         * doc/misc/tramp.texi (Configuration): Reword to avoid warning
8406         from makeinfo about spurious "Note:" cross-reference, and for grammar.
8408 2015-08-17  Ilya Zakharevich  <ilya@math.berkeley.edu>
8410         Minor change in variable initialization on MS-Windows
8411         * src/w32fns.c <after_dead_key>: Initialize to -1.
8412         (deliver_wm_chars): If after_deadkey is zero, don't set after_dead
8413         non-zero.
8415         Fix a bug with LWindow key remapping on MS-Windows
8416         * src/w32fns.c (deliver_wm_chars): Fix a typo.  (Bug#21276)
8418 2015-08-17  Eli Zaretskii  <eliz@gnu.org>
8420         Improve fontset support for latest OTF script tags
8421         * lisp/international/fontset.el (otf-script-alist): Add some
8422         missing script tags.
8423         (setup-default-fontset): Include settings for v2 versions of the
8424         script tags used by some modern OTF/TTF fonts.
8426 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
8428         Spelling fixes
8430 2015-08-16  Paul Eggert  <eggert@cs.ucla.edu>
8432         Use curved quotes in core elisp diagnostics
8433         In the core elisp files, use curved quotes in diagnostic formats,
8434         so that they follow user preference as per ‘text-quoting-style’
8435         rather than being hard-coded to quote `like this'.
8436         * lisp/abbrev.el (expand-region-abbrevs):
8437         * lisp/button.el (button-category-symbol, button-put)
8438         (make-text-button):
8439         * lisp/cus-start.el:
8440         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
8441         (custom--sort-vars-1, load-theme):
8442         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
8443         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
8444         (cl-generic-generalizers):
8445         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
8446         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
8447         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
8448         (advice--make, define-advice):
8449         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
8450         * lisp/emacs-lisp/timer.el (timer-event-handler):
8451         * lisp/env.el (setenv):
8452         * lisp/facemenu.el (facemenu-add-new-face)
8453         (facemenu-add-new-color):
8454         * lisp/faces.el (face-documentation, read-face-name)
8455         (face-read-string, read-face-font, face-spec-set-match-display)
8456         (read-color, x-resolve-font-name):
8457         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
8458         (set-auto-mode, hack-local-variables)
8459         (hack-one-local-variable--obsolete)
8460         (dir-locals-set-directory-class, write-file)
8461         (basic-save-buffer, delete-directory, copy-directory)
8462         (recover-session, recover-session-finish, insert-directory)
8463         (file-modes-char-to-who, file-modes-symbolic-to-number)
8464         (move-file-to-trash):
8465         * lisp/font-lock.el (font-lock-fontify-buffer):
8466         * lisp/format.el (format-write-file, format-find-file)
8467         (format-insert-file):
8468         * lisp/frame.el (get-device-terminal, select-frame-by-name):
8469         * lisp/fringe.el (fringe--check-style):
8470         * lisp/help.el (describe-minor-mode-from-indicator):
8471         * lisp/image.el (image-type):
8472         * lisp/international/fontset.el (x-must-resolve-font-name):
8473         * lisp/international/mule-cmds.el (prefer-coding-system)
8474         (select-safe-coding-system-interactively)
8475         (select-safe-coding-system, activate-input-method)
8476         (toggle-input-method, describe-current-input-method):
8477         * lisp/international/mule-conf.el (code-offset):
8478         * lisp/mouse.el (minor-mode-menu-from-indicator):
8479         * lisp/replace.el (query-replace-read-from)
8480         (occur-after-change-function, occur-1):
8481         * lisp/scroll-bar.el (scroll-bar-columns):
8482         * lisp/simple.el (execute-extended-command)
8483         (undo-outer-limit-truncate, compose-mail, set-variable)
8484         (choose-completion-string, define-alternatives):
8485         * lisp/startup.el (site-run-file, tty-handle-args)
8486         (command-line, command-line-1):
8487         * lisp/subr.el (noreturn, define-error, add-to-list)
8488         (read-char-choice):
8489         * lisp/term/common-win.el (x-handle-xrm-switch)
8490         (x-handle-name-switch, x-handle-args):
8491         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
8492         Use curved quotes in diagnostics.
8493         * lisp/international/mule.el (find-auto-coding):
8494         Use " to quote in a diagnostic, to be consistent with the rest of
8495         this file.
8497         Convert lisp/term/x-win.el to UTF-8
8498         * lisp/term/x-win.el: Convert to UTF-8.  This doesn't affect
8499         runtime behavior, and the file is multilingual so compile-time
8500         appearance shouldn't be an issue.
8501         * admin/notes/unicode: Document this.
8503 2015-08-16  Wilson Snyder  <wsnyder@wsnyder.org>
8505         Update verilog-mode.el to 2015-05-14-6232468-vpo-GNU.
8506         * lisp/progmodes/verilog-mode.el: Fix some non-automated indent
8507         issues and comments, bug#943.
8508         (verilog-type-font-keywords): Cycle delay operators like ##1 and
8509         ##[0:$] are now highlighted in their entirety similarly to the #
8510         delay-control operator.  Likewise, the followed-by operators #-#
8511         and #=# are no longer partially highlighed.
8512         (verilog-backward-syntactic-ws-quick)
8513         (verilog-skip-backward-comments): Minor performance improvements
8514         to buffer traversal functions for reduced latency.
8515         (verilog-calc-1, verilog-in-deferred-immediate-final-p): When the
8516         keyword 'final' follows 'assert/assume/cover', then it is part of
8517         a deferred immediate assertion item and should not be treated as a
8518         final construct for indentation.  Reported by Yuri Sugihara.
8519         (verilog-do-indent): Virtual task/function/class definition lines
8520         should not be considered as declarations.  Reported by Enzo Chi.
8521         (verilog-do-indent): Do not falsely indent to '=' of
8522         property/sequence operators on subsequent lines of a multi-line
8523         statement.
8524         (verilog-assignment-operator-re): Fix '!==' operator and add
8525         support for '<->', ':/', '#-#', and '#=#' operators.
8526         (verilog-calculate-indent, verilog-label-be): Enable
8527         case-sensitive regular expression parsing when looking for
8528         keywords.
8529         (verilog-calc-1): Detect 'pure virtual method' declarations which
8530         exist in abstract classes.  Reported by Enzo Chi and Kaushal Modi.
8531         (verilog-backward-ws&directives): When moving back to the start of
8532         a line and the preceeding line ended with an escaped-newline, then
8533         jump up one line.  This properly consumes a multi-line
8534         pre-processor directive.  Reported by Kaushal Modi.
8535         (verilog-dpi-import-export-re, verilog-extended-complete-re)
8536         (verilog-calc-1): Teach verilog-mode to properly indent after a
8537         DPI import/export statement that resides outside of a module.
8538         Reported by Kaushal Modi.
8539         (verilog-extended-complete-re): Update regexp to match both
8540         "DPI-C" and "DPI".  Reported by Kaushal Modi.
8542 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
8544         substitute-command-keys a few more doc strings
8545         * lisp/allout.el (outlineify-sticky):
8546         * lisp/files.el (hack-one-local-variable--obsolete):
8547         * lisp/help-fns.el (help-fns--obsolete, describe-variable):
8548         Use substitute-command-keys on some doc strings so that
8549         they don't use hard-coded key bindings or quoting styles.
8551         Fix quoting in Fformat calls
8552         * src/image.c (xbm_read_bitmap_data, xbm_load_image, xbm_load)
8553         (xpm_load, xpm_load_image, pbm_load, png_load_body)
8554         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
8555         (imagemagick_load, svg_load, svg_load_image, gs_load)
8556         (x_kill_gs_process):
8557         * src/lread.c (load_warn_old_style_backquotes):
8558         * src/xfaces.c (load_pixmap):
8559         * src/xselect.c (x_clipboard_manager_error_1):
8560         Quote diagnostics according to user preference when calling
8561         Fformat or its derivatives.
8563 2015-08-15  Glenn Morris  <rgm@gnu.org>
8565         * admin/admin.el (set-version, set-copyright): Remove deleted files.
8567 2015-08-15  Stephen Leake  <stephen_leake@stephe-leake.org>
8569         Allow describe-function helpers to access buffer-local values
8570         This will be used by cedet/mode-local.el `describe-mode-local-override'
8571         on `help-fns-describe-function-functions' in upstream CEDET.
8572         * lisp/help-fns.el (describe-function-orig-buffer): New, let-bound in
8573         `describe-function'.
8574         (describe-function): Bind it, save it on the help xref stack.
8576         Handle pulse-background being nil
8577         * lisp/cedet/pulse.el (pulse-lighten-highlight): Inherit
8578         pulse-background, handle it being nil.
8580 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
8582         Fix "\`" confusion in Lisp strings
8583         * admin/authors.el (authors-canonical-author-name):
8584         Fix typo by using "\\`" not "\`" in string RE.
8585         * lisp/obsolete/complete.el (PC-complete-as-file-name):
8586         * lisp/obsolete/vi.el (vi-backward-blank-delimited-word):
8587         * lisp/progmodes/verilog-mode.el (verilog-mode-map):
8588         Use plain "`", not the equivalent-but-confusing "\`", in strings.
8589         * lisp/textmodes/texinfmt.el: Fix comment likewise.
8591 2015-08-15  Dani Moncayo  <dmoncayo@gmail.com>
8593         * nt/zipdist.bat: Remove -- no longer used.
8595 2015-08-15  Jürgen Hötzel  <juergen@archlinux.org>
8597         * lisp/net/tramp-sh.el (tramp-remote-selinux-p): Use "selinuxenabled"
8598         rather than "getenforce".
8599         (tramp-sh-handle-set-file-selinux-context): Do not
8600         cache SELinux context if not all context components are given.
8602 2015-08-15  Eli Zaretskii  <eliz@gnu.org>
8604         Add doc strings to 2 help-mode.el functions
8605         * lisp/help-mode.el (help-mode-setup, help-mode-finish): Add doc
8606         strings.  (Bug#21263)
8608         Remove files used by the old MS-Windows specific build procedure
8609         * admin/unidata/makefile.w32-in:
8610         * doc/emacs/makefile.w32-in:
8611         * doc/lispintro/makefile.w32-in:
8612         * doc/lispref/makefile.w32-in:
8613         * doc/misc/makefile.w32-in:
8614         * leim/makefile.w32-in:
8615         * lib-src/makefile.w32-in:
8616         * lib/makefile.w32-in:
8617         * lisp/makefile.w32-in:
8618         * nt/INSTALL.OLD:
8619         * nt/config.nt:
8620         * nt/emacs-src.tags:
8621         * nt/envadd.bat:
8622         * nt/gmake.defs:
8623         * nt/makefile.w32-in:
8624         * nt/multi-install-info.bat:
8625         * nt/nmake.defs:
8626         * nt/paths.h:
8627         * src/makefile.w32-in: Files deleted.
8628         * nt/configure.bat: Remove everything except the blurb about the
8629         new build procedure.
8630         * make-dist: Remove references to makefile.w32-in in various
8631         directories, and to files in nt/ that were deleted.
8632         * etc/NEWS: Mention the fact that the files were dropped.
8634 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
8636         * doc/emacs/mule.texi (Charsets): Give fuller title for ISO-IR.
8637         (Bug#21248)
8639 2015-08-14  Paul Eggert  <eggert@cs.ucla.edu>
8641         Default to inotify instead of gfile
8642         * configure.ac (with_file_notification): Fix typo that
8643         prevented suppression of file notification if HAVE_NS.
8644         (NOTIFY_OBJ): Prefer inotify to gfile if both exist and
8645         with_file_notification is 'yes' (Bug#21241).
8646         * etc/NEWS: Mention this.
8648         Fix broken URLs for ISO-IR
8649         * doc/emacs/mule.texi (Charsets):
8650         * lisp/international/mule-conf.el:
8651         Fix broken URL (Bug#21248).
8653         Low-level diagnostics now use ‘text-quoting-style’
8654         * src/doprnt.c (doprnt):
8655         Format ` and ' as per ‘text-quoting-style’.
8656         * src/xdisp.c (vmessage, message): Mention that the format should
8657         not contain ` or '.
8659         Prefer ‘format’ to ‘substitute-command-keys’
8660         * src/character.h (uLSQM, uRSQM): Move here ...
8661         * src/doc.c (uLSQM, uRSQM): ... from here.
8662         * src/doc.c (Fsubstitute_command_keys):
8663         * src/syntax.c (Finternal_describe_syntax_value):
8664         * lisp/cedet/mode-local.el (mode-local-print-binding)
8665         (mode-local-describe-bindings-2):
8666         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
8667         * lisp/cus-theme.el (describe-theme-1):
8668         * lisp/descr-text.el (describe-text-properties-1, describe-char):
8669         * lisp/emacs-lisp/cl-extra.el (cl--describe-class):
8670         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
8671         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
8672         * lisp/emacs-lisp/package.el (describe-package-1):
8673         * lisp/faces.el (describe-face):
8674         * lisp/help-fns.el (help-fns--key-bindings)
8675         (help-fns--compiler-macro, help-fns--parent-mode)
8676         (help-fns--obsolete, help-fns--interactive-only)
8677         (describe-function-1, describe-variable):
8678         * lisp/help.el (describe-mode):
8679         Prefer ‘format’ to ‘substitute-command-keys’ when either will do
8680         to implement quoting style.  This generally makes the code simpler.
8682         Extend ‘format’ to translate curved quotes
8683         This is a followup to the recent doc string change, and deals with
8684         diagnostics and the like.  This patch is more conservative than
8685         the doc string change, in that the behavior of ‘format’ changes
8686         only if its first arg contains curved quotes and the user prefers
8687         straight or grave quotes.  (Come to think of it, perhaps we should
8688         be similarly conservative with doc strings too, but that can wait.)
8689         The upside of this conservatism is that existing usage is almost
8690         surely unaffected.  The downside is that we'll eventually have to
8691         change Emacs's format strings to use curved quotes in places where
8692         the user might want curved quotes, but that's a simple and
8693         mechanical translation that I'm willing to do later.  (Bug#21222)
8694         * doc/lispref/help.texi (Keys in Documentation):
8695         Move description of text-quoting-style from here ...
8696         * doc/lispref/strings.texi (Formatting Strings):
8697         ... to here, and describe new behavior of ‘format’.
8698         * etc/NEWS: Describe new behavior.
8699         * lisp/calc/calc-help.el (calc-describe-thing):
8700         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
8701         * lisp/info.el (Info-find-index-name):
8702         Use ‘concat’ rather than ‘format’ to avoid misinterpretation
8703         of recently-added curved quotes.
8704         * src/doc.c (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
8705         Move from here ...
8706         * src/lisp.h: ... to here.
8707         * src/doc.c (text_quoting_style): New function.
8708         (Fsubstitute_command_keys): Use it.
8709         * src/editfns.c (Fformat): Implement new behavior.
8710         * src/lisp.h (enum text_quoting_style): New enum.
8712 2015-08-14  Stefan Monnier  <monnier@iro.umontreal.ca>
8714         * src/keyboard.c: Use false/true instead of 0/1 for booleans.
8715         * src/keyboard.h (struct kboard): Mark kbd_queue_has_data as boolean.
8717 2015-08-14  Michael Albinus  <michael.albinus@gmx.de>
8719         * lisp/net/tramp-sh.el (tramp-sh-handle-file-acl): Do not redirect
8720         stderr to /dev/null, this is done in `tramp-send-command-and-check'.
8722 2015-08-14  Jürgen Hötzel  <juergen@archlinux.org>
8724         Flush file properties in Tramp
8725         * lisp/net/tramp-sh.el (tramp-sh-handle-set-file-modes)
8726         (tramp-sh-handle-set-file-times):
8727         * lisp/net/tramp-adb.el (tramp-adb-handle-set-file-modes)
8728         (tramp-adb-handle-set-file-times): Flush the file properties of
8729         the directory.
8731 2015-08-14  Ronnie Schnell  <ronnie@driver-aces.com>
8733         * doc/emacs/misc.text (Amusements): Fixed typo.
8735 2015-08-14  Eli Zaretskii  <eliz@gnu.org>
8737         Don't miss warnings about removing string text properties while dumping
8738         * src/alloc.c (purecopy): Warn about removing a string's text
8739         properties even when the same string was already pure-copied
8740         earlier.
8741         * lisp/progmodes/elisp-mode.el (elisp--xref-format)
8742         (elisp--xref-format-extra): Fix the commentary.
8744 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
8746         * lisp/progmodes/sh-script.el (sh-mode): Handle .cshrc (bug#21049).
8748 2015-08-13  Magnus Henoch  <magnus.henoch@gmail.com>
8750         * lisp/progmodes/compile.el: Use lexical-binding.
8751         (compilation-move-to-column): Assume 8-wide TABs (bug#21038).
8753 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
8755         (uniquify-ask-about-buffer-names-p): Remove, unused (bug#21037)
8756         * lisp/uniquify.el: Remove redundant `:group's.
8758 2015-08-13  Jürgen Hötzel  <juergen@archlinux.org>
8760         * lisp/net/tramp-adb.el
8761         (tramp-adb-handle-directory-files-and-attributes): Make a copy of
8762         result to prevent modification of the tramp-cache by side effects.
8763         Use the correct cache key.
8765 2015-08-13  Paul Eggert  <eggert@cs.ucla.edu>
8767         Make add_to_log varargs
8768         * src/alloc.c (run_finalizer_handler):
8769         * src/charset.c (load_charset_map_from_vector):
8770         * src/nsimage.m (ns_load_image):
8771         * src/xfaces.c (load_pixmap, load_color2):
8772         Simplify, now that add_to_log has a variable number of args.
8773         * src/image.c (image_error): Take a variable number of args.
8774         Callers simplified.
8775         * src/lisp.h (add_to_log, vadd_to_log): Adjust to new APIs.
8776         * src/xdisp.c (format_nargs, vadd_to_log): New functions.
8777         (add_to_log): Make varargs, and reimplement in terms of vadd_to_log.
8778         * src/xfaces.c (merge_face_ref): Fix typo that omitted color name.
8780         Optional args for holiday-greek-orthodox-easter
8781         * etc/NEWS: Document this.
8782         * lisp/calendar/holidays.el (holiday-greek-orthodox-easter):
8783         Add optional args N and STRING, mimicking the API and code of
8784         ‘holiday-easter-etc’.  From suggestion by Foivos S. Zakkak (Bug#21256).
8786 2015-08-13  Stephen Leake  <stephen_leake@stephe-leake.org>
8788         xref-find-definitions: Exclude more generic function items.
8789         * lisp/emacs-lisp/cl-generic.el (cl--generic-search-method):
8790         Add doc string.
8791         (cl--generic-find-defgeneric-regexp): New.
8792         (find-function-regexp-alist): Add it.
8793         * lisp/emacs-lisp/find-func.el (find-feature-regexp): Move here from
8794         elisp-mode.el, change to search for ";;; Code:"
8795         (find-alias-regexp): Move here from elisp-mode.el, cleaned up.
8796         (find-function-regexp-alist): Add them.
8797         * lisp/progmodes/elisp-mode.el:
8798         (elisp--xref-format, elisp--xref-format-extra): Change back to
8799         defvar due to bug#21237.
8800         (elisp--xref-find-definitions): Exclude co-located default methods for
8801         generic functions.  Also exclude implicitly declared defgeneric.
8802         (elisp--xref-find-definitions): Handle C source properly.  Exclude minor
8803         mode variables defined by 'define-minor-mode'.
8804         * test/automated/elisp-mode-tests.el: Declare generic functions, add
8805         tests for them.
8806         (xref-elisp-test-run): Fix bug.
8807         (emacs-test-dir): Improve initial value.
8808         (find-defs-defun-defvar-el): Don't expect defvar.
8809         (find-defs-feature-el): Match change to find-feature-regexp.
8811 2015-08-13  Eli Zaretskii  <eliz@gnu.org>
8813         Improve warning about purecopy of strings with properties
8814         * src/alloc.c (purecopy): Show the offending string with the
8815         warning about removing its text properties.
8817 2015-08-12  Alan Mackenzie  <acm@muc.de>
8819         Introduce new macros to cover Emacs's new names in cl-lib.el
8820         This also eliminates `mapcan' warnings in XEmacs.
8821         * lisp/progmodes/cc-defs.el (c--mapcan-status): New variable to
8822         characterise [X]Emacs versions.
8823         (top-level): Require either 'cl or 'cl-lib, depending on
8824         c--mapcan-status.
8825         Change this back to cc-external-require from an eval-when-compile
8826         require.
8827         (c--mapcan, c--set-difference, c--intersection, c--macroexpand-all)
8828         (c--delete-duplicates): New macros which expand into either old or new
8829         names.
8830         (c-make-keywords-re, c-lang-defconst, c-lang-const): Use the new macros
8831         rather than the old names.
8832         * lisp/progmodes/cc-engine.el (c-declare-lang-variables): Use c--mapcan
8833         rather than mapcan.
8834         * lisp/progmodes/cc-fonts.el (c-compose-keywords-list): Use c--mapcan.
8835         * lisp/progmodes/cc-langs.el (top-level): Require either 'cl or 'cl-lib,
8836         depending on c--mapcan-status.
8837         (c-filter-ops, c-all-op-syntax-tokens, c-assignment-op-regexp)
8838         (c-type-start-kwds, c-prefix-spec-kwds, c-specifier-key)
8839         (c-not-decl-init-keywords, c-not-primitive-type-keywords)
8840         (c-paren-any-kwds, c-<>-sexp-kwds, c-block-stmt-kwds, c-expr-kwds)
8841         (c-decl-block-key, c-keywords, c-keywords-obarray)
8842         (c-regular-keywords-regexp, c-primary-expr-regexp)
8843         (c-primary-expr-regexp, c-block-prefix-disallowed-chars)
8844         (c-known-type-key, c-nonlabel-token-key)
8845         (c-make-init-lang-vars-fun): Use the new macros rather than the old
8846         names.
8848 2015-08-12  Oleh Krehel  <ohwoeowho@gmail.com>
8850         loadhist.el (read-feature): Conform to completing-read
8851         * lisp/loadhist.el (read-feature): According to `completing-read'
8852         documentation, if collection is a list, then it must be a list of
8853         strings, not a list of symbols like before.
8855 2015-08-12  David Kastrup  <dak@gnu.org>
8857         Deal gracefully with up-events (Bug#19746)
8858         * src/keyboard.c (apply_modifiers_uncached, parse_solitary_modifier)
8859         (parse_modifiers_uncached): React gracefully to "up-" modifiers:
8860         those may easily be injected by user-level Lisp code.
8861         (read_key_sequence): Discard unbound up-events like unbound
8862         down-events: they are even more likely only relevant for special
8863         purposes.
8864         While Emacs will not produce up-events on its own currently (those are
8865         converted to drag or click events before being converted to
8866         Lisp-readable structures), the input queue can be made to contain them
8867         by synthesizing events to `unread-command-events'.  Emacs should deal
8868         consistently with such events.
8870 2015-08-12  Eli Zaretskii  <eliz@gnu.org>
8872         Fix display of thin lines whose newline has line-height property of t
8873         * src/xdisp.c (append_space_for_newline): Don't try to fix ascent
8874         and descent values of non-empty glyph rows, since they could have
8875         forced low values deliberately.  (Bug#21243)
8877 2015-08-12  Richard Stallman  <rms@gnu.org>
8879         Offer to combine multiple To or CC fields.
8880         * lisp/mail/sendmail.el (mail-combine-fields): New function.
8881         (mail-send): Call 'mail-combine-fields'.
8883         Don't decrypt encrypted files.
8884         * lisp/mail/mail-utils.el (mail-file-babyl-p): Bind epa-inhibit to t.
8886         Handle encrypted mbox files.
8887         * lisp/mail/rmailout.el (rmail-output-as-mbox): Decrypt and reencrypt
8888         the mbox file if necessary.
8890         Re-enable mime processing after decryption.  Add 'decrypt' keyword.
8891         * lisp/mail/rmail.el (rmail-epa-decrypt-1): New subroutine.
8892         (rmail-epa-decrypt): rmail-epa-decrypt-1 broken out.
8893         In a mime message, reenable Mime and show the parts that
8894         were shown before.
8895         Add keyword "decrypt" if anything decrypted.
8897         epa-inhibit inhibits auto-recognition of .gpg files
8898         * lisp/epa-file.el (epa-inhibit): New variable.
8899         (epa-file-handler): Check epa-inhibit.
8901 2015-08-12  Artur Malabarba  <bruce.connor.am@gmail.com>
8903         * lisp/emacs-lisp/lisp-mnt.el (lm-header): Add save-excursion.
8905 2015-08-11  Fabián Ezequiel Gallina  <fgallina@gnu.org>
8907         Respect python.el imenu when semantic-mode is off
8908         Fixes bug#21220
8909         * lisp/cedet/semantic/wisent/python.el: Do not force
8910         wisent-python-default-setup on python-mode-hook.
8912 2015-08-11  Paul Eggert  <eggert@cs.ucla.edu>
8914         Give names to Unicode code points in C code
8915         * src/character.h (NO_BREAK_SPACE, SOFT_HYPHEN)
8916         (ZERO_WIDTH_NON_JOINER, ZERO_WIDTH_JOINER, HYPHEN)
8917         (NON_BREAKING_HYPHEN, LEFT_SINGLE_QUOTATION_MARK)
8918         (RIGHT_SINGLE_QUOTATION_MARK, PARAGRAPH_SEPARATOR)
8919         (LEFT_POINTING_ANGLE_BRACKET, RIGHT_POINTING_ANGLE_BRACKET)
8920         (LEFT_ANGLE_BRACKET, RIGHT_ANGLE_BRACKET)
8921         (OBJECT_REPLACEMENT_CHARACTER):
8922         New named constants for Unicode code points.
8923         * src/bidi.c (bidi_fetch_char, CANONICAL_EQU):
8924         * src/composite.c (char_composable_p):
8925         * src/lread.c (readevalloop, read1):
8926         * src/xdisp.c (get_next_display_element):
8927         Use them.
8928         * src/doc.c (LEFT_SINGLE_QUOTATION_POINT):
8929         Remove; now in character.h.
8931 2015-08-11  Stephen Leake  <stephen_leake@stephe-leake.org>
8933         elisp--xref-find-definitions handle cl-defstuct default constructor
8934         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Add FIXME.
8935         (elisp--xref-format-extra): Rename from elisp--xref-format-cl-defmethod.
8936         (elisp--xref-find-definitions): Handle cl-defstuct default constructor.
8937         * test/automated/elisp-mode-tests.el (xref-elisp-test-run): Split out
8938         from xref-elisp-test for ease of debugging.
8939         (xref-elisp-deftest): Rename from xref-elisp-test.
8940         (find-defs-constructor): New test.
8941         (find-defs-defgeneric-el): Match batch test config.
8942         (compile): Required for find-defs compilation-minor-mode test.
8943         (find-defs-defvar-el): Match code change.
8944         (find-defs-face-el): Match code change.
8945         * lisp/progmodes/xref.el (xref-find-function, xref-find-definitions):
8946         Improve doc string.
8948 2015-08-11  Stefan Monnier  <monnier@iro.umontreal.ca>
8950         * lisp/replace.el (perform-replace): Document `replacements'.
8951         (perform-replace): Move the description of the format of `replacements'
8952         from the body's comment to the doc string.
8954 2015-08-11  Jürgen Hötzel  <juergen@archlinux.org>
8956         * lisp/net/tramp-adb.el (tramp-adb-prompt): Match leading escape
8957         sequence.  Recent adb version send initial escape sequences, even
8958         when terminal type is set to TERM=dumb.
8960 2015-08-10  Stephen Leake  <stephen_leake@stephe-leake.org>
8962         Rewrite elisp--xref-find-definitions to handle many more cases; add tests
8963         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
8964         Function deleted.
8965         (elisp--xref-format-cl-defmethod): New defconst.
8966         (find-feature-regexp, find-alias-regexp): New defcustoms.
8967         (elisp--xref-make-xref): New function.
8968         (elisp--xref-find-definitions): Rewrite using the above, handle many
8969         more cases.  Always output all available definitions.
8970         (xref-location-marker): No need for special cases.
8971         * test/automated/elisp-mode-tests.el: Add more tests of
8972         elisp--xref-find-definitions, improve current tests.
8974 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
8976         Fix recording of events pushed onto unread-command-events
8977         * src/keyboard.c (read_char): Make sure events read from
8978         unread-command-events and unread-post-input-method-events are
8979         always recorded by record_char.  Reported by David Kastrup
8980         <dak@gnu.org>, see
8981         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00193.html.
8983 2015-08-10  Samer Masterson  <samer@samertm.com>
8985         Set file buffer as current for "--file"
8986         * lisp/startup.el (command-line-1): Set file buffer as current before
8987         it is displayed so it can be used with options like "--eval".
8988         (Bug#21095)
8990 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
8992         Avoid setting LC_NUMERIC on MS-Windows to anything but "C"
8993         * src/emacs.c (synchronize_locale) [WINDOWSNT]: Call fixup_locale
8994         after setting LC_ALL to the desired locale, to avoid affecting how
8995         numbers are read and printed.  (Bug#21223)
8997 2015-08-10  Alan Mackenzie  <acm@muc.de>
8999         Fix "Invalid search bound (wrong side of point)" in fontification
9000         * lisp/progmodes/cc-fonts.el (c-font-lock-declarators): After skipping
9001         an initialization expression, check point is not beyond the
9002         fontification limit.
9004 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
9006         Fix DPI calculation when Xft/DPI is default
9007         * src/xsettings.c (parse_settings): Don't use Xft/DPI default
9008         value of -1, which evaluates to 2**32 - 1 (Bug#21152).
9009         Remove unnecessary cast while we're in the neighborhood.
9011 2015-08-09  Dmitry Gutov  <dgutov@yandex.ru>
9013         Add project-vc-search-path and project-vc-ignores
9014         * lisp/progmodes/project.el (project-vc): New group.
9015         (project-vc-search-path, project-vc-ignores): New variables.
9016         (project--value-in-dir): Utility function.
9017         (project-search-path, project-ignores): Use them.
9018         * lisp/progmodes/xref.el (xref--rgrep-command): Only replace `./'
9019         at bos.  Don't add extra `/'.  Don't prepend with `*' if replaced.
9021 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
9023         Fix some minor quoting issues with grave accent
9024         * src/dispnew.c (add_window_display_history) [GLYPH_DEBUG]:
9025         Remove redundant quotes.
9026         * src/doc.c (uLSQM, uRSQM): New macros.
9027         * src/doc.c (Fsubstitute_command_keys):
9028         * src/syntax.c (Finternal_describe_syntax_value): Follow the user
9029         preference for quotes rather than hardcoding the ‘grave’ style.
9030         * src/regex.c (PUSH_FAILURE_POINT, POP_FAILURE_POINT)
9031         (re_match_2_internal) [DEBUG]: In debugging output, quote C
9032         strings with "...", not `...'.
9034         ChangeLog.2 ignores remote-tracking merges
9035         * build-aux/gitlog-to-emacslog: Ignore commit logs matching
9036         "Merge remote-tracking branch '.*'" too.  See Eli Zaretskii in:
9037         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00384.html
9039 2015-08-09  Nicolas Richard  <youngfrog@members.fsf.org>
9041         Use kpsewhich in ffap-latex-mode, if available
9042         * lisp/ffap.el (ffap-latex-guess-rules): New variable.
9043         (ffap-latex-mode): Use kpsewhich if available.
9045         ffap: disallow braces in filenames for tex modes
9046         * lisp/ffap.el (ffap-string-at-point-mode-alist): Don't allow
9047         braces in tex-related modes.
9049         Remove useless backslashes from ffap-string-at-point-mode-alist
9050         * lisp/ffap.el (ffap-string-at-point-mode-alist): Remove useless and
9051         misleading backslashes from default value.
9053         Augment docstring of ffap-string-at-point-mode-alist
9054         * lisp/ffap.el (ffap-string-at-point-mode-alist): Describe how BEG
9055         and END are handled.
9057 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
9059         * lisp/org/org-src.el (org-edit-src-code)
9060         (org-edit-fixed-width-region):
9061         * lisp/simple.el (completion-setup-function):
9062         Remove calls to substitute-command-keys that always just return
9063         their argument.
9065 2015-08-09  Daiki Ueno  <ueno@gnu.org>
9067         * lisp/epa.el (epa-exit-buffer-function): Set to `quit-window'.
9068         (Bug#21210)
9070 2015-08-09  Ivan Kanis  <ivan@kanis.fr>
9072         Fix link to source code in help window
9073         * lisp/help-fns.el (find-lisp-object-file-name): Remove code that
9074         will never work due to Glenn Morris change a6d63d9 on Apr 20 2013
9075         'No longer include timestamp in header of .elc files'.  Add code
9076         that will return .el source file in load-path.
9078 2015-08-09  Artur Malabarba  <bruce.connor.am@gmail.com>
9080         * lisp/isearch.el (isearch-search-fun-default): (Bug#21164)
9081         Respect `isearch-lax-whitespace' when searching through
9082         `isearch-word'.
9084 2015-08-08  Stefan Monnier  <monnier@iro.umontreal.ca>
9086         * test/automated/ert-tests.el (ert-test-deftest): Add FIXME.
9088         * org.el: Fix up some lexical scoping warnings, and use dolist
9089         * lisp/org/org.el (org-set-regexps-and-options-for-tags, org-goto-map)
9090         (org-set-regexps-and-options, org-assign-fast-keys)
9091         (org-contextualize-keys, org-contextualize-validate-key)
9092         (org-notes-order-reversed-p, org-local-logging, org-map-entries)
9093         (org-find-olp, org-find-exact-heading-in-directory)
9094         (org-cycle-agenda-files, org-release-buffers, org-fill-template)
9095         (org-agenda-prepare-buffers, org-occur-in-agenda-files)
9096         (org-replace-escapes): Use dolist.
9097         (org-mode): Optimize away XEmacs-only code.
9098         (org-refile-get-targets): Remove unused var `f'.
9099         (org-fast-todo-selection): Remove unused var `e'.
9100         (org-make-tags-matcher): Use dolist.  Remove unused var `term'.
9101         (org-fast-tag-selection): Use dolist.  Remove unused var `e'.
9102         (org-format-latex): Use dolist.  Remove unused var `e'.
9103         (org-toggle-heading): Access vars lexically rather than dynamically.
9104         (org-backward-sentence, org-forward-sentence, org-meta-return)
9105         (org-kill-line): Mark arg as unused.
9106         (org-submit-bug-report): Silence compiler warning.
9107         (org-occur-in-agenda-files): Don't use add-to-list on local vars.
9108         (org-get-cursor-date): Remove unused var `tm'.
9109         (org-comment-or-uncomment-region): Use standard name `_'.
9110         (reftex-docstruct-symbol, reftex-cite-format): Declare to
9111         silence byte-compiler.
9112         (org-reftex-citation): Add `org--' prefix to dynamically scoped
9113         `rds' var.
9115 2015-08-08  Paul Eggert  <eggert@cs.ucla.edu>
9117         Electric quote if coding is undecided or no conv
9118         * lisp/electric.el (electric--insertable-p): Also say that a
9119         string is insertable if the buffer file coding system is undecided
9120         or uses no conversion, as curved quotes will work in either case.
9122         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Simplify configuration.
9124 2015-08-08  Eli Zaretskii  <eliz@gnu.org>
9126         Fix overlay string display regressions introduced in Emacs 24.5
9127         * src/xdisp.c (pop_it): Reset the flag to ignore overlays at this
9128         buffer position, if we move the iterator to a new position as
9129         result of jumping over text covered by a "replacing" display
9130         property.
9131         * test/redisplay-testsuite.el (test-redisplay-4): Add 2 new tests.
9133         Support recovery from C stack overflow on MS-Windows
9134         * src/w32fns.c (w32_reset_stack_overflow_guard)
9135         (stack_overflow_handler): New functions for handling C stack
9136         overflow exceptions.
9137         (my_exception_handler): Handle EXCEPTION_STACK_OVERFLOW exceptions
9138         specially, and zero out except_addr if we do.
9139         (globals_of_w32fns): Initialize dwMainThreadId in non-interactive
9140         mode.
9141         * src/sysdep.c [HAVE_STACK_OVERFLOW_HANDLING]: Add !WINDOWSNT to
9142         the condition, as HAVE_STACK_OVERFLOW_HANDLING is now defined for
9143         the MinGW build, but the code guarded by that is for Posix hosts.
9144         * src/keyboard.c (command_loop) [WINDOWSNT]:
9145         Call w32_reset_stack_overflow_guard.
9146         * nt/inc/ms-w32.h (sigjmp_buf): New typedef.
9147         (sigsetjmp): New macro.
9148         (w32_reset_stack_overflow_guard): Declare the prototype.
9149         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Set to 1 for MinGW.
9151 2015-08-07  Phillip Lord  <phillip.lord@newcastle.ac.uk>
9153         Improve error signalling for seq-subseq
9154         * lisp/seq.el (seq-subseq): The existing behavior is to error
9155         when indexes are too large, but to silently ignore numbers which
9156         are too negative for lists.  String and vector handling errors in
9157         both cases.  This has been regularized.  Error signaling behavior
9158         has been explicitly added to the doc string.
9160         * lisp/cl-extra.el (cl-subseq): Defers to (seq-subseq) and is
9161         therefore also impacted by this change.  Update the doc string
9162         to reflect this.
9164         * test/automated/seq-tests.el (test-seq-subseq): Tests have been
9165         added for these exceptional cases, as well as one non exceptional
9166         base case.
9168 2015-08-07  Jürgen Hötzel  <juergen@archlinux.org>
9170         Improve error checking in tramp-adb.el
9171         * lisp/net/tramp-adb.el (tramp-adb-ls-output-name-less-p):
9172         Improve error checking.  "ls -l" on Android in Enforcing mode can
9173         print "lstat './FILENAME failed: Permission denied".
9175 2015-08-07  Stefan Monnier  <monnier@iro.umontreal.ca>
9177         * lisp/emacs-lisp/cl-generic.el (cl--generic-struct-tag): Don't burp on
9178         non-struct vectors.
9180 2015-08-07  Stephen Leake  <stephen_leake@stephe-leake.org>
9182         Fix typo in lisp/window.el, more `display-buffer-use-some-frame'
9183         * lisp/window.el: Fix typo that broke build.
9184         (display-buffer--action-function-custom-type):
9185         Add `display-buffer-use-some-frame'.
9186         (display-buffer): Add `display-buffer-use-some-frame' to doc string.
9188         Add support for 'inhibit-same-window in 'display-buffer-use-some-frame'
9189         * lisp/window.el (display-buffer-use-some-frame): Add support for
9190         'inhibit-same-window in alist.
9191         * doc/windows.texi (display-buffer-use-some-frame): Doc support for
9192         'inhibit-same-window in alist.
9194 2015-08-07  Eli Zaretskii  <eliz@gnu.org>
9196         Avoid infinite loop in display of invisible text in strings
9197         * src/xdisp.c (handle_invisible_prop): If the next change of
9198         invisibility spec does not mean the beginning of a visible text,
9199         update the string position from which to start the search for the
9200         next invisibility change.  This avoids an infinite loop when we
9201         have more than one invisibility spec that are made inactive by
9202         buffer-invisibility-spec.  Simplify code.  (Bug#21200)
9203         * test/redisplay-testsuite.el (test-redisplay-4): Add a test case
9204         for the situation that caused bug #21200.
9206 2015-08-06  Artur Malabarba  <bruce.connor.am@gmail.com>
9208         * lisp/emacs-lisp/package.el: Simplify describe-package-1
9209         (package-help-section-name-face): New face.
9210         (package--print-help-section): New function.
9211         (describe-package-1): Refactor section printing.
9212         (package-make-button): Use face instead of font-lock-face, which
9213         doesn't work on buttons.
9215         * lisp/emacs-lisp/package.el: Define custom faces
9216         (package-name-face, package-description-face)
9217         (package-status-built-in-face, package-status-external-face)
9218         (package-status-available-face, package-status-new-face)
9219         (package-status-held-face, package-status-disabled-face)
9220         (package-status-installed-face, package-status-dependency-face)
9221         (package-status-unsigned-face, package-status-incompat-face)
9222         (package-status-avail-obso-face): New faces.
9223         (package-menu--print-info-simple): Use them.
9225 2015-08-05  Paul Eggert  <eggert@cs.ucla.edu>
9227         Fix some confusion with ‘format’
9228         * lisp/allout-widgets.el (allout-widgets-before-change-handler)
9229         (allout-graphics-modification-handler):
9230         Protect arbitrary string in a format context with "%s" format.
9231         * lisp/avoid.el:
9232         * lisp/cedet/semantic/bovine/scm.el: Fix comment.
9233         * lisp/calendar/icalendar.el (icalendar--convert-sexp-to-ical):
9234         * lisp/erc/erc-button.el (erc-button-beats-to-time):
9235         * lisp/gnus/message.el (message-send-form-letter):
9236         * lisp/org/ob-core.el (org-babel-check-evaluate)
9237         (org-babel-confirm-evaluate):
9238         * lisp/org/ob-fortran.el (org-babel-fortran-var-to-fortran):
9239         * lisp/org/ox-latex.el (org-latex-compile):
9240         * lisp/org/ox-man.el (org-man-compile):
9241         * lisp/org/ox-odt.el (org-odt-template):
9242         * lisp/org/ox-texinfo.el (org-texinfo-compile):
9243         * lisp/progmodes/prolog.el (prolog-help-info)
9244         (prolog-view-predspec):
9245         * lisp/progmodes/ruby-mode.el (ruby-parse-partial):
9246         * lisp/progmodes/verilog-mode.el (verilog-showscopes):
9247         * lisp/textmodes/rst.el (rst-replace-lines):
9248         Change (message (format ...)) to (message ...), and likewise
9249         for ‘error’.  This lessens the probability of confusion when the
9250         output of ‘format’ contains ‘%’.
9252 2015-08-05  Artur Malabarba  <bruce.connor.am@gmail.com>
9254         * lisp/replace.el (replace-character-fold): Default to nil.
9256         * lisp/character-fold.el: Fix lax whitespace.
9257         (character-fold-table): Don't make space match other whitespace chars.
9258         (character-fold-to-regexp): Simplify lax behavior.
9260 2015-08-05  Dmitry Gutov  <dgutov@yandex.ru>
9262         Preserve window point in xref-find-definitions-other-window
9263         Fix the problem reported by Ingo Logmar in
9264         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00152.html
9265         * lisp/progmodes/xref.el (xref--goto-char): Extract from
9266         xref--goto-location.
9267         (xref--pop-to-location): Use it.  Replace xref--goto-location with
9268         a direct xref-location-marker call.
9269         (xref--show-location): Likewise.
9270         (xref--display-position): Use xref--goto-char.
9272         * lisp/progmodes/project.el: Add a paragraph to the front matter.
9274 2015-08-04  David Kastrup  <dak@gnu.org>
9276         * lisp/vc/emerge.el (emerge-show-file-name):
9277         * lisp/progmodes/vhdl-mode.el (vhdl-electric-dash)
9278         (vhdl-comment-insert, vhdl-hooked-abbrev):
9279         * lisp/progmodes/octave.el (inferior-octave-dynamic-list-input-ring):
9280         * lisp/progmodes/fortran.el (fortran-window-create-momentarily):
9281         * lisp/progmodes/ebrowse.el (ebrowse-hack-electric-buffer-menu):
9282         * lisp/progmodes/cperl-mode.el (cperl-putback-char):
9283         * lisp/obsolete/vip.el (vip-escape-to-emacs)
9284         (vip-prefix-arg-value, vip-prefix-arg-com):
9285         * lisp/obsolete/terminal.el (te-escape-extended-command-unread):
9286         * lisp/leim/quail/tibetan.el (quail-tibetan-update-translation)
9287         (quail-tibkey-update-translation):
9288         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
9289         * lisp/leim/quail/lao.el (quail-lao-update-translation):
9290         * lisp/leim/quail/japanese.el (quail-japanese-update-translation)
9291         (quail-japanese-self-insert-and-switch-to-alpha):
9292         * lisp/leim/quail/hangul.el (hangul2-input-method)
9293         (hangul3-input-method, hangul390-input-method):
9294         * lisp/language/hanja-util.el (hangul-to-hanja-char):
9295         * lisp/international/robin.el (robin-input-method):
9296         * lisp/international/quail.el (quail-start-translation)
9297         (quail-start-conversion):
9298         * lisp/gnus/gnus-art.el (gnus-article-describe-key)
9299         (gnus-article-describe-key-briefly):
9300         * lisp/eshell/em-hist.el (eshell-list-history):
9301         * lisp/term.el (term-dynamic-list-input-ring)
9302         (term-dynamic-list-completions):
9303         * lisp/subr.el (momentary-string-display):
9304         * lisp/simple.el (read-quoted-char):
9305         * lisp/pcomplete.el (pcomplete-show-completions):
9306         * lisp/kmacro.el (kmacro-repeat-on-last-key):
9307         * lisp/info.el (Info-summary):
9308         * lisp/ehelp.el (electric-help-command-loop):
9309         * lisp/ebuff-menu.el (electric-buffer-list)
9310         (Electric-buffer-menu-exit):
9311         * lisp/double.el (double-translate-key):
9312         * lisp/comint.el (comint-dynamic-list-input-ring)
9313         (comint-dynamic-list-completions): Do not overwrite preexisting
9314         contents of `unread-command-events' when putting new events into it.
9316 2015-08-04  Daniel Colascione  <dancol@dancol.org>
9318         Improve ansi-color filtering of unrecognized escape sequences
9319         * lisp/ansi-color.el (ansi-color-drop-regexp): Recognize mode-setting
9320         escape sequences.
9321         (ansi-color-filter-apply, ansi-color-apply): Filter out
9322         unrecognized escape sequences.
9324 2015-08-04  Artur Malabarba  <bruce.connor.am@gmail.com>
9326         * lisp/emacs-lisp/package.el (package-menu-mode-map): Convert menu
9327         definitions to `easy-menu-define', improve a couple to account for
9328         async, and add a couple of new commands.
9330 2015-08-03  Jürgen Hötzel  <juergen@archlinux.org>
9332         * lisp/net/tramp-cache.el (tramp-set-file-property): Fix code typo.
9334 2015-08-03  Ingo Lohmar  <i.lohmar@gmail.com>
9336         Add new 'calendar-weekend-days' option
9337         Make the days receiving the 'calendar-weekend-header' face freely
9338         customizable, as they differ by region/culture.
9339         * doc/emacs/calendar.texi (Move to Beginning or End): Document the
9340         new variable.
9341         * lisp/calendar/calendar.el (calendar-generate-month): New variable
9342         calendar-weekend-days to customize day header fontification.
9344 2015-08-03  Paul Eggert  <eggert@cs.ucla.edu>
9346         Redo text-quoting-style variable
9347         Rename help-quote-translation to text-quoting-style,
9348         and use symbols rather than characters as values.
9349         This follows suggestions along these lines by Alan Mackenzie in:
9350         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00343.html
9351         and by Drew Adams in:
9352         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00048.html
9353         * doc/lispref/help.texi (Keys in Documentation)
9354         * etc/NEWS:
9355         * lisp/cus-start.el (standard):
9356         * src/doc.c (Fsubstitute_command_keys, syms_of_doc):
9357         Document and/or implement the new behavior instead of the old.
9358         (syms_of_doc): New symbols 'grave' and 'straight'.
9360 2015-08-03  Nikolaus Rath  <Nikolaus@rath.org>
9362         nnimap.el: Use IMAP MOVE extension if available
9363         * lisp/gnus/nnimap.el (nnimap-request-move-article)
9364         (nnimap-process-expiry-targets, nnimap-split-incoming-mail):
9365         Use MOVE extension if available.
9367         nnimap.el: Explicitly ask for server capabilities
9368         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Don't assume full
9369         capabilities will be returned in the login-result.
9371 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
9373         Treat help strings like other doc strings
9374         * doc/lispref/text.texi (Special Properties), etc/NEWS: Document this.
9375         * lisp/epa.el (epa--select-keys): Remove no-longer-needed calls to
9376         substitute-command-keys.
9377         * src/keyboard.c (show_help_echo, parse_menu_item): Call
9378         substitute-command-keys on the help string before displaying it.
9380         Also mention "curly quotes"
9381         See Drew Adams's email in:
9382         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00040.html
9383         * doc/lispref/help.texi (Keys in Documentation):
9384         Add index entry "curly quotes".
9385         * etc/NEWS: Use the phrase "curly quotes" too.
9387         ede-proj-target-makefile docstring tweaks
9388         * lisp/cedet/ede/proj.el (ede-proj-target-makefile):
9389         Consistently use "all:" to describe the all: target,
9390         replacing three different and confusingly-quoted usages.
9392 2015-08-02  Evgeny Fraimovitch  <johnlen7@gmail.com>  (tiny change)
9394         Don't abort emacsclientw when -a was specified
9395         * lib-src/emacsclient.c (set_tcp_socket) [WINDOWSNT]: Don't error
9396         out if we are in emacsclientw and -a was specified.
9398 2015-08-02  Eli Zaretskii  <eliz@gnu.org>
9400         Fix handling of 1st keystroke on MS-Windows
9401         * src/w32fns.c (globals_of_w32fns): Initialize after_deadkey to -1.
9402         This is needed to correctly handle the session's first keystroke,
9403         if it has any modifiers.  (Bug#19994)
9405 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
9407         Substitute some customization etc. doc strings
9408         These changes apply substitute-command-keys to some
9409         doc strings that were going through untranslated
9410         when creating customization or other widgets.
9411         * lisp/cus-edit.el (custom-group-value-create):
9412         * lisp/wid-edit.el (widget-default-create):
9413         (widget-push-button-value-create):
9414         Treat the widget tag as a doc string.
9415         * lisp/emacs-lisp/cl-extra.el (cl--describe-class-slot):
9416         Treat the :documentation value as a doc string.
9417         * lisp/wid-edit.el (widget-choose):
9418         Treat the choice names as doc strings.
9419         (widget-default-create): Treat the :doc value as a doc string.
9420         (widget-toggle-value-create): Treat the :on and :off values
9421         as doc strings.
9422         (widget-documentation-string-value-create):
9423         Substitute the doc string.
9425 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
9427         Add a second argument to project-ignores
9428         * lisp/progmodes/project.el (project-ignores): Add a second
9429         argument DIR.
9430         * lisp/progmodes/project.el (project-ignores): Only include the VC
9431         ignores if DIR is the VC root.
9432         * lisp/progmodes/xref.el (xref-find-regexp): Update accordingly.
9434 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
9436         Prevent incorrect display when 'line-spacing' variable is set
9437         * src/xdisp.c (try_window_id): Give up this optimization if the
9438         buffer has its 'line-spacing' variable set non-nil.
9440 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
9442         Don't pass NOVISIT to find-file
9443         * lisp/progmodes/etags.el (next-file):
9444         Don't pass NOVISIT to find-file (bug#21175).
9446         Ignore buffer restriction for tags-loop-eval
9447         * lisp/progmodes/etags.el (tags-loop-continue): Ignore buffer
9448         restriction (bug#21167).
9450 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
9452         Fix a thinko in 'ffap-gopher-at-point'
9453         * lisp/ffap.el (ffap-gopher-at-point): Fix last change.  (Bug#21168)
9455         Honor 'line-spacing' for empty lines
9456         * src/xdisp.c (append_space_for_newline): Honor 'line-height'
9457         property and 'line-spacing' frame parameter or variable or
9458         property for empty lines, by doing the same processing as in
9459         x_produce_glyph for newline characters.  (Bug#21165)
9461 2015-08-01  Paul Eggert  <eggert@cs.ucla.edu>
9463         Simplify by assuming C99 integer division
9464         * src/floatfns.c (ceiling2, floor2, truncate2):
9465         Assume C99 (i.e., Fortran) semantics for integer division.
9466         This simplifies the code.
9468 2015-07-31  Paul Eggert  <eggert@cs.ucla.edu>
9470         Don't overflow if computing approximate percentage
9471         * lisp/align.el (align-region):
9472         * lisp/cedet/semantic.el (semantic-repeat-parse-whole-stream):
9473         * lisp/cedet/semantic/wisent.el (wisent-parse-region):
9474         * lisp/cus-edit.el (custom-buffer-create-internal):
9475         * lisp/emacs-lisp/checkdoc.el (checkdoc-interactive-ispell-loop)
9476         (checkdoc-message-interactive-ispell-loop, checkdoc-next-error)
9477         (checkdoc-next-message-error):
9478         * lisp/emacs-lisp/eieio-opt.el (eieio-display-method-list):
9479         * lisp/epa.el (epa-progress-callback-function):
9480         * lisp/erc/erc-dcc.el (erc-dcc-do-LIST-command):
9481         * lisp/ffap.el (ffap-menu-rescan):
9482         * lisp/gnus/nnbabyl.el (nnbabyl-retrieve-headers):
9483         * lisp/gnus/nndiary.el (nndiary-retrieve-headers):
9484         * lisp/gnus/nneething.el (nneething-retrieve-headers):
9485         * lisp/gnus/nnmbox.el (nnmbox-retrieve-headers):
9486         * lisp/gnus/nnmh.el (nnmh-retrieve-headers):
9487         * lisp/gnus/nnml.el (nnml-retrieve-headers):
9488         * lisp/gnus/nnspool.el (nnspool-retrieve-headers):
9489         * lisp/gnus/nntp.el (nntp-retrieve-headers)
9490         (nntp-retrieve-articles):
9491         * lisp/imenu.el (imenu--relative-position):
9492         * lisp/international/ja-dic-cnv.el (skkdic-collect-okuri-nasi)
9493         (skkdic-convert-okuri-nasi):
9494         * lisp/net/ange-ftp.el (ange-ftp-process-handle-hash):
9495         * lisp/nxml/rng-valid.el (rng-compute-mode-line-string):
9496         * lisp/org/org-list.el (org-update-checkbox-count):
9497         * lisp/org/org.el (org-table-map-tables)
9498         (org-update-parent-todo-statistics):
9499         * lisp/play/decipher.el (decipher-insert-frequency-counts)
9500         (decipher-analyze-buffer):
9501         * lisp/profiler.el (profiler-format-percent):
9502         * lisp/progmodes/cc-cmds.el (c-progress-update):
9503         * lisp/progmodes/cpp.el (cpp-highlight-buffer):
9504         * lisp/progmodes/idlwave.el (idlwave-convert-xml-system-routine-info)
9505         (idlwave-list-load-path-shadows):
9506         * lisp/progmodes/opascal.el (opascal-step-progress):
9507         * lisp/progmodes/vhdl-mode.el (vhdl-update-progress-info)
9508         (vhdl-scan-directory-contents):
9509         * lisp/textmodes/bibtex.el (bibtex-progress-message):
9510         * lisp/textmodes/flyspell.el (flyspell-small-region)
9511         (flyspell-external-point-words):
9512         * lisp/textmodes/table.el (table-recognize):
9513         Prefer (floor (* 100.0 NUMERATOR) DENOMINATOR) when calculating
9514         progress-report percentages and the like.  This avoids problems
9515         if (* 100 NUMERATOR) would overflow.
9516         * lisp/gnus/gnus-registry.el (gnus-registry-import-eld):
9517         * lisp/gnus/registry.el (registry-reindex):
9518         Use (* 100.0 ...) rather than (* 100 ...) to avoid int overflow issues.
9519         * lisp/descr-text.el (describe-char):
9520         * lisp/org/org-colview.el (org-nofm-to-completion):
9521         * lisp/ps-print.el (ps-plot):
9522         * lisp/simple.el (what-cursor-position):
9523         Prefer (round (* 100.0 NUMERATOR) DENOMINATOR) to a
9524         more-complicated and less-accurate approximation.
9526         Fix some int overflows in profiler.c
9527         * src/profiler.c (make_log): Make args EMACS_INT, not int,
9528         to avoid unwanted behavior on 'int' overflow.
9529         (make_log, evict_lower_half, record_backtrace):
9530         Use ptrdiff_t, not int, for object indexes.
9532         Port to pedantic memcpy
9533         * src/keyboard.c (menu_bar_items, tool_bar_items):
9534         * src/xrdb.c (magic_db):
9535         Port to pedantic memcpy implementations that reject memcpy (0, 0, 0).
9537         Merge from gnulib
9538         This incorporates:
9539         2015-07-29 time_rz: port to pedantic memcpy
9540         * lib/time_rz.c: Copy from gnulib.
9542 2015-07-31  Artur Malabarba  <bruce.connor.am@gmail.com>
9544         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
9545         When updating the very last entry, tabulated-list-print would
9546         erase it and then try to look at the next one (which obviously
9547         isn't there).
9549 2015-07-31  Eli Zaretskii  <eliz@gnu.org>
9551         Allow to use the old key processing code on MS-Windows
9552         * src/w32fns.c (syms_of_w32fns) <w32-use-fallback-wm-chars-method>:
9553         New variable.
9554         (w32_wnd_proc): Use it to invoke the old code that processed
9555         character keys, as fallback, when this variable is non-nil.
9556         Fix typos in comments.  (Bug#19994)
9558 2015-07-31  Ilya Zakharevich  <ilya@math.berkeley.edu>
9560         Improve handling of Unicode keyboard input on MS-Windows
9561         * src/w32fns.c (get_wm_chars, deliver_wm_chars): New functions.
9562         (FPRINTF_WM_CHARS) [DEBUG_WM_CHARS]: New macro for debugging.
9563         (w32_wnd_proc): Call deliver_wm_chars to process non-special keys
9564         upon receiving WM_KEYDOWN or WM_SYSKEYDOWN messages.  If that is
9565         successful, don't call TranslateMessage.  (Bug#19994)
9567 2015-07-30  Dmitry Gutov  <dgutov@yandex.ru>
9569         Fix default-directory in changeset diffs after vc-print-log
9570         * lisp/vc/log-view.el (log-view-diff-common): Move the
9571         revision-granularity check back into log-view-diff-changeset.
9572         (log-view-diff-changeset): Bind default-directory to the current
9573         VC root.
9575         Rename project-directories to project-roots
9576         * lisp/progmodes/project.el (project-search-path-function)
9577         (project-search-path): Update the docstring.
9578         (project-directories): Rename to `project-roots', update all
9579         callers and implementations accordingly.
9580         (project-root): Remove.
9581         * lisp/progmodes/xref.el (xref-find-regexp): Use * instead of *.*
9582         as the default file mask.
9584 2015-07-30  Eli Zaretskii  <eliz@gnu.org>
9586         Support long URLs in w32-shell-execute
9587         * src/w32fns.c (Fw32_shell_execute): Don't use filename_to_utf16
9588         and filename_to_ansi to convert the DOCUMENT argument, as it could
9589         be a URL that is not limited to MAX_PATH characters.  Instead, use
9590         MultiByteToWideChar directly, and allocate heap storage as
9591         required to accommodate the converted string.  Likewise with
9592         non-Unicode operation.  Ensure OPERATION is null-terminated, even
9593         if it is longer than 32K bytes.  (Bug#21158)
9595 2015-07-30  Stephen Leake  <stephen_leake@stephe-leake.org>
9597         * lisp/vc/vc-mtn.el (vc-mtn-find-revision): Handle null rev.
9599 2015-07-29  Stephen Leake  <stephen_leake@stephe-leake.org>
9601         Add docs for display-buffer action display-buffer-use-some-frame
9602         * lisp/window.el (display-buffer-use-some-frame): Improve doc string.
9603         * doc/lispref/windows.texi (Display Action Functions):
9604         Add display-buffer-use-some-frame.
9605         * etc/NEWS: Mention display-buffer-use-some-frame.
9607         Add display-buffer action display-buffer-use-some-frame
9608         * lisp/window.el (display-buffer-use-some-frame): New.
9610         Handle vc-mtn error more gently
9611         * lisp/vc/vc-mtn.el (vc-mtn-mode-line-string): Return "" when
9612         branch is nil.
9614 2015-07-29  Michael Albinus  <michael.albinus@gmx.de>
9616         Fix Tramp problems with multihops, and nc
9617         * lisp/net/tramp-cache.el (tramp-get-file-property)
9618         (tramp-set-file-property, tramp-flush-file-property)
9619         (tramp-get-connection-property, tramp-set-connection-property)
9620         (tramp-flush-connection-property): Remove hop from vector.
9621         * lisp/net/tramp-gw.el (tramp-gw-process-filter): Ignore errors.
9622         * lisp/net/tramp-sh.el (tramp-methods) <nc>: Separate STDERR.
9623         (tramp-do-copy-or-rename-file-out-of-band): Increase timeout of
9624         netstat to 60".
9625         (tramp-sh-handle-start-file-process): Do not show hops in prompt.
9626         * lisp/net/tramp.el (tramp-handle-file-name-as-directory)
9627         (tramp-handle-file-name-directory, tramp-handle-file-remote-p):
9628         Keep hop in result.
9629         * test/automated/tramp-tests.el (tramp-test02-file-name-dissect):
9630         Add hop tests.
9632 2015-07-29  Eli Zaretskii  <eliz@gnu.org>
9634         Resurrect highlighting of repeated words by Flyspell Mode
9635         * lisp/textmodes/flyspell.el (flyspell-word): Leave some non-word
9636         characters between point and the doublon candidate, so that
9637         flyspell-word-search-backward finds it.  (Bug#21157)
9639         Fix redisplay of large images on expose events
9640         * src/xdisp.c (expose_window, expose_area): Avoid comparisons
9641         between signed negative values and unsigned values.  This
9642         prevented redisplay on expose events when the window showed a very
9643         large image.
9645 2015-07-29  Paul Eggert  <eggert@cs.ucla.edu>
9647         Remove unnecessary stack overflow dependency
9648         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING):
9649         Don't worry about $ac_cv_header_sys_resource_h and
9650         $ac_cv_func_getrlimit, as they're no longer needed for this.
9651         Problem reported by Eli Zaretskii in:
9652         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00443.html
9654 2015-07-28  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
9656         Pacify compilation -Wincompatible-pointer-types warnings
9657         * src/w32proc.c (Fw32_get_codepage_charset): Avoid compilation
9658         warning.
9659         (CompareStringW_Proc): New typedef.
9660         (w32_compare_strings): Use it, to pacify compiler warnings under
9661         "-Wincompatible-pointer-types".
9662         * src/w32fns.c (GetDiskFreeSpaceExW_Proc)
9663         (GetDiskFreeSpaceExA_Proc): New typedefs.
9664         (Ffile_system_info): Use them, to pacify compiler warnings under
9665         "-Wincompatible-pointer-types".
9667 2015-07-28  Paul Eggert  <eggert@cs.ucla.edu>
9669         Fix subscript error in calculate_direct_scrolling
9670         Use slightly-longer cost vectors.  Without this change,
9671         calculate_direct_scrolling can have a subscript violation when
9672         FRAME_LINES (frame) <= delta.
9673         * src/scroll.c (calculate_scrolling, calculate_direct_scrolling)
9674         (line_ins_del, do_line_insertion_deletion_costs):
9675         Allocate and use slightly-larger cost vectors, ones based on
9676         FRAME_TOTAL_LINES instead of FRAME_LINES.
9678         Fix uninitalized value in encode_coding_object
9679         * src/coding.c (encode_coding_object): Also initialize
9680         coding->src_pos and coding->src_pos_byte when NILP (src_object).
9681         This avoids later use of uninitialized storage.
9683 2015-07-27  Xue Fuqiao  <xfq.free@gmail.com>
9685         * doc/lispref/variables.texi (Variable Aliases): Typo fix.
9686         (Bug#21141)
9688 2015-07-27  Paul Eggert  <eggert@cs.ucla.edu>
9690         Merge from gnulib
9691         This incorporates:
9692         2015-07-27 time_rz: port better to MinGW
9693         2015-07-27 time: port __need_time_t to MinGW
9694         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
9695         * lib/strftime.c, lib/time.in.h, lib/time_rz.c: Copy from gnulib.
9696         * lib/time-internal.h: New file, from gnulib.
9698 2015-07-27  Eli Zaretskii  <eliz@gnu.org>
9700         Handle NULL pointers in w32heap.c allocation routines
9701         * src/w32heap.c (FREEABLE_P): Consider a NULL pointer "not
9702         freeable".
9703         (realloc_after_dump, realloc_before_dump, free_before_dump):
9704         Handle NULL pointers gracefully, as Emacs now seems to expect that.
9706         Fix Cairo build without PNG
9707         * src/image.c: Define PNG function when USE_CAIRO is defined, even
9708         if HAVE_PNG is not.  (Bug#21133)
9710         MS-Windows follow-up for recent TZ-related changes
9711         * nt/mingw-cfg.site (ac_cv_header_pthread_h)
9712         (gl_cv_sys_struct_timespec_in_pthread_h): Force to "no", to avoid
9713         picking up 'struct timespec' from pthread.h, if it is installed on
9714         the user's system.  We want either the definitions from MinGW
9715         system headers, if available, or the Gnulib replacements if not.
9716         * nt/inc/ms-w32.h <struct timespec>: Don't define, as we now use
9717         lib/time.h.
9718         * lib/time.in.h: Don't let __need_* symbols affect what happens on
9719         MinGW.  These symbols are defined by MinGW system headers, but we
9720         don't want that to affect whether Gnulib portions of the header
9721         are or aren't used.
9723 2015-07-26  Paul Eggert  <eggert@cs.ucla.edu>
9725         * src/ftfont.c (ftfont_close): Add comment re Bug#20890.
9727         New optional ZONE arg for format-time-string etc.
9728         This simplifies time conversions in other time zones.
9729         It also prevents display-time-world tampering with TZ (Bug#21020).
9730         * admin/admin.el (add-release-logs):
9731         Use improved add-log-time-format API.
9732         * admin/merge-gnulib (GNULIB_MODULES): Add time_rz, timegm.
9733         (GNULIB_TOOL_FLAGS): Avoid flexmember, setenv, unsetenv.
9734         * configure.ac (tzalloc): Remove test for this, since
9735         Emacs no longer uses HAVE_TZALLOC directly.
9736         * doc/lispref/os.texi (Time of Day, Time Conversion)
9737         (Time Parsing):
9738         * etc/NEWS: Document the new behavior.
9739         Merge from gnulib, incorporating:
9740         2015-07-25 strftime: fix newly-introduced bug on Solaris
9741         2015-07-23 fprintftime, strftime: use timezone_t args
9742         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
9743         * lib/strftime.c, lib/strftime.h, lib/time.in.h, m4/sys_time_h.m4:
9744         * m4/time_h.m4:
9745         Update from gnulib.
9746         * lib/time_rz.c, lib/timegm.c, m4/time_rz.m4, m4/timegm.m4:
9747         New files from gnulib.
9748         * lisp/time-stamp.el (time-stamp-string):
9749         * lisp/time.el (display-time-world-list)
9750         (display-time-world-display):
9751         Use new API, with time zone arg.
9752         * lisp/time.el (display-time-world-display):
9753         Fix race when current-time advances while we're running.
9754         * lisp/vc/add-log.el (add-log-iso8601-time-zone)
9755         (add-log-iso8601-time-string): Accept optional time zone arg.
9756         * lisp/vc/add-log.el (add-change-log-entry):
9757         * lisp/vc/log-edit.el (log-edit-changelog-ours-p): Use new arg.
9758         * nt/gnulib.mk: Propagate lib/gnulib.mk changes here.
9759         Add rules for the time module, since they're now needed
9760         for tzalloc etc.
9761         * src/conf_post.h (getenv_TZ, setenv_TZ): New macros.
9762         (emacs_getenv_TZ, emacs_setenv_TZ): New decls.
9763         * src/editfns.c: Include errno.h.
9764         (set_time_zone_rule): Omit unnecessary forward decl.
9765         (initial_tz): Remove, replacing with ...
9766         (local_tz, wall_clock_tz, utc_tz): New static vars and constants.
9767         (tzeqlen): New constant; prefer it to (sizeof "TZ=" - 1).
9768         (emacs_localtime_rz, emacs_mktime_z, xtzalloc, xtzfree)
9769         (tzlookup): New static functions.
9770         (init_editfns): New arg DUMPING.  All uses changed.
9771         (init_editfns): Omit most initialization if dumping, not if
9772         !initialized.  Initialize wall_clock_tz and local_tz.
9773         (emacs_nmemftime, format_time_string): Time zone argument can now
9774         be any time zone, not just a boolean for UTC or local time.  All
9775         callers changed.
9776         (Fformat_time_string, Fencode_time, Fcurrent_time_string)
9777         (Fcurrent_time_zone): New optional arg ZONE.
9778         (Fdecode_time, Fset_time_zone_rule): ZONE arg can now also take
9779         the same form as with the other new additions.
9780         (decode_time_zone): Remove; no longer needed.
9781         (tzvalbuf): Now file-scope.
9782         (emacs_getenv_TZ, emacs_setenv_TZ): New functions.
9783         (syms_of_editfns): Define Qwall.
9784         * src/editfns.c (mktime_z) [!HAVE_TZALLOC]:
9785         * src/systime.h (mktime_z, timezone_t, tzalloc, tzfree)
9786         [!HAVE_TZALLOC]:
9787         Remove; now supplied by gnulib.
9788         * src/emacs.c (main):
9789         * src/lisp.h (init_editfns): Adjust to init_editfns API change.
9791 2015-07-26  Shigeru Fukaya  <shigeru.fukaya@gmail.com>
9793         Fix infinite loop in delete-consecutive-dups
9794         * lisp/subr.el (delete-consecutive-dups): Work even if the last
9795         element is nil (Bug#20588).  Avoid rescan of a circular list in
9796         deletion of last element.
9798 2015-07-26  Martin Rudalics  <rudalics@gmx.at>
9800         Have `x-frame-geometry' return nil for terminal and initial
9801         frames (Bug#21132)
9802         * src/nsfns.m (Fx_frame_geometry):
9803         * src/xfns.c (Fx_frame_geometry): Return nil for initial and
9804         terminal frames.
9805         * src/w32fns.c (Fw32_frame_menu_bar_size, Fw32_frame_rect)
9806         (Fx_frame_geometry): Return nil for terminal frames
9808 2015-07-26  HOSOYA Kei  <hosoyakei.free@gmail.com>  (tiny change)
9810         * etc/tutorials/TUTORIAL.ja: Improve translation.
9812 2015-07-25  Eli Zaretskii  <eliz@gnu.org>
9814         Avoid crashes when w32 GUI functions are called in -batch
9815         * src/w32fns.c (Fx_frame_geometry, Fw32_frame_rect)
9816         (Fw32_frame_menu_bar_size, Fw32_send_sys_command): Don't call
9817         FRAME_W32_WINDOW for initial frame.  (Bug#21132)
9819         Fix flyspell-check-previous-highlighted-word
9820         * lisp/textmodes/flyspell.el
9821         (flyspell-check-previous-highlighted-word): Really accept a
9822         numeric argument, as the doc string describes.  Fix an off-by-one
9823         error in looking up overlays, so invocation with point immediately
9824         after a word would check that word.  Clarify the doc string as
9825         Suggested by N. Jackson <nljlistbox2@gmail.com>.  (Bug#21129)
9827 2015-07-24  Michael Albinus  <michael.albinus@gmx.de>
9829         Minor cleanup in tramp-tests.el
9830         * test/automated/tramp-tests.el (tramp-test31-*, tramp-test32-*):
9831         Implement using the documented interface
9832         `tramp-connection-properties', rather than with internal functions.
9834 2015-07-24  Harald Hanche-Olsen  <hanche@math.ntnu.no>  (tiny change)
9836         Pass lambdas to `skeleton-read'
9837         * lisp/skeleton.el (skeleton-read): Allow PROMPT to be a function.
9838         * lisp/textmodes/sgml-mode.el (sgml-attributes, sgml-value): Pass
9839         lambdas to `skeleton-read' (bug#20386).
9841 2015-07-24  Eli Zaretskii  <eliz@gnu.org>
9843         * INSTALL (DETAILED BUILDING AND INSTALLATION):
9844         Mention --without-imagemagick.
9846         Don't require GUI frames and mouse for Flyspell menus
9847         * lisp/textmodes/flyspell.el (flyspell-correct-word-before-point)
9848         (flyspell-emacs-popup): Require neither a GUI frame nor mouse
9849         support, since pop-up menus work with text terminals and can be
9850         controlled via the keyboard.
9852         Improve documentation of Flyspell commands
9853         * doc/emacs/fixit.texi (Spelling): Mention Flyspell commands that
9854         can be invoked via the keyboard.  Mention those commands by name
9855         and add them to the fn index.  (Bug#21125)
9857 2015-07-23  Michael Albinus  <michael.albinus@gmx.de>
9859         Fix some Tramp problems with HP-UX
9860         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
9861         Add "tab0" to stty call.
9862         * test/automated/tramp-tests.el (tramp-persistency-file-name):
9863         Set to nil.
9864         (tramp--test-hpux-p): New defun.
9865         (tramp--test-utf8): Use it.
9867 2015-07-22  Glenn Morris  <rgm@gnu.org>
9869         * build-aux/update-subdirs: Put "no-update-autoloads: t" in output.
9871 2015-07-22  Eli Zaretskii  <eliz@gnu.org>
9873         Fix point positioning in ffap-next-guess
9874         * lisp/ffap.el (ffap-url-at-point): Set ffap-string-at-point-region,
9875         as our callers expect.  This was clobbered as part of fixing
9876         bug#5673.  (Bug#21107)
9877         (ffap-gopher-at-point): Set ffap-string-at-point-region.
9879 2015-07-22  Martin Rudalics  <rudalics@gmx.at>
9881         * lisp/window.el (even-window-sizes): Fix customization type.
9883         Optionally even widths of `display-buffer' windows.  (Bug#21100)
9884         * lisp/window.el (quit-restore-window): Restore width if
9885         requested.
9886         (display-buffer-record-window): Record width when window is
9887         reused and horizontally combined.
9888         (even-window-sizes): New option to allow evening window widths.
9889         (even-window-heights): Defalias to `even-window-sizes'.
9890         (window--even-window-heights): Rename to
9891         `window--even-window-sizes'.  Handle side-by-side windows.
9892         (display-buffer-use-some-window): Call `window--even-window-sizes'
9893         instead of `window--even-window-heights'.
9894         * lisp/help.el (resize-temp-buffer-window): Fix indentation.
9895         * doc/lispref/windows.texi (Choosing Window Options): Describe
9896         `even-window-sizes'.
9897         (Coordinates and Windows): Fix typo.
9899 2015-07-22  Stephen Leake  <stephen_leake@stephe-leake.org>
9901         Add file name to autoload error messages
9902         * lisp/emacs-lisp/autoload.el (autoload-save-buffers):
9903         Add condition-case to add file name to error message.
9905 2015-07-22  Michael Albinus  <michael.albinus@gmx.de>
9907         * lisp/net/tramp-sh.el (tramp-ssh-controlmaster-options):
9908         Use 0.0.0.1 as test host.
9910 2015-07-21  Stefan Monnier  <monnier@iro.umontreal.ca>
9912         (advice--called-interactively-skip): Fix inf-loop (bug#21083)
9913         * lisp/emacs-lisp/nadvice.el (advice--called-interactively-skip):
9914         Fix inf-loop (bug#21083).
9916 2015-07-21  Glenn Morris  <rgm@gnu.org>
9918         * test/automated/package-test.el (package-test-signed):
9919         Update for recent changes.
9921         * test/automated/elisp-mode-tests.el
9922         (elisp-xref-finds-both-function-and-variable)
9923         (elisp-xref-finds-only-function-for-minor-mode):
9924         Update for recent xref name changes.
9926 2015-07-21  Dmitry Gutov  <dgutov@yandex.ru>
9928         Make eldoc timer non-repeatable
9929         * lisp/emacs-lisp/eldoc.el (eldoc-schedule-timer): Make the timer
9930         non-repeatable.  Since it's on post-command hook, that just wasted
9931         CPU cycles.
9933 2015-07-21  Michael Albinus  <michael.albinus@gmx.de>
9935         Mention `tramp-connection-properties' in NEWS
9937         Sync with Tramp repository
9938         * doc/misc/tramp.texi (Configuration): Note, that Tramp must be
9939         required prior changing its configuration.
9940         (Connection caching, Predefined connection information)
9941         (Remote shell setup): Fix typos.
9942         (Predefined connection information): Describe, how to overwrite
9943         parameters of `tramp-methods'.
9944         (Remote programs, Remote processes, Traces and Profiles):
9945         Simplify example.
9946         (Remote programs): Remove superfluous comment.
9947         * doc/misc/trampver.texi: Update release number.
9948         * lisp/net/tramp-cache.el (tramp-connection-properties):
9949         Adapt docstring.
9950         * lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file): New defun.
9951         (tramp-gvfs-handle-copy-file, tramp-gvfs-handle-rename-file): Use it.
9952         (tramp-gvfs-handle-make-directory): Reimplement PARENTS handling,
9953         "gvfs-mkdir -p ..." does not work robust.
9954         (tramp-gvfs-maybe-open-connection):
9955         Adapt `tramp-get-method-parameter' call.
9956         * lisp/net/tramp-sh.el (tramp-methods):
9957         Add `tramp-remote-shell-login' parameter where it fits.
9958         (tramp-get-remote-path): Use it.
9959         (tramp-make-copy-program-file-name): Fix quoting for "psftp" method.
9960         (all): Adapt `tramp-get-method-parameter' calls.
9961         * lisp/net/tramp.el (tramp-methods): Adapt docstring.
9962         (tramp-get-method-parameter): Replace argument METHOD by VEC.
9963         Check also for hits in `tramp-connection-properties'.  Adapt docstring.
9964         (tramp-get-remote-tmpdir): Cache only the local name of tmpdir.
9965         (all): Adapt `tramp-get-method-parameter' calls.
9966         * lisp/net/trampver.el Update release number.
9967         * test/automated/tramp-tests.el (tramp--instrument-test-case):
9968         Add "^make-symbolic-link not supported$" to `debug-ignored-errors'.
9969         (tramp-test13-make-directory, tramp--test-adb-p)
9970         (tramp--test-smb-or-windows-nt-p): Simplify.
9971         (tramp--test-ftp-p, tramp--test-gvfs-p): New defuns.
9972         (tramp--test-special-characters): Fix docstring.  Add gvfs and
9973         ftp tests.
9974         (tramp--test-utf8): Fix docstring.
9976 2015-07-20  Dmitry Gutov  <dgutov@yandex.ru>
9978         Add new xref-query-replace command
9979         * lisp/progmodes/xref.el (xref--match-buffer-bounds):
9980         New function, extracted from xref-pulse-momentarily.
9981         (xref-query-replace): New command.
9982         (xref--query-replace-1): New helper function.
9983         (xref--xref-buffer-mode-map): Add `r' binding.
9985 2015-07-20  Paul Eggert  <eggert@cs.ucla.edu>
9987         Simplify icalendar decoding of Z dates
9988         * lisp/calendar/icalendar.el (icalendar--decode-isodatetime):
9989         Simplify calculation of time strings with trailing "Z".
9991 2015-07-19  Dmitry Gutov  <dgutov@yandex.ru>
9993         Do not corrupt grep-find-ignored-files
9994         * lisp/progmodes/project.el (project-ignores): Change the order of
9995         the arguments to nconc, in order not to corrupt grep-find-ignored-files.
9997         Add xref-match-item, and use it
9998         * lisp/progmodes/xref.el (xref-match-bounds): New generic function.
9999         (xref-file-location): Add reader for the column slot.
10000         (xref-match-item): New class.
10001         (xref-match-bounds): A method implementation for it.
10002         (xref-make-match): New constructor function.
10003         (xref--current-item): New private variable.
10004         (xref-pulse-momentarily): Use it.
10005         (xref--pop-to-location): Change the first argument to an xref
10006         item, instead of location, bind xref--current-item.
10007         Update all callers.
10008         (xref-next-line, xref-prev-line, xref--next-error-function)
10009         (xref--mouse-2): Look for the property `xref-item',
10010         instead of `xref-location'.
10011         (xref--item-at-point): Likewise.  This function replaces
10012         `xref-location-at-point'.  Update all callers.
10013         (xref--insert-xrefs): Add the `xref-item' text property, instead
10014         of `xref-location'.
10015         (xref--collect-match): Use xref-make-match.
10017         * lisp/progmodes/xref.el (xref-item): Rename from `xref--xref'.
10018         Update all references.
10020         * lisp/progmodes/xref.el (xref--xref): Rename the `description'
10021         slot to `summary'.
10023         vc-hg: Perform the print-log call asynchronously
10024         * lisp/vc/vc-hg.el (vc-hg-print-log): Perform the call
10025         asynchronously (bug#21067).
10027         Add xref-after-jump-hook and xref-after-return-hook
10028         * lisp/progmodes/xref.el (xref-after-jump-hook)
10029         (xref-after-return-hook): New hooks.
10030         (xref-pulse-on-jump): Remove, in favor of the above.
10031         (xref-pulse-momentarily): Rename from xref--maybe-pulse.
10032         (xref--pop-to-location, xref--display-position)
10033         (xref-pop-marker-stack): Use the new hooks, as requested in
10034         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00213.html
10036 2015-07-19  Bozhidar Batsov  <bozhidar@batsov.com>
10038         * lisp/progmodes/js.el (js-mode): Correct the lighter.
10040 2015-07-19  Leo Liu  <sdl.web@gmail.com>
10042         Fix a bug in cfengine3-mode
10043         * lisp/progmodes/cfengine.el (cfengine3-mode): Handle nil
10044         eldoc-documentation-function.
10046 2015-07-18  Julien Danjou  <julien@danjou.info>
10048         sieve-mode: support "body" test command
10049         * lisp/gnus/sieve-mode.el (sieve-font-lock-keywords):
10050         Add missing "body" test command.
10052 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
10054         Fix info-apropos when the default encoding is Latin-N
10055         * lisp/info.el (Info-find-node-2): Reset the buffer's encoding to
10056         'undecided', so that it is set to the encoding of the Info file we
10057         are about to insert.  Otherwise, 'info-apropos' will fail to find
10058         some index nodes in some UTF-8 encoded files, if the buffer's
10059         previous encoding is Latin-N or some such.
10061 2015-07-18  Ivan Andrus  <darthandrus@gmail.com>
10063         * lisp/epg.el (epg--start): Check that gpgconf can be found
10064         before calling it.
10066         Expose more file types to OS X that Emacs understands
10067         * nextstep/Cocoa/Emacs.base/Contents/Info.plist: Add editor role for
10068         sty, dtx, json, and org files.  Export UTIs for el, elc, and org files.
10070 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
10072         Fix visual-order cursor movement when lines are truncated
10073         * src/xdisp.c (Fmove_point_visually): When lines are truncated,
10074         simulate display in a window of infinite width, to allow move_it_*
10075         functions reach positions outside of normal window dimensions.
10076         Remove code that tried to handle a subset of these situations by
10077         manual iteration of buffer text.  (Bug#17777)
10079         Fix following Info cross-references to anchors
10080         * lisp/info.el (Info-read-subfile): Add to the returned value the
10081         length of subfile preamble, after converting it to file's byte
10082         offset, as expected by the caller.  Use bufferpos-to-filepos.
10083         (Info-find-node-2): If searching for a node with a
10084         1000-character slop fails, try again with a 10000-character slop,
10085         to account for known bugs in Texinfo 5.0 and 5.1.  (Bug#21055)
10086         * lisp/international/mule-util.el (bufferpos-to-filepos): New
10087         function.
10088         * etc/NEWS: Mention bufferpos-to-filepos.
10090         Fix scrolling backwards on TTY frames under scroll-conservatively
10091         * src/xdisp.c (move_it_vertically_backward): Fix off-by-one error
10092         in moving backwards on TTY frames.  (Bug#21080)
10094 2015-07-17  Dmitry Gutov  <dgutov@yandex.ru>
10096         Consider a jsdoc tag to be a beginning of a paragraph as well
10097         * lisp/progmodes/js.el (js-mode): Change c-paragraph-start to
10098         consider a jsdoc tag to be a beginning of a paragraph as well.
10100 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
10102         * lisp/emacs-lisp/package.el: Fix warnings.
10104         * lisp/emacs-lisp/package.el (package-buffer-info):
10105         Add author and maintainers to `package-buffer-info'.
10107         * lisp/emacs-lisp/package.el: Many small changes.
10108         Replace all instances of 'face with 'font-lock-face.
10109         (describe-package-1): Improve some strings and move the summary
10110         up the list.
10111         (package-install-file): Update docstring.
10112         (package-menu-hide-package): Bind to `H'.
10114         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
10115         Fix error handling.
10117 2015-07-17  Paul Eggert  <eggert@cs.ucla.edu>
10119         Fix hang with large yanks This should fix the bug fixed by Mike
10120         Crowe's patch in:
10121         https://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00106.html
10122         A problem in this area has been reported by several users; see
10123         Bug#16737, Bug#17101, Bug#17026, Bug#17172, Bug#19320, Bug#20283.
10124         This fix differs from Mike Crowe's patch in that it should avoid a
10125         race condition that could lose SIGIO signals.  ignore_sigio dates
10126         back to the 1980s when some platforms couldn't block signals, and
10127         could only ignore them, which led to races when signals arrived
10128         while being ignored.  We shouldn't have to worry about those old
10129         platforms now.
10130         * src/dispextern.h, src/sysdep.c (ignore_sigio): Remove.
10131         * src/emacs.c (shut_down_emacs):
10132         Don't call ignore_sigio; unrequest_sigio should suffice.
10133         * src/keyboard.c (kbd_buffer_store_buffered_event):
10134         Use unrequest_sigio, not ignore_sigio.
10135         (kbd_buffer_get_event):
10136         Call request_sigio when getting the ball rolling again.
10138 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
10140         * lisp/obsolete/longlines.el (longlines-search-function):
10141         Fallback on `isearch-search-fun-default'.
10143 2015-07-17  Tassilo Horn  <tsdh@gnu.org>
10145         Support @-mentions
10146         * lisp/net/rcirc.el (rcirc-completion-at-point): Support completion
10147         of mentions/messages with @nick instead of just nick.
10149 2015-07-16  Michael Albinus  <michael.albinus@gmx.de>
10151         Fix bug#20943
10152         * lisp/autorevert.el (auto-revert-handler): Do not check for
10153         `buffer-modified-p'.
10154         * lisp/files.el (buffer-stale--default-function): Check for
10155         `buffer-modified-p'.
10156         * test/automated/auto-revert-tests.el
10157         (auto-revert-test02-auto-revert-mode-dired): Adapt test.
10159 2015-07-16  Ari Roponen  <ari.roponen@gmail.com>
10161         Fix delete-dups bug on long lists
10162         * lisp/subr.el (delete-dups):
10163         Don't mistakenly keep some dups when applied to long lists.
10165 2015-07-16  Paul Eggert  <eggert@cs.ucla.edu>
10167         Better heuristic for C stack overflow
10168         Improve the heuristic for distinguishing stack overflows from
10169         other SIGSEGV causes (Bug#21004).  Corinna Vinschen explained that
10170         the getrlimit method wasn't portable to Cygwin; see:
10171         https://www.cygwin.com/ml/cygwin/2015-07/msg00092.html
10172         Corinna suggested pthread_getattr_np but this also has problems.
10173         Instead, replace the low-level system stuff with a simple
10174         heuristic based on known good stack addresses.
10175         * src/eval.c, src/lisp.h (near_C_stack_top): New function.
10176         * src/sysdep.c: Don't include <sys/resource.h>.
10177         (stack_direction): Remove.  All uses removed.
10178         (stack_overflow): New function.
10179         (handle_sigsegv): Use it instead of incorrect getrlimit heuristic.
10180         Make SEGV fatal in non-main threads.
10182 2015-07-16  Daiki Ueno  <ueno@gnu.org>
10184         epg: Automatically start pinentry server
10185         * lisp/epg-config.el (epg-gpgconf-program): New variable.
10186         * lisp/epg.el (epg--start): Call `pinentry-start' if
10187         allow-emacs-pinentry is set in ~/.gnupg/gpg-agent.conf.
10189 2015-07-15  Katsumi Yamaoka  <yamaoka@jpl.org>
10191         * lisp/gnus/nnimap.el: Fix my last bogus change.
10192         Reinstall Stefan Monnier's change that was made in
10193         <83d824bc4041332f338ad7e5e830f443535aa300>.
10195 2015-07-15  Paul Eggert  <eggert@cs.ucla.edu>
10197         Merge from gnulib
10198         This incorporates:
10199         2015-07-05 acl-permissions: Document FreeBSD ACL_TYPE_NFS4 acls
10200         2015-07-05 acl-permissions: Fix on FreeBSD
10201         2015-07-05 file-has-acl, acl-permissions: fix some more HP-UX typos
10202         * lib/acl-internal.c, lib/acl-internal.h, lib/get-permissions.c:
10203         * lib/set-permissions.c: Copy from gnulib.
10205         Port to stricter C99
10206         * src/keyboard.h (kbd_buffer_store_event_hold):
10207         Don't return a void expression.
10209 2015-07-15  Xue Fuqiao  <xfq.free@gmail.com>
10211         * doc/emacs/frames.texi (Creating Frames):
10212         Fix the command `C-x 5 m' runs.
10214 2015-07-14  Michael Albinus  <michael.albinus@gmx.de>
10216         New autorevert tests
10217         * test/automated/auto-revert-tests.el: New file.
10219 2015-07-14  Paul Eggert  <eggert@cs.ucla.edu>
10221         Clear gcprolist etc. after stack overflow
10222         After stack overflow, command_loop calls init_eval, and this needs to
10223         clear gcprolist and byte_stack_list (Bug#20996).
10224         * src/alloc.c (init_alloc):
10225         Move gcprolist and byte_stack_list initialization from here ...
10226         * src/eval.c (init_eval): ... to here.
10228 2015-07-13  Xue Fuqiao  <xfq.free@gmail.com>
10230         * doc/emacs/windows.texi (Pop Up Window): Fix the description
10231         of `C-x 4 m'.
10233 2015-07-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
10235         Avoid deprecated enums in mac-ct font backend driver
10236         * src/macfont.m (mac_font_copy_default_descriptors_for_language)
10237         (mac_ctfont_get_advance_width_for_glyph)
10238         (mac_ctfont_get_bounding_rect_for_glyph): Avoid deprecated enums.
10240         Cache font family in mac-ct font backend driver
10241         * src/macfont.m (macfont_family_cache): New variable.
10242         (syms_of_macfont): Initialize it.
10243         (macfont_available_families_cache): New variable.
10244         (macfont_invalidate_family_cache, macfont_get_family_cache_if_present)
10245         (macfont_set_family_cache, macfont_invalidate_available_families_cache)
10246         (macfont_handle_font_change_notification)
10247         (macfont_init_font_change_handler)
10248         (macfont_copy_available_families_cache): New functions.
10249         (macfont_create_family_with_symbol): Use font family caches.
10250         (macfont_list, macfont_list_family):
10251         Use macfont_copy_available_families_cache instead of
10252         mac_font_create_available_families.
10254 2015-07-12  Dmitry Gutov  <dgutov@yandex.ru>
10256         Show the default value in the prompt
10257         * lisp/progmodes/xref.el: Add `M-?' binding for
10258         xref-find-references.  Declare functions `grep-read-files' and
10259         `grep-expand-template'.
10260         (xref--read-identifier): Show the default value in the prompt.
10262         * lisp/progmodes/xref.el (xref-find-regexp): When called with
10263         prefix argument, ask for file patterns to search as well.  When
10264         prompting for the directory, require an existing one.
10265         (xref-collect-matches): Add a new argument, FILES.  Use it in the
10266         above function.
10268         Add `project-ignores'
10269         * lisp/progmodes/project.el (project-ignores): New generic
10270         function, and an implementation for the VC project type.
10271         * lisp/progmodes/xref.el (xref--rgrep-command): Split, as a
10272         variant of rgrep-default-command that handles a generic list of
10273         ignores.
10274         (xref-collect-matches): Use it, and pass through to it the value
10275         of the newly added argument.
10276         (xref-find-regexp): Handle ignored paths within the project.
10277         Remove outdated comment.
10278         * lisp/vc/vc.el (vc-default-ignore-completion-table):
10279         Skip the comments and the empty lines.
10281 2015-07-12  Xue Fuqiao  <xfq.free@gmail.com>
10283         * doc/emacs/buffers.texi (Misc Buffer): Add a cross reference.
10285 2015-07-11  Eric Abrahamsen  <eric@ericabrahamsen.net>
10287         gnus-registry.el: Correct function argument order
10288         * lisp/gnus/gnus-registry.el (gnus-registry--set/remove-mark):
10289         Reverse the order of function arguments.
10291 2015-07-11  Dmitry Gutov  <dgutov@yandex.ru>
10293         Bind grep-highlight-matches to nil
10294         * lisp/progmodes/xref.el (xref-collect-matches):
10295         Bind grep-highlight-matches to nil (bug#20728).
10297 2015-07-11  Nikolaus Rath  <Nikolaus@rath.org>
10299         nnimap.el: Fix IMAP message size parsing
10300         * lisp/gnus/nnimap.el (nnimap-transform-headers):
10301         Don't assume that UID comes before RFC822.SIZE.
10303 2015-07-10  Stefan Monnier  <monnier@iro.umontreal.ca>
10305         * lisp/gnus/nnimap.el: Clean up "unused var" warnings
10306         (auth-source-creation-prompts): Declare.
10307         (nnimap-retrieve-headers, nnimap-status-message)
10308         (nnimap-request-create-group, nnimap-request-delete-group)
10309         (nnimap-close-group, nnimap-request-move-article)
10310         (nnimap-request-accept-article, nnimap-request-newgroups)
10311         (nnimap-request-post, nnimap-dummy-active-number)
10312         (nnimap-save-mail-spec, nnimap-get-groups): Add _ to unused vars.
10313         (nnimap-parse-flags): Remove unused var `p'.
10314         (nnimap-retrieve-group-data-early): Remove unused var `groups'.
10315         (nnimap-flags-to-marks): Remove unused var `totalp'.
10317 2015-07-10  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
10319         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 20MB.
10321 2015-07-10  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
10323         * src/macfont.m (macfont_list): Ignore font families lacking
10324         font descriptors.
10326 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
10328         Don't check the exit status, it can be misleading
10329         * lisp/progmodes/xref.el (xref-collect-matches): Don't check the
10330         exit status, it can be misleading.
10332         Introduce a Project API
10333         * lisp/progmodes/project.el: New file.
10334         * lisp/cedet/ede.el (project-try-ede): New function.
10335         (project-root): New implementation.
10336         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
10337         Set project-search-path-function.
10338         (elisp--xref-find-references): Delegate some logic to
10339         project-search-path.
10340         (elisp-search-path): New function.
10341         (elisp-xref-find): Don't implement `matches' anymore.
10342         * lisp/progmodes/etags.el: Don't implement `matches'.
10343         Delegate some logic to project-search-path.
10344         (etags-search-path): New function.
10345         * lisp/progmodes/xref.el (xref-find-function):
10346         Remove `matches' from the API.
10347         (xref-find-regexp): Move whatever common logic was in elisp and
10348         etags implementations, and search the directories returned by
10349         project-directories and project-search-path.
10351 2015-07-09  Nicolas Petton  <nicolas@petton.fr>
10353         * test/automated/map-tests.el (test-map-delete-return-value):
10354         Uncomment test.
10356         Add support for gv.el in map.el
10357         * lisp/emacs-lisp/map.el (map-elt, map-delete): Declare a gv-expander.
10358         * lisp/emacs-lisp/map.el (map-put): Refactor using `setf' and `map-elt'.
10359         * test/automated/map-tests.el: Update tests to work with the new
10360         implementations of map-elt and map-put.
10362 2015-07-09  Glenn Morris  <rgm@gnu.org>
10364         * lisp/emacs-lisp/debug.el (debug-help-follow): Use describe-symbol.
10366 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
10368         Syntax-propertize until the end of the line first
10369         * lisp/progmodes/xref.el (xref--collect-match): Syntax-propertize
10370         until the end of the line first.
10372 2015-07-09  Xue Fuqiao  <xfq.free@gmail.com>
10374         * doc/emacs/files.texi (File Archives): Add a cross reference.
10376 2015-07-08  Nikolaus Rath  <Nikolaus@rath.org>
10378         nnimap.el: Handle plain value for nnimap-stream
10379         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Always query
10380         capabilities, so that a 'plain value for the `nnimap-stream' server
10381         variable is handled correctly.
10382         * doc/misc/gnus.texi (Customizing the IMAP Connection):
10383         Document the 'plain option.
10385 2015-07-08  Leo Liu  <sdl.web@gmail.com>
10387         Fix bug in thing-at-point--bounds-of-well-formed-url
10388         * lisp/thingatpt.el (thing-at-point--bounds-of-well-formed-url): Make
10389         sure boundary contains current point.
10391 2015-07-08  Dmitry Gutov  <dgutov@yandex.ru>
10393         * lisp/progmodes/xref.el (xref-collect-matches): Use `nreverse'
10394         in the end.
10396         Declare whitespace-line-column a safe file-local
10397         * lisp/whitespace.el (whitespace-line-column): Declare to be a
10398         safe file-local when the value is an integer.
10400 2015-07-08  Eric Abrahamsen  <eric@ericabrahamsen.net>
10402         gnus-group.el: Check if group names are already strings
10403         * lisp/gnus/gnus-group.el (gnus-group-group-name):
10404         The group name may already be a string.
10405         Specifically, in the group list reached from the *Server* buffer,
10406         the 'gnus-group text property returns a string.  Everywhere else
10407         it returns a symbol.
10409         nnimap.el: Remove unused let variables
10410         * lisp/gnus/nnimap.el (nnimap-request-group): Variables are not used.
10412 2015-07-08  Eli Zaretskii  <eliz@gnu.org>
10414         Support "maximized" property of runemacs's shortcut
10415         * nt/runemacs.c (WinMain): If runemacs is invoked "maximized", pass
10416         the '--maximized' switch to Emacs.
10418         Support "minimized" property of runemacs's shortcut
10419         * nt/runemacs.c (WinMain): If runemacs is invoked "minimized",
10420         pass the '--iconic' switch to Emacs.  (Bug#20991)
10422 2015-07-08  Xue Fuqiao  <xfq.free@gmail.com>
10424         Doc fixes
10425         * doc/emacs/files.texi (Diff Mode): Fix the description of `C-c
10426         C-w' in Diff mode.
10427         * doc/emacs/arevert-xtra.texi (Auto Reverting the Buffer Menu):
10428         Add a cross reference.
10430 2015-07-08  Nicolas Richard  <youngfrog@members.fsf.org>
10432         * lisp/obsolete/landmark.el: Add Obsolete-since header.
10434 2015-07-07  Glenn Morris  <rgm@gnu.org>
10436         * test/automated/ert-tests.el (ert-test-deftest):
10437         Update for recent changes.
10439 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
10441         (gv-setter, gv-synthetic-place, gv-delay-error): New funs/macros
10442         * lisp/emacs-lisp/gv.el (gv-setter): New function.
10443         (gv-invalid-place): New error.
10444         (gv-get): Use them.
10445         (gv-synthetic-place, gv-delay-error): New places.
10446         * lisp/emacs-lisp/cl-generic.el (cl--generic-setf-rewrite): Remove.
10447         (cl-defgeneric, cl-defmethod): Use gv-setter.
10449 2015-07-07  Fabrice Popineau  <fabrice.popineau@gmail.com>
10451         Make vc-tests work with MSYS svn program
10452         * lisp/vc/vc-svn.el (vc-svn-create-repo): Fix the file:// URL when
10453         svn is an MSYS program.
10455 2015-07-07  Ken Brown  <kbrown@cornell.edu>
10457         Improve recent change to emacsclient on Cygwin
10458         * lisp/server.el (server-process-filter): Remove redundant check
10459         that 'cygwin-convert-file-name-from-windows' is defined as a
10460         function on Cygwin.  Don't call that function unless its argument
10461         starts with a drive letter.
10463 2015-07-07  Artur Malabarba  <bruce.connor.am@gmail.com>
10465         * lisp/emacs-lisp/package.el (package-compute-transaction):
10466         Fix void variable due to `found-something' being in the wrong `let'.
10468 2015-07-07  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
10470         * lisp/play/landmark.el: Move to lisp/obsolete/.
10472 2015-07-07  Martin Rudalics  <rudalics@gmx.at>
10474         Have `x-show-tip' handle `right' and `bottom' frame parameters
10475         * src/nsfns.m (compute_tip_xy, Fx_show_tip)
10476         * src/w32fns.c (compute_tip_xy, Fx_show_tip)
10477         * src/xfns.c (compute_tip_xy, Fx_show_tip): Allow aligning
10478         tooltips also via `right' and `bottom' frame parameters.
10480 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
10482         Add online-help support to describe types
10483         * lisp/help-fns.el (describe-symbol-backends): Move to help-mode.el.
10484         (describe-symbol): Improve the selection of default.
10485         * lisp/help-mode.el: Require cl-lib.
10486         (describe-symbol-backends): Move from help-fns.el.
10487         (help-make-xrefs): Use it.
10488         * lisp/emacs-lisp/cl-extra.el (describe-symbol-backends): Add entry
10489         for types.
10490         (cl--typedef-regexp): New const.
10491         (find-function-regexp-alist): Add entry for types.
10492         (cl-help-type, cl-type-definition): New buttons.
10493         (cl-find-class): New function.
10494         (cl-describe-type): New command.
10495         (cl--describe-class, cl--describe-class-slot)
10496         (cl--describe-class-slots): New functions, moved from eieio-opt.el.
10497         * lisp/emacs-lisp/cl-generic.el (cl--generic-method-documentation)
10498         (cl--generic-all-functions, cl--generic-specializers-apply-to-type-p):
10499         New functions.  Moved from eieio-opt.el.
10500         (cl--generic-class-parents): New function, extracted from
10501         cl--generic-struct-specializers.
10502         (cl--generic-struct-specializers): Use it.
10503         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Use pcase-dolist.
10504         Improve constructor's docstrings.
10505         (cl-struct-unknown-slot): New error.
10506         (cl-struct-slot-offset): Use it.
10507         * lisp/emacs-lisp/cl-preloaded.el (cl-struct-define): Record the type
10508         definition in current-load-list.
10509         * lisp/emacs-lisp/eieio-core.el (eieio--known-slot-names): New var.
10510         (eieio--add-new-slot): Set it.
10511         (eieio-defclass-internal): Use new name for current-load-list.
10512         (eieio-oref): Add compiler-macro to warn about unknown slots.
10513         * lisp/emacs-lisp/eieio.el (defclass): Update eieio--known-slot-names
10514         as compile-time as well.  Improve constructor docstrings.
10515         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
10516         (eieio--help-print-slot, eieio-help-class-slots): Move to cl-extra.el.
10517         (eieio-class-def): Remove button.
10518         (eieio-help-constructor): Use new name for load-history element.
10519         (eieio--specializers-apply-to-class-p, eieio-all-generic-functions)
10520         (eieio-method-documentation): Move to cl-generic.el.
10521         (eieio-display-method-list): Use new names.
10522         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression):
10523         Add "define-linline".
10524         (lisp-fdefs): Remove "defsubst".
10525         (el-fdefs): Add "defsubst", "cl-defsubst", and "define-linline".
10526         * lisp/emacs-lisp/macroexp.el (macroexp--warned): New var.
10527         (macroexp--warn-and-return): Use it to avoid inf-loops.
10528         Add `compile-only' argument.
10530 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
10532         python.el: Fix local/remote shell environment setup
10533         * lisp/progmodes/python.el (python-shell-with-environment):
10534         Fix remote/local environment setup.
10535         * test/automated/python-tests.el (python-shell-with-environment-1)
10536         (python-shell-with-environment-2): New tests.
10538 2015-07-06  Glenn Morris  <rgm@gnu.org>
10540         * lisp/simple.el (set-variable): Tweak recent doc fix.
10542 2015-07-06  Ken Brown  <kbrown@cornell.edu>
10544         * src/sysdep.c (handle_sigsegv) [CYGWIN]: Increase STACK_DANGER_ZONE.
10546 2015-07-06  Glenn Morris  <rgm@gnu.org>
10548         * lisp/simple.el (set-variable): Use user-error for type mismatch.
10550 2015-07-06  Ken Brown  <kbrown@cornell.edu>
10552         * src/emacs.c (main): Don't increase the stack size on Cygwin.
10554 2015-07-06  Stefan Monnier  <monnier@iro.umontreal.ca>
10556         (describe-symbol): Rewrite describe-function-or-variable
10557         * lisp/help-fns.el (describe-symbol-backends): New var.
10558         (help-xref-stack-item): Declare.
10559         (describe-symbol): Rename from describe-function-or-variable.
10560         Rewrite using describe-symbol-backends instead of help-xref-interned.
10561         * lisp/help.el (help-map): Use it.
10562         * lisp/help-mode.el (help-symbol, help-follow-symbol): Use it.
10563         (help-xref-interned): Make it into an obsolete alias.
10565         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-save): Don't ignore
10566         `file' arg (bug#20972).  Always use utf-8-emacs.  Use with-temp-buffer
10567         and cl-letf.
10569 2015-07-06  Wolfgang Jenkner  <wjenkner@inode.at>
10571         Fix parsing glitches in dired-mark-sexp (bug#13575)
10572         * lisp/dired-x.el (dired-x--string-to-number): New function.
10573         (dired-mark-sexp): Use it.  Tweak dired-re-inode-size.  Fix usage
10574         of directory-listing-before-filename-regexp.  Consider
10575         forward-word harmful and replace it.  Add more verbiage in
10576         comments and doc string.
10578 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
10580         python.el: Respect process environment for remote shells
10581         * lisp/progmodes/python.el
10582         (python-shell-calculate-process-environment): Calculate
10583         process-environment or tramp-remote-process-environment depending
10584         whether current file is remote.
10585         (python-shell-calculate-exec-path): Calculate exec-path or
10586         tramp-remote-path depending whether current file is remote.
10587         (python-shell-with-environment): New macro.
10588         (python-shell-prompt-detect, python-shell-calculate-command)
10589         (python-shell-make-comint, python-check): Use it.
10591         python.el: Avoid making let-bound defvars buffer local  (Bug#18244)
10592         * lisp/progmodes/python.el (python-shell--interpreter)
10593         (python-shell--interpreter-args): New vars.
10594         (inferior-python-mode, python-shell-make-comint): Use them.
10596         python.el: Fixes for IPython 3.x  (Bug#20580)
10597         * lisp/progmodes/python.el:
10598         (python-shell-completion-native-setup): Fix IPython 3.x setup.
10599         (python-shell-completion-native-get-completions): Fix timeout
10600         logic.
10602         python.el: Fix mark-defun behavior  (Bug#19665)
10603         * lisp/progmodes/python.el (python-mark-defun): New function.
10604         * test/automated/python-tests.el (python-mark-defun-1)
10605         (python-mark-defun-2, python-mark-defun-3): New tests.
10607 2015-07-05  Glenn Morris  <rgm@gnu.org>
10609         * lisp/progmodes/f90.el (f90-type-def-re): Handle attribute lists
10610         such as "extends(parent), private".  (Bug#20969)
10611         * test/automated/f90.el (f90-test-bug20969, f90-test-bug20969b):
10612         New tests.
10614 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
10616         Avoid duplicate calls to current_timespec
10617         * src/process.c (wait_reading_process_output):
10618         Cache current_timespec results as long as we're not waiting.
10620 2015-07-05  Ian Kelling  <ian@iankelling.org>
10622         Avoid returning early reading process output due to SIGIO
10623         * src/process.c (wait_reading_process_output): Extend the behavior of
10624         not breaking due to not finding output when a timer has lowered the
10625         timeout to include when SIGIO lowers the timeout.
10627         Don't return as fast reading any process output
10628         * src/process.c (wait_reading_process_output):
10629         The patch for Bug#17647 returns too fast sometimes when reading
10630         from any processes.  Revert part of it, and limit the timeout more
10631         sensibly (Bug#20978).
10633         Refactor timeouts in wait_reading_process_output
10634         * src/process.c (wait_reading_process_output):
10635         Simplify timeouts with an enum.  Remove a redundant condition.
10636         (Bug#20978)
10638         Remove ADAPTIVE_READ_BUFFERING ifdef
10639         * src/process.c (make-process, make-pipe-process, deactivate_process)
10640         (wait_reading_process_output, read_process_output, send_process)
10641         (init_process_emacs): ifdef ADAPTIVE_READ_BUFFERING was originally
10642         added in case there was an operating system in which it was not
10643         useful.  That was 11 years ago and it hasn't happened.  Make
10644         development easier by not considering the effect of changes on a
10645         theoretical OS where this is disabled (Bug#20978).
10647 2015-07-05  Glenn Morris  <rgm@gnu.org>
10649         * lisp/simple.el (set-variable): Doc fix.
10651         * lisp/progmodes/fortran.el (fortran-line-length): Doc fix.
10653 2015-07-05  Ian Kelling  <ian@iankelling.org>
10655         accept-process-output fix
10656         This is a followon to the fix for bug#17647 (Bug#20976).
10657         * src/process.c (status_notify): Fix too high return in some cases.
10659 2015-07-05  Artur Malabarba  <bruce.connor.am@gmail.com>
10661         * lisp/character-fold.el (character-fold-table):
10662         Only fold decompositions if at least one character is non-spacing.
10663         (Bug#20975)
10665 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
10667         Merge from gnulib
10668         This incorporates:
10669         2015-07-04 file-has-acl, acl-permissions: fix HP-UX typos
10670         2015-07-03 set-permissions.c: adjust acl_from_mode's cpp guard
10671         2015-07-02 update-copyright: fix test failure with perl >= 5.22
10672         2015-07-01 gnulib-common.m4: change the ARFLAGS default to 'cr'
10673         2015-07-01 acl: fix definition of acl_from_mode on FreeBSD
10674         * build-aux/update-copyright, doc/misc/texinfo.tex, lib/acl-internal.h:
10675         * lib/set-permissions.c, m4/gnulib-common.m4: Copy from gnulib.
10677 2015-07-05  Christoph Wedler  <christoph.wedler@sap.com>
10679         Respect `prog-indentation-context' in python.el
10680         * lisp/progmodes/python.el (python-indent-guess-indent-offset)
10681         (python-indent-context, python-indent--calculate-indentation)
10682         (python-info-current-defun)
10683         (python-info-dedenter-opening-block-message)
10684         (python-info-line-ends-backslash-p)
10685         (python-info-beginning-of-backslash)
10686         (python-info-continuation-line-p): Use `prog-widen'.
10687         (python-indent--calculate-indentation)
10688         (python-indent--calculate-levels)
10689         (python-indent-calculate-indentation): Use `prog-first-column'.
10690         (python-indent--calculate-levels): Simplify.
10691         Ignore also initial empty lines for syntax calculation.
10692         * lisp/progmodes/python.el (python-indent-context): Return
10693         :no-indent for first non-empty line, not just in line 1.
10694         * test/automated/python-tests.el (python-indent-base-case)
10695         (python-indent-inside-paren-1, python-indent-inside-paren-2)
10696         (python-indent-inside-paren-3, python-indent-inside-paren-4)
10697         (python-indent-inside-paren-5, python-indent-inside-paren-6)
10698         (python-indent-after-backslash-1)
10699         (python-indent-after-backslash-2)
10700         (python-indent-after-backslash-3)
10701         (python-indent-after-backslash-4, python-indent-inside-string-1):
10702         Expect :no-indent for first non-empty line.
10704 2015-07-04  Daniel Colascione  <dancol@dancol.org>
10706         Factor isearch word description into new function
10707         * lisp/isearch.el (isearch--describe-word-mode): New function.
10708         (isearch-message-prefix, isearch-query-replace): Use it.
10710 2015-07-04  Eli Zaretskii  <eliz@gnu.org>
10712         Fix mouse pointer on w32 when a menu is active
10713         * src/w32fns.c (w32_wnd_proc): Don't change the mouse pointer
10714         shape while a menu is in use.  This started happening since we now
10715         send WM_EMACS_SHOWCURSOR messages when the mouse moves.
10717 2015-07-04  Martin Rudalics  <rudalics@gmx.at>
10719         Fix processing of alpha parameter for Windows tip frames  (Bug#17344)
10720         * src/w32fns.c (x_create_tip_frame): Fix processing alpha
10721         parameter.  (Bug#17344)
10723         Have `compilation-set-window' use right window for getting fringes
10724         (Bug#20829)
10725         * lisp/progmodes/compile.el (compilation-set-window):
10726         Take `window-fringes' from argument window.
10728 2015-07-03  Glenn Morris  <rgm@gnu.org>
10730         Update eieio tests for recent eieio-core change.
10731         * test/automated/eieio-test-persist.el (persist-test-save-and-compare):
10732         * test/automated/eieio-tests.el
10733         (eieio-test-32-slot-attribute-override-2):
10734         Replace the deleted eieio--class-v with cl--find-class.
10736 2015-07-03  Martin Rudalics  <rudalics@gmx.at>
10738         Fix some issues with `window-divider-mode'
10739         * lisp/frame.el (window-divider-default-places): New option.
10740         (window-divider-mode): Remove option.
10741         (window-divider-mode): Make it a "regular" minor mode.
10742         (window-divider-width-valid-p): Drop frame- prefix.
10743         (window-divider-mode-apply): New argument ENABLE.  Drop frame-
10744         prefix.  Handle `window-divider-default-places'.
10745         (frame--window-divider-mode-set-and-apply): Remove.
10746         (window-divider-default-bottom-width)
10747         (window-divider-default-right-width): Drop :group entries.
10748         * lisp/menu-bar.el (menu-bar-bottom-and-right-window-divider)
10749         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
10750         (menu-bar-no-window-divider): Set `window-divider-default-places'
10751         and call `window-divider-mode'.
10752         * doc/emacs/frames.texi (Window Dividers): Document
10753         `window-divider-default-places'.
10755 2015-07-02  Xue Fuqiao  <xfq.free@gmail.com>
10757         * doc/emacs/display.texi (Displaying Boundaries):
10758         * doc/emacs/search.texi (Word Search): Add cross references.
10760 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
10762         -batch should not affect ‘’ -> `' display
10763         * lisp/startup.el (command-line): Do the ‘’ -> `' check even if
10764         -batch (Bug#20926).
10766 2015-07-02  Stefan Monnier  <monnier@iro.umontreal.ca>
10768         * lisp/emacs-lisp/eieio-core.el (eieio--class-v): Remove
10769         * lisp/emacs-lisp/eieio-core.el, lisp/emacs-lisp/eieio.el:
10770         * lisp/emacs-lisp/eieio-opt.el, lisp/emacs-lisp/eieio-compat.el:
10771         Use cl--find-class instead.
10773         * lisp/term/xterm.el (xterm--query): Fix paren typo (bug#20951).
10775 2015-07-02  Martin Rudalics  <rudalics@gmx.at>
10777         Some further fixes in Change Window node (Bug#20183)
10778         * doc/emacs/windows.texi (Change Window): Replace "rearranging"
10779         by "resizing" in section title.  Add some concept indices.
10780         Suggested by N. Jackson (Bug#20183).
10782         * doc/emacs/windows.texi (Change Window): Reference window
10783         dividers.
10785         Document new `window-divider-mode'.
10786         * lisp/frame.el (window-divider-mode): Fix doc-string.
10787         * doc/emacs/frames.texi (Window Dividers): New section.
10789         Improve accessibility of window dividers (Bug#20183)
10790         * lisp/faces.el (window-divider)
10791         (window-divider-first-pixel, window-divider-last-pixel): Change
10792         membership from `frames' to `window-divider' customization group.
10793         * lisp/frame.el (window-divider): New customization group.
10794         (window-divider-mode): New minor mode.
10795         (window-divider-default-bottom-width)
10796         (window-divider-default-right-width): New options.
10797         (frame--window-divider-previous-mode): New variable.
10798         (frame-window-divider-width-valid-p)
10799         (frame--window-divider-mode-apply)
10800         (frame--window-divider-mode-set-and-apply): New functions.
10801         * lisp/menu-bar.el (menu-bar-options-save): Save
10802         window-divider-mode settings.
10803         (menu-bar-window-divider-customize)
10804         (menu-bar-bottom-and-right-window-divider)
10805         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
10806         (menu-bar-no-window-divider): New functions.
10807         (menu-bar-showhide-window-divider-menu): New variable.
10808         (menu-bar-showhide-menu): Show/hide window divider menu.
10809         * lisp/mouse.el (mouse-split-window-vertically)
10810         (mouse-split-window-horizontally): Replace `error' by
10811         `user-error'.  Bind `window-combination-resize' to nil.
10812         (top-level): Add/reorder mouse key bindings on mode- and
10813         vertical-line.
10815 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
10817         Don't display ‘’ as `' under X in en_GB
10818         The curved quote setup code invokes (char-displayable-p ?‘),
10819         but this isn’t reliable until after the X frame replaces the
10820         terminal frame (Bug#20926).
10821         * lisp/international/mule-cmds.el (set-locale-environment):
10822         Move curved quote setup code from here ...
10823         * lisp/startup.el (command-line): ... to here, after creating
10824         the X frame.
10826 2015-07-01  Nicolas Richard  <youngfrog@members.fsf.org>
10828         * lisp/emacs-lisp/seq.el (seq-difference): Fix typo in docstring.
10830         * lisp/ido.el (ido-restrict-to-matches): Add an optional argument
10831         to reverse the meaning (Bug#15631).
10833 2015-07-01  Eli Zaretskii  <eliz@gnu.org>
10835         Be more tolerant to fonts named "Foobar-12"
10836         * src/frame.c (x_set_font): If font_spec_from_name returns nil,
10837         don't barf; instead, request a new fontset to be generated.  This
10838         avoids unnecessarily rejecting fonts named against XLFD rules.  See
10839         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html,
10840         for the description of the original problem.
10841         * lisp/faces.el (set-face-attribute): Don't be fooled too easily
10842         by a hyphen in a font's name.
10844         Fix value of posn-at-pont in R2L lines
10845         * src/keyboard.c (Fposn_at_x_y, Fposn_at_point): Allow X pixel
10846         coordinate of -1, for a newline in a right-to-left line that
10847         overflowed into the left fringe.
10849 2015-07-01  Stefan Monnier  <monnier@iro.umontreal.ca>
10851         (cl--copy-slot-descriptor): Copy the `props' alist as well
10852         * lisp/emacs-lisp/cl-preloaded.el (cl--copy-slot-descriptor-1):
10853         Rename from cl--copy-slot-descriptor.
10854         (cl--copy-slot-descriptor): New function.  Copy the alist (bug#20914).
10856 2015-06-30  Stefan Monnier  <monnier@iro.umontreal.ca>
10858         * lisp/term/xterm.el (xterm--query): Avoid generating garbage
10859         (xterm-query-timeout): New var.
10860         (xterm--query): Use it.  Fallback on async method if we timeout before
10861         getting the first byte of the reply (bug#12354).
10863 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
10865         Spelling fixes
10866         * lisp/character-fold.el (character-fold-search):
10867         * lisp/emacs-lisp/package.el (package-hidden-regexps):
10868         Fix typos.
10870 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
10872         * doc/emacs/frames.texi (Frame Commands): Typo fix.  (Bug#20946)
10874 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
10876         In strings, prefer plain ` and ' to \` and \'
10877         * lisp/allout.el (allout-insert-listified):
10878         * lisp/emacs-lisp/easy-mmode.el (define-globalized-minor-mode):
10879         * lisp/ls-lisp.el (ls-lisp-UCA-like-collation)
10880         (ls-lisp-string-lessp):
10881         * lisp/menu-bar.el (menu-bar-open):
10882         * lisp/obsolete/otodo-mode.el (todo-top-priorities):
10883         * lisp/progmodes/compile.el (compile):
10884         * lisp/progmodes/etags.el (tags-loop-scan):
10885         * lisp/progmodes/make-mode.el (makefile-browser-insert-continuation):
10886         * lisp/subr.el (posn-actual-col-row):
10887         * lisp/term/pc-win.el (x-list-fonts):
10888         * lisp/textmodes/texinfmt.el (texinfmt-version):
10889         * lisp/textmodes/texnfo-upd.el (texinfo-master-menu):
10890         * lisp/time.el (display-time-world-list):
10891         * lisp/tmm.el (tmm-menubar):
10892         * src/buffer.c (syms_of_buffer):
10893         * src/fileio.c (syms_of_fileio):
10894         Omit unnecessary and confusing backslash before quote.
10895         * lisp/erc/erc.el (erc-cmd-LASTLOG):
10896         * lisp/progmodes/flymake.el (flymake-fix-file-name):
10897         * lisp/progmodes/vhdl-mode.el (vhdl-in-extended-identifier-p):
10898         Fix string that was intended to escape a backslash and not a quote.
10900 2015-06-30  Glenn Morris  <rgm@gnu.org>
10902         * leim/Makefile.in, lisp/Makefile.in: Add missing EXEEXT definition.
10904         * lisp/Makefile.in (MH_E_SRC, TRAMP_SRC, CAL_SRC):
10905         Replace hard-coded lists with wildcard + filter-out.
10907         * configure.ac (system-configuration-features): Add X11, NS.
10909         Improve reproducibility of generated loaddefs file
10910         * lisp/emacs-lisp/autoload.el (autoload-generate-file-autoloads):
10911         Make the return value the modtime of the input file (if no autoloads).
10912         (update-directory-autoloads): In the "no autoloads" section,
10913         use "most recent modtime" rather than "current time".
10915 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
10917         * lisp/emacs-lisp/package.el (package--remove-hidden): Fix logic.
10918         (Bug#20930)
10920 2015-06-30  Nicolas Petton  <nicolas@petton.fr>
10922         * doc/lispref/sequences.texi: Add documentation for seq-min and seq-max.
10924         Add seq-min and seq-max
10925         Bump version number.
10926         * lisp/emacs-lisp/seq.el (seq-min, seq-max): New functions.
10927         * test/automated/seq-tests.el: Add tests for seq-min and seq-max.
10929 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
10931         Make sure sleep-for always delays for as long as it's told
10932         * src/dispnew.c (Fsleep_for): Call wait_reading_process_output in
10933         a loop, to ensure we always wait exactly the required amount of
10934         time.  (Bug#15990)
10936 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
10938         Fix pointer signedness glitch
10939         * src/font.c (font_load_for_lface): Use SSDATA, not SDATA.
10941 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
10943         Don't block changes in mouse pointer inside 'track-mouse'
10944         * etc/NEWS:
10945         * doc/lispref/frames.texi (Mouse Tracking): Document the special
10946         effect of setting 'track-mouse' to 'dragging'.
10947         * lisp/textmodes/artist.el (artist-mouse-draw-continously):
10948         * lisp/ruler-mode.el (ruler-mode-mouse-drag-any-column-iteration):
10949         * lisp/mouse-drag.el (mouse-drag-throw):
10950         * lisp/mouse.el (mouse-drag-line): Set 'track-mouse' to 'dragging'
10951         to avoid changes in the shape of the mouse pointer.
10952         * src/xdisp.c (define_frame_cursor1): Don't change the mouse
10953         pointer shape when do_mouse_tracking has the value of 'dragging',
10954         not just any non-nil value.  (Bug#20934)
10955         (syms_of_xdisp): DEFSYM 'dragging'.
10957 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
10959         * lisp/isearch.el (isearch-toggle-word): Fix toggle.
10961         * lisp/emacs-lisp/package.el (package-compute-transaction):
10962         Don't assume version sorting.
10964         * lisp/emacs-lisp/package.el (package--save-selected-packages):
10965         Don't save before init time, to avoid overwriting configurations.
10966         (Bug#20855)
10968 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
10970         * doc/emacs/display.texi (Standard Faces, Fringes): Add cross
10971         references.
10973 2015-06-29  Ted Zlatanov  <tzz@lifelogs.com>
10975         Update for the upcoming CFEngine 3.7 release: support macros and
10976         quoted context strings; reformat JSON; indent promise attributes 2
10977         units by default; give function parameter descriptions in the eldoc
10978         glue.
10979         * lisp/progmodes/cfengine.el: Update version and docs and fix name.
10980         Autoload `json-pretty-print'.  Support new features in 3.7.
10981         (cfengine-parameters-indent): Set default promise attribute indent to
10982         2 more than the promise itself.
10983         (cfengine3-macro-regex): New variable to match the new macro syntax.
10984         (cfengine3-font-lock-keywords): Use it to highlight macros.
10985         (cfengine3-indent-line): Use it to indent macros to column 0.
10986         (cfengine3-class-selector-regex): Update for the new quoted strings
10987         format.
10988         (cfengine3-reformat-json-string): New function to reformat a JSON
10989         string using `json-pretty-print'.
10990         (cfengine3-format-function-docstring): Use function parameter
10991         description if it's provided by the cf-promises syntax dump.
10993 2015-06-29  Michael R. Mauger  <michael@mauger.com>
10995         Cygwin emacsclient handles w32 file names
10996         * lisp/server.el (server-process-filter): Allow Cygwin's
10997         emacsclient to be used as a file handler on MS-Windows.
10999 2015-06-29  Katsumi Yamaoka  <yamaoka@jpl.org>
11001         * lisp/isearch.el (isearch-exit): Don't call isearch-done twice
11002         (bug#20925).
11004 2015-06-29  Eli Zaretskii  <eliz@gnu.org>
11006         * doc/lispref/text.texi (Sticky Properties): Improve wording.
11007         (Bug#20924)
11009         Allow font names that end in "-NN", where NN is a number
11010         * src/font.c (font_load_for_lface): If the font-spec didn't match
11011         any available fonts, try again without interpreting trailing "-NN"
11012         as the font size.  For the description of the original problem, see
11013         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html
11015         .gdbinit followup to changes in !USE_LSB_TAG
11016         * src/.gdbinit (xgetsym): Don't left-shift $ptr even under
11017         !USE_LSB_TAG, as Emacs no longer does.
11019 2015-06-29  Wolfgang Jenkner  <wjenkner@inode.at>
11021         * lisp/calc-store.el (calc-insert-permanent-variable): Heed case.
11022         Otherwise `s p' of f and F will stomp on each other's value.
11023         (Bug#20916)
11025 2015-06-29  Artur Malabarba  <bruce.connor.am@gmail.com>
11027         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
11028         Don't block remember-pos if buffer isn't displayed.  (Bug#20921)
11030 2015-06-29  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
11032         * lisp/emacs-lisp/package.el (describe-package): Use symbol-at-point
11033         as additional guess.
11035         * lisp/emacs-lisp/package.el (describe-package): Convert the guess
11036         to a string.
11038 2015-06-28  Paul Eggert  <eggert@cs.ucla.edu>
11040         apropos-library quoting fix
11041         * lisp/apropos.el (apropos-library): Quote library consistently
11042         with the rest of the quoting used by apropos.
11044         Clarify interpreter-mode-alist doc
11045         * lisp/files.el (interpreter-mode-alist):
11046         Reword to avoid confusing quoting that wasn't working anyway.
11048 2015-06-28  Michael Albinus  <michael.albinus@gmx.de>
11050         Sync with Tramp 2.2.12
11051         * doc/misc/trampver.texi:
11052         * lisp/net/trampver.el: Update release number.
11053         * test/automated/tramp-tests.el (tramp-test13-make-directory):
11054         Fix cleanup.
11056 2015-06-28  Artur Malabarba  <bruce.connor.am@gmail.com>
11058         * lisp/isearch.el (isearch-mode): Don't char-fold regexps (bug#20913).
11060 2015-06-27  Dmitry Gutov  <dgutov@yandex.ru>
11062         Bind grep-highlight-matches around the rgrep call
11063         * lisp/progmodes/grep.el (zrgrep): Bind grep-highlight-matches
11064         around the rgrep call (bug#20728).
11066         Put "--color" before the other options in grep-command
11067         * lisp/progmodes/grep.el (grep-compute-defaults): Put "--color"
11068         before the other options in grep-command (bug#20912).
11070         Add --color Grep option to the command dynamically
11071         * lisp/progmodes/grep.el (grep-template, grep-find-template):
11072         Update the description for <C>.  (Bug#20728)
11073         (grep-compute-defaults): Don't add the --color option to
11074         grep-options.  Only add it to grep-command.
11075         (grep-expand-keywords): Expand the env value opts into <C>.
11076         (grep-expand-template): Replace cf in the env with the opts list,
11077         that can include -i and --color.
11078         * lisp/progmodes/xref.el (xref-collect-matches): Do not remove
11079         "--color=always" from the template, because we don't have to.
11081 2015-06-27  Paul Eggert  <eggert@cs.ucla.edu>
11083         cl-extra fixes for most-negative-fixnum
11084         * lisp/emacs-lisp/cl-extra.el (cl-gcd, cl-lcm, cl-random):
11085         Don't mishandle an argument equal to most-negative-fixnum,
11086         whose absolute value equals itself.
11087         (cl-gcd, cl-lcm): Use dolist rather than doing it by hand.
11089         Initialize cl--gensym-counter to 0
11090         Previously it was initialized to a random value, which made it
11091         harder to reproduce earlier Emacs runs.  The need for a random
11092         value went away when Emacs introduced and used the #: syntax for
11093         uninterned symbols (Bug#20862).
11094         * doc/misc/cl.texi (Creating Symbols, Common Lisp Compatibility):
11095         Document that cl--gensym-counter now starts with 0.
11096         * lisp/emacs-lisp/cl-lib.el (cl--gensym-counter): Remove.
11097         (cl--random-time): Move to near only remaining use.
11098         * lisp/emacs-lisp/cl-macs.el (cl--gensym-counter): Initialize to 0.
11100         Improve docstring for macroexp-let2
11101         * lisp/emacs-lisp/macroexp.el (macroexp-let2):
11102         Improve as per suggestion by RMS in:
11103         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00621.html
11104         Also, rename args to match new doc string.
11106 2015-06-27  Eli Zaretskii  <eliz@gnu.org>
11108         Fix VC test suite on MS-Windows
11109         * lisp/vc/vc-svn.el (vc-svn-create-repo): Make sure the file: URL
11110         always starts with 3 slashes after the colon.
11111         * test/automated/vc-tests.el (vc-test--create-repo-function): Use
11112         'w32-application-type' to invoke CVS on MS-Windows with properly
11113         formatted CVSROOT directory name.
11115         Add a new function w32-application-type
11116         * src/w32proc.c (Fw32_application_type): New function.
11118         Avoid error in TLS connections due to incorrect format
11119         * src/gnutls.c (Fgnutls_boot): Use the %x conversion specifier in
11120         the call to 'error', instead of the unsupported %u.  Reported by
11121         lo2net <fangtao0901@gmail.com>.  (Bug#20908)
11123 2015-06-26  Artur Malabarba  <bruce.connor.am@gmail.com>
11125         * lisp/replace.el (replace-search): Fix regexp case (bug#20901).
11127 2015-06-26  Leo Liu  <sdl.web@gmail.com>
11129         * lisp/emacs-lisp/cl-indent.el: Fix indentation for
11130         `with-output-to-string' in elisp.
11132         Revert "lisp/emacs-lisp/cl-indent.el: Fix indent of
11133         with-output-to-string".
11134         This reverts commit 659199f2ca5f283fb246faa78a244e5ca25f53dd.
11136 2015-06-26  Eli Zaretskii  <eliz@gnu.org>
11138         Minor corrections in ELisp manual
11139         * doc/lispref/nonascii.texi (Character Properties): Correct
11140         inaccuracies in description of values of the Unicode properties.
11142         Fix invisible mouse pointers on Windows.
11143         * src/w32fns.c: Include windowsx.h.
11144         (w32_wnd_proc): If the mouse moved and the mouse pointer is
11145         invisible, make it visible again even when the main (Lisp)
11146         thread is busy.
11147         * src/w32term.c (w32_toggle_invisible_pointer): Rather then
11148         garbaging the frame have the input thread call SetCursor.
11150 2015-06-26  Martin Rudalics  <rudalics@gmx.at>
11152         Provide invisible mouse pointers on Windows (Bug#6105) (Bug#12922)
11153         * src/w32fns.c (w32_wnd_proc): Handle f->pointer_invisible
11154         for WM_SETCURSOR and WM_EMACS_SETCURSOR cases.
11155         * src/w32term.c (w32_hide_hourglass): Handle f->pointer_invisible.
11156         (w32_toggle_invisible_pointer): New function.
11157         (w32_create_terminal): Add w32_toggle_invisible_pointer as
11158         toggle_invisible_pointer_hook for this terminal.
11160 2015-06-25  Xue Fuqiao  <xfq.free@gmail.com>
11162         Doc fix for deletion commands
11163         'delete-char' does not respect the value of 'delete-active-region'.
11164         * doc/emacs/killing.texi (Deletion):
11165         Fix documentation for some single-char deletion commands.
11167         * doc/emacs/help.texi (Apropos):
11168         Improve documentation of 'apropos-do-all'.
11170         * doc/emacs/help.texi (Help Summary):
11171         Improve documentation of 'describe-mode'.
11173 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
11175         Fix submake dependency bug with .h files
11176         * src/Makefile.in ($(libsrc)/make-docfile$(EXEEXT)):
11177         Depend on $(lib)/libgnu.a, so that we build $(lib)/*/*.h
11178         before the submake in $(libsrc) would spin off a subsubmake
11179         for $(lib) in parallel with our submake for $(lib) (Bug#20894).
11181 2015-06-25  Artur Malabarba  <bruce.connor.am@gmail.com>
11183         * lisp/character-fold.el (character-fold-table): Reuse `table'.
11185 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
11187         Translate undisplayable ‘ to `
11188         * doc/lispref/help.texi (Keys in Documentation):
11189         * lisp/international/mule-cmds.el (set-locale-environment):
11190         * lisp/term/w32console.el (terminal-init-w32console):
11191         * src/doc.c (Fsubstitute_command_keys, Vhelp_quote_translation):
11192         If ‘ is not displayable, transliterate it to `, not to '.  See:
11193         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00542.html
11195         Fix C99 incompatibilities in Cairo code
11196         * src/image.c (xpm_load) [USE_CAIRO]:
11197         * src/xterm.c (x_cr_accumulate_data) [USE_CAIRO]:
11198         Fix pointer signedness problem.
11200 2015-06-25  Oleh Krehel  <ohwoeowho@gmail.com>
11202         lisp/emacs-lisp/cl-indent.el: Fix indent of with-output-to-string
11203         * lisp/emacs-lisp/cl-indent.el (common-lisp-indent-function):
11204         `with-output-to-string' should have the same indent as `progn'.
11205         This is in line with the declaration of `with-output-to-string'.
11207 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
11209         Get ‘./configure; make -C src emacs’ to work
11210         Without this fix, lib/fcntl.h isn't built in time (Bug#20894).
11211         * lib-src/Makefile.in (../lib/libgnu.a):
11212         * src/Makefile.in ($(lib)/libgnu.a): Build all, not libgnu.a.
11214 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
11216         Fix GC bugs --with-wide-int and Qnil == 0
11217         Use the same alignment for the !USE_LSB_TAG case as for the
11218         more-typical USE_LSB_TAG case.  The attempt to support arbitrary
11219         alignments with !USE_LSB_TAG had subtle bugs in garbage collection
11220         once we changed the representation of symbols so that Qnil == 0.
11221         Problem reported by Eli Zaretskii (Bug#20862).
11222         * src/alloc.c (XMALLOC_HEADER_ALIGNMENT) [XMALLOC_OVERRUN_CHECK]:
11223         * src/alloc.c (vector_alignment, union aligned_Lisp_Symbol)
11224         (union aligned_Lisp_Misc, maybe_lisp_pointer, pure_alloc):
11225         Use same alignment for !USE_LSB_TAG as for USE_LSB_TAG.
11226         * src/alloc.c (POINTERS_MIGHT_HIDE_IN_OBJECTS): Remove.
11227         This optimization in the !USE_LSB_TAG case is no longer valid when
11228         symbols are represented via offsets.  Change the only use to
11229         assume that pointers might hide in objects.
11230         * src/lisp.h (alignas) [!USE_LSB_TAG]:
11231         Require support in this case, too.
11232         (TAG_SYMOFFSET, XSYMBOL) [!USE_LSB_TAG]: Do not shift the offset.
11233         This is OK, because the !USE_LSB_TAG case now applies only when
11234         Lisp_Object is wider than void *, so there's no longer any need
11235         to shift the offset.  Not shifting the offset means that
11236         symbol representations have the same alignment as pointers,
11237         which the GC assumes.
11239 2015-06-24  Xue Fuqiao  <xfq.free@gmail.com>
11241         * doc/lispintro/emacs-lisp-intro.texi (Data types):
11242         Improve documentation of 'substring'.
11244 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
11246         * lisp/character-fold.el (character-fold-table): Fix table generation.
11248 2015-06-24  Glenn Morris  <rgm@gnu.org>
11250         * nextstep/Makefile.in (all): Make it the first target.
11251         (../src/emacs${EXEEXT}): Add rule for making it.
11253 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
11255         * etc/NEWS: Fix mention to old function name.
11257         * lisp/character-fold.el: New file (Bug#20887)
11258         (character-fold-to-regexp): New function.
11259         * lisp/replace.el (replace-search): Check value of
11260         `character-fold-search'.
11261         * lisp/isearch.el: Move character-folding code to
11262         character-fold.el
11263         (isearch-toggle-character-fold): New command.
11264         (isearch-mode-map): Bind it to "\M-sf".
11265         (isearch-mode): Check value of `character-fold-search'.
11267 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
11269         lisp/subr.el (remove-from-invisibility-spec): Handle the t case
11270         * lisp/subr.el (remove-from-invisibility-spec): Make sure `element'
11271         is visible even if it's not yet in buffer-invisibility-spec (bug#20468).
11273         * lisp/progmodes/xref.el (xref-location-group, xref-location-marker)
11274         (xref--insert-xrefs, xref-collect-references): Avoid init-args in oref.
11276 2015-06-24  Glenn Morris  <rgm@gnu.org>
11278         * Makefile.in (install-arch-dep): Don't set sticky bit on the binary.
11280 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
11282         lisp/gnus/nnmaildir.el: Silence lexical warnings
11283         * lisp/gnus/nnmaildir.el (nnmaildir--prepare): Use a more
11284         functional style.
11285         (nnmaildir--update-nov): Remove unused var `numdir'.
11286         (nnmaildir-request-type, nnmaildir--scan, nnmaildir-request-newgroups)
11287         (nnmaildir-request-group, nnmaildir-request-create-group)
11288         (nnmaildir-request-post, nnmaildir-request-move-article)
11289         (nnmaildir-request-accept-article, nnmaildir-active-number):
11290         Mark unused args.
11291         (nnmaildir-get-new-mail, nnmaildir-group-alist)
11292         (nnmaildir-active-file): Declare.
11293         (nnmaildir-request-scan): Remove unused vars `group' and `grp-dir'.
11294         (nnmaildir-request-update-info): Remove unused vars `dotfile', `num',
11295         `mark', `end', `new-mark', and `mark-sym'.
11296         (nnmaildir-retrieve-headers): Remove unused args `srv-dir', `dir',
11297         `nlist2'.
11298         (nnmaildir-request-expire-articles):
11299         Remove unused vars `article', `stop' and `nlist2'.
11300         (nnmaildir-request-set-mark): Remove unused vars `begin', `article' and
11301         `end'.  Use nnmaildir--article when dyn-binding is needed.
11302         Give the value directly in the `let' for `del-mark', `del-action',
11303         `add-action', and `set-action'.  Don't use `add-to-list' on a local var.
11304         (nnmaildir-close-server): Declare those local vars that need to be
11305         dyn-bound.
11307 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
11309         * src/keyboard.h (kbd_buffer_store_event_hold): Remove unused local.
11311         Port selection info fix to clang
11312         * src/keyboard.h (kbd_buffer_store_event_hold):
11313         Don't assume C11 semantics for alignof (Bug#20756).
11315         Fix bug that munged selection info
11316         On some optimizing C compilers, copying a structure did not
11317         copy the padding bytes between elements, and the type punning
11318         between struct input_data and struct selection_input_data did
11319         not work.  Change the C code to use a proper union type instead.
11320         Problem reported by YAMAMOTO Mitsuharu (Bug#20756).
11321         * src/keyboard.c (kbd_buffer, kbd_fetch_ptr, kbd_store_ptr)
11322         (readable_events, discard_mouse_events, kbd_buffer_events_waiting)
11323         (kbd_buffer_get_event, process_special_events, stuff_buffered_input)
11324         (mark_kboards):
11325         Use union buffered_input_event, not struct input_event.
11326         (clear_event, deliver_input_available_signal, process_special_events):
11327         Remove unnecessary forward decls.
11328         (kbd_buffer_store_buffered_event): New function, mostly just the
11329         old kbd_buffer_store_event_hold, except its argument is of type
11330         union buffered_input_event, not struct input_event.
11331         (kbd_buffer_unget_event): Define only if HAVE_X11, since it's
11332         not needed otherwise.  Argument is now of type
11333         struct selection_input_event *, not struct input_event *.
11334         All callers changed.
11335         (clear_event): Arg is now of type union buffered_input_event *,
11336         not struct input_event *.  All callers changed.
11337         * src/keyboard.h [HAVE_X11]: Include "xterm.h".
11338         (union buffered_input_event): New type.
11339         (kbd_buffer_store_event_hold): Now an inline function,
11340         defined here.
11341         * src/termhooks.h (EVENT_KIND_WIDTH): New constant.
11342         (struct input_event): Use it.
11343         * src/xselect.c (struct selection_event_queue):
11344         Make elements be of type struct selection_input_event,
11345         not struct input_event.
11346         (selection_input_event_equal): New static function.
11347         (x_queue_event): Use it.
11348         (x_queue_event, x_decline_selection_request)
11349         (x_selection_current_request, x_reply_selection_request)
11350         (x_handle_selection_request, x_handle_selection_clear)
11351         (x_handle_selection_event): Use struct selection_input_event,
11352         not struct input_event.  All callers changed.
11353         (x_convert_selection): Omit unused first arg.  All callers changed.
11354         (Fx_disown_selection_internal): Omit unnecessary union.
11355         * src/xterm.c (handle_one_xevent): Use new union buffered_input_event
11356         rather than rolling our own equivalent.  Prefer sie.kind when
11357         setting up that kind of structure.
11358         Call kbd_buffer_store_buffered_event, not kbd_buffer_store_event_hold.
11359         * src/xterm.h (struct selection_input_event: Use EVENT_KIND_WIDTH.
11360         (SELECTION_EVENT_DISPLAY, SELECTION_EVENT_DPYINFO)
11361         (SELECTION_EVENT_REQUESTOR, SELECTION_EVENT_SELECTION)
11362         (SELECTION_EVENT_TARGET, SELECTION_EVENT_PROPERTY)
11363         (SELECTION_EVENT_TIME, x_handle_selection_event):
11364         Arg is now of type struct selection_input_event *)
11365         not struct input_event *.  All callers changed.
11367 2015-06-23  Glenn Morris  <rgm@gnu.org>
11369         * Makefile.in (install-arch-dep): Simplify with Make conditionals.
11371 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
11373         * lisp/isearch.el: Fold many unicode characters to ASCII.
11374         (isearch-character-fold-search, isearch--character-fold-extras)
11375         (isearch--character-fold-table): New variable.
11376         (isearch--character-folded-regexp): New function.
11377         (isearch-search-fun-default): Use them.
11378         * lisp/replace.el (replace-character-fold): New variable.
11379         (replace-search): Use it.
11380         * etc/NEWS: Document it.
11382 2015-06-23  Glenn Morris  <rgm@gnu.org>
11384         Check for an input event before showing a dialog box.  (Bug#20813)
11385         * lisp/subr.el (y-or-n-p):
11386         * src/fns.c (Fyes_or_no_p): Check last-input-event as well
11387         as last-nonmenu-event.
11389 2015-06-23  Jürgen Hartmann  <juergen_hartman_@hotmail.com>  (tiny change)
11391         Respect ‘switch-to-visible-buffer’ more rigidly.  (Bug#20861)
11392         * lisp/window.el (switch-to-visible-buffer): Doc adjustment.
11393         (switch-to-prev-buffer, switch-to-next-buffer): Respect
11394         switch-to-visible-buffer independent of the windows history.
11396 2015-06-23  Paul Eggert  <eggert@cs.ucla.edu>
11398         * src/keyboard.c (last_timer_event): Remove unused var.
11400 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
11402         * test/automated/package-test.el (package-test-update-listing):
11403         Fix test.
11405 2015-06-23  Glenn Morris  <rgm@gnu.org>
11407         Revert 2014-06-25 nextstep/Makefile change.
11408         * nextstep/Makefile.in (${ns_appbindir}): Remove rule.
11409         (${ns_appbindir}/Emacs, links): Create ns_appbindir in the rule,
11410         not as an order-only prerequisite.
11412         * configure.ac (--with-ns): Enable by default on OS X.
11414 2015-06-23  Leo Liu  <sdl.web@gmail.com>
11416         Fix shell-for/backward-command to exclude spaces
11417         * lisp/shell.el (shell-forward-command, shell-backward-command):
11418           Handle the 'move case from re-search-forward/backward.
11419           fixes debbugs:20873
11421 2015-06-22  Juri Linkov  <juri@linkov.net>
11423         * lisp/replace.el (query-replace-read-from): Add separator to
11424         the local binding of text-property-default-nonsticky.  (Bug#20690)
11426         * lisp/simple.el (shell-command-on-region): Replace 'error' with 'user-error'.
11427         (Bug#20785)
11429 2015-06-22  Ken Brown  <kbrown@cornell.edu>
11431         Enable CPU profiling on Cygwin
11432         * src/syssignal.h [CYGWIN] (PROFILER_CPU_SUPPORT): Revert previous
11433         change that undefined this.
11434         (SIGEV_SIGNAL): Ensure that this is defined as a macro.
11435         * src/profiler.c [CYGWIN] (timer_getoverrun): Define as a macro on
11436           Cygwin.
11438         Improve diagnostics of profiler-cpu-start
11439         * src/profiler.c (setup_cpu_timer): Change return type to 'int';
11440         return -1 if the sampling interval is invalid.
11441         (Fprofiler_cpu_start): Improve error message if 'setup_cpu_timer'
11442         fails.  (Bug#20843)
11444 2015-06-22  Artur Malabarba  <bruce.connor.am@gmail.com>
11446         * lisp/emacs-lisp/package.el: Exclude packages by name.
11447         (package-hidden-regexps): New variable.
11448         (package-menu--refresh): Use it.
11449         (package-menu-hide-package): New command.
11451         * lisp/emacs-lisp/package.el: Rename hide-obsolete to toggle-hiding.
11453 2015-06-22  Eli Zaretskii  <eliz@gnu.org>
11455         Fix debug-timer-check on systems without HAVE_TIMERFD
11456         * src/atimer.c (Fdebug_timer_check) [!HAVE_TIMERFD]: Actively run
11457         the expired timers, since wait_reading_process_output doesn't.
11458         (debug_timer_callback): Enlarge the tolerance to 20 msec.
11460         Fix RCS crashes in vc-test
11461         * lisp/vc/vc-rcs.el (vc-rcs-register): Avoid crashes with some old
11462         ports of 'ci' on MS-Windows by always passing the -t- switch.
11464 2015-06-22  Glenn Morris  <rgm@gnu.org>
11466         * doc/emacs/package.texi (Packages):
11467         * doc/emacs/trouble.texi (Known Problems): Remove faq cross-references.
11469         * doc/misc/efaq-w32.texi (Downloading): Copyedits.  (Bug#20851)
11471 2015-06-22  Paul Eggert  <eggert@cs.ucla.edu>
11473         Port tests to help-quote-translation
11474         * test/automated/ert-x-tests.el (ert-test-describe-test):
11475         * test/automated/package-test.el (package-test-describe-package)
11476         (package-test-signed): Allow straight quotes, too.
11478 2015-06-22  Dmitry Gutov  <dgutov@yandex.ru>
11480         Make find-function-on-key use the current window
11481         * lisp/emacs-lisp/find-func.el (find-function-on-key-do-it):
11482         Extract from `find-function-on-key', add a second argument.
11483         (find-function-on-key): Use it (bug#19679).
11484         (find-function-on-key-other-window)
11485         (find-function-on-key-other-frame): New commands.
11487 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
11489         Revert "Define `map-elt' as a generalized variable"
11490         This reverts commit 8b6d82d3ca86f76ed964063b3941a7c6ab0bf1c6.
11492 2015-06-21  Ken Brown  <kbrown@cornell.edu>
11494         Drop support for CPU profiling on Cygwin
11495         * src/syssignal.h (PROFILER_CPU_SUPPORT): Don't define on Cygwin.
11496         (Bug#20843)
11498 2015-06-21  Paul Eggert  <eggert@cs.ucla.edu>
11500         Fix some “nested” quoting confusion in doc strings
11501         * lisp/emacs-lisp/advice.el (ad-map-arglists):
11502         * lisp/kermit.el (kermit-clean-on):
11503         * lisp/mh-e/mh-comp.el (mh-repl-group-formfile):
11504         * src/keyboard.c (Frecursive_edit):
11505         Use curved quotes when quoting text containing apostrophe,
11506         so that the apostrophe isn't curved in the output.
11508 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
11510         Define `map-elt' as a generalized variable
11511         * lisp/emacs-lisp/map.el (map-elt): Define a gv-expander.
11512         * lisp/emacs-lisp/map.el (map--dispatch): Tighten the code.
11513         * lisp/emacs-lisp/map.el (map-put): Redefine it as a function using a
11514         `setf' with `map-elt'.
11515         * test/automated/map-tests.el: Comment out `test-map-put-literal'.
11517 2015-06-21  Michael Albinus  <michael.albinus@gmx.de>
11519         Improve error handling in tramp-adb.el
11520         * lisp/net/tramp-adb.el (tramp-adb-handle-file-local-copy):
11521         Improve error handling.
11523 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
11525         Reuse `alist-get' in map.el
11526         * lisp/emacs-lisp/map.el (map-elt): Use `alist-get' to retrieve alist
11527         elements.
11529 2015-06-21  Eli Zaretskii  <eliz@gnu.org>
11531         Fix bytecomp-tests--warnings when $TMPDIR has a long name
11532         * test/automated/bytecomp-tests.el (bytecomp-tests--warnings):
11533         Allow the warning to begin on the 3rd, not only 2nd line, which
11534         happens if temporary-file-directory has a very long name.
11536         Expect 2 icalendar tests to fail on MS-Windows
11537         * test/automated/icalendar-tests.el (icalendar-import-with-timezone)
11538         (icalendar-real-world): Make them expected failures on MS-Windows.
11540 2015-06-20  Paul Eggert  <eggert@cs.ucla.edu>
11542         Improve port of settings UI to older displays
11543         * lisp/cus-start.el (standard): Don't assume curved quotes are
11544         easily distinguishable when users are tinkering with a setting
11545         that affects how curved quotes are generated.
11547         Fix quoting in electric-quote-mode doc string
11548         * lisp/electric.el (electric-quote-mode): Fix quoting.
11549         This is a fallout from the recent change introducing
11550         ‘help-quote-translation’.
11552         Spelling fix
11554         * doc/misc/texinfo.tex, lib/set-permissions.c: Merge from gnulib.
11556         * src/doc.c (syms_of_doc): Remove unused symbols.
11558 2015-06-20  Martin Rudalics  <rudalics@gmx.at>
11560         * lisp/window.el (window-state-put): Undedicate target window
11561         before putting STATE into it.  (Bug#20848)
11563 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
11565         Merge from origin/emacs-24
11566         a5e6f33 Fixes: debbugs:20832
11567         b9f02cf Fixes: debbugs:20832
11569 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
11571         Fix file-in-directory-p when the directory is UNC
11572         * lisp/files.el (file-in-directory-p): Support files and
11573         directories that begin with "//".  (Bug#20844)
11575 2015-06-19  Stephen Berman  <stephen.berman@gmx.net>
11577         * lisp/calendar/todo-mode.el (todo-show): Don't visit todo file
11578         in the minibuffer.  (Bug#20832)
11580 2015-06-19  Nicolas Richard  <youngfrog@members.fsf.org>
11582         * lisp/calendar/todo-mode.el (todo-show): Signal an error if buffer
11583         for adding new todo file is empty but modified.  (Bug#20832)
11585 2015-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
11587         (filepos-to-bufferpos): Further tweaks to the utf-16 code
11588         * lisp/international/mule-util.el (filepos-to-bufferpos):
11589         Fix typo.  Move non-exact check to the utf-16 branch (the only one
11590         affected).  Don't use byte-to-position for the utf-16 case.
11592 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
11594         Minor fixes in filepos-to-bufferpos
11595         * lisp/international/mule-util.el (filepos-to-bufferpos): Remove
11596         test for utf-8-emacs.  Exempt single-byte encodings from the
11597         'use-exact' path when QUALITY is 'exact'.  Test UTF-16 encodings
11598         for BOM before subtracting 2 bytes.  Use 'identity' when adjusting
11599         UTF-16 encoded files for CR-LF EOLs.
11601 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
11603         Improve the optional translation of quotes
11604         Fix several problems with the recently-added custom variable
11605         help-quote-translation where the code would quote inconsistently
11606         in help buffers.  Add support for quoting 'like this', which
11607         is common in other GNU programs in ASCII environments.  Change
11608         help-quote-translation to use more mnemonic values: values are now the
11609         initial quoting char, e.g., (setq help-quote-translation ?`) gets the
11610         traditional Emacs help-buffer quoting style `like this'.  Change the
11611         default behavior of substitute-command-keys to match what's done in
11612         set-locale-environment, i.e., quote ‘like this’ if displayable,
11613         'like this' otherwise.
11614         * doc/lispref/help.texi (Keys in Documentation): Document
11615         new behavior of substitute-command-keys, and document
11616         help-quote-translation.
11617         * doc/lispref/tips.texi (Documentation Tips):
11618         Mention the effect of help-quote-translation.
11619         * etc/NEWS: Mention new behavior of substitute-command-keys,
11620         and merge help-quote-translation news into it.
11621         When talking about doc strings, mention new ways to type quotes.
11622         * lisp/cedet/mode-local.el (overload-docstring-extension):
11623         Revert my recent change to this function, which shouldn't be
11624         needed as the result is a doc string.
11625         * lisp/cedet/mode-local.el (mode-local-print-binding)
11626         (mode-local-describe-bindings-2):
11627         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
11628         * lisp/cus-theme.el (describe-theme-1):
11629         * lisp/descr-text.el (describe-text-properties-1, describe-char):
11630         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
11631         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
11632         (eieio-help-constructor):
11633         * lisp/emacs-lisp/package.el (describe-package-1):
11634         * lisp/faces.el (describe-face):
11635         * lisp/help-fns.el (help-fns--key-bindings)
11636         (help-fns--compiler-macro, help-fns--parent-mode)
11637         (help-fns--obsolete, help-fns--interactive-only)
11638         (describe-function-1, describe-variable):
11639         * lisp/help.el (describe-mode):
11640         Use substitute-command-keys to ensure a more-consistent quoting
11641         style in help buffers.
11642         * lisp/cus-start.el (standard):
11643         Document new help-quote-translation behavior.
11644         * lisp/emacs-lisp/lisp-mode.el (lisp-fdefs):
11645         * lisp/help-mode.el (help-xref-symbol-regexp, help-xref-info-regexp)
11646         (help-xref-url-regexp):
11647         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
11648         * lisp/wid-edit.el (widget-documentation-link-regexp):
11649         Also match 'foo', in case we're in a help buffer generated when
11650         help-quote-translation is ?'.
11651         * src/doc.c: Include disptab.h, for DISP_CHAR_VECTOR.
11652         (LEFT_SINGLE_QUOTATION_MARK, uLSQM0, uLSQM1, uLSQM2, uRSQM0)
11653         (uRSQM1, uRSQM2, LSQM, RSQM): New constants.
11654         (Fsubstitute_command_keys): Document and implement new behavior.
11655         (Vhelp_quote_translation): Document new behavior.
11657 2015-06-18  Glenn Morris  <rgm@gnu.org>
11659         * lisp/cus-start.el (help-quote-translation): Add :version.
11661         * src/doc.c (Fsubstitute_command_keys): Make previous change compile.
11663 2015-06-18  Alan Mackenzie  <acm@muc.de>
11665         Make translation of quotes to curly in doc strings optional.
11666         * src/doc.c (traditional, prefer-unicode): New symbols.
11667         (help-quote-translation): New variable.
11668         (Fsubstitute_command_keys): Make translation of quotes dependent on
11669         `help-quote-translation'; also translate curly quotes back to ASCII
11670         ones.
11671         * lisp/cus-start.el (top-level): Add a customization entry for
11672         `help-quote-translation'.
11674 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
11676         * lisp/emacs-lisp/package.el: Don't always propagate async errors
11677         (package--with-work-buffer-async): Only propagate the error if the
11678         callback returns non-nil.
11679         (package--download-one-archive): Return nil on the signature
11680         checking callback if we accept unsigned.
11681         (package--download-and-read-archives): Return non-nil on the
11682         archive download callback.
11684 2015-06-18  Martin Rudalics  <rudalics@gmx.at>
11686         Set image_cache_refcount before x_default_parameter calls.  (Bug#20802)
11687         * src/nsfns.m (Fx_create_frame):
11688         * src/xfns.c (Fx_create_frame, x_create_tip_frame): Move setting
11689         image_cache_refcount before first x_default_parameter call.
11691 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
11693         Improve and extend filepos-to-bufferpos
11694         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
11695         Don't barf if F returns nil for some argument.
11696         (filepos-to-bufferpos): Expand to support UTF-16 and not assume
11697         that every encoding of type 'charset' is single-byte.
11699 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
11701         * lisp/emacs-lisp/package.el (package-menu--perform-transaction):
11702         Properly delete packages.  (Bug#20836)
11704 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
11706         Update data files from just-released Unicode 8.0
11707         * etc/NEWS: Update wording since Unicode 8.0 is no longer in draft
11708         status.
11709         * test/BidiCharacterTest.txt: Update from Unicode 8.0.
11710         * admin/unidata/BidiMirroring.txt:
11711         * admin/unidata/BidiBrackets.txt:
11712         * admin/unidata/UnicodeData.txt: Update from Unicode 8.0.
11714 2015-06-18  Paul Eggert  <eggert@cs.ucla.edu>
11716         Document curved quotes a bit better
11717         * doc/emacs/basic.texi (Inserting Text):
11718         Mention C-x 8.  Change example to use curved quote rather
11719         than infinity, as this lets us give more ways to do it.
11720         * doc/emacs/mule.texi (International Chars): Mention C-x 8 shortcuts
11721         and quotation marks.
11722         * doc/emacs/text.texi (Quotation Marks):
11723         * doc/lispref/tips.texi (Documentation Tips):
11724         Add "curly quotes" and "curved quotes" to the index.
11725         * doc/emacs/text.texi (Quotation Marks):
11726         Give the C-x 8 shorthands for curved quotes.
11727         Cross-reference to "Quotation Marks".
11729 2015-06-17  Daiki Ueno  <ueno@gnu.org>
11731         Add pinentry.el for better GnuPG integration
11732         * lisp/pinentry.el: New file.
11733         * etc/NEWS: Add entry about pinentry.el.
11734         * lisp/epg.el (epg--start): Set INSIDE_EMACS envvar.
11735         (Bug#20550)
11737 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
11739         * lisp/emacs-lisp/package.el: Slightly better error reporting.
11741 2015-06-17  Stefan Monnier  <monnier@iro.umontreal.ca>
11743         (define-minor-mode): Use setq-default for :global minor modes
11744         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
11745         Use setq-default for :global minor modes (bug#20712).
11747 2015-06-17  Eli Zaretskii  <eliz@gnu.org>
11749         Avoid infloop in redisplay with tall images
11750         * src/xdisp.c (try_scrolling): Prevent an infloop when scrolling
11751         down near ZV.  (Bug#20808)
11752         Call bidi_unshelve_cache to avoid memory leaks.  Use IT_CHARPOS
11753         instead of CHARPOS.
11755 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
11757         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
11758         Fix error reporting.
11760         * lisp/let-alist.el: Move to lisp/emacs-lisp/let-alist.el
11762         * lisp/emacs-lisp/package.el: Revert buffer after any operation
11763         Call `package-menu--post-refresh' after any operation that changes
11764         the package database (`package-install' and `package-delete').  To
11765         avoid performance issues in large transactions, these functions
11766         add `post-refresh' to `post-command-hook' instead of calling it
11767         immediately.
11768         (package-menu--mark-or-notify-upgrades): New function.
11769         (list-packages): Add it to `package--post-download-archives-hook'.
11770         (package-menu--post-refresh): Lose the upgrade-checking code, add
11771         code to remove itself from `post-command-hook'.
11772         (package-install, package-delete): Add it to `post-command-hook'.
11773         (package-menu-execute): Don't call `package-menu--post-refresh'.
11775 2015-06-17  Stephen Leake  <stephen_leake@stephe-leake.org>
11777         Add missing function xref-location-group for elisp-mode.
11778         * lisp/progmodes/elisp-mode.el: Add missing function xref-location-group.
11780 2015-06-17  Wolfgang Jenkner  <wjenkner@inode.at>
11782         * src/editfns.c (Fbyte_to_position): Fix bytepos not at char boundary.
11783         The behavior now matches the description in the manual.  (Bug#20783)
11785 2015-06-17  Xue Fuqiao  <xfq.free@gmail.com>
11787         * etc/tutorials/TUTORIAL.cn: Update; synchronize with TUTORIAL.
11789 2015-06-17  Glenn Morris  <rgm@gnu.org>
11791         Generate char-script-table from Unicode source.  (Bug#20789)
11792         * admin/unidata/Makefile.in (AWK): New, set by configure.
11793         (all): Add charscript.el.
11794         (blocks): New variable.
11795         (charscript.el, ${unidir}/charscript.el): New targets.
11796         (extraclean): Also remove generated charscript.el.
11797         * admin/unidata/blocks.awk: New script.
11798         * admin/unidata/Blocks.txt: New data file, from unicode.org.
11799         * lisp/international/characters.el: Load charscript.
11800         * src/Makefile.in (charscript): New variable.
11801         (${charscript}): New target.
11802         (${lispintdir}/characters.elc): Depend on charscript.elc.
11803         (temacs$(EXEEXT)): Depend on charscript.
11805         * lisp/international/characters.el (char-script-table): Tweak
11806         some ranges to better match the source.  (Bug#20789#17)
11808         Remove "no-byte-compile: t" from a few files.
11809         * lisp/obsolete/bruce.el, lisp/obsolete/keyswap.el:
11810         * lisp/obsolete/patcomp.el: No reason not to compile these.
11812 2015-06-16  Glenn Morris  <rgm@gnu.org>
11814         Fix some typos in copied Unicode data.  (Bug#20789)
11815         * lisp/international/characters.el (char-script-table):
11816         * lisp/international/fontset.el (script-representative-chars)
11817         (setup-default-fontset): Fix typos.
11819         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
11820         Don't print filename twice (it's in the prefix now).
11822         * lisp/emacs-lisp/pcase.el (pcase--u1): Revert earlier workaround.
11823         No longer needed.
11825         Address a compilation warning.
11826         * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-defalias):
11827         Replace 't' with '_' in pcase.
11829         Address some check-declare warnings.
11830         * lisp/simple.el (tabulated-list-print):
11831         * lisp/progmodes/elisp-mode.el (xref-collect-matches):
11832         * lisp/term/ns-win.el (ns-selection-owner-p, ns-selection-exists-p)
11833         (ns-get-selection): Update declarations.
11835         Address some compilation warnings.
11836         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
11837         * lisp/vc/vc-git.el (vc-git-file-type-as-string):
11838         Replace 't' with '_' in pcase.
11840         Address some compilation warnings.
11841         * lisp/face-remap.el (text-scale-adjust):
11842         * lisp/menu-bar.el (popup-menu-normalize-position):
11843         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand):
11844         * lisp/emacs-lisp/bytecomp.el (byte-compile-arglist-warn):
11845         * lisp/emacs-lisp/generator.el (cps--transform-1):
11846         * lisp/emacs-lisp/macroexp.el (macroexp--expand-all):
11847         * lisp/obsolete/vc-arch.el (vc-arch-mode-line-string):
11848         * lisp/progmodes/octave.el (octave-goto-function-definition)
11849         (octave-find-definition-default-filename):
11850         Replace 't' with '_' in pcase.
11852         * lisp/emacs-lisp/pcase.el (pcase--u1):
11853         Paper-over today's bootstrap failure.
11855 2015-06-16  Nicolas Petton  <nicolas@petton.fr>
11857         * lisp/emacs-lisp/seq.el: Fix a byte-compiler warnings related to pcase.
11859         * lisp/emacs-lisp/map.el (map-into): Fix a byte-compiler warning.
11861         Better confirmation message in `find-alternate-file' (Bug#20830)
11862         * lisp/files.el (find-alternate-file'): Improve the confirmation
11863         message to show the buffer name.
11865         Better docstring for null.  (Bug#20815)
11866         * src/data.c (null): Improves the docstring, saying what null returns
11867         when OBJECT is non-nil.
11869 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
11871         * lisp/net/newst-treeview.el: Use lexical-binding.
11873         (filepos-to-bufferpos): Add missing cases.  Make sure it terminates.
11874         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
11875         New auxiliary function, extracted from filepos-to-bufferpos.
11876         Make sure it terminates.
11877         (filepos-to-bufferpos): Use it to fix the latin-1-dos case.
11878         Add support for the `exact' quality.
11880 2015-06-16  Cédric Chépied  <cedric.chepied@gmail.com>
11882         Identify feeds in newsticker treeview with :nt-feed property
11883         * lisp/net/newst-treeview.el:
11884         (newsticker--treeview-nodes-eq): Use property :nt-feed instead of :tag.
11886 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
11888         * lisp/emacs-lisp/pcase.el: Improve docs and error handling.
11889         (pcase--self-quoting-p): Floats aren't self-quoting.
11890         (pcase): Tweak docstring.
11891         (pcase--u1): Deprecate the t pattern.  Improve error detection for
11892         the nil pattern.
11893         (\`): Tweak docstring.  Signal an error for unrecognized cases.
11894         (bug#20784)
11896 2015-06-16  Eli Zaretskii  <eliz@gnu.org>
11898         Fix infloop in filepos-to-bufferpos
11899         * lisp/international/mule-util.el (filepos-to-bufferpos): Fix EOL
11900         offset calculation, and make it conditional on the eol-type of the
11901         file's encoding.  (Bug#20825)
11903 2015-06-16  Martin Rudalics  <rudalics@gmx.at>
11905         Fix handling of image cache refcounts.  (Bug#20802)
11906         This backports Eli Zaretskii's solution of this problem for W32
11907         to X and NS.
11908         * src/nsfns.m (image_cache_refcount): Define unconditionally.
11909         (unwind_create_frame): If the image cache's reference count
11910         hasn't been updated yet, do that now.
11911         (Fx_create_frame): Set image_cache_refcount unconditionally.
11912         * src/xfns.c (image_cache_refcount): Define unconditionally.
11913         (unwind_create_frame): If the image cache's reference count
11914         hasn't been updated yet, do that now.
11915         (Fx_create_frame, x_create_tip_frame): Set image_cache_refcount
11916         unconditionally.
11917         * src/w32fns.c (image_cache_refcount): Make it a ptrdiff_t as on
11918         X and NS.
11920 2015-06-16  Nils Ackermann  <nils@ackermath.info>
11922         Improve reftex-label-regexps default value
11923         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Make
11924         keyvals label regexp more strict to better cope with unbalanced
11925         brackets common in math documents.
11927 2015-06-16  Glenn Morris  <rgm@gnu.org>
11929         * doc/emacs/calendar.texi (Format of Diary File):
11930         Move "nonmarking" from here...
11931         (Displaying the Diary): ... to here.
11933         * doc/emacs/calendar.texi (Format of Diary File, Displaying the Diary):
11934         Swap the order of these nodes.
11935         * doc/emacs/emacs.texi: Update detailed menu for the above change.
11937         * doc/emacs/calendar.texi (Specified Dates, Special Diary Entries):
11938         Update date of examples.
11939         (Diary, Format of Diary File): Move example from former to latter.
11940         Reduce duplication.
11942         No need for cp51932.el, eucjp-ms.el to not be compiled any more.
11943         * admin/charsets/cp51932.awk, admin/charsets/eucjp-ms.awk:
11944         Don't set no-byte-compile in the outputs.
11945         * lisp/loadup.el: Don't specify uncompiled cp51932, eucjp-ms.
11947 2015-06-15  Glenn Morris  <rgm@gnu.org>
11949         * lisp/calendar/calendar.el (diary-file): Use locate-user-emacs-file.
11950         * doc/emacs/calendar.texi (Diary, Format of Diary File):
11951         Update for above diary-file change.
11953         * lisp/macros.el (name-last-kbd-macro, kbd-macro-query)
11954         (apply-macro-to-region-lines): Use user-error.
11956         * lisp/textmodes/page-ext.el (add-new-page, pages-directory)
11957         (pages-directory-for-addresses): Doc fixes.
11959 2015-06-15  Stefan Monnier  <monnier@iro.umontreal.ca>
11961         * lisp/info.el: Cleanup bytepos/charpos issues
11962         * lisp/international/mule-util.el: Use lexical-binding.
11963         (filepos-to-bufferpos): New function.
11964         * lisp/info.el (Info-find-in-tag-table-1): Use 0-based file positions.
11965         (Info-find-node-2): Use filepos-to-bufferpos (bug#20704).
11966         (Info-read-subfile, Info-search): Use 0-based file positions.
11968         * lisp/progmodes/perl-mode.el: Refine handling of /re/ and y/abc/def/
11969         (perl--syntax-exp-intro-keywords): New var.
11970         (perl--syntax-exp-intro-regexp, perl-syntax-propertize-function): Use it.
11971         (bug#20800).
11973 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
11975         Fix quoting when making derived mode docstring
11976         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
11977         Nest regexp-quote inside format, not the reverse.
11978         Problem reported by Artur Malabarba in:
11979         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00206.html
11981 2015-06-15  Eli Zaretskii  <eliz@gnu.org>
11983         Fix current-iso639-language on MS-Windows
11984         * lisp/international/mule-cmds.el (set-locale-environment):
11985         Downcase the locale name before interning it.  This is so the
11986         'current-iso639-language' on MS-Windows matches the ':lang'
11987         property of font-spec objects.
11989         Limit Symbola usage some more
11990         * lisp/international/fontset.el (setup-default-fontset): Limit
11991         Symbol coverage of Currency Symbols to u+20B6..u+20CF.
11992         (Bug#20727)
11994 2015-06-15  Nicolas Petton  <nicolas@petton.fr>
11996         * lisp/emacs-lisp/map.el (map-let): Better docstring.
11998 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
12000         * test/automated/help-fns.el (abc\\\[universal-argument\]b\`c\'d\\e\"f):
12001         (help-fns-test-funny-names): Spelling fixes.
12003 2015-06-14  Glenn Morris  <rgm@gnu.org>
12005         * lisp/version.el (emacs-repository-version-git): Demote errors.
12006         Check result is a hash.
12008 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
12010         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
12011         Catch errors that happen before going async.  (Bug#20809)
12013 2015-06-14  Eli Zaretskii  <eliz@gnu.org>
12015         Another improvement of documentation of set-fontset-font
12016         * doc/lispref/display.texi (Fontsets): Say explicitly that
12017         CHARACTER can be a single codepoint.
12018         * src/fontset.c (Fset_fontset_font): Doc fix.
12020         Another improvement for symbol and punctuation characters
12021         * lisp/international/fontset.el (setup-default-fontset): Exclude
12022         from Symbola character ranges for symbols and punctuation covered
12023         well by popular Unicode fonts.  Prefer fixed-misc Unicode font, if
12024         installed and where its coverage of symbols and punctuation is
12025         known to be good.  (Bug#20727)
12027 2015-06-14  Christoph Wedler  <christoph.wedler@sap.com>
12029         Some generic support for multi-mode indentation.
12030         * lisp/progmodes/prog-mode.el (prog-indentation-context):
12031         New variable.
12032         (prog-first-column, prog-widen): New convenience functions.
12034 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
12036         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
12037         Don't assume that `tabulated-list-printer' will leave point at the
12038         end of the buffer.  (Bug#20810)
12040 2015-06-13  Glenn Morris  <rgm@gnu.org>
12042         Tweaks for getting repository version; a bit more like it was for bzr
12043         * lisp/version.el (emacs-repository-version-git)
12044         (emacs-repository--version-git-1): New functions,
12045         split from emacs-repository-get-version.
12046         (emacs-repository-get-version): Make the second argument meaningful.
12048         * lisp/startup.el (command-line-1): Inform if skipping relative
12049         file names due to deleted PWD.
12051         * src/xsmfns.c (x_session_initialize): Avoid libSM crash
12052         when starup directory is missing.  (Bug#18851)
12053         (errno.h): Include it.
12055 2015-06-13  Paul Eggert  <eggert@cs.ucla.edu>
12057         Better fix for documenting `X as "`X"
12058         Fix suggested by Stefan Monnier.
12059         * lisp/help-fns.el (help-fns--signature):
12060         Insert "`X", not "(\` X)", when documenting `X (Bug#20759).
12061         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
12062         Don't treat `X specially, as help-fns--signature now handles this.
12064 2015-06-13  Eli Zaretskii  <eliz@gnu.org>
12066         Improve the default fontset when Symbola is not installed
12067         * lisp/international/fontset.el (setup-default-fontset): Only
12068         prepend Symbola and FreeMono font specs for symbols and
12069         punctuation; do not replace the default spec for them.  This
12070         should have better results when Symbola/FreeMono are not
12071         installed.  (Bug#20727)
12073         Improve documentation of ':lang' in font specs
12074         * src/font.c (Ffont_spec): Doc fix: elaborate on the values and
12075         use of the ':lang' property of the font spec.
12076         * doc/emacs/frames.texi (Fonts): Document the language names that
12077         can be in the STYLE part of XLFD.
12078         * doc/lispref/display.texi (Low-Level Font): Document the ':lang'
12079         property.
12081         * nt/README: Don't advertise the (obsolescent) w32 FAQ.
12083         * nt/README.W32: Don't advertise the (obsolescent) w32 FAQ.
12085         Revert last change in fontset.el
12086         * lisp/international/fontset.el (setup-default-fontset): Revert
12087         the change "Configure Symbola font only if installed", since font
12088         search is evidently not yet set up when this function is called.
12089         (Bug#20727)
12091 2015-06-12  Glenn Morris  <rgm@gnu.org>
12093         Ensure early startup warnings are visible at the end.  (Bug#20792)
12094         * lisp/emacs-lisp/warnings.el (display-warning):
12095         If startup isn't complete, delay the warning.
12096         * lisp/startup.el (normal-top-level, command-line):
12097         Let display-warning automatically handle the needed delays.
12098         Run delayed-warnings-hook.
12100         * lisp/version.el (emacs-repository-get-version):
12101         Avoid calling external executable if possible.  (Bug#20799)
12103 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
12105         Document `X as "`X", not as "(` X)"
12106         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
12107         Document (backquote FOO) as "`FOO", not as "(` FOO)" (Bug#20759).
12109         * src/print.c (print_object): Minor simplification.
12111 2015-06-12  Glenn Morris  <rgm@gnu.org>
12113         * src/buffer.c (init_buffer): Add final newline to message.
12115 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
12117         Configure Symbola font only if installed
12118         * lisp/international/fontset.el (setup-default-fontset):
12119         Don't specify the Symbola font if it's not installed.
12120         Likewise for FreeMono.  (Bug#20727)
12122 2015-06-12  Eli Zaretskii  <eliz@gnu.org>
12124         Configure Symbola font only for symbols and punctuation
12125         * lisp/international/fontset.el (setup-default-fontset): Leave
12126         only symbols and punctuation in the fontset setup for Symbola
12127         font; remove "Greek and Coptic" and "Cyrillic Supplement".
12128         (Bug#20798)
12130 2015-06-12  Andreas Schwab  <schwab@linux-m68k.org>
12132         Fix crash in fontset-info
12133         * src/fontset.c (Ffontset_info): Check that the RFONT-DEF elt is
12134         non-nil.
12136 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
12138         Port to Solaris 10 sparc + Sun C 5.13
12139         * configure.ac (SETUP_SLAVE_PTY) [sol2* | unixware]:
12140         Adjust to process.c change.
12141         * src/process.c (create_process): Declare volatile variables at
12142         top level of this function, so that they're less likely to be
12143         reused later in the function in the code executed by the vforked
12144         child.  Do not declare locals used only in the vforked child, as
12145         they might share memory with locals still live in the parent.
12146         Instead, use the same variables in the child as in the parent.
12147         This works around a subtle bug that causes a garbage collector
12148         crash when Emacs is built with Sun C 5.13 sparc on Solaris 10.
12150 2015-06-12  Glenn Morris  <rgm@gnu.org>
12152         * lisp/startup.el (normal-top-level): Don't let *Messages* get
12153         a nil default-directory.
12155 2015-06-11  Glenn Morris  <rgm@gnu.org>
12157         * lisp/startup.el (normal-top-level): Use delay-warning.  (Bug#20792)
12159         Some progress towards starting with PWD deleted.  (Bug#18851)
12160         * src/buffer.c (init_buffer): Handle get_current_dir_name failures.
12161         * lisp/startup.el (normal-top-level, command-line-1):
12162         * lisp/minibuffer.el (read-file-name-default):
12163         Handle default-directory being nil.
12165 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
12167         Fix "not a tty" bug on Solaris 10
12168         * configure.ac (PTY_OPEN): Define to plain 'open'
12169         on SVR4-derived hosts, so that the O_CLOEXEC flag isn't set.
12170         * src/process.c (allocate_pty): Set the O_CLOEXEC flag after
12171         calling PTY_TTY_NAME_SPRINTF, for the benefit of SVR4-derived
12172         hosts that call grantpt which does its work via a setuid subcommand
12173         (Bug#19191, Bug#19927, Bug#20555, Bug#20686).
12174         Also, set O_CLOEXEC even if PTY_OPEN is not defined, since it
12175         seems relevant in that case too.
12177 2015-06-11  Juri Linkov  <juri@linkov.net>
12179         * lisp/bindings.el (debug-ignored-errors): Add mark-inactive.
12180         * lisp/simple.el (kill-region): Replace 'error' with 'user-error'.
12181         (Bug#20785)
12183 2015-06-11  Glenn Morris  <rgm@gnu.org>
12185         * lisp/international/characters.el (char-script-table): Fix typo.
12187 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
12189         Fix quoting of help for functions with odd names
12190         While investigating Bug#20759, I discovered other quoting problems:
12191         C-h f mishandled characters like backslash and quote in function names.
12192         This fix changes the behavior so that 'C-h f pcase RET' now
12193         generates "... (\` QPAT) ..." instead of "... (` QPAT) ...",
12194         because '(format "%S" '(` FOO))' returns "(\\` FOO)".  A comment
12195         in src/lread.c's read1 function says that the backslash will be
12196         needed starting in Emacs 25, which implies that 'format' is
12197         correct and the old pcase documention was wrong to omit the backslash.
12198         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
12199         * lisp/help-fns.el (help-fns--signature):
12200         * lisp/help.el (help-add-fundoc-usage):
12201         * lisp/progmodes/elisp-mode.el (elisp-function-argstring):
12202         Use help--make-usage-docstring rather than formatting
12203         help-make-usage.
12204         * lisp/emacs-lisp/pcase.el (pcase--make-docstring):
12205         Return raw docstring.
12206         * lisp/help-fns.el (help-fns--signature): New arg RAW, to return
12207         raw docstring.  Take more care to distinguish raw from cooked dstrings.
12208         (describe-function-1): Let help-fns--signature substitute
12209         command keys.
12210         * lisp/help.el (help--docstring-quote): New function.
12211         (help-split-fundoc): Use it, to quote funny characters more
12212         systematically.
12213         (help--make-usage): Rename from help-make-usage, since this
12214         should be private.  Leave an obsolete alias for the old name.
12215         (help--make-usage-docstring): New function.
12216         * test/automated/help-fns.el (help-fns-test-funny-names): New test.
12218 2015-06-11  Stefan Monnier  <monnier@iro.umontreal.ca>
12220         * lisp/thingatpt.el (in-string-p): Revert last change,
12221         since in-string-p is not used in thingatpt.el but only from outside.
12222         Also, use lexical binding.
12224 2015-06-11  Artur Malabarba  <bruce.connor.am@gmail.com>
12226         * lisp/let-alist.el (let-alist--deep-dot-search): Fix cons.
12227         * test/automated/let-alist.el (let-alist-cons): Test it.
12229 2015-06-11  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
12231         * src/syntax.c (Fbackward_prefix_chars): Reword docstring.
12233 2015-06-10  Glenn Morris  <rgm@gnu.org>
12235         * build-aux/gitlog-to-emacslog: Also ignore pointless merge commits.
12237         Improve generated ChangeLog for gitmerge.el commits.  (Bug#20717)
12238         * build-aux/gitlog-to-changelog: Handle gitmerge.el skipped commits.
12239         * admin/gitmerge.el (gitmerge-commit-message):
12240         Exclude "skipped" messages from ChangeLog once again.
12242         Slight namespace cleanup for thingatpt.el.
12243         * lisp/thingatpt.el (thing-at-point--in-string-p)
12244         (thing-at-point--end-of-sexp, thing-at-point--beginning-of-sexp)
12245         (thing-at-point--read-from-whole-string): Rename from
12246         old versions without "thing-at-point--" prefix.
12247         Keep old versions as obsolete aliases.  Update all uses.
12249         * lisp/emacs-lisp/checkdoc.el (checkdoc-get-keywords):
12250         Move requiring of finder from here...
12251         (checkdoc-package-keywords): ... to here.
12253         Use 'user-error' in a few calendar files.
12254         * lisp/calendar/appt.el (appt-add):
12255         * lisp/calendar/calendar.el (calendar-absolute-from-gregorian)
12256         (calendar-generate):
12257         * lisp/calendar/diary-lib.el (diary-mail-entries, diary-cyclic):
12258         Replace 'error' with 'user-error'.
12260         * lisp/progmodes/f90.el (f90-backslash-not-special): Use user-error.
12262         * lisp/files-x.el (add-file-local-variable):
12263         Special-case 'lexical-binding'.  (Bug#20641)
12265         * lisp/progmodes/executable.el (executable-self-display): Obsolete.
12266         No longer autoload.
12267         * doc/misc/autotype.texi (Executables):
12268         Undocument executable-self-display.
12270         * lisp/progmodes/executable.el (executable-self-display):
12271         Use non-obsolete tail syntax.  (Bug#20779)
12272         (executable-self-display): Doc update.
12274 2015-06-10  Stefan Monnier  <monnier@iro.umontreal.ca>
12276         * lisp/emacs-lisp/checkdoc.el: Use lexical-binding
12277         (finder-known-keywords): Silence byte-compiler.
12279 2015-06-09  Stefan Monnier  <monnier@iro.umontreal.ca>
12281         * lisp/simple.el (eval-expression): Macroexpand before evaluating
12282         (bug#20730).
12284         * lisp/progmodes/sh-script.el: Better handle nested quotes.
12285         (sh-here-doc-open-re): Don't mis-match the <<< operator (bug#20683).
12286         (sh-font-lock-quoted-subshell): Make sure double quotes within single
12287         quotes don't mistakenly end prematurely the surrounding string.
12289         * lisp/progmodes/elisp-mode.el: Require cl-lib for cl-defstruct.
12291 2015-06-09  Glenn Morris  <rgm@gnu.org>
12293         * test/automated/Makefile.in (ELFILES): Sort.
12295         * Makefile.in (SUBDIR_MAKEFILES):
12296         * lwlib/Makefile.in (WARN_CFLAGS):
12297         Use built-in Make functions rather than echo+sed.
12299 2015-06-09  Eli Zaretskii  <eliz@gnu.org>
12301         Update char-script-table
12302         * lisp/international/characters.el (char-script-table): Update
12303         from Unicode 8.0 Draft.
12305         Improve font selection for punctuation and other symbols
12306         * src/fontset.c (face_for_char): If the character's script is
12307         'symbol', and the font used for ASCII face has a glyph for it, use
12308         the font for the ASCII face instead of searching the fontsets.
12309         This comes instead of NS-specific code that used the current
12310         face's font instead, which is now disabled due to undesirable
12311         consequences.  (Bug#20727)
12313 2015-06-08  Dmitry Gutov  <dgutov@yandex.ru>
12315         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
12316         Skip past `#' to find BEG (bug#20771).
12317         * test/automated/elisp-mode-tests.el
12318         (elisp-completes-functions-after-hash-quote): New test.
12320 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
12322         Fix compilation warning/error in --without-x builds
12323         * src/xdisp.c (append_space_for_newline): Condition GUI-specific
12324         code on HAVE_WINDOW_SYSTEM.
12326         Improve the default fontset wrt symbols
12327         * lisp/international/fontset.el (setup-default-fontset): Better
12328         setup of fontset-default for symbols: use Symbola and FreeMono.
12329         (Bug#20727)
12331 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
12333         Add new command checkdoc-package-keywords
12334         * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag):
12335         New defcustom.
12336         (checkdoc-list-of-strings-p): Add doc.
12337         (checkdoc-current-buffer): When `checkdoc-package-keywords-flag' is
12338         non-nil, call `checkdoc-package-keywords'.
12339         (checkdoc-get-keywords): New defun.
12340         (checkdoc-package-keywords): New command.  Warns if the current file
12341         has package.el-style keywords that aren't in `finder-known-keywords'.
12342         * etc/NEWS: Add entry.
12344 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
12346         Avoid crashes when key-binding is called from a timer
12347         * src/keymap.c (Fkey_binding): Don't segfault if called with an
12348         empty vector as KEY.  (Bug#20705)
12350         Fix a thinko in arc-mode.el
12351         * lisp/arc-mode.el (archive-zip-summarize): Fix last change in the
12352         non-Zip64 case.  (Bug#20769)
12354 2015-06-08  Artur Malabarba  <bruce.connor.am@gmail.com>
12356         * lisp/emacs-lisp/package.el (package-delete): Make interactive.
12358 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
12360         * lisp/emacs-lisp/checkdoc.el (checkdoc-file): New function.
12361         (checkdoc-error): When `checkdoc-diagnostic-buffer' is set to
12362         "*warn*", print the warning to the standard output.  (bug#20754)
12364 2015-06-07  Glenn Morris  <rgm@gnu.org>
12366         * admin/update_autogen (changelog_files): Remove gitlog-to-emacslog.
12368         * src/font.c (syms_of_font) <font-log>: Doc fix.
12370         Remove the obsolete leading "*" from some C doc strings.
12371         * src/coding.c (syms_of_coding):
12372         * src/font.c (syms_of_font): Remove leading "*" from docs.
12373         * lisp/cus-start.el (enable-character-translation): Add it.
12375 2015-06-07  Paul Eggert  <eggert@cs.ucla.edu>
12377         Move gen_origin from program to data
12378         That way, 'make change-history' needs to change only ChangeLog.2,
12379         instead of having to change two files.
12380         * ChangeLog.2: Add commit info for range that this file covers.
12381         * Makefile.in (new_commit_regexp): New macro.
12382         (change-history-nocommit): Simplify, by putting what used to be
12383         the gen_origin value into the data (ChangeLog.2) rather than
12384         into the program (gitlog-to-emacslog).
12385         * build-aux/gitlog-to-emacslog (gen_origin): Calculate from
12386         the input file (e.g., ChangeLog.2) rather than by having a
12387         constant in the program.  Substitute it into the output.
12389 2015-06-07  Dmitry Gutov  <dgutov@yandex.ru>
12391         * lisp/help-fns.el (help-fns--signature): Quote any quotes in the
12392         function name (bug#20759).
12394 2015-06-07  Eli Zaretskii  <eliz@gnu.org>
12396         Adapt 'struct timespec' to next release of MinGW runtime
12397         * nt/inc/ms-w32.h (struct timespec): Don't declare if
12398         __struct_timespec_defined is defined.
12400 2015-06-06  Paul Eggert  <eggert@cs.ucla.edu>
12402         Merge from gnulib
12403         This incorporates:
12404         2015-06-06 acl-permissions: pacify -Wsuggest-attribute=const
12405         2015-06-05 stdio: Don't redefine gets when using C++
12406         2015-06-05 acl-permissions: port to AIX, C89 HP-UX
12407         2015-06-02 file-has-acl: fix build on Mac OS X 10
12408         2015-06-01 gnulib-tool: concatenate lib_SOURCES to a single line
12409         2015-06-01 pthread_sigmask: discount system version if a simple macro
12410         2015-05-31 readlinkat: avoid OS X 10.10 trailing slash bug
12411         * doc/misc/texinfo.tex, lib/acl-internal.h, lib/get-permissions.c:
12412         * lib/readlinkat.c, lib/set-permissions.c, lib/stdio.in.h:
12413         * m4/acl.m4, m4/pthread_sigmask.m4, m4/readlinkat.m4: Copy from gnulib.
12414         * lib/gnulib.mk: Regenerate.
12416 2015-06-06  Juri Linkov  <juri@linkov.net>
12418         * lisp/progmodes/grep.el (zrgrep): Let-bind grep-highlight-matches
12419         before calling grep-compute-defaults because now it affects the
12420         command lines computed in grep-compute-defaults.  (Bug#20728)
12422 2015-06-06  Glenn Morris  <rgm@gnu.org>
12424         Address some compilation warnings.
12425         * lisp/international/mule-cmds.el (w32-get-console-codepage)
12426         (w32-get-console-output-codepage):
12427         * lisp/progmodes/elisp-mode.el (xref-collect-references):
12428         * lisp/version.el (cairo-version-string): Declare.
12429         * lisp/erc/erc.el (erc-nickname-in-use): Fix typo.
12431 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
12433         Fix display when a font claims large values of ascent and descent
12434         This fixes bug#20628.
12435         * src/xdisp.c (get_phys_cursor_geometry): Correct the Y
12436         coordinate of a hollow cursor glyph when the original glyph's
12437         ascent is too small.
12438         (get_font_ascent_descent, normal_char_ascent_descent)
12439         (normal_char_height): New functions.
12440         (handle_single_display_spec, append_space_for_newline)
12441         (calc_pixel_width_or_height, produce_stretch_glyph)
12442         (calc_line_height_property): Use normal_char_ascent_descent and
12443         normal_char_height.
12444         (x_produce_glyphs): When font-global values of ascent and descent
12445         are too large, use per-character glyph metrics instead, if
12446         possible.  But don't allow the glyph row's ascent and descent
12447         values become smaller than the values from the metrics of the
12448         font's "normal" character.
12449         * src/xftfont.c (xftfont_draw):
12450         * src/w32font.c (w32font_draw): Correct the values of ascent and
12451         descent used to draw glyphless characters' hex code in a box.
12452         * src/xterm.c (x_draw_glyph_string_background):
12453         * src/xdisp.c (x_produce_glyphs):
12454         * src/w32term.c (x_draw_glyph_string_background):
12455         * src/nsterm.m (ns_maybe_dumpglyphs_background): Use FONT_TOO_HIGH
12456         to detect fonts whose global ascent and descent values are too
12457         large to be used in layout decision, and redraw the background
12458         when that happens.
12459         * src/dispextern.h (FONT_TOO_HIGH): New macro.
12460         (get_font_ascent_descent): Add prototype.
12461         * src/xterm.c (x_new_font):
12462         * src/w32term.c (x_new_font):
12463         * src/nsterm.m (x_new_font):
12464         * src/font.c (font_open_entity):
12465         * src/composite.c (composition_gstring_width):
12466         Use get_font_ascent_descent to obtain reasonable values for ascent
12467         and descent of a font.
12469 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
12471         Add assertion in adjust_point_for_property
12472         * src/keyboard.c (adjust_point_for_property): Add eassert for
12473         current buffer being shown in selected window.
12475 2015-06-06  Dmitry Gutov  <dgutov@yandex.ru>
12477         Replace uses of in-string-p; make it obsolete
12478         * lisp/thingatpt.el (in-string-p): Declare obsolete (bug#20732).
12479         (end-of-sexp, beginning-of-sexp): Use syntax-ppss instead.
12481 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
12483         Fix Dired display of an explicit list of files by ls-lisp.el
12484         * lisp/ls-lisp.el (ls-lisp-uid-d-fmt, ls-lisp-uid-s-fmt)
12485         (ls-lisp-gid-d-fmt, ls-lisp-gid-s-fmt): Make the initial values be
12486         correct for when displaying individual files separately, not as
12487         part of listing a directory, in which case these values are not
12488         recomputed by 'ls-lisp-insert-directory', but used verbatim.
12490         * lisp/dired.el (dired): Doc fix.  (Bug#20739)
12492 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
12494         Do not adjust point in a non-selected window
12495         * src/keyboard.c (command_loop_1): Do not adjust point when
12496         current buffer is not shown in selected window (Bug#20590).
12498         * etc/DEBUG: Mention 'maybe_call_debugger'
12500 2015-06-05  Nicolas Petton  <nicolas@petton.fr>
12502         Fix a unit test for map.el
12503         * test/automated/map-tests.el (test-map-let): Fix the test to work
12504         with the new syntax of `map-let'.
12506         * lisp/emacs-lisp/map.el (map-let): Better docstring.
12508         Better syntax for the map pcase pattern
12509         * lisp/emacs-lisp/map.el: Improves the map pcase pattern to take
12510         bindings of the form (KEY PAT) or SYMBOL.  KEY is not quoted.
12512         * lisp/emacs-lisp/map.el (map--dispatch): Better docstring.
12514         Fix a byte-compiler error in map-put and map-delete
12515         * lisp/emacs-lisp/map.el (map-put, map-delete): Ensure that `setq' is
12516         called with a symbol.
12518 2015-06-05  Glenn Morris  <rgm@gnu.org>
12520         * admin/gitmerge.el (gitmerge-commit-message):
12521         Revert to including "skipped" messages in ChangeLog once again.
12523 2015-06-05  Tassilo Horn  <tsdh@gnu.org>
12525         Use string> instead of equiv lambda with string<
12526         * lisp/help.el (view-emacs-news): Use string> instead of equivalent
12527         lambda with string<.
12529 2015-06-05  Glenn Morris  <rgm@gnu.org>
12531         * lisp/emacs-lisp/map.el (map--dispatch): Move before use.
12532         (map--delete-array): Fix typo.
12534         * test/automated/map-tests.el: Replace "assert" with "should".
12536         * lisp/Makefile.in (SUBDIRS): Rename from SUBDIRS_ABS.
12537         (SUBDIRS_REL): Derive from SUBDIRS.
12539         Tweak some build messages.
12540         * lisp/Makefile.in ($(lisp)/loaddefs.el):
12541         * lisp/cus-dep.el (custom-make-dependencies):
12542         * lisp/finder.el (finder-compile-keywords): Say what we are doing.
12543         * lisp/international/titdic-cnv.el (batch-titdic-convert):
12544         Don't say how to compile.
12546 2015-06-05  Paul Eggert  <eggert@cs.ucla.edu>
12548         Omit U+0332 COMBINING LOW LINE in previous change
12549         It turns out that it does not work on Ubuntu 15.04.
12551         Fix transliteration of Bahá'í months
12552         * lisp/calendar/cal-bahai.el (calendar-bahai-month-name-array):
12553         Improve quality of Latin transliteration of Bahá'í month names.
12555         Fix curved quotes in a few places
12556         * lisp/calc/calc-misc.el (calc-help): Fix quoting.
12557         The strings in question are not doc strings, so this partially
12558         undoes the recent change that assumed they were doc strings.
12559         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
12560         * lisp/info.el (Info-finder-find-node):
12561         Use curved quotes.
12562         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
12563         Also allow curved quotes in doc strings.
12565 2015-06-04  Glenn Morris  <rgm@gnu.org>
12567         * lisp/Makefile.in (AM_V_at): Add missing definition.
12569         * lisp/Makefile.in: Quieten output a bit.
12570         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el):
12571         Don't echo directories, since the commands we invoke print them.
12573         * lisp/Makefile.in: Replace shell fragments in variables with $(shell).
12574         (SUBDIRS_REL, SUBDIRS_ABS, SUBDIRS_ALMOST, SUBDIRS_FINDER)
12575         (SUBDIRS_SUBDIRS): New variables.
12576         (setwins, setwins_almost, setwins_finder, setwins_for_subdirs):
12577         Remove.
12578         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el, $(lisp)/loaddefs.el)
12579         (update-subdirs, compile-main, compile-clean):
12580         Replace "setwins" usage with new "SUBDIRS" variables.
12582         * lisp/vc/compare-w.el (compare-windows-get-window-function):
12583         Fix :version tag.
12585 2015-06-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12587         * src/ftfont.c (ftfont_open2): Round divisions by upEM.
12589         Undo removal of x_clear_area call on expose for GTK3 or cairo
12590         * src/xterm.c (handle_one_xevent) [HAVE_GTK3 || USE_CAIRO]:
12591         Clear exposed area.  (Bug#20677)
12593 2015-06-04  Glenn Morris  <rgm@gnu.org>
12595         * doc/lispref/hash.texi (Creating Hash): Remove obsolete makehash.
12597         * lisp/Makefile.in (check-defun-dups): Also skip ldefs-boot.
12599         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
12600         Rename from quail-lao-update-translation, since lao.el defines that.
12602 2015-06-04  Dmitry Gutov  <dgutov@yandex.ru>
12604         Handle new-style advice in find-funct
12605         * lisp/emacs-lisp/find-func.el (find-function-advised-original):
12606         Handle new-style advice.  Return the symbol's function definition.
12607         (Bug#20718)
12608         (find-function-library): Update accordingly.
12610 2015-06-04  Nicolas Petton  <nicolas@petton.fr>
12612         Merge branch 'map'
12614         * lisp/emacs-lisp/map.el: Better docstring for the map pcase macro.
12616         Add new function string-greaterp
12617         * lisp/subr.el (string-greaterp): New function.  Also aliased to
12618         `string>'.
12619         * test/automated/subr-tests.el (string-comparison-test): Add unit
12620         tests for `string>'and `string<'.
12621         * src/fns.c (string-lessp): Better docstring.
12623 2015-06-04  Eli Zaretskii  <eliz@gnu.org>
12625         Fix timezone-related functions on MS-Windows
12626         * src/editfns.c (set_time_zone_rule) [WINDOWSNT]: Always call
12627         'xputenv', even if no reallocation of tzvalbuf was necessary.
12628         This fixes a bug in timezone-related functions on MS-Windows.
12629         Reported by Fabrice Popineau <fabrice.popineau@gmail.com>.
12631 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
12633         Don't pass raw directory name to 'error'
12634         * lisp/files.el (basic-save-buffer-2): Avoid format error if
12635         a directory name contains a string like "%s".
12637 2015-06-03  Dmitry Gutov  <dgutov@yandex.ru>
12639         Override 'grep --color=always'
12640         * lisp/progmodes/xref.el (xref-collect-matches):
12641         Override --color=always in grep-find-template.
12643 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
12645         Fix error introduced recently in file-notify-tests.el
12646         * test/automated/file-notify-tests.el
12647         (file-notify--test-remote-enabled): Do not use `file-notify--test-desc'.
12648         (file-notify--deftest-remote): Revert previous patch, not
12649         necessary anymore.
12651 2015-06-03  Wolfgang Jenkner  <wjenkner@inode.at>
12653         * src/indent.c (Fvertical_motion): Amend motion by 0 lines.
12654         Starting from a display string after a newline, point went to the
12655         previous line.  Also, fix an inadvertent use of a buffer position
12656         with FETCH_BYTE.  (Bug#20701)
12658 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
12660         Instrument file-notify-test.el in order to catch hydra error
12661         * test/automated/file-notify-tests.el (file-notify--deftest-remote):
12662         Wrap body by `ignore-case', in order to trap non-local errors.
12664 2015-06-03  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12666         Undo previous changes in non-toolkit scroll bar drawing
12667         * src/xterm.c (x_scroll_bar_set_handle, x_scroll_bar_expose)
12668         [!USE_TOOLKIT_SCROLL_BARS]: Draw into scroll bar window.  (Bug#20668)
12670 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
12672         * .gitignore: Also ignore doc/*/*/*.html and .ps.
12674         Support quotes 'like this' in info files
12675         This is possible when 'makeinfo --disable-encoding' is used
12676         in Texinfo 5.
12677         * lisp/calc/calc-help.el (calc-describe-thing):
12678         * lisp/gnus/gnus-art.el (gnus-button-alist):
12679         * lisp/info.el (Info-find-index-name):
12680         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
12681         Also support quotes 'like this'.
12682         * lisp/calc/calc-help.el (calc-describe-thing): Simplify.
12683         * lisp/finder.el (finder-font-lock-keywords): Remove var that
12684         hasn't been used in years, instead of bothering to fix its quoting.
12686 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
12688         * .gitignore: Remove !test/etags/html-src/*.html.
12689         It's no longer needed, since *.html was removed.  Sort.
12691 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
12693         Restore <D> instead of '.' in grep-find-template
12694         * lisp/cedet/semantic/symref/grep.el
12695         (semantic-symref-grep-use-template): Update a comment.
12696         * lisp/progmodes/grep.el (grep-compute-defaults): Restore <D>
12697         instead of '.' in grep-find-template (bug#20719).
12698         (rgrep): Pass nil as the directory to rgrep-default-command.
12699         * lisp/progmodes/grep.el (grep-expand-keywords): Use '.' as the
12700         default value for DIR.
12701         * lisp/progmodes/xref.el (xref-collect-matches): Drop the
12702         workaround.
12704 2015-06-02  Glenn Morris  <rgm@gnu.org>
12706         * configure.ac (emacs_config_features): Add X toolkit and scroll-bars.
12708         * configure.ac (emacs_config_features): Add Cairo.
12710         * configure.ac [HAVE_GTK3]: Remove USE_CAIRO that gets reset later.
12712 2015-06-02  Michael Albinus  <michael.albinus@gmx.de>
12714         Ensure that autorevert works for remote files in file-notify-tests.el
12715         * test/automated/file-notify-tests.el (file-notify--test-desc):
12716         New defvar.
12717         (file-notify--test-remote-enabled)
12718         (file-notify-test00-availability, file-notify-test01-add-watch)
12719         (file-notify-test02-events): Use it.
12720         (file-notify--test-event-test): Check proper descriptor.
12721         (file-notify-test03-autorevert): Ensure that
12722         `visited-file-modtime' has changed.  (Bug#20392)
12724 2015-06-02  Nicolas Petton  <nicolas@petton.fr>
12726         Add a pcase pattern for maps and `map-let' based on it
12727         * lisp/emacs-lisp/map.el (map-let): New macro.
12728         (map--make-pcase-bindings, map--make-pcase-patterns): New functions.
12729         * test/automated/map-tests.el: New test for `map-let'.
12731 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
12733         Reuse rgrep mechanics in xref-find-regexp
12734         * lisp/progmodes/grep.el (rgrep-default-command):
12735         Extract from `rgrep'.
12736         * lisp/progmodes/xref.el (xref-collect-references): Split from
12737         `xref-collect-matches'.  Only handle the case of symbol search.
12738         (xref-collect-matches): Instead of Semantic Symref, use
12739         `rgrep-default-command', to take advantage of its directory and
12740         file ignore settings.
12741         (xref--collect-match): Remove the last argument, leaving the
12742         regexp construction up to the caller.
12743         * lisp/progmodes/elisp-mode.el (elisp--xref-find-matches):
12744         Change to take the xref-collect- function to use as an argument.
12745         (elisp-xref-find): Update accordingly.
12746         * lisp/progmodes/etags.el (etags--xref-find-matches)
12747         (etags-xref-find): Same.
12749         Move xref-elisp-location to elisp-mode.el
12750         * lisp/progmodes/xref.el (xref-elisp-location)
12751         (xref-make-elisp-location, xref-location-marker): Remove here.
12752         (xref--xref): Don't limit the type of the location slot.
12753         * lisp/progmodes/elisp-mode.el (xref-elisp-location):
12754         Define as a cl-struct here.
12755         (xref-location-marker): Move here.
12757 2015-06-02  Eli Zaretskii  <eliz@gnu.org>
12759         Minor tweaks for .gitignore
12760         * .gitignore: Don't ignore versioned *.html and *.ps files.
12761         Don't ignore admin/notes/tags that might be ignored as TAGS
12762         on case-insensitive filesystems.  (Bug#20710)
12764 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
12766         Generate curved quotes in ert doc
12767         * lisp/emacs-lisp/ert.el (ert--print-test-for-ewoc)
12768         (ert-results-mode-menu)
12769         (ert-results-pop-to-backtrace-for-test-at-point)
12770         (ert-results-pop-to-messages-for-test-at-point)
12771         (ert-results-pop-to-should-forms-for-test-at-point)
12772         (ert-describe-test):
12773         Quote ‘like this’, not `like this', when generating doc strings
12774         and the like.
12775         * test/automated/ert-x-tests.el (ert-test-describe-test):
12776         Allow quoting ‘like this’.
12778 2015-06-02  Nicolas Richard  <youngfrog@members.fsf.org>
12780         Add test for previous commit
12781         * test/automated/replace-tests.el: New file.
12782         (query-replace--split-string-tests): Add test for previous commit.
12784         Avoid confusion in query-replace history when replacing NUL chars
12785         * lisp/replace.el (query-replace--split-string): New function.
12786         (query-replace-read-from): Rely on the 'separator' property
12787         instead of searching for the NUL character (Bug#20690).
12789 2015-06-02  Glenn Morris  <rgm@gnu.org>
12791         Merge from origin/emacs-24
12792         8b5f2f4 * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
12794         * admin/gitmerge.el (gitmerge-commit-message):
12795         Exclude "skipped" messages from ChangeLog.
12797 2015-06-01  Michael Albinus  <michael.albinus@gmx.de>
12799         Sync with Tramp repository
12800         * lisp/net/tramp.el (tramp-message): Dump connection buffer error
12801         messages.
12802         (tramp-handle-make-auto-save-file-name): When calling
12803         `make-auto-save-file-name' internally, make sure it uses Unix-like
12804         behavior, not Windows-like behavior.
12805         * lisp/net/tramp-sh.el (tramp-set-file-uid-gid): Add a timeout for
12806         the local case, because "chown" might fail on w32.
12807         * lisp/net/trampver.el (tramp-repository-get-version): Don't run
12808         for XEmacs.
12810 2015-06-01  Eli Zaretskii  <eliz@gnu.org>
12812         MS-Windows followup for batch stdout/stderr output changes
12813         * lisp/international/mule-cmds.el (set-locale-environment):
12814         In batch mode, use console codepages for keyboard and terminal
12815         encoding.  (Bug#20545)
12817         Update .gitattributes for DOS EOL files
12818         * .gitattributes: Use "whitespace=cr-at-eol" for files with DOS
12819         CRLF end-of-line format.
12821         NS equivalents of xterm.c and w32term.c changes
12822         * src/nsterm.m (ns_maybe_dumpglyphs_background): Force redraw of
12823         glyph string background also when the font in use claims
12824         preposterously large global height value.  Helps to remove
12825         artifacts left from previous displays when glyphless characters
12826         are displayed as hex code in a box.
12827         (x_new_font): Call get_font_ascent_descent to obtain a reasonable
12828         value for FRAME_LINE_HEIGHT, even when a font claims very large
12829         value for its height.
12831 2015-06-01  Paul Eggert  <eggert@cs.ucla.edu>
12833         Avoid grave accent quoting in stderr diagnostics
12834         A few Emacs diagnostics go directly to stderr, and so can't easily
12835         contain curved quotes (as non-UTF-8 locales might mishandle them).
12836         Instead of bothering to add support for this rarity, reword the
12837         diagnostics so that they don't use grave accent to quote.
12838         * src/alloc.c (mark_memory): Fix comment.
12839         * src/buffer.c (init_buffer):
12840         * src/dispnew.c (init_display):
12841         * src/emacs.c (main, sort_args):
12842         * src/lread.c (dir_warning):
12843         * src/term.c (init_tty):
12844         * src/unexmacosx.c (unexec):
12845         * src/xfns.c (select_visual):
12846         * src/xterm.c (cvt_string_to_pixel, x_io_error_quitter):
12847         Reword stderr diagnostics to avoid quoting `like this'.
12848         * src/unexmacosx.c: Include errno.h.
12849         * src/xfns.c (select_visual): Encode value for locale.
12851 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
12853         Treat batch stdout/stderr like standard display
12854         Calls like (print FOO) could generate improperly encoded or
12855         hard-to-read output if FOO contains characters outside the system
12856         locale.  Fix this by treating batch stdout and stderr like
12857         interactive standard display, when it comes to transliterating and
12858         encoding characters (Bug#20545).
12859         * doc/emacs/mule.texi (Communication Coding):
12860         * doc/lispref/display.texi (Active Display Table):
12861         * doc/lispref/nonascii.texi (Locales):
12862         * etc/NEWS:
12863         * src/coding.c (syms_of_coding):
12864         * src/dispnew.c (syms_of_display):
12865         Document this.
12866         * src/print.c: Include disptab.h.
12867         (printchar_to_stream): New function, with much of the guts of the
12868         old Fexternal_debugging_output, except this one also uses the
12869         standard display table.
12870         (printchar, strout, Fexternal_debugging_output): Use it.
12872 2015-05-31  Glenn Morris  <rgm@gnu.org>
12874         * src/emacs.c (syms_of_emacs) <system-configuration-features>: Doc fix.
12876 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
12878         Remove DEFSYMs that aren't used at the C level.  Also:
12879         * src/decompress.c (Qzlib_dll):
12880         * src/font.c (Qunicode_sip):
12881         * src/frame.c (Qtip_frame):
12882         * src/ftfont.c (Qserif):
12883         * src/gnutls.c (Qgnutls_dll):
12884         * src/xml.c (Qlibxml2_dll):
12885         Move from here ...
12886         * src/w32fns.c (syms_of_w32fns): ... to here,
12887         as these are used only on MS-Windows.
12889 2015-05-31  Michael Albinus  <michael.albinus@gmx.de>
12891         Use another default value for tramp-histfile-override
12892         * lisp/net/tramp-sh.el (tramp-histfile-override):
12893         Use ".tramp_history" as default.
12894         Fixes bug#20446
12896 2015-05-29  Nicolas Petton  <nicolas@petton.fr>
12898         * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
12900 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
12902         * etc/NEWS: Add an entry about map.el.
12904         Improve the docstring of functions in map.el
12905         Since a map is not a data structure but a concept, adding information
12906         about the possible types of maps can be useful information.
12907         * lisp/emacs-lisp/map.el: Add documentation about the type of MAP to
12908         each public function.
12910 2015-04-29  Nicolas Petton  <nicolas@petton.fr>
12912         * lisp/emacs-lisp/map.el (map-empty-p): Faster implementation using
12913         specific tests depending on the type of the map.
12915         * lisp/emacs-lisp/map.el: Better docstrings.
12917 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
12919         * lisp/emacs-lisp/map.el (map-pairs): Dump redundant lambda.
12921 2015-04-25  Nicolas Petton  <nicolas@petton.fr>
12923         * lisp/emacs-lisp/map.el (map--elt-list): Better docstring.
12925         * lisp/emacs-lisp/map.el (map--elt-list): Minor refactoring.
12927         Fix a false negative in `map-elt' with alists and values being nil
12928         * lisp/emacs-lisp/map.el (map-elt): If map is an alist and key is
12929         found but its associated value is nil, do not return the default
12930         value.
12931         * test/automated/map-tests.el: Add a regression test.
12933 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
12935         * lisp/emacs-lisp/map.el (map--dispatch): Improve the docstring.
12937         Do not signal an error when trying to delete a key from an array
12938         * lisp/emacs-lisp/map.el (map-delete): When map is an array, check if
12939         the key is present to avoid signaling an error.
12940         * test/automated/map-tests.el: Add a test for deleting non-existing
12941         keys from maps.
12943         * lisp/emacs-lisp/map.el: Better docstring.
12945         Minor improvement in map-elt
12946         * lisp/emacs-lisp/map.el (map-elt): Do not use `ignore-errors' when
12947         doing a lookup in arrays, but check the boundaries of the array
12948         instead.
12949         * test/automated/map-tests.el: Adds a test for `map-elt' with arrays
12950         and a negative integer as key.
12952 2015-04-21  Nicolas Petton  <nicolas@petton.fr>
12954         * test/automated/map-tests.el: Refactoring of test methods.
12956         * test/automated/map-tests.el: Renamed from map-test.el.
12958 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
12960         * lisp/emacs-lisp/map.el (map-into): Better error message.
12962         * lisp/emacs-lisp/map.el: Remove byte-compilation warnings.
12964         Throw an error when converting a map into an unknown map type
12965         * lisp/emacs-lisp/map.el (map-into): Throw an error if type is
12966         not valid.
12967         * test/automated/map-test.el: Add a regression test.
12969         New library map.el similar to seq.el but for mapping data structures.
12970         * test/automated/map-test.el: New file.
12971         * lisp/emacs-lisp/map.el: New file.
12973 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
12975         * lisp/progmodes/etags.el (tag-implicit-name-match-p): Make sure
12976         there's no explicit tag name (bug#20629).
12978 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
12980         Remove format2
12981         * src/editfns.c, src/lisp.h (format2): Remove.
12982         It is more trouble than it's worth, now that we have CALLN.
12983         This is just a minor refactoring.
12984         * src/buffer.c (Fkill_buffer):
12985         * src/dbusbind.c (XD_OBJECT_TO_STRING):
12986         * src/fileio.c (barf_or_query_if_file_exists):
12987         Adjust to format2 going away.
12989         Don't misencode C-generated messages
12990         Also, be more consistent about calls to 'Fmessage' vs 'message'.
12991         * src/alloc.c (Fgc_status):
12992         Prefer AUTO_STRING to build_string for Fmessage call.
12993         * src/data.c (Fmake_variable_buffer_local)
12994         (Fmake_local_variable, Fmake_variable_frame_local):
12995         * src/doc.c (store_function_docstring):
12996         Use Fmessage, not message, since the argument can contain
12997         non-ASCII characters, and this can cause the resulting message
12998         to be incorrectly encoded for the current environment.
12999         * src/fns.c (maybe_resize_hash_table):
13000         * src/xselect.c (x_clipboard_manager_save_all):
13001         Use message, not Fmessage, since Fmessage's power isn't needed here.
13002         * src/process.c (Fmake_network_process): Reword message to avoid %s.
13003         * src/xdisp.c (vmessage): Document restrictions on message contents.
13004         (message_nolog) [false]: Remove unused code.
13006         Use \r rather than ^M in string literals
13007         This is less likely to cause problems on platforms that
13008         use CRLF (or CR!) termination for lines.
13010         Update .gitattributes to match current sources
13011         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00879.html
13012         * .gitattributes: Accommodate tests that insist on DOS format.
13013         Remove test/automated/data/decompress/foo-gzipped.
13014         Add etc/e/eterm-color.
13016 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
13018         * doc/emacs/mule.texi (Modifying Fontsets):
13019         Document face-ignored-fonts.  (Bug#20628)
13021         Add etags test for the new -Q option
13022         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
13023         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
13024         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
13025         test-case changes below.
13026         * test/etags/ETAGS.good_6: New file.
13027         * test/etags/cp-src/x.cc: New file.
13028         * test/etags/Makefile (CPSRC): Add x.cc.
13029         (check): Add one more test, for -Q.
13031 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
13033         Use list for the tags completion table, not obarray
13034         * lisp/progmodes/etags.el (etags-tags-completion-table): Return a
13035         list instead of an obarray
13036         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00876.html).
13037         (tags-completion-table): Combine those lists.
13038         (tags-completion-table): Update the docstring.
13040 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
13042         Restore EOL format testing in etags
13043         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
13044         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
13045         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
13046         test-case changes below.
13047         * test/etags/html-src/algrthms.html: Convert back to DOS EOL format.
13048         * test/etags/cp-src/c.C (B): Add back stray CR character.
13049         * test/etags/c-src/dostorture.c: Add back.
13050         * test/etags/Makefile (CSRC): Add back c-src/dostorture.c.
13052 2015-05-30  Vitaly Takmazov  <vitalyster@gmail.com>  (tiny change)
13054         Declare Emacs on MS-Windows to be DPI-aware
13055         * nt/emacs-x86.manifest (asmv3:windowsSettings): Add dpiAware.
13056         * nt/emacs-x64.manifest (asmv3:windowsSettings): Add dpiAware.
13057         This avoids Windows entering compatibility mode for Emacs,
13058         which causes fonts to look less nice.
13060 2015-05-30  Michael Albinus  <michael.albinus@gmx.de>
13062         Improve Tramp traces
13063         * lisp/net/trampver.el (tramp-repository-get-version): New defun.
13064         * lisp/net/tramp.el (tramp-debug-message): Use it.
13066 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
13068         backup-buffer minor reworking of internals
13069         * lisp/files.el (backup-buffer): Rework to avoid a couple of
13070         unused locals inadvertently introduced in the previous change.
13072         backup-buffer now reports .emacs.d/%backup% ills
13073         * lisp/files.el (backup-buffer): If the write to .emacs.d/%backup%
13074         fails due to disk space exhaustion or whatever, do not pretend
13075         that it succeeded.  More generally, do a better job of checking
13076         for I/O failures, and limit the scope of the condition-case to
13077         just the operations where file errors should be caught and ignored
13078         (Bug#20595).  Also, don't bother trying to delete later backups if
13079         an earlier deletion fails, as this is a sign of trouble and it's
13080         better to stop when there's trouble.
13082         copy-file now truncates output after writing
13083         * src/fileio.c (Fcopy_file): Truncate output after writing rather
13084         than before.  This is more likely to work than truncation before
13085         writing, if the file system is out of space or the user is over
13086         disk quota (Bug#20595).  Also, check for read errors.
13088 2015-05-29  Artur Malabarba  <bruce.connor.am@gmail.com>
13090         * lisp/emacs-lisp/package.el (package-load-all-descriptors):
13091         Don't load descriptors from directories above the package directories.
13093 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
13095         Merge from gnulib
13096         This incorporates the following (Bug#20681):
13097         2015-05-29 acl-permissions: Fix build on Mac OS X and older AIX
13098         2015-05-29 acl-permissions: Fix build on Solaris and Cygwin
13099         * lib/set-permissions.c: Copy from gnulib.
13101 2015-05-29  Michael Albinus  <michael.albinus@gmx.de>
13103         Improve Tramp traces
13104         * lisp/net/tramp.el (tramp-call-process-region): New defun.
13105         * lisp/net/tramp-sh.el (tramp-get-inline-coding): Use it.
13107 2015-05-29  Glenn Morris  <rgm@gnu.org>
13109         * test/automated/vc-tests.el: Try enabling tests on hydra.nixos.org.
13111 2015-05-29  Wolfgang Jenkner  <wjenkner@inode.at>
13113         * src/xfns.c (x_set_menu_bar_lines): Fix calls to x_clear_area.
13114         The signature was changed in the cairo branch, merged on 2015-05-23.
13115         This oversight broke compiling only the non-toolkit X version.
13117 2015-05-29  Samer Masterson  <samer@samertm.com>
13119         * doc/lispref/os.texi: Update initial-buffer-choice docs.
13121 2015-05-29  Glenn Morris  <rgm@gnu.org>
13123         * test/automated/vc-tests.el (vc-test-rcs04-checkout-model):
13124         Mark as an expected failure.
13126 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
13128         Change package test to look for curved quotes
13129         * test/automated/package-test.el (package-test-describe-package)
13130         (package-test-signed): Search for curved single quotes as well as
13131         for grave accent and apostrophe.
13133 2015-05-28  Katsumi Yamaoka  <yamaoka@jpl.org>
13135         * lisp/gnus/gnus-art.el (gnus-button-alist): Re-revert last change.
13136         cf. <http://news.gmane.org/group/gmane.emacs.devel/thread=186896>
13138 2015-05-28  Samer Masterson  <samer@samertm.com>
13140         Show files when `initial-buffer-choice' is non-nil
13141         * lisp/startup.el (command-line-1): When Emacs is given a file as an
13142         argument and `initial-buffer-choice' is non-nil, display both the file
13143         and `initial-buffer-choice'.  For more than one file, show
13144         `initial-buffer-choice' and *Buffer List*.  Refactor display-changing
13145         commands out of the command line arg parser.
13146         (initial-buffer-choice): Clarify docstring.
13148 2015-05-28  Eli Zaretskii  <eliz@gnu.org>
13150         Fix last commit
13151         * nt/gnulib.mk (libgnu_a_SOURCES): Add get-permissions.c back.
13152         (gnulib module qcopy-acl): Add back, as it is harmless.  This
13153         minimizes differences wrt lib/gnulib.mk.
13155         Fix the MS-Windows build as followup to gnulib update
13156         * nt/gnulib.mk (libgnu_a_SOURCES): Remove get-permissions.c and
13157         set-permissions.c, as they don't compile on MinGW.
13158         (gnulib module qcopy-acl): Remove, as it needs set-permissions.c.
13160 2015-05-28  Paul Eggert  <eggert@cs.ucla.edu>
13162         Revert my change to gnus-art.el
13163         * lisp/gnus/gnus-art.el (gnus-button-alist): Revert last change.
13164         It wasn't that important, and it caused a Gnus build to fail.  See:
13165         http://www.randomsample.de:4456/builders/emacs-devel/builds/734
13167         New minor mode Electric Quote
13168         This lets you easily insert quotes ‘like this’ by typing
13169         quotes `like this', and similarly you can easily insert
13170         quotes “like this” by typing quotes ``like this'' (Bug#20545).
13171         * doc/emacs/basic.texi (Inserting Text):
13172         * doc/emacs/modes.texi (Minor Modes):
13173         * etc/NEWS: Document it.
13174         * doc/emacs/text.texi (Quotation Marks): New section.
13175         * lisp/electric.el (electric-quote-comment)
13176         (electric-quote-string, electric-quote-paragraph):
13177         New custom vars.
13178         (electric--insertable-p)
13179         (electric-quote-post-self-insert-function): New functions.
13180         (electric-quote-mode, electric-quote-local-mode): New minor modes.
13181         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
13182         Add curved single quotes to electric-pair-text-pairs.
13183         Set electric-quote-string in this buffer.
13185         A few more doc string fixes (Bug#20385)
13187         Accept curved quotes in doc strings
13188         * lisp/info-look.el (info-lookup-guess-custom-symbol):
13189         (info-lookup-alist): Treat ‘’ like `' when parsing help buffers etc.
13191         Generate curved quotes in pseudo-info nodes
13192         * lisp/info.el (Info-virtual-index-find-node)
13193         (Info-virtual-index, Info-apropos-find-node, info-apropos):
13194         Quote ‘like this’, not `like this', when generating pseudo-info nodes.
13196         Fix minor quoting problems in doc strings
13197         Most of these fixes involve escaping grave accents that are
13198         actually intended to be grave accents, not left quotes.
13199         (Bug#20385)
13201         Support curved quotes in doc strings
13202         Emacs's traditional doc string style has been to quote symbols
13203         `like this'.  This worked well on now-obsolete terminals where
13204         ` and ' were symmetric quotes, but nowadays curved quotes
13205         ‘like this’ look better.  Support quoting the new way too.
13206         (Bug#20385)
13207         * doc/lispref/tips.texi (Documentation Tips): Symbols can be quoted
13208         ‘like-this’ as well as `like-this'.
13209         * etc/NEWS: Mention this.
13210         * lisp/cedet/mode-local.el (overload-docstring-extension)
13211         (mode-local-print-binding, mode-local-describe-bindings-2):
13212         * lisp/cus-theme.el (describe-theme-1):
13213         * lisp/descr-text.el (describe-text-properties-1, describe-char):
13214         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
13215         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
13216         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
13217         (eieio-help-constructor):
13218         * lisp/emacs-lisp/package.el (describe-package-1):
13219         * lisp/faces.el (describe-face):
13220         * lisp/help-fns.el (help-fns--key-bindings)
13221         (help-fns--compiler-macro, help-fns--parent-mode, help-fns--obsolete):
13222         (help-fns--interactive-only, describe-function-1):
13223         (describe-variable):
13224         * lisp/help.el (describe-mode):
13225         * lisp/international/mule-cmds.el (describe-input-method)
13226         (describe-language-environment):
13227         * lisp/international/mule-diag.el (describe-character-set)
13228         (print-coding-system-briefly, list-input-methods)
13229         (list-input-methods-1):
13230         Insert curved quotes rather than grave accent and apostrophe.
13231         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
13232         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
13233         (checkdoc-proper-noun-region-engine):
13234         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2)
13235         (lisp-cl-font-lock-keywords-2):
13236         * lisp/finder.el (finder-font-lock-keywords):
13237         * lisp/gnus/gnus-art.el (gnus-button-alist):
13238         * lisp/help-fns.el (help-do-arg-highlight)
13239         (describe-function-1, describe-variable):
13240         * lisp/help-mode.el (help-xref-symbol-regexp)
13241         (help-xref-info-regexp, help-xref-url-regexp):
13242         * lisp/help.el (describe-mode):
13243         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
13244         * lisp/wid-edit.el (widget-documentation-link-regexp):
13245         Parse symbols quoted ‘like-this’ as well as `like-this'.
13246         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
13247         Add "‘" and "’" to electric-pair-text-pairs.
13248         (elisp--form-quoted-p): Also allow "‘" as a quoting char.
13249         (elisp-completion-at-point, elisp--preceding-sexp):
13250         Also treat "‘" and "’" as quoting chars.
13252         substitute-command-keys now curves quotes
13253         So, for example, it turns "`abc'" into "‘abc’" (Bug#20385).
13254         * doc/lispref/help.texi (Keys in Documentation):
13255         * etc/NEWS: Document this.
13256         * src/doc.c (Fsubstitute_command_keys): Implement it.
13258 2015-05-28  Glenn Morris  <rgm@gnu.org>
13260         * lisp/mail/rmailsum.el (rmail-summary-by-recipients)
13261         (rmail-summary-by-topic, rmail-summary-by-senders):
13262         No longer strip leading/trailing whitespace.
13264         * lisp/progmodes/f90.el (f90-type-def-re): Add "type, extends".
13265         (f90-no-block-limit): Add "enum".  (Bug#20680)
13266         * test/automated/f90.el (f90-test-bug20680, f90-test-bug20680b):
13267         New tests.
13269 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
13271         * lisp/isearch.el (isearch--current-buffer): Give a default value.
13272         Un-revert changes mistakenly dropped by f9fabb2b.
13274 2015-05-27  Paul Eggert  <eggert@cs.ucla.edu>
13276         Merge from gnulib
13277         This incorporates:
13278         2015-05-27 qacl: Reimplement qset_acl and qcopy_acl (Bug#20666)
13279         2015-05-27 file-has-acl: Split feature tests again (Bug#20667)
13280         2015-05-27 string: fix build failure on BSD/OSX with FORTIFY_SOURCE
13281         2015-05-26 stdio: limit __gnu_printf__ witness to gcc 4.4+
13282         2015-05-26 inttypes: force correct mingw PRIdMAX even without <stdio.h>
13283         2015-05-26 stdio: fix probe on mingw under gcc 5.1
13284         * admin/merge-gnulib (GNULIB_MODULES):
13285         Replace qacl with qcopy-acl, since we don't need the rest of qacl.
13286         * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
13287         * lib/inttypes.in.h, lib/qcopy-acl.c, lib/qset-acl.c:
13288         * lib/string.in.h, m4/acl.m4, m4/stdio_h.m4:
13289         Get latest versions from gnulib.
13290         * lib/get-permissions.c, lib/set-permissions.c: New files.
13291         * lib/gnulib.mk, m4/gnulib-comp.m4:
13292         Regenerate.
13293         * nt/gnulib.mk: Merge lib/gnulib.mk changes by hand.
13295 2015-05-27  Dmitry Gutov  <dgutov@yandex.ru>
13297         * lisp/vc/vc-dispatcher.el (vc-setup-buffer): Delete the old
13298         process here.
13299         (vc-do-command): Rather than here (bug#20608).
13301 2015-05-27  Ivan Shmakov  <ivan@siamics.net>
13303         Avoid gratuitous delete-dups in face-at-point
13304         * lisp/faces.el (face-at-point): Do not compute the properly
13305         ordered, duplicate-free list if only a single value is
13306         requested anyway.  (Bug#20519)
13308         Show the exact C-x 8 RET invocation in describe-char
13309         * lisp/descr-text.el (describe-char): Show the exact C-x 8 RET
13310         invocation instead of a template.  (Bug#20522)
13312 2015-05-27  Artur Malabarba  <bruce.connor.am@gmail.com>
13314         * lisp/emacs-lisp/package.el: Don't erase tags on refresh.
13315         (package-menu--post-refresh): Call `tabulated-list-print' with the
13316         UPDATE argument.  This only affects the refresh action, the revert
13317         action still erases tags.
13318         (package-menu-get-status): Change `assq' to `assoc'.
13319         (package-menu--mark-upgrades-1): New function.
13320         (package-menu--mark-upgrades-pending): New variable.
13321         (package-menu-mark-upgrades): Use them to delay marking until
13322         after refresh is done.
13323         (package-menu--post-refresh): Call mark-upgrades-1 if
13324         mark-upgrades-pending is non-nil.
13326 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
13328         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
13329         Fix typo in "Improve tramp-handle-make-auto-save-file-name"
13330         (commit 3953c4be2816537be95520605d45b866dc731f4b).
13332 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
13334         * lisp/isearch.el (isearch--current-buffer): New var.
13335         (isearch-update): Set cursor-sensor-inhibit here.
13336         (isearch-done): Unset cursor-sensor-inhibit in the right buffer
13337         (bug#20532).
13339         Change inhibit-point-motion-hooks to t
13340         * src/textprop.c (syms_of_textprop): Default Vinhibit_point_motion_hooks
13341         to t and document it as obsolete.
13343 2015-05-27  Eli Zaretskii  <eliz@gnu.org>
13345         Support ZIP files that use Zip64 extensions
13346         * lisp/arc-mode.el (archive-zip-summarize): Handle the new ZIP
13347         format of central directory offsets used by Zip64 extensions.
13348         (Bug#20665)
13350 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
13352         New test tramp-test30-make-auto-save-file-name
13353         * test/automated/tramp-tests.el
13354         (tramp-test30-make-auto-save-file-name): New test.
13355         (tramp-test31-special-characters)
13356         (tramp-test31-special-characters-with-stat)
13357         (tramp-test31-special-characters-with-perl)
13358         (tramp-test31-special-characters-with-ls, tramp-test32-utf8)
13359         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
13360         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
13361         (tramp-test34-recursive-load, tramp-test35-unload): Rename.
13363         Improve tramp-handle-make-auto-save-file-name
13364         * lisp/net/tramp.el (tramp-auto-save-directory): Add :tags.
13365         (tramp-handle-make-auto-save-file-name): Let native
13366         `make-auto-save-file-name' use `auto-save-file-name-transforms',
13367         if `tramp-auto-save-directory' is not set.
13369 2015-05-27  Glenn Morris  <rgm@gnu.org>
13371         No longer set dired-directory in eshell.  (Bug#16477)
13372         * lisp/eshell/esh-mode.el (eshell-mode):
13373         * lisp/eshell/em-dirs.el (eshell/cd): No longer set dired-directory.
13375         * lisp/mail/sendmail.el (mail-position-on-field): Doc fix.
13377         Make c-submit-bug-report file reports at debbugs.gnu.org.  (Bug#15784)
13378         * lisp/progmodes/cc-mode.el (c-mode-help-address):
13379         Change to submit@debbugs.
13380         (c-mode-bug-package): New constant.
13381         (mail-position-on-field): Declare.
13382         (c-submit-bug-report): Insert X-Debbugs-Package header.
13383         * doc/misc/cc-mode.texi (Mailing Lists and Bug Reports):
13384         Mention debbugs.gnu.org.
13386 2015-05-26  Glenn Morris  <rgm@gnu.org>
13388         * lisp/mail/rmailsum.el: Commas no longer separate regexps.  (Bug#19026)
13389         (rmail-summary-by-recipients, rmail-summary-by-topic)
13390         (rmail-summary-by-senders): No longer use mail-comma-list-regexp.
13391         * doc/emacs/rmail.texi (Rmail Make Summary): Update for this change.
13393 2015-05-26  Paul Eggert  <eggert@cs.ucla.edu>
13395         Handle curved quotes in info files
13396         * lisp/calc/calc-help.el (calc-describe-thing):
13397         * lisp/info.el (Info-find-index-name)
13398         (Info-try-follow-nearest-node, Info-fontify-node):
13399         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
13400         In info files, process quotes ‘like this’ the same way we process
13401         quotes `like this'.  This catches a few places we missed earlier.
13403 2015-05-26  Dmitry Gutov  <dgutov@yandex.ru>
13405         xref-prompt-for-identifier: Use a list value
13406         * lisp/progmodes/xref.el (xref-prompt-for-identifier): Allow list
13407         value, to be interpreted as a list of commands.
13408         (xref--prompt-p): New function.
13409         (xref--read-identifier): Use it.
13411 2015-05-26  Eli Zaretskii  <eliz@gnu.org>
13413         Teach MS-Windows font back-end return per-glyph ascent/descent
13414         * src/w32font.h (struct w32_metric_cache): Add ascent and descent
13415         values.
13416         * src/w32font.c (w32font_text_extents): Compute, cache, and
13417         accumulate per-glyph ascent and descent values, instead of copying
13418         global values from the font.  If the values are not available from
13419         the font data, i.e., non-TTF fonts, fall back on font-global values.
13420         (compute_metrics): Compute and return per-glyph ascent and descent
13421         values, if returned by GetGlyphOutlineW, falling back on
13422         font-global values.  (Bug#20628)
13423         * src/w32term.c (w32_draw_rectangle): Add 1 pixel to width and
13424         height of rectangle to be drawn, to be compatible with
13425         XDrawRectangle.  Fixes glyphless-char display as hex codes in a
13426         box, when per-glyph ascent/descent values are used.
13428 2015-05-26  Artur Malabarba  <bruce.connor.am@gmail.com>
13430         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
13431         Don't sort if sorter is nil.
13433 2015-05-26  Michael Albinus  <michael.albinus@gmx.de>
13435         Fix Bug#20621
13436         * lisp/net/tramp-sh.el (tramp-set-auto-save): Remove it.  There
13437         are major modes which set `auto-save-mode' on their own rules;
13438         Tramp shall not overwrite such settings.
13440 2015-05-26  Glenn Morris  <rgm@gnu.org>
13442         * lisp/desktop.el: If modes aren't autoloaded, try simple guesswork.
13443         (desktop-load-file): Guess that "foobar" defines "foobar-mode".
13444         (desktop-buffer-mode-handlers, desktop-minor-mode-handlers):
13445         Doc updates.
13446         (vc-dir-mode): Remove unnecessary autoload.
13448 2015-05-25  Philipp Stephani  <phst@google.com>
13450         * lisp/term/xterm.el: Add gui-get-selection support via OSC-52.
13451         (xterm--extra-capabilities-type): Add `getSelection'.
13452         (xterm--query): Add `no-async' argument.
13453         (xterm--init-activate-get-selection): New function.
13454         (terminal-init-xterm): Use it.
13455         (xterm--init-modify-other-keys): Rename from
13456         terminal-init-xterm-modify-other-keys.
13457         (xterm--init-bracketed-paste-mode): Rename from
13458         terminal-init-xterm-bracketed-paste-mode.
13459         (xterm--init-activate-set-selection): Rename from
13460         terminal-init-xterm-activate-set-selection.
13461         (xterm--selection-char): New function.
13462         (gui-backend-set-selection): Use it.  Use the &context to only apply
13463         this method in terminals where we enabled the feature.
13464         (gui-backend-get-selection): New method.
13466 2015-05-25  Daniel Colascione  <dancol@dancol.org>
13468         * lisp/progmodes/cc-langs.el (c-constant-kwds): Add C-language
13469         keyword constants to C++.
13471 2015-05-25  Paul Eggert  <eggert@cs.ucla.edu>
13473         Make TAGS files more portable to MS-Windows
13474         * etc/NEWS: Document this.
13475         * lib-src/etags.c (readline_internal) [DOS_NT]:
13476         Don't treat CRs differently from GNUish hosts.
13477         * lisp/progmodes/etags.el (etags-goto-tag-location):
13478         Adjust STARTPOS to account for the skipped CRs in dos-style files.
13480 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
13482         Improve fix of bug#20634 in tramp-sh.el
13484 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
13486         Fix a typo in last commit
13487         * lib-src/etags.c (C_entries): Fix a typo.
13488         * test/etags/ETAGS.good_1:
13489         * test/etags/ETAGS.good_2:
13490         * test/etags/ETAGS.good_3:
13491         * test/etags/ETAGS.good_4:
13492         * test/etags/ETAGS.good_5:
13493         * test/etags/CTAGS.good: Update due to the change in etags.c.
13495         Fix tagging of class members in C-like OO languages
13496         * lib-src/etags.c (longopts): Add new option --class-qualify and
13497         its shorthand -Q.
13498         (print_help): Add help text for --class-qualify.
13499         (main): Add handling of -Q.
13500         (consider_token, C_entries) <omethodparm>: Append argument types
13501         to Objective C methods only if --class-qualify was specified.
13502         Qualify C++, Objective C, and Java class members with their class
13503         names only if --class-qualify was specified.
13504         (C_entries): If --class-qualify was not specified, remove the
13505         namespace and class qualifiers from tag names of C++ methods.
13506         This allows to use etags.el as xref back-end without the
13507         tag-symbol-match-p method, which greatly increases the number of
13508         potentially false positives.  (Bug#20629)
13509         * doc/man/etags.1: Update to document the new --class-qualify
13510         option.
13511         * test/etags/ETAGS.good_1:
13512         * test/etags/ETAGS.good_2:
13513         * test/etags/ETAGS.good_3:
13514         * test/etags/ETAGS.good_4:
13515         * test/etags/ETAGS.good_5:
13516         * test/etags/CTAGS.good: Update due to changes in etags.c.
13518 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
13520         (cl-generic-define-method): Side effects are evil (bug#20644)
13521         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method): Don't reuse
13522         cons-cells that might be used as keys in an `equal' hash-table.
13524 2015-05-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
13526         Make erc timestamps visible again
13527         * lisp/erc/erc-stamp.el (erc-munge-invisibility-spec):
13528         Make timestamps visible again (if requested).
13530 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
13532         Fix last change in etags.c that broke tagging compresed files
13533         * lib-src/etags.c (process_file_name) [MSDOS || DOS_NT]: Fix
13534         quoting of decompression shell command for MS-Windows/MS-DOS.
13536 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
13538         * lisp/emacs-lisp/cl-macs.el (cl-tagbody): Scope cl--tagbody-alist.
13539         (Bug#20639)
13541 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
13543         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer):
13544         Fix typo in "Inhibit `epa-file-handler' in Tramp"
13545         (commit 89035e247591c8d688fce922b7079881aa110f33).
13547 2015-05-25  Orivej Desh  <orivej@gmx.fr>  (tiny change)
13549         Fix IPv6 addresses in Tramp
13550         * lisp/net/tramp-sh.el (tramp-make-copy-program-file-name):
13551         Add square brackets around host name.
13553 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
13555         Inhibit `epa-file-handler' in Tramp (Bug#20634)
13556         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer)
13557         (tramp-sh-handle-insert-file-contents-literally): Inhibit also
13558         `epa-file-handler'.
13560 2015-05-24  Stefan Monnier  <monnier@iro.umontreal.ca>
13562         * lisp/emacs-lisp/pcase.el: Use PAT rather than UPAT in docstring.
13563         (pcase-let): Document the behavior in case the pattern doesn't match.
13565 2015-05-24  Artur Malabarba  <bruce.connor.am@gmail.com>
13567         * lisp/emacs-lisp/tabulated-list.el: New optional print method.
13568         (tabulated-list-print): New optional argument, UPDATE.  If
13569         non-nil, the list is printed by only adding and deleting the
13570         changed entries, instead of erasing the whole buffer.  This method
13571         is much faster when few or no entries have changed.
13572         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
13573         * etc/NEWS: Document it.
13575         * lisp/emacs-lisp/tabulated-list.el: Improve printing.
13576         (tabulated-list--get-sorter): New function.
13577         (tabulated-list-print): Restore window-line when remember-pos is
13578         passed and optimize away the `nreverse'.
13580 2015-05-24  Paul Eggert  <eggert@cs.ucla.edu>
13582         Simpilify etags TEX mode scanning
13583         * lib-src/etags.c (TEX_mode, TEX_esc, TEX_opgrp, TEX_clgrp):
13584         Remove static vars.
13585         (TeX_commands): Deduce escapes here instead.
13586         (TEX_LESC, TEX_SESC, TEX_mode): Remove; all uses removed.
13587         This removes the need for a reset_input call.
13589         Improve etags I/O error reporting
13590         * lib-src/etags.c:
13591         Don't include sys/types.h and sys/stat.h; no longer needed.
13592         (infilename): New static var.
13593         (process_file_name): Don't call 'stat'.  Instead, just open the
13594         file for reading and report any errors.  Don't bother making
13595         a copy of the file argument; it's not needed.  Be more careful to
13596         use the failing errno when reporting an error.
13597         Quote the real name better (though no perfectly)
13598         when passing it to the shell.
13599         (reset_input): New function, which reports I/O errors.
13600         All uses of 'rewind' changed to use this function.
13601         (perhaps_more_input): New function, which also checks for
13602         I/O errors.  All uses of 'feof' changed to use this function.
13603         (analyze_regex): Report an error if fclose fails.
13604         (readline_internal): Report an error if getc fails.
13605         (etags_mktmp): Return an error if close fails.
13607         etags.c: avoid side effects in 'if'
13608         * lib-src/etags.c (process_file_name, Perl_functions)
13609         (TEX_decode_env): Hoist side effects into previous statement.
13611         .gitignore tweaks
13612         * .gitignore: Ignore all *.stamp files.  Sort.
13613         Ignore [0-9]*.txt (commonly used name for git patches)
13614         and /vc-dwim-log-* (vc-dwim temporary).
13616 2015-05-24  Eli Zaretskii  <eliz@gnu.org>
13618         Fix last change in etags.c, which failed the test suite
13619         * lib-src/etags.c (intoken): Add '$' to the set, as it was there
13620         before the last change.
13622 2015-05-23  Glenn Morris  <rgm@gnu.org>
13624         Remove charset map files from repository, generate in first bootstrap
13625         * admin/charsets/Makefile.in (${srcdir}/charsets.stamp): New.
13626         (all): Create the stamp file.
13627         (extraclean): Delete the stamp file.
13628         * src/Makefile.in (lispintdir, charsets): New variables.
13629         (${lispintdir}/cp51932.el, ${lispintdir}/eucjp-ms.el, ${charsets}):
13630         New rules.
13631         (emacs$(EXEEXT), temacs$(EXEEXT)): Depend on $charsets.
13632         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
13633         * etc/charsets/*.map: Remove from repository.
13635 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
13637         Cleanup etags.c to use locale-independent code
13638         Although this doesn't alter behavior (as etags doesn't use
13639         setlocale), the new version is more clearly locale-independent and
13640         the executable is a bit smaller on my platform.
13641         * lib-src/etags.c: Include <limits.h>, for UCHAR_MAX.
13642         Include <c-ctype.h> instead of <ctype.h>.
13643         (CHARS, CHAR, init, _wht, _nin, _itk, _btk, _etk, white, nonam, endtk)
13644         (begtk, midtk):
13645         Remove; no longer needed.
13646         (iswhite, ISALNUM, ISALPHA, ISDIGIT, ISLOWER, lowcase): Remove.
13647         All callers changed to use c_isspace, c_isalnum, c_isalpha, c_isdigit,
13648         c_islower, c_tolower, respectively.
13649         (notinname, begtoken, intoken, endtoken): Rewrite as functions
13650         instead of macros, and initialize the tables at compile-time
13651         rather than at run-time.
13653         Put default action first in src/Makefile
13654         * src/Makefile.in (all): Put this rule before lisp.mk.
13655         That way, plain 'make' works in the src directory again.
13657 2015-05-23  Glenn Morris  <rgm@gnu.org>
13659         * Makefile.in: Fix extraclean rule.
13660         (extraclean_dirs): New.
13661         (extraclean): Use it.
13663 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
13665         Avoid compiler warning in image.c on MS-Windows
13666         * src/w32term.h (x_query_color): Add prototype, to avoid compiler
13667         warning in image.c.
13669 2015-05-23  Glenn Morris  <rgm@gnu.org>
13671         Fix --without-toolkit-scroll-bars builds.
13672         * src/xterm.c (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]:
13673         Add new argument to x_clear_area1.
13674         (XTset_horizontal_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
13675         Update x_clear_area arguments.
13677         * admin/charsets/glibc/: New directory, imported from glibc 2.21.
13678         * admin/charsets/Makefile.in (GLIBC_CHARMAPS):
13679         Change to included version.
13680         (LOCAL, local, totalclean): Remove.
13681         (extraclean): Delete all generated files.
13683 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
13685         * lisp/pcmpl-cvs.el (pcmpl-cvs-entries): Don't assume
13686         CVS/Entries exists.
13688         * lisp/progmodes/xref.el (xref-find-apropos): Use read-string.
13690         * lisp/progmodes/etags.el (tags-completion-at-point-function):
13691         Don't trust the find-tag function.
13693 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
13695         Pacify --enable-gcc-warnings
13696         * src/frame.h (x_query_color): Remove redundant extern decl.
13697         * src/ftcrfont.c (ftcrfont_glyph_extents, ftcrfont_list)
13698         (ftcrfont_match, ftcrfont_open, ftcrfont_close)
13699         (ftcrfont_text_extents, ftcrfont_draw):
13700         * src/xterm.c (x_set_window_size_1, *x_color_cells, x_update_end)
13701         (XTframe_up_to_date, x_clear_area1, x_clear_frame)
13702         (x_ins_del_lines, frame_highlight, frame_unhighlight)
13703         (x_new_focus_frame, x_focus_changed, XTframe_rehighlight)
13704         (x_draw_hollow_cursor, x_draw_bar_cursor, x_flush, x_update_begin)
13705         (x_update_window_begin, x_connection_closed)
13706         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
13707         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
13708         (*x_gc_get_ext_data, x_extension_initialize)
13709         (x_cr_accumulate_data):
13710         Remove redundant static decl.  Many of these GCC doesn't complain
13711         about, but we might as well clean out the duplication while we're
13712         in the neighborhood.
13713         * src/xterm.c (x_fill_trapezoid_for_relief):
13714         Remove decl of nonexistent function.
13716 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
13718         Replace gui-method macros with cl-generic with &context
13719         * lisp/frame.el (gui-method--name, gui-method, gui-method-define)
13720         (gui-method-declare, gui-call): Remove.
13721         (frame-creation-function): Use cl-defgeneric.
13722         (make-frame): Adjust callers.
13723         * lisp/menu-bar.el (menu-bar-edit-menu):
13724         Use gui-backend-selection-exists-p.
13725         * lisp/select.el (x-get-clipboard): Use gui-backend-get-selection.
13726         (gui-backend-get-selection): New cl-generic to replace
13727         gui-get-selection method.
13728         (gui-backend-set-selection): New cl-generic to replace
13729         gui-set-selection method.
13730         (gui-selection-owner-p): New cl-generic to replace
13731         gui-selection-owner-p method.
13732         (gui-backend-selection-exists-p): New cl-generic to replace
13733         gui-selection-exists-p method.  Adjust all callers.
13734         * lisp/server.el (server-create-window-system-frame): Don't ignore
13735         window-system spec even when unsupported.
13736         * lisp/simple.el (deactivate-mark): Use new gui-backend-* functions.
13737         * lisp/startup.el (handle-args-function, window-system-initialization):
13738         Use cl-defgeneric.
13739         (command-line): Adjust calls accordingly.
13740         * lisp/term/ns-win.el (ns-window-system-initialization): Turn into
13741         a window-system-initialization method.
13742         (handle-args-function, frame-creation-function): Use cl-defmethod.
13743         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
13744         (gui-get-selection): Use cl-defmethod on the new functions instead.
13745         * lisp/term/pc-win.el (w16-get-selection-value): Turn into
13746         a gui-backend-get-selection method.
13747         (gui-selection-exists-p, gui-selection-owner-p, gui-set-selection):
13748         Use cl-defmethod on the new functions instead.
13749         (msdos-window-system-initialization): Turn into
13750         a window-system-initialization method.
13751         (frame-creation-function, handle-args-function): Use cl-defmethod.
13752         * lisp/term/w32-win.el (w32-window-system-initialization): Turn into
13753         a window-system-initialization method.
13754         (handle-args-function, frame-creation-function): Use cl-defmethod.
13755         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
13756         (gui-get-selection): Use cl-defmethod on the new functions instead.
13757         * lisp/term/x-win.el (x-window-system-initialization): Turn into
13758         a window-system-initialization method.
13759         (handle-args-function, frame-creation-function): Use cl-defmethod.
13760         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
13761         (gui-get-selection): Use cl-defmethod on the new functions instead.
13762         * lisp/term/xterm.el (xterm--set-selection): Turn into
13763         a gui-backend-set-selection method.
13764         * src/nsselect.m (Fns_selection_exists_p): Remove unused arg `terminal'.
13765         (Fns_selection_owner_p): Remove unused arg `terminal'.
13766         (Fns_get_selection): Remove unused args `time_stamp' and `terminal'.
13768 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
13770         Revert "Fix etags Bug#20629 that broke C++ support"
13771         This reverts commit 13dd9d4f7e75d2c78aa5537cef09de03663e9748.
13773 2015-05-23  Jan D  <jan.h.d@swipnet.se>
13775         Fix etags Bug#20629 that broke C++ support
13776         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
13777         Revert commit from Sun May 10 (Bug#20629).
13779         Merge branch 'cairo'.
13780         Main work done by YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>.
13781         Small fixes and image work by Jan D. <jan.h.d@swipnet.se>.
13783         Merge branch 'master' into cairo
13785         Fixes to compile cairo branch without cairo
13786         * src/gtkutil.c (xg_update_scrollbar_pos): x_clear_area takes frame as
13787         first argument.
13788         * src/xterm.c (handle_one_xevent): Surround x_cr_destroy_surface with
13789         USE_CAIRO.
13791 2015-05-23  Artur Malabarba  <bruce.connor.am@gmail.com>
13793         * lisp/emacs-lisp/package.el: Always update selected-packages.
13794         (package--update-selected-packages): New function.
13795         (package-menu-execute): Use it before starting the transaction,
13796         this way the list of selected packages is updated even when the
13797         transaction fails.
13798         (package-menu--perform-transaction): Don't edit selected-packages.
13800 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
13802         Fix etags reading of compressed files
13803         * lib-src/etags.c (O_CLOEXEC) [WINDOWSNT]: Define.
13804         Include fcntl.h, for O_CLOEXEC.
13805         (process_file_name): Don't use 'popen', whose streams cannot be
13806         rewound.  Instead, uncompress the file to a temporary file,
13807         created by 'etags_mktmp', and read from that as usual.
13808         (etags_mktmp): New function.
13809         * test/etags/ETAGS.good_1:
13810         * test/etags/ETAGS.good_2:
13811         * test/etags/ETAGS.good_3:
13812         * test/etags/ETAGS.good_4:
13813         * test/etags/ETAGS.good_5: Update to be consistent with latest
13814         changes in etags.c regarding reading compressed files.
13816         Improve documentation of 'set-fontset-font'
13817         * doc/lispref/display.texi (Fontsets): Document the value of nil
13818         for the 3rd argument of 'set-fontset-font'.
13820         Fix documentation of forward-line
13821         * src/cmds.c (Fforward_line): Clarify the return value if the line
13822         at end of accessible portion of the buffer has no newline.
13823         * doc/lispref/positions.texi (Text Lines): Document what happens
13824         if the line at end of accessible portion of buffer has no newline.
13825         (Bug#20587)
13827 2015-05-22  Glenn Morris  <rgm@gnu.org>
13829         * admin/charsets/Makefile.in (TRANS_TABLE): Add short aliases.
13831         * admin/charsets/mapconv (LC_ALL): Set to C.
13833         * Makefile.in: Add admin/charsets into top-level clean rules.
13834         (clean): Add admin/charsets.
13835         (maybeclean_dirs): New variable.
13836         (distclean, bootstrap-clean, maintainer-clean): Use $maybeclean_dirs.
13838         * admin/charsets/Makefile.in (LOCAL, local): Fix members.
13840 2015-05-22  Artur Malabarba  <bruce.connor.am@gmail.com>
13842         * lisp/emacs-lisp/package.el (package-selected-packages): Fix doc.
13844 2015-05-22  Glenn Morris  <rgm@gnu.org>
13846         Generate admin/charsets Makefile via configure, and make more portable
13847         * configure.ac (SUBDIR_MAKEFILES): Add admin/charsets/Makefile.
13848         (admin/charsets/Makefile): Generate it.
13849         * admin/charsets/Makefile.in: Rename from Makefile.
13850         (AWK, srcdir, top_srcdir, AM_DEFAULT_VERBOSITY):
13851         New variables, set by configure.
13852         (charsetdir, lispintdir, mapfiledir, AM_V_GEN, am__v_GEN_)
13853         (am__v_GEN_0, am__v_GEN_1, AM_V_at, am__v_at_, am__v_at_0)
13854         (am__v_at_1, LOCAL, mapconv, run_mapconv, big5, compact, cp51932)
13855         (cp932, eucjp_ms, gb180302, gb180304, kuten): New variables.
13856         (TRANS_TABLE, CHARSETS): Add directory prefix to value.
13857         (all): Declare PHONY.
13858         (local): New PHONY target.
13859         (map_template): New template.  Use to define short PHONY aliases.
13860         (*.map): Add directory prefixes to targets and prerequisites.
13861         Respect make verbosity.
13862         (JISC6226.map): Replace non-portable sed append without newline.
13863         (install): Remove rule.
13864         (clean): Only delete temporary sedscript.
13865         (bootstrap-clean, distclean, maintainer-clean, extraclean)
13866         (totalclean): New PHONY rules.
13867         * admin/charsets/mapconv (BASE): Replace basename with expr.
13868         (FILE): Add "mapfiles" subdirectory.
13869         (AWK): New variable.  Use throughout in place of "awk".
13870         (main): Use "gunzip -c" in place of "zcat".
13871         Don't leave whitespace before "p", for older sed.
13872         * admin/charsets/mapfiles/PTCP154: Add final newline,
13873         to make older sed versions happy.
13875 2015-05-22  Stefan Monnier  <monnier@iro.umontreal.ca>
13877         * lisp/autorevert.el: Use lexical-binding.  Fix hook usage.
13878         (global-auto-revert-ignore-buffer, auto-revert-notify-modified-p)
13879         (auto-revert-notify-watch-descriptor): Use defvar-local.
13880         (find-file-hook, auto-revert-tail-mode)
13881         (auto-revert-notify-add-watch): Use setq-local.
13882         (auto-revert-notify-add-watch): Don't call make-local-variable on
13883         kill-buffer-hook (bug#20601).
13885 2015-05-21  Stefan Monnier  <monnier@iro.umontreal.ca>
13887         Change defgeneric so it doesn't completely redefine the function
13888         * lisp/emacs-lisp/cl-generic.el (cl-generic-define): Don't throw away
13889         previously defined methods.
13890         (cl-generic-define-method): Let-bind purify-flag instead of
13891         using `fset'.
13892         (cl--generic-prefill-dispatchers): Only define during compilation.
13893         (cl-method-qualifiers): Remove redundant alias.
13894         (help-fns-short-filename): Silence byte-compiler.
13895         * test/automated/cl-generic-tests.el:
13896         Adjust to new defgeneric semantics.
13898 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
13900         * lisp/emacs-lisp/package.el (package-menu-execute):
13901         Remove reference to remove-dups.
13903 2015-05-21  kwhite  <kwhite@gnu.org>
13905         * lisp/erc/erc.el: Hide network/channel messages.
13906         (erc-network-hide-list, etc-channel-hide-list): New lists to define
13907         message types per network/channel.
13908         (erc-add-targets): New function to parse list of targets.
13909         (erc-hide-current-message-p): Modified to check for new targets.
13911 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
13913         Don't quote nil and t in doc strings
13914         This is as per "Tips for Documentation Strings" in the elisp manual.
13915         For consistency, do the same in diagnostics and comments.
13917 2015-05-21  Eli Zaretskii  <eliz@gnu.org>
13919         Fix a minor problem with mouse-face on mode line
13920         * src/xdisp.c (note_mode_line_or_margin_highlight): Reset the
13921         mouse face also if the mouse pointer hovers above mode-line glyphs
13922         that don't come from any Lisp string.  (Bug#20620)
13924 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
13926         * lisp/emacs-lisp/package.el: Fix selected-package logic.
13927         (package-menu-execute): Mark as selected all non-upgrade packages
13928         being installed.
13929         (package-menu--perform-transaction): Don't mark anything.
13931         * lisp/emacs-lisp/package.el: Mode-line progress report.
13932         (package-menu--transaction-status): New variable.
13933         (package-menu-mode, package-menu--perform-transaction): Use it.
13935         * lisp/emacs-lisp/package.el: Better transaction messages.
13936         (package-menu--partition-transaction): New function.
13937         (package-menu--prompt-transaction-p, package-menu-execute):
13938         Use it.
13939         (package-menu--perform-transaction): Don't do any messaging.
13941         * lisp/emacs-lisp/package.el: Revert async package transactions.
13942         (package-menu-async): Update doc.
13943         (package-install-from-archive, package-download-transaction)
13944         (package-install, package-menu--perform-transaction)
13945         (package-menu-execute): Remove asynchronous functionality.
13947 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
13949         Revert doc string changes to f90.el
13950         Problem reported by Glenn Morris in:
13951         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00596.html
13952         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
13953         Revert recent changes to doc strings, as it's intended that they
13954         use grave accent, not quote.
13956 2015-05-20  Bozhidar Batsov  <bozhidar@batsov.com>
13958         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p):
13959         Improve parameter name.
13961         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p): New inline function.
13963 2015-05-20  Paul Eggert  <eggert@cs.ucla.edu>
13965         Don't require help-fns when not needed
13966         * lisp/emacs-lisp/autoload.el, lisp/emacs-lisp/advice.el:
13967         * lisp/emacs-lisp/elint.el:
13968         Don't require help-fns at the top level
13969         * lisp/emacs-lisp/advice.el (ad-arglist):
13970         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
13971         Don't require help-fns.  (Bug#17001)
13973 2015-05-20  Eli Zaretskii  <eliz@gnu.org>
13975         Fix slash collapsing in etags on MS-Windows
13976         * lib-src/etags.c (canonicalize_filename) [DOS_NT]: Separate the
13977         MS-Windows code from the Posix code, and support collapsing both
13978         forward- and back-slashes on MS-Windows.  Fixes a regression found
13979         by the test suite.
13981         Improve documentation of glyphless-char-display
13982         * doc/lispref/display.texi (Glyphless Chars): Improve
13983         documentation of glyphless character display.
13985         Fix "acronym" display of glyphless characters on w32
13986         * src/w32term.c (x_draw_glyphless_glyph_string_foreground): Don't
13987         ignore "acronym" substitutes of 1 character for glyphless characters.
13989 2015-05-20  Oleh Krehel  <ohwoeowho@gmail.com>
13991         Add an automated test for let-when-compile
13992         * test/automated/subr-tests.el (let-when-compile): New test.
13994         Add let-when-compile macro instead of using pcase-let
13995         * lisp/subr.el (let-when-compile): New let-like macro that makes its
13996         bindings known to macros like `eval-when-compile' in the body.
13997         * lisp/emacs-lisp/lisp-mode.el: Change the top-level `pcase-let' to
13998         a `let-when-compile'.  Also comment out the unused lexical var
13999         `el-kws-re'.
14000         The change greatly improves readability, while providing almost the
14001         same (even shorter) byte code: instead of pre-evaluating 10 variables,
14002         tossing them into a list, and destructuring that list a full screen
14003         page later, the variables are simply bound as they are evaluated,
14004         wrapped individually in `eval-when-compile'.
14006 2015-05-20  Artur Malabarba  <bruce.connor.am@gmail.com>
14008         * lisp/emacs-lisp/package.el: "Delete" button in Help buffer.
14009         (package-delete-button-action): New function.
14010         (describe-package-1): Add Delete button.
14012         * lisp/emacs-lisp/package.el: Better dependency description.
14013         (package--used-elsewhere-p): New optional arg, ALL, and return
14014         package-desc objects instead of names.
14015         (package-delete): Update accordingly.
14016         (describe-package-1): Describe which packages require the package.
14018 2015-05-20  Martin Rudalics  <rudalics@gmx.at>
14020         Fix handling and doc-string of FRAME arg of `other-buffer' (Bug#20533)
14021         * src/buffer.c (Fother_buffer): Argument FRAME must denote a live frame.
14022         Fix doc-string.
14024         Improve `switch-to-buffer' in strongly dedicated windows (Bug#20472)
14025         * lisp/window.el (switch-to-buffer-in-dedicated-window): New option.
14026         (switch-to-buffer): If the selected window is strongly dedicated
14027         to its buffer, signal error before prompting for buffer name.
14028         Handle `switch-to-buffer-in-dedicated-window'.
14029         * doc/lispref/windows.texi (Switching Buffers):
14030         Document `switch-to-buffer-in-dedicated-window'.
14032 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
14034         Prefer "this" to “this” in doc strings
14035         This mostly just straightens quotes introduced in my previous patch.
14036         Suggested by Dmitry Gutov in:
14037         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00565.html
14038         * lisp/faces.el, lisp/gnus/gnus-group.el, lisp/ldefs-boot.el:
14039         * lisp/mail/supercite.el, lisp/net/tramp.el, lisp/recentf.el:
14040         * lisp/textmodes/artist.el, lisp/textmodes/rst.el:
14041         * lisp/textmodes/tildify.el, lisp/vc/ediff-util.el:
14042         * lisp/vc/log-edit.el, lisp/xt-mouse.el:
14043         Prefer straight double quotes to curved double quotes in doc strings.
14045         Fix minor quoting problems in doc strings
14046         These were glitches regardless of how or whether we tackle the
14047         problem of grave accent in doc strings.
14048         * lisp/calc/calc-aent.el (math-restore-placeholders):
14049         * lisp/ido.el (ido-ignore-buffers, ido-ignore-files):
14050         * lisp/leim/quail/cyrillic.el ("bulgarian-alt-phonetic"):
14051         * lisp/leim/quail/hebrew.el ("hebrew-new")
14052         ("hebrew-biblical-sil"):
14053         * lisp/leim/quail/thai.el ("thai-kesmanee"):
14054         * lisp/progmodes/idlw-shell.el (idlwave-shell-file-name-chars):
14055         Used curved quotes to avoid ambiguities like ‘`''’ in doc strings.
14056         * lisp/calendar/calendar.el (calendar-month-abbrev-array):
14057         * lisp/cedet/semantic/mru-bookmark.el (semantic-mrub-cache-flush-fcn):
14058         * lisp/cedet/semantic/symref.el (semantic-symref-tool-baseclass):
14059         * lisp/cedet/semantic/tag.el (semantic-tag-copy)
14060         (semantic-tag-components):
14061         * lisp/cedet/srecode/cpp.el (srecode-semantic-handle-:cpp):
14062         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
14063         * lisp/emacs-lisp/byte-opt.el (byte-optimize-all-constp):
14064         * lisp/emacs-lisp/checkdoc.el (checkdoc-message-text-engine):
14065         * lisp/emacs-lisp/generator.el (iter-next):
14066         * lisp/gnus/gnus-art.el (gnus-treat-strip-list-identifiers)
14067         (gnus-article-mode-syntax-table):
14068         * lisp/net/rlogin.el (rlogin-directory-tracking-mode):
14069         * lisp/net/soap-client.el (soap-wsdl-get):
14070         * lisp/net/telnet.el (telnet-mode):
14071         * lisp/org/org-compat.el (org-number-sequence):
14072         * lisp/org/org.el (org-remove-highlights-with-change)
14073         (org-structure-template-alist):
14074         * lisp/org/ox-html.el (org-html-link-org-files-as-html):
14075         * lisp/play/handwrite.el (handwrite-10pt, handwrite-11pt)
14076         (handwrite-12pt, handwrite-13pt):
14077         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
14078         * lisp/progmodes/idlwave.el (idlwave-mode, idlwave-check-abbrev):
14079         * lisp/progmodes/verilog-mode.el (verilog-tool)
14080         (verilog-string-replace-matches, verilog-preprocess)
14081         (verilog-auto-insert-lisp, verilog-auto-insert-last):
14082         * lisp/textmodes/makeinfo.el (makeinfo-options):
14083         * src/font.c (Ffont_spec):
14084         Fix minor quoting problems in doc strings, e.g., missing quote,
14085         ``x'' where `x' was meant, etc.
14086         * lisp/erc/erc-backend.el (erc-process-sentinel-2):
14087         Fix minor quoting problem in other string.
14088         * lisp/leim/quail/ethiopic.el ("ethiopic"):
14089         * lisp/term/tvi970.el (tvi970-set-keypad-mode):
14090         Omit unnecessary quotes.
14091         * lisp/faces.el (set-face-attribute, set-face-underline)
14092         (set-face-inverse-video, x-create-frame-with-faces):
14093         * lisp/gnus/gnus-group.el (gnus-group-nnimap-edit-acl):
14094         * lisp/mail/supercite.el (sc-attribs-%@-addresses)
14095         (sc-attribs-!-addresses, sc-attribs-<>-addresses):
14096         * lisp/net/tramp.el (tramp-methods):
14097         * lisp/recentf.el (recentf-show-file-shortcuts-flag):
14098         * lisp/textmodes/artist.el (artist-ellipse-right-char)
14099         (artist-ellipse-left-char, artist-vaporize-fuzziness)
14100         (artist-spray-chars, artist-mode, artist-replace-string)
14101         (artist-put-pixel, artist-text-see-thru):
14102         * lisp/vc/ediff-util.el (ediff-submit-report):
14103         * lisp/vc/log-edit.el (log-edit-changelog-full-paragraphs):
14104         Use double-quotes rather than TeX markup in doc strings.
14105         * lisp/skeleton.el (skeleton-pair-insert-maybe):
14106         Reword to avoid the need for grave accent and apostrophe.
14107         * lisp/xt-mouse.el (xterm-mouse-tracking-enable-sequence):
14108         Don't use grave and acute accents to quote.
14110 2015-05-19  Stefan Monnier  <monnier@iro.umontreal.ca>
14112         * lisp/emacs-lisp/generator.el (cps--gensym, cps--transform-1):
14113         Silence compiler.
14115 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
14117         Try to port new etags tests to MS-Windows
14118         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
14119         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
14120         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
14121         Adjust to test-case changes below.
14122         * test/etags/Makefile (CSRC): Remove dostorture.c.
14123         Whatever it was trying to test, wasn't working portably.
14124         (LC_ALL): Remove.  Apparently there wasn't an encoding problem,
14125         just a line-ending problem.
14126         * test/etags/c-src/dostorture.c: Remove.
14127         * test/etags/cp-src/c.C: Remove stray CR.
14128         * test/etags/html-src/algrthms.html: Remove trailing CRs.
14129         State UTF-8 as the encoding.  The file is ASCII so it doesn't matter,
14130         but if someone edits it later it should stay UTF-8-compatible.
14132 2015-05-19  Eli Zaretskii  <eliz@gnu.org>
14134         Fix display of overlapping window-specific overlays
14135         * src/keyboard.c (adjust_point_for_property): When adjusting point
14136         due to display strings, ignore overlays that are specific to
14137         windows other than the currently selected one.
14138         * src/xdisp.c (handle_single_display_spec): If the display
14139         property comes from an overlay, arrange for buffer iteration to
14140         resume only after the end of that overlay.  (Bug#20607)
14142 2015-05-19  Dmitry Gutov  <dgutov@yandex.ru>
14144         New command icomplete-force-complete-and-exit
14145         * lisp/icomplete.el (icomplete-force-complete-and-exit):
14146         New command
14147         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00461.html)
14148         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00516.html).
14149         (icomplete-minibuffer-map): Bind C-j to it.
14150         (icomplete-forward-completions, icomplete-backward-completions):
14151         Mention the new command in the docstring.
14152         * lisp/minibuffer.el (minibuffer-force-complete-and-exit):
14153         Revert the previous fix for bug#17545.
14155 2015-05-19  Martin Rudalics  <rudalics@gmx.at>
14157         Fix last commit
14159         In Elisp manual explain how to override window manager positioning
14160         (Bug#20552)
14161         * doc/lispref/frames.texi (Position Parameters): Give example of
14162         how to override a window manager positioning decision.
14164         Clarify concept of "surrogate minibuffer frames" (Bug#20538)
14165         * src/frame.c (Fdelete_frame): In doc-string mention that frame
14166         can't be deleted if it has a surrogate minibuffer.
14167         * doc/lispref/frames.texi (Minibuffers and Frames)
14168         (Deleting Frames): Explain "surrogate minibuffer frames".
14170         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 19/12 MB.
14172 2015-05-18  Glenn Morris  <rgm@gnu.org>
14174         Add option to ignore commit lines matching a pattern in ChangeLog
14175         * build-aux/gitlog-to-changelog: Add --ignore-line option.
14176         * build-aux/gitlog-to-emacslog: Ignore lines matching '^; '.
14178 2015-05-18  Paul Eggert  <eggert@cs.ucla.edu>
14180         Don't skip new etags tests on non-UTF-8 hosts
14181         Problem reported by Eli Zaretskii for MS-Windows.
14182         * test/etags/Makefile (UTF8_LOCALE, UTF8_ENCODING): Remove.
14183         (LC_ALL): Set to C if the current locale isn't UTF-8.
14184         (.PHONY): Remove ediff_1 thru ediff_5.
14185         (check): Always run.
14187 2015-05-18  Glenn Morris  <rgm@gnu.org>
14189         * lisp/calculator.el (calculator-funcall):
14190         * lisp/textmodes/artist.el (artist-spray-random-points):
14191         Use standard degree/radian conversion utilities.
14193         Further lisp-complete-symbol related cleanup.
14194         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol):
14195         Unadvertise non-functional argument.  Replace obsolete alias.
14197 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
14199         Add a test case for Maven warning ouput
14200         * test/automated/compile-tests.el
14201         (compile-tests--test-regexps-data): Add a case for Maven warning
14202         ouput.
14203         (compile--test-error-line): Check the compilation message type, if
14204         it's specified in the test data.
14206 2015-05-18  Paul Pogonyshev  <pogonyshev@gmail.com>
14208         Update Maven compilation-mode entry to distinguish warnings
14209         * lisp/progmodes/compile.el
14210         (compilation-error-regexp-alist-alist): Update Maven entry to
14211         distinguish warnings (bug#20556).
14213 2015-05-18  Przemysław Wojnowski  <esperanto@cumego.com>
14215         * test/automated/sgml-mode-tests.el: New file.
14217 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
14219         Improve handling of the first Git revision
14220         * lisp/vc/log-view.el (log-view-toggle-entry-display): When
14221         there's no next entry, delete until the end of the buffer.
14222         (log-view-end-of-defun-1): Stop at eob.
14223         * lisp/vc/vc-annotate.el
14224         (vc-annotate-show-diff-revision-at-line-internal): Don't give up
14225         when previous-revision is nil.
14226         * lisp/vc/vc-git.el (vc-git-expanded-log-entry): End the arguments
14227         with `--' to avoid ambiguity.
14228         (vc-git-annotate-extract-revision-at-line): Exclude `^' from the
14229         returned revision string.
14230         (vc-git-annotate-time): Expect `^' before the first revision.
14231         * lisp/vc/vc-git.el (vc-git-diff): Diff against an empty tree if
14232         REV1 is nil, and REV2 is not.
14233         * lisp/vc/vc.el: Update the description of the `diff' function.
14235 2015-05-18  Oleh Krehel  <ohwoeowho@gmail.com>
14237         Allow checkdoc to be called in batch
14238         * lisp/emacs-lisp/checkdoc.el (checkdoc-error): When `noninteractive'
14239         is non-nil, echo the error with `warn'.
14240         How it can be used in -batch:
14241         (with-current-buffer (find-file "checkdoc.el")
14242           (checkdoc-current-buffer t))
14244 2015-05-18  Glenn Morris  <rgm@gnu.org>
14246         * lisp/calendar/solar.el (solar-ecliptic-coordinates): Use float-pi.
14248 2015-05-17  Paul Eggert  <eggert@cs.ucla.edu>
14250         * admin/notes/unicode: New section "binary files".
14252         Change new etags test to use UTF-8 encoding
14253         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
14254         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
14255         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
14256         * test/etags/html-src/index.shtml, test/etags/html-src/software.html:
14257         * test/etags/html-src/softwarelibero.html:
14258         Switch to UTF-8 encoding.
14259         * test/etags/Makefile (SRCS): Adjust to switch to UTF-8.
14260         Remove Makefile, as it's too incestuous to have the test input
14261         include the build procedure.
14262         (UTF8_LOCALE, UTF_ENCODING): New macros.
14263         (LC_ALL): If possible, set to a UTF-8 encoding if not already UTF-8.
14264         (check): Skip if not UTF-8.
14265         (.PHONY): New rule.
14266         (FRC): Remove, as superseded by .PHONY.  All uses removed.
14267         (regexfile): Prefer printf to echo when outputting oddball chars.
14268         (.PRECIOUS): Remove, as these files are not built.
14270         Rename 'foo-gzipped' to 'foo.gz'
14271         * test/automated/data/decompress/foo.gz:
14272         Rename from test/automated/data/decompress/foo-gzipped,
14273         to make it easier for other tools to tell that it's compressed.
14274         * test/automated/zlib-tests.el (zlib--decompress):
14275         Adjust to renamed file.
14277 2015-05-17  Dmitry Gutov  <dgutov@yandex.ru>
14279         Set up default-directory
14280         * lisp/vc/vc-annotate.el (vc-annotate-mode-map): Remove duplicate
14281         binding for `v'.
14282         (vc-annotate-show-changeset-diff-revision-at-line): Set up an
14283         appropriate value for default-directory.
14285 2015-05-17  Samer Masterson  <samer@samertm.com>
14287         * lisp/eshell/em-term.el (eshell-term-sentinel):
14288         No-op by default, only kills term buffer if
14289         `eshell-destroy-buffer-when-process-dies' is non-nil.  (Bug#18108)
14290         (eshell-destroy-buffer-when-process-dies): New custom to preserve
14291         previous behavior.
14293         eshell: Introduce new buffer syntax
14294         The new buffer syntax '#<buffer-name>' is equivalent to '#<buffer
14295         buffer-name>'.  Remove `eshell-buffer-shorthand', as it is no longer
14296         needed (Bug#19319).
14297         * lisp/eshell/esh-io.el (eshell-buffer-shorthand): Remove.
14298         (eshell-get-target): Remove shorthand-specific code.
14299         * lisp/eshell/esh-arg.el (eshell-parse-special-reference): Parse
14300         '#<buffer-name>'.
14302 2015-05-17  Jan D  <jan.h.d@swipnet.se>
14304         Merge branch 'master' into cairo
14306 2015-04-26  Jan D  <jan.h.d@swipnet.se>
14308         Merge branch 'master' into cairo
14310         Add PBM support for cairo
14311         * src/image.c (xcolor_to_argb32): New function.
14312         (get_spec_bg_or_alpha_as_argb): Call xcolor_to_argb32.
14313         (pbm_load, png_load_body, jpeg_load_body, gif_load): Only use
14314         XImagePtr if ! USE_CAIRO.
14315         (pbm_load): Add cairo support.
14317 2015-04-12  Jan D  <jan.h.d@swipnet.se>
14319         * src/xterm.c (x_free_cr_resources): Rename from x_prepare_for_xlibdraw.
14320         (x_cr_draw_frame, x_cr_export_frames, x_shift_glyphs_for_insert)
14321         (x_free_frame_resources): Rename x_prepare_for_xlibdraw to
14322         x_free_cr_resources.
14324         Handle specified bg in images.  Use generic libpng code for PNGs.
14325         * src/image.c (get_spec_bg_or_alpha_as_argb)
14326         (create_cairo_image_surface): New functions when USE_CAIRO.
14327         (xpm_load): Call the above functions.  Handle XPM without mask
14328         when USE_CAIRO.
14329         (png_load_body): Handle USE_CAIRO case.
14330         (png_load): Remove USE_CAIRO specific fuction, modify png_load_body
14331         instead.
14332         (jpeg_load_body): Call create_cairo_image_surface.
14333         (gif_load, svg_load_image): Handle specified background, call
14334         create_cairo_image_surface.
14335         * src/xterm.c (x_draw_image_glyph_string): Add missing USE_CAIRO.
14337 2015-04-11  Jan D  <jan.h.d@swipnet.se>
14339         Support GIF and TIFF with cairo
14340         * configure.ac: Allow jpeg with cairo.
14341         Allow tiff and gif with cairo.
14342         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
14343         (tiff_load): Create cairo image surface if USE_CAIRO.
14344         (gif_load): Ditto.
14346         Support JPEG with USE_CAIRO
14347         * configure.ac: Allow jpeg with cairo.
14348         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
14350 2015-04-05  Jan D  <jan.h.d@swipnet.se>
14352         Support RSVG and cairo
14353         * configure.ac: Allow rsvg with cairo.  Move back HAVE_RSVG.
14354         * src/dispextern.h (struct image): Add cr_data2 if cairo.
14355         * src/image.c: #undef COLOR_TABLE_SUPPORT when USE_CAIRO.
14356         (x_clear_image): Free cr_data and cr_data2 if set.
14357         (xpm_load): Assign data to cr_data2.
14358         (svg_load_image): Convert from GdkPixbuf to CAIRO_FORMAT_ARGB32.
14360 2015-04-03  Jan D  <jan.h.d@swipnet.se>
14362         Introduce limited Xpm support (32 bit ZPixmap) for Cairo
14363         * configure.ac (HAVE_RSVG): Move after cairo.
14364         (USE_CAIRO): Disable rsvg, don't disable Xpm.
14365         * src/image.c (prepare_image_for_display): Don't load if USE_CAIRO.
14366         (x_clear_image): If USE_CAIRO, also free possible img->ximg->obdata and
14367         don't return early.
14368         (ALLOC_XPM_COLORS): Don't define when USE_CAIRO.
14369         (xpm_load): Convert simple Xpms (32 bit ZPixmap) to CAIRO_FORMAT_ARGB32
14370         and create a surface.
14372         Tool tips for menus did not show any text.
14373         * src/xterm.c (x_update_begin): Don't create any surface for non-visible
14374         tip frames, the geometry may be wrong.
14376         Merge branch 'master' into cairo, fixes tooltips not shown.
14378         Merge branch 'master' into cairo
14380         Add CAIRO_CFLAGS to lwlib/Makefile.in
14381         * Makefile.in (CAIRO_CFLAGS): Add.
14383 2015-02-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
14385         * src/ftcrfont.c (ftcrfont_draw): Don't flush when drawing to screen.
14387 2015-02-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
14389         Draw outermost line using black relief and erase corners also for cairo.
14390         * src/xterm.c [USE_CAIRO]: Include math.h.
14391         (enum corners) [USE_CAIRO]: New enum.
14392         (x_erase_corners_for_relief) [USE_CAIRO]: New function.
14393         (x_draw_relief_rect) [USE_CAIRO]: Use it.  If box width is larger
14394         than 1, draw the outermost line using the black relief.
14396         * src/xterm.c (x_fill_trapezoid_for_relief):
14397         Remove unnecessary cairo_close_path.
14399 2015-02-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
14401         * src/xterm.c (x_draw_relief_rect) [USE_CAIRO]: Reset clipping.
14403         * src/xterm.c (x_draw_stretch_glyph_string):
14404         Call x_reset_clip_rectangles instead of XSetClipMask.
14406         Use int instead of unsigned int for width and height args.
14407         * src/xterm.c (x_cr_draw_image, x_fill_rectangle, x_draw_rectangle)
14408         (x_fill_trapezoid_for_relief): Use int instead of unsigned int for
14409         width and height args.
14411         Modernize k&r cairo-related function declarations.
14412         * src/gtkutil.c (xg_page_setup_dialog, xg_get_page_setup, draw_page)
14413         (xg_print_frames_dialog): Modernize k&r declarations.
14414         * src/xfns.c (Fx_export_frames, Fx_page_setup_dialog, Fx_get_page_setup)
14415         (Fx_print_frames_dialog): Modernize k&r declarations.
14416         * src/xterm.c (x_gc_get_ext_data, x_extension_initialize)
14417         (x_begin_cr_clip, x_end_cr_clip, x_set_cr_source_with_gc_foreground)
14418         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
14419         (x_cr_destroy_fringe_bitmap, x_cr_draw_frame, x_cr_accumulate_data)
14420         (x_cr_destroy, x_cr_export_frames, x_prepare_for_xlibdraw)
14421         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
14422         (x_draw_rectangle, x_clear_window, x_fill_trapezoid_for_relief)
14423         (x_clear_area): Modernize k&r declarations.
14425         Implement wave-style variant of underlining for cairo.
14426         * src/xterm.c (x_draw_horizontal_wave) [USE_CAIRO]: New function.
14427         (x_draw_underwave) [USE_CAIRO]: Use it.
14429         * src/xterm.c (x_draw_window_divider): Use x_fill_rectangle
14430         instead of XFillRectangle.
14432 2015-02-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
14434         Fix fringe bitmap initialization for cairo
14435         * src/fringe.c (init_fringe_bitmap) [USE_CAIRO]: Adjust bitmap
14436         data for cairo image surface.
14437         * src/xterm.c (x_cr_define_fringe_bitmap):
14438         Call cairo_surface_mark_dirty.
14440 2015-02-11  Jan D  <jan.h.d@swipnet.se>
14442         Add cairo drawing
14443         * configure.ac (with-cairo): New option.
14444         (USE_CAIRO): Default to yes for Gtk+ 3.  Add code to test for cairo,
14445         set CAIRO_CFLAGS, CAIRO_LIBS.  Add ftcrfonto to FONT_OBJ if cairo.
14446         Output "Does Emacs use cairo?".
14447         * lisp/version.el (emacs-version): Add cairo version.
14448         * src/Makefile.in (CAIRO_CFLAGS, CAIRO_LIBS): New variables.
14449         (FONT_OBJ): Add comment about ftcrfont.
14450         (ALL_CFLAGS): Add CAIRO_CFLAGS.
14451         (LIBES): Add CAIRO_LIBS.
14452         * src/dispextern.h (struct image): Add cr_data for cairo.
14453         (x_cr_init_fringe): Declare.
14454         * src/font.c (syms_of_font): Call syms_of_ftcrfont for cairo.
14455         * src/font.h (ftcrfont_driver, syms_of_ftcrfont): Declare
14456         * src/fringe.c (x_cr_init_fringe): New function name that shares code
14457         with w32_init_fringe.
14458         * src/ftcrfont.c: New font driver for cairo, based on the ftfont driver.
14459         * src/ftfont.c (ftfont_info_size); New global variable.
14460         (ftfont_open2): New extern function almost the same as old ftfont_open,
14461         but takes the font_object as argument.
14462         (ftfont_open): Build font object and call ftfont_open2.
14463         * src/ftfont.h (ftfont_open2, ftfont_info_size): Declare.
14464         * src/gtkutil.c (xg_clear_under_internal_border)
14465         (xg_update_scrollbar_pos, xg_update_horizontal_scrollbar_pos):
14466         Only queue_draw if not cairo.  Change args to x_clear_area.
14467         (xg_get_font): Use Qftcr when using cairo, Qxft otherwise.
14468         (xg_page_setup_dialog, xg_get_page_setup, draw_page)
14469         (xg_print_frames_dialog): New functions for printing.
14470         * src/gtkutil.h (xg_page_setup_dialog, xg_get_page_setup)
14471         (xg_print_frames_dialog): Declare.
14472         * src/image.c: Add defined (USE_CAIRO) for PNG.
14473         Add !defined USE_CAIRO for W32 PNG code.
14474         (x_clear_image): If cairo, destroy the surface in cr_data.
14475         (png_load): Add new cairo compatible implementation.
14476         (lookup_image_type): Add defined (USE_CAIRO) for define png_type.
14477         * src/xfns.c: New section Printing.
14478         (x-export-frames, x-page-setup-dialog, x-get-page-setup)
14479         (x-print-frames-dialog): New printing functions.
14480         (Fx_create_frame, x_create_tip_frame): Register ftcrfont if cairo.
14481         (syms_of_xfns): Defsym Qorientation, Qtop_margin, Qbottom_margin,
14482         Qportrait, Qlandscape, Qreverse_portrait, Qreverse_landscape).
14483         (syms_of_xfns): Provide cairo and defvar cairo-version-string.
14484         defsubr Sx_page_setup_dialog, Sx_get_page_setup, Sx_print_frames_dialog.
14485         * src/xterm.c (x_clear_area1, x_prepare_for_xlibdraw)
14486         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
14487         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
14488         (x_gc_get_ext_data, x_extension_initialize, x_cr_accumulate_data):
14489         Declare.
14490         (FRAME_CR_CONTEXT, FRAME_CR_SURFACE): New macros.
14491         (max_fringe_bmp, fringe_bmp): New variables.
14492         (x_gc_get_ext_data, x_extension_initialize)
14493         (x_cr_destroy_surface, x_begin_cr_clip, x_end_cr_clip)
14494         (x_set_cr_source_with_gc_foreground)
14495         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
14496         (x_cr_destroy_fringe_bitmap, x_cr_draw_image, x_cr_draw_frame)
14497         (x_cr_accumulate_data, x_cr_destroy, x_cr_export_frames)
14498         (x_prepare_for_xlibdraw, x_set_clip_rectangles)
14499         (x_reset_clip_rectangles, x_fill_rectangle, x_draw_rectangle)
14500         (x_clear_window, x_fill_trapezoid_for_relief): New functions.
14501         (x_update_begin): Create cairo surface if needed.
14502         (x_draw_vertical_window_border): Call x_fill_rectangle for cairo.
14503         (x_update_end): Paint cairo drawing surface to xlib surface.
14504         (x_clear_under_internal_border, x_after_update_window_line): Adjust
14505         arguments to x_clear_area.
14506         (x_draw_fringe_bitmap): Call x_fill_rectangle.  Get GC values and
14507         call x_cr_draw_image for cairo.  Call x_reset_clip_rectangles instead
14508         of XSetClipMask.
14509         (x_set_glyph_string_clipping)
14510         (x_set_glyph_string_clipping_exactly): Use x_set_clip_rectangles
14511         instead of XSetClipRectangles.
14512         (x_clear_glyph_string_rect, x_draw_glyph_string_background):
14513         Use x_fill_rectangle instead of XFillRectangle.
14514         (x_draw_glyph_string_foreground)
14515         (x_draw_composite_glyph_string_foreground)
14516         (x_draw_glyphless_glyph_string_foreground): Use x_draw_rectangle
14517         instead of XDrawRectangle.
14518         (x_draw_relief_rect): Add code for USE_CAIRO.
14519         Call x_reset_clip_rectangles instead of XSetClipMask.
14520         (x_draw_box_rect): x_set_clip_rectangles instead of XSetClipRectangles,
14521         x_fill_rectangle instead of XFillRectangle, x_reset_clip_rectangles
14522         instead of XSetClipMask.
14523         (x_draw_image_foreground, x_draw_image_foreground_1):
14524         x_draw_rectangle instead of XDrawRectangle.
14525         (x_draw_glyph_string_bg_rect): x_fill_rectangle instead of
14526         XFillRectangle.
14527         (x_draw_image_glyph_string): If img has cr_data, use it as
14528         a cairo surface.
14529         (x_draw_stretch_glyph_string): x_set_clip_rectangles instead of
14530         XSetClipRectangles, x_fill_rectangle instead of XFillRectangle.
14531         (x_draw_glyph_string): x_fill_rectangle instead of XFillRectangle.,
14532         x_reset_clip_rectangles instead of XSetClipMask.
14533         (x_shift_glyphs_for_insert): Call x_prepare_for_xlibdraw.
14534         (x_clear_area1): New function that calls XClearArea.
14535         (x_clear_area): Takes frame as parameter, calls x_clear_area1 for
14536         non-cairo.
14537         (x_clear_frame): x_clear_window instead of XClearWindow.
14538         (x_scroll_run): Set frame garbaged if cairo.
14539         (XTmouse_position): Initialize *part to 0.
14540         (x_scroll_bar_create): Adjust arguments to x_clear_area.
14541         (x_scroll_bar_set_handle): x_clear_area1 instead of x_clear_area,
14542         x_fill_rectangle instead of XFillRectangle.
14543         (XTset_vertical_scroll_bar, XTset_horizontal_scroll_bar): Adjust
14544         arguments to x_clear_area.
14545         (x_scroll_bar_expose): x_draw_rectangle instead of XDrawRectangle.
14546         (handle_one_xevent): Adjust arguments to x_clear_area.
14547         Destroy cairo surface for frame if ConfigureNotify.
14548         (x_clip_to_row): x_set_clip_rectangles instead of XSetClipRectangles.
14549         (x_draw_hollow_cursor): x_draw_rectangle instead of XDrawRectangle,
14550         x_reset_clip_rectangles instead of XSetClipMask.
14551         (x_draw_bar_cursor): x_fill_rectangle instead of XFillRectangle,
14552         x_reset_clip_rectangles instead of XSetClipMask.
14553         (x_clear_frame_area): Adjust arguments to x_clear_area.
14554         (x_free_frame_resources): Call x_prepare_for_xlibdraw.
14555         (x_term_init): Call x_extension_initialize if cairo.
14556         (x_redisplay_interface): Add x_cr_define_fringe_bitmap,
14557         x_cr_destroy_fringe_bitmap for cairo.
14558         (x_initialize): Call x_cr_init_fringe for cairo.
14559         * src/xterm.h: Add include of cairo header files.
14560         (x_bitmap_record): Add img if cairo.
14561         (x_gc_ext_data): New struct for cairo.
14562         (x_display_info): Add ext_codes for cairo.
14563         (x_output): Add cr_context and cr_surface for cairo.
14564         (x_clear_area): Change arguments from Display*/Window to frame pointer.
14565         (x_query_color, x_begin_cr_clip, x_end_cr_clip)
14566         (x_set_cr_source_with_gc_foreground, x_set_cr_source_with_gc_background)
14567         (x_cr_draw_frame, x_cr_export_frames): Declare.
14569 2015-05-17  Johan Bockgård  <bojohan@gnu.org>
14571         Fix integer-valued `mouse-highlight' (Bug#20590)
14572         * src/xterm.c (handle_one_xevent) [USE_GTK]: Fix ifdef scope.
14574 2015-05-17  Eli Zaretskii  <eliz@gnu.org>
14576         MS-Windows followup for ASCIIfication of curved quotes
14577         * lisp/term/w32console.el (terminal-init-w32console): Repeat the
14578         test for curved quotes being displayable, after switching the
14579         terminal encoding.  (Bug#20545)
14581 2015-05-17  Jan D  <jan.h.d@swipnet.se>
14583         Add comment that x_shift_glyphs_for_insert is never called
14584         * src/xterm.c (x_shift_glyphs_for_insert, x_redisplay_interface):
14585         Add comment that this function is never called.
14587 2015-05-16  Glenn Morris  <rgm@gnu.org>
14589         * src/lisp.mk: Remove from repository and generate at build-time.
14590         * src/Makefile.in (lisp.mk): New rule to generate from loadup.el.
14591         (shortlisp_filter): New variable.
14592         (emacs$(EXEEXT), $(etc)/DOC): Depend on lisp.mk.
14593         (distclean): Remove lisp.mk.
14594         * Makefile.in ($(MAKEFILE_NAME)): No longer depend on src/lisp.mk.
14595         * lisp/loadup.el: Tweak layout to make it easier to parse.
14596         * make-dist: Do not distribute src/lisp.mk.
14598 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
14600         Display shorter dates in Git annotate output
14601         * lisp/vc/vc-git.el (vc-git-annotate-command): Use the short date
14602         format (when not overridden with vc-git-annotate-switches).
14603         (vc-git-annotate-time): Support the short format, as well as ISO
14604         8601 that has been used until now (bug#5428).
14606 2015-05-16  Paul Eggert  <eggert@cs.ucla.edu>
14608         ASCIIfy curved quotes on displays lacking them
14609         * lisp/international/mule-cmds.el (set-locale-environment):
14610         If curved quotes don't work, display straight ASCII approximations
14611         (Bug#20545).
14613 2015-05-16  Glenn Morris  <rgm@gnu.org>
14615         Small src/Makefile simplification
14616         * src/lisp.mk (shortlisp): Rename from lisp, remove $lispsource prefix.
14617         * src/Makefile.in (lisp): Derive from shortlisp.
14618         ($(etc)/DOC): Use $shortlisp rather than parsing lisp.mk.
14620 2015-05-16  Eli Zaretskii  <eliz@gnu.org>
14622         * lisp/help-mode.el (help-go-forward): Doc fix.
14623         (Bug#20577)
14625         * doc/lispref/debugging.texi (Profiling): Improve indexing.
14626         (Bug#20576)
14628 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
14630         * lisp/vc/vc-git.el (vc-git-resolve-when-done): Use `unless' to
14631         have one fewer `not'.
14633         * lisp/vc/vc-git.el (vc-git-diff-switches)
14634         (vc-git-annotate-switches, vc-git-resolve-conflicts)
14635         (vc-git-program, vc-git-root-log-format): Remove the redundant
14636         :group declarations.
14638 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
14640         Removes the predicate from lisp-complete-symbol (Bug#20456)
14641         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol): Do not use predicate
14642         and remove it from the docstring.
14644 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
14646         Add new option vc-git-resolve-conflicts
14647         * lisp/vc/vc-git.el (vc-git-resolve-conflicts): New variable.
14648         (vc-git-find-file-hook): Add to after-save-hook only when the
14649         above is non-nil.
14650         (vc-git-resolve-when-done): Update to honor the new variable.
14651         (Bug#20292)
14653 2015-05-16  Artur Malabarba  <bruce.connor.am@gmail.com>
14655         * lisp/emacs-lisp/tabulated-list.el: Don't error on null header-string.
14656         (tabulated-list-init-header): Document new behavior.
14657         (tabulated-list-print-fake-header): Do nothing if
14658         `tabulated-list--header-string' is nil.
14659         (tabulated-list--header-string): Add a docstring.
14660         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
14661         * etc/NEWS: Document it.
14663 2015-05-15  Leo Liu  <sdl.web@gmail.com>
14665         Revert "Fix cps--gensym"
14666         * lisp/emacs-lisp/generator.el (cps--gensym): Revert commit
14667         fbda511ab8069d0115eafca411a43353b85431b1 on 2015-05-14.
14669 2015-05-15  Glenn Morris  <rgm@gnu.org>
14671         Replace AC_SUBST_FILE in configure with include in Makefiles
14672         * configure.ac (DEPDIR, MKDEPDIR, deps_frag, lwlib_deps_frag)
14673         (oldxmenu_deps_frag, lisp_frag): Remove output variables/files.
14674         (AUTO_DEPEND): New output variable.
14675         * lwlib/Makefile.in (AUTO_DEPEND): New, set by configure.
14676         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
14677         (lwlib_deps_frag): Replace by conditional include.
14678         * lwlib/autodeps.mk: Remove file.
14679         * oldXMenu/Makefile.in (AUTO_DEPEND): New, set by configure.
14680         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
14681         (oldxmenu_deps_frag): Replace by conditional include.
14682         * oldXMenu/autodeps.mk: Remove file.
14683         * src/Makefile.in (AUTO_DEPEND): New, set by configure.
14684         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
14685         (lisp_frag): Replace by an include.
14686         (deps_frag): Replace by conditional include.
14687         * src/autodeps.mk: Remove file.
14689         Tweak japanese.el's loading of dependencies
14690         * lisp/loadup.el: Explicitly load cp51932 and eucjp-ms.
14691         * lisp/language/japanese.el: Use require rather than load.
14692         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
14693         Provide a feature.
14694         * admin/charsets/eucjp-ms.awk, admin/charsets/cp51932.awk:
14695         Provide a feature in the generated file.
14697 2015-05-15  Jan D  <jan.h.d@swipnet.se>
14699         Fix NS warnings
14700         * src/nsmenu.m (ns_popup_dialog)
14701         * src/nsimage.m (initFromXBM:width:height:fg:bg:)
14702         * src/nsfns.m (Fx_create_frame): Remove unused variables.
14703         (Fns_read_file_name): Initialize fname, remove ret.
14704         * src/nsterm.m (ns_draw_window_cursor): Handle DEFAULT_CURSOR in switch.
14705         (ns_get_color, ns_set_horizontal_scroll_bar, keyDown):
14706         Remove unused variable.
14707         (init): Add parantesis in if.
14708         (ns_create_terminal): Assign set_horizontal_scroll_bar_hook.
14710 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
14712         Fix a enum conversion warning in macfont.m
14713         * src/macfont.h (CharacterCollection): Typedef to NSCharacterCollection.
14714         (MAC_CHARACTER_COLLECTION_*): Use the NS variants.
14716 2015-05-15  Eli Zaretskii  <eliz@gnu.org>
14718         * lisp/textmodes/ispell.el (ispell-aspell-find-dictionary):
14719         Support Aspell dictionaries with names like "de-alt".  (Bug#20581)
14721 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
14723         * lisp/cus-start.el: Add ns-confirm-quit.
14725         Fix warnings on OSX 10.10
14726         * src/nsfns.m (MODAL_OK_RESPONSE): New define for different
14727         OSX versions.
14728         (Fns_read_file_name): Check against MODAL_OK_RESPONSE.
14729         (compute_tip_xy): Use convertRectToScreen for OSX >= 10.7
14730         * src/nsmenu.m (initWithContentRect:styleMask:backing:defer:)
14731         * src/nsimage.m (allocInitFromFile, setPixmapData): Only call
14732         setScalesWhenResized for OSX < 10.6.
14733         * src/nsterm.h (EmacsScroller): Declare scrollerWidth.
14734         * src/nsterm.m (ns_copy_bits): New function that does not use
14735         deprecated NSCopyBits.
14736         (ns_scroll_run, ns_shift_glyphs_for_insert): Call ns_copy_bits.
14737         (runAlertPanel): New function.
14738         (applicationShouldTerminate:): Call runAlertPanel.
14739         (initFrameFromEmacs, toggleFullScreen:): Only call
14740         useOptimizedDrawing for OSX < 10.10.
14741         (initFrameFromEmacs:): Only call allocateGState for OSX < 10.10.
14742         (windowWillUseStandardFrame:defaultFrame:): Cast arg to abs to int.
14743         (draggingEntered:): Returns NSDragOperation.
14744         (scrollerWidth): Use scrollerWidthForControlSize for OSX >= 10.7.
14746 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
14748         * lisp/emacs-lisp/package.el: Don't ensure-init during startup.
14749         (package--init-file-ensured): New variable.
14750         (package-initialize, package--ensure-init-file): Use it.
14752 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
14754         Honor :fore/background for XBM on NS (Bug#14969)
14755         * src/nsterm.h (EmacsImage): Add xbm_fg, remove initFromSkipXBM,
14756         initFromXBM takes bg, fg args, remove flip arg.
14757         (ns_image_from_XBM): Add bg, fg args.
14758         * src/image.c (x_create_bitmap_from_data)
14759         (Create_Pixmap_From_Bitmap_Data): ns_image_from_XBM takes bg, fg args.
14760         * src/nsimage.m (ns_image_from_XBM): Add fg, bg args, pass to
14761         initFromXBM.  Remove flip arg.
14762         (initFromSkipXBM): Move code to initFromXBM.
14763         (initFromXBM): Actually set fg and bg, instead of playing alpha games.
14764         Use fg, bg from args (Bug#14969).  Remove if (length) section, was
14765         always false.
14766         Remove bit flipping (bitPat, swt), generated incorrect images when
14767         width/height wasn't a multiple of 8.
14768         (setXBMColor:): Modify planes by comparing to saved xbm_fg.
14769         * src/nsterm.m (ns_draw_fringe_bitmap): initFromXBM takes fg, bg args,
14770         remove flip arg.
14772 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
14774         * lisp/emacs-lisp/package.el: Be more careful with the init file.
14775         (package--ensure-init-file): Check that user-init-file is set,
14776         exists, is readable, and is writable.  (Bug#20584)
14777         Also expand the docstring.
14779 2015-05-14  Wilson Snyder  <wsnyder@wsnyder.org>
14781         Sync with upstream verilog-mode revision 6232468
14782         * lisp/progmodes/verilog-mode.el
14783         (verilog-font-lock-grouping-keywords-face)
14784         (verilog-highlight-grouping-keywords): Fix use of face when
14785         `verilog-highlight-grouping-keywords' set.  Reported by Jeff Pompa.
14786         (verilog-auto-reset): Fix AUTORESET to ignore member resets if
14787         parent is reset, bug906.  Reported by Ken Schmidt.
14788         (verilog-auto-inout-module): Add fourth regexp argument to
14789         AUTOINOUTMODULE and AUTOINOUTCOMP for signals to not match, bug856.
14790         Reported by John Tillema.
14791         (verilog-auto-inst-port): Fix AUTOINST interfaces to not show
14792         modport if signal attachment is itself a modport.  Reported by
14793         Matthew Lovell.
14794         (verilog-auto-reset, verilog-auto-sense-sigs): Fix AUTORESET with
14795         always_comb and always_latch, bug844.  Reported by Greg Hilton.
14796         (verilog-at-constraint-p, verilog-beg-of-statement-1): Fix hanging
14797         with many curly-bracket pairs, bug663.
14798         (verilog-set-auto-endcomments): Fix end comments for functions of
14799         type void, etc.  Reported by Alex Reed.
14800         (verilog-do-indent): Fix electric tab deleting form-feeds.  Note
14801         caused by indent-line-to deleting tabls pre 24.5.
14802         (verilog-nameable-item-re): Fix nameable items that can have an
14803         end-identifier to include endchecker, endgroup, endprogram,
14804         endproperty, and endsequence.  Reported by Alex Reed.
14805         (verilog-label-be): When auto-commenting a buffer, consider
14806         auto-comments on all known keywords (not just a subset thereof).
14807         Reported by Alex Reed.
14808         (verilog-auto-end-comment-lines-re)
14809         (verilog-end-block-ordered-re, verilog-set-auto-endcomments):
14810         Automatically comment property/endproperty blocks to match other
14811         similar blocks like sequence/endsequence, function/endfunction, etc.
14812         Reported by Alex Reed.
14813         (verilog-set-auto-endcomments): Detect the function- or task-name
14814         when auto-commenting blocks that lack an explicit portlist.
14815         Reported by Alex Reed.
14816         (verilog-auto, verilog-auto-insert-last): Add AUTOINSERTLAST to
14817         allow post-AUTO user fixups, bug826.  Reported by Dennis Muhlestein.
14818         (verilog-no-indent-begin-re): When `verilog-indent-begin-after-if'
14819         is nil, fix indenting initial/final to match always statements,
14820         bug825.  Reported by Tim Clapp.
14821         (verilog-extended-complete-re): Fix indentation of DPI-C imports
14822         with c_identifiers, and DPI-C imports, bug557.  Reported by ZeDong
14823         Mao and Jason Forkey.
14824         (verilog-read-decls): Fix parsing typed interfaces.  Fix
14825         AUTOINOUTMODPORT missing types.  Reported by Stephan Bourduas.
14826         Fix localparam not being ignored in AUTOINSTPARAM,
14827         bug889.  Reported by Shannon Hill.
14828         (verilog-auto-output-every): Add regexp to AUTOOUTPUTEVERY,
14829         bug793.  Reported by Pierre-David Pfister.
14830         (verilog-auto-arg-format, verilog-auto-arg-ports):
14831         Add verilog-auto-arg-format to support newlines in AUTOARG.
14832         Reported by Jie Xiao.
14833         (verilog-batch-execute-func): Do not batch re-auto files loaded by
14834         Local Variables.  Fix printing "no changes to be saved" with
14835         verilog-batch.  Reported by Dan Dever.
14836         (verilog-auto-inout-module): Fix AUTOINOUTMODULE not inserting
14837         interface-only modules, bug721.  Reported by Dean Hoyt.
14838         Author: Alex Reed <acreed4@gmail.com>
14839         * lisp/progmodes/verilog-mode.el (verilog-beg-of-statement):
14840         Don't treat '<keyword>:<identifier>' as the start of a labeled
14841         statement, bug905.  Reported by Enzo Chi.
14842         (verilog-directive-re, verilog-compiler-directives)
14843         (verilog-keywords): Match full set of IEEE 2012-1800 compiler
14844         directives (plus some extras) when determining indentation, bug
14845         901.  Reported by Bernd Beuster.
14846         (verilog-at-constraint-p): Fix indentation of coverpoint bins if
14847         iff expression doesn't start with word-character, bug900.
14848         (verilog-optional-signed-range-re, verilog-optional-signed-re):
14849         Fix incorrect indentation/alignment of unsigned declarations,
14850         bug897.
14851         (verilog-looking-back, verilog-in-attribute-p): Fix labeling of
14852         always constructs, bug895.
14853         (verilog-calc-1): Fix verilog-mode constraint indentation, bug324.
14854         Reported by Eric Mastromarchi.
14855         (verilog-beg-of-statement): Fix indenting for some forms of
14856         constraintsm bug433.  Reported by Brad Parker.  Fix indentation of
14857         continued assignment incorrect if first line ends with ']', bug437.
14858         Reported by Dan Dever.  Fix indention of cover inside an
14859         ifdef, bug 862.  Reported by Bernd Beuster.  Fix labeling do-while
14860         blocks, bug842.
14861         (verilog-preprocessor-re): Fix fork/end UNMATCHED warning, bug859.
14862         Reported by Kaushal Modi.
14863         (verilog-set-auto-endcomments): Fix endlabel end comments, bug888.
14864         (verilog-backward-token): Fix indenting sensitivity lists with
14865         named events, bug840.  Reed.
14866         (verilog-no-indent-begin-re): Fix `verilog-indent-begin-after-if'
14867         nil not honoring 'forever', 'foreach', and 'do' keywords.
14869 2015-05-14  Paul Eggert  <eggert@cs.ucla.edu>
14871         Check for invalid GTK+ monitor scales
14872         * src/gtkutil.c (xg_get_gdk_scale): Return 1 for invalid scales,
14873         INT_MAX for too-large scales.  All callers changed to assume the
14874         result is valid (Bug#20432).
14875         (xg_frame_set_char_size, xg_update_scrollbar_pos):
14876         Calculate scale only if needed.
14877         Show ASCII approximations instead.
14879 2015-05-14  Eli Zaretskii  <eliz@gnu.org>
14881         Fix daemon crashes when linum-mode is turned on early on
14882         * src/window.c (Fwindow_end): Don't try calling display engine
14883         functions on initial-frame frame.  (Bug#20565)
14885         Fix selective diff browsing in Ediff
14886         * lisp/vc/ediff-util.el (ediff-focus-on-regexp-matches):
14887         Go to the beginning of the region before searching for the
14888         ediff-regexp-focus-* regexps.  (Bug#20568)
14890 2015-05-14  Jan D  <jan.h.d@swipnet.se>
14892         Fixes bug#20142
14893         * src/gtkutil.c (delete_cb): Don't send delete event here, it does
14894         arrive in the main loop, even for Gtk 3 (Bug#20142).
14896         Don't access display after i/o error (Bug#19147).
14897         * src/xterm.c (x_connection_closed): Add third arg ioerror.
14898         If ioerror, set display to 0 (Bug#19147).
14899         (x_error_quitter): Call x_connection_closed with third arg false.
14900         (x_io_error_quitter): Call x_connection_closed with third arg true.
14902         Handle GTK_SCALE, fixes Bug#20432.
14903         * src/gtkutil.c (xg_get_gdk_scale): New function.
14904         (xg_frame_set_char_size)
14905         (x_wm_set_size_hint, xg_get_default_scrollbar_width)
14906         (xg_get_default_scrollbar_height)
14907         (xg_update_horizontal_scrollbar_pos): Take GTK_SCALE in to account
14908         when setting sizes (Bug#20432).
14910 2015-05-13  Leo Liu  <sdl.web@gmail.com>
14912         * lisp/emacs-lisp/generator.el (cps--gensym): Fix.
14914 2015-05-13  Glenn Morris  <rgm@gnu.org>
14916         Fix bootstrap (void function cl-member).
14917         * lisp/emacs-lisp/cl-lib.el: Load cl-seq if no cl-loaddefs file.
14918         * lisp/emacs-lisp/cl-seq.el: Provide a feature.
14920 2015-05-13  Stefan Monnier  <monnier@iro.umontreal.ca>
14922         * lisp/loadup.el ("emacs-lisp/cl-generic"): Preload
14923         * src/lisp.mk (lisp): Add emacs-lisp/cl-generic.elc.
14924         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method):
14925         Avoid defalias for closures which are not immutable.
14926         (cl--generic-prefill-dispatchers): New macro.  Use it to prefill
14927         the dispatchers table with various entries.
14928         * lisp/emacs-lisp/ert.el (emacs-lisp-mode-hook):
14929         * lisp/emacs-lisp/seq.el (emacs-lisp-mode-hook): Use add-hook.
14931 2015-05-13  Eli Zaretskii  <eliz@gnu.org>
14933         Improve tagging of C bindings in DEFVAR_*
14934         * src/Makefile.in (TAGS): Add --regex options to tag the C binding
14935         from DEFVAR_*.
14937 2015-05-13  Paul Eggert  <eggert@cs.ucla.edu>
14939         * src/editfns.c (Fformat): Fix use-after-free bug (Bug#20548).
14941 2015-05-12  Glenn Morris  <rgm@gnu.org>
14943         * lisp/progmodes/tcl.el (tcl-filter):
14944         Handle comint-prompt-read-only like gud.el does.  (Bug#20549)
14946         Add basic VC push support
14947         * lisp/vc/vc.el (vc-push): New autoloaded command.
14948         * lisp/vc/vc-hooks.el (vc-prefix-map, vc-menu-map): Add vc-push.
14949         * lisp/vc/vc-bzr.el (vc-bzr--pushpull): New, factored from vc-bzr-pull.
14950         (vc-bzr-pull): Reimplement using vc-bzr--pushpull.
14951         (vc-bzr-push): New.
14952         * lisp/vc/vc-git.el (vc-git--pushpull): New, factored from vc-git-pull.
14953         (vc-git-pull): Reimplement using vc-git--pushpull.
14954         (vc-git-push): New.
14955         * lisp/vc/vc-hg.el (vc-hg--pushpull): New, factored from vc-hg-pull.
14956         (vc-hg-pull, vc-hg-push): Reimplement using vc-hg--pushpull.
14957         * doc/emacs/maintaining.texi (Pulling / Pushing):
14958         Rename from "VC Pull".  Mention pushing.
14959         (VC With A Merging VCS, VC Change Log): Update xrefs.
14960         (Branches): Update menu.
14961         * doc/emacs/emacs.texi: Update menu.
14962         * etc/NEWS: Mention this.
14964 2015-05-12  Nicolas Petton  <nicolas@petton.fr>
14966         Improve the seq pcase pattern and the `seq-let' macro
14967         * lisp/emacs-lisp/seq.el: The pcase pattern now matches only if the
14968         object is a sequence, and binds each element of ARGS to the
14969         corresponding element of the sequence.
14971 2015-05-12  Eli Zaretskii  <eliz@gnu.org>
14973         Fix tags created from DEFVAR_* declarations in C
14974         * src/Makefile.in (TAGS): Improve the --regex argument to etags,
14975         to make tags extracted from DEFVAR_* declarations more accurate.
14977         Add a test suite for etags
14978         * test/etags/: New test suite, adapted from
14979         http://fly.isti.cnr.it/pub/software/unix/etags-regression-test.tar.bz2,
14980         whose original author is Francesco Potortì <pot@gnu.org>.
14982         Fix tagging of symbols in C enumerations
14983         * lib-src/etags.c (consider_token): Don't tag symbols in
14984         expressions that assign values to enum constants.  See
14985         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00291.html
14986         for details.
14987         (C_entries): Reset fvdef to fvnone after processing a preprocessor
14988         conditional and after a comma outside of parentheses.
14990 2015-05-12  Glenn Morris  <rgm@gnu.org>
14992         * lisp/url/url-handlers.el (url-file-name-completion)
14993         (url-file-name-all-completions): Silence compiler.
14995         * lisp/emacs-lisp/chart.el (chart-axis-draw): Replace obsolete alias.
14997         * lisp/play/dunnet.el (dun-dos-boot-msg): Fix time.  (Bug#20554)
14999 2015-05-12  Stefan Monnier  <monnier@iro.umontreal.ca>
15001         * lisp/emacs-lisp/cl-generic.el: Add dispatch on &context arguments
15002         (cl--generic-mandatory-args): Remove.
15003         (cl--generic-split-args): New function.
15004         (cl-generic-define, cl--generic-lambda): Use it.
15005         (cl-generic-define-method): Use it as well, and add support for
15006         context args.
15007         (cl--generic-get-dispatcher): Handle &context dispatch.
15008         (cl--generic-cache-miss): `dispatch-arg' can now be a
15009         context expression.
15010         (cl--generic-dispatchers): Pre-fill.
15011         * test/automated/cl-generic-tests.el (sm-generic-test-12-context):
15012         New test.
15014 2015-05-11  Glenn Morris  <rgm@gnu.org>
15016         * make-dist: Abort if "make ChangeLog" fails.  Add "--no-changelog".
15018 2015-05-11  Stefan Monnier  <monnier@iro.umontreal.ca>
15020         * lisp/term/xterm.el: Fix xterm-paste handling for rxvt
15021         * lisp/term/rxvt.el: Require term/xterm.
15022         (rxvt-function-map): Use xterm-rxvt-function-map.
15023         (rxvt-standard-colors): Move before first use.
15024         (terminal-init-rxvt): Use xterm--push-map and
15025         xterm-register-default-colors.
15026         (rxvt-rgb-convert-to-16bit, rxvt-register-default-colors): Remove.
15027         * lisp/term/xterm.el (xterm-rxvt-function-map): New var.
15028         Move shared bindings between rxvt and xterm to it.
15029         (xterm-function-map): Use it.  Move the xterm-paste binding to
15030         xterm-rxvt-function-map (bug#20444).
15031         (xterm-standard-colors): Move before first use.
15032         (xterm--push-map): New function.
15033         (xterm-register-default-colors): Take standard colors as argument.
15034         (terminal-init-xterm): Use it.  Adjust call to
15035         xterm-register-default-colors.
15037 2015-05-11  Glenn Morris  <rgm@gnu.org>
15039         * lisp/term/x-win.el: Quieten --without-x compilation.
15040         (x-own-selection-internal, x-disown-selection-internal)
15041         (x-selection-owner-p, x-selection-exists-p, x-get-selection-internal):
15042         Declare.
15044         * Makefile.in (emacslog): Remove srcdir.
15045         (ChangeLog): Update for the above.
15047 2015-05-10  Fabián Ezequiel Gallina  <fgallina@gnu.org>
15049         python.el: better limit for looking-back calls
15050         * lisp/progmodes/python.el (python-shell-accept-process-output):
15051         Use last comint prompt start as limit for looking-back.
15053 2015-05-10  Stefan Monnier  <monnier@iro.umontreal.ca>
15055         CEDET (srecode-insert-fcn): Fix use of oref on a class
15056         * lisp/cedet/srecode/insert.el (srecode-insert-fcn): Fix use of oref
15057         on a class.  Reported by Pierre Lorenzon.
15058         (srecode-template-inserter-point): Remove declaration.
15060         CEDET (srecode-create-dictionary): Avoid obsolete object name
15061         * lisp/cedet/srecode/dictionary.el (srecode-create-dictionary):
15062         Don't use a symbol as an object name.  Reported by Pierre Lorenzon.
15064 2015-05-10  Paul Eggert  <eggert@cs.ucla.edu>
15066         C-x 8 shorthands for curved quotes, Euro, etc.
15067         Although C-x 8 lets you insert arbitrary Unicode characters,
15068         it's awkward to use this to insert commonly used symbols such as curved
15069         quotes, the Euro symbol, etc.  This patch adds simpler sequences for
15070         characters commonly found in English text and in basic math.
15071         For example, assuming the Alt key works on your keyboard and iso-transl
15072         is loaded, one can now type "A-[" instead of "A-RET LEFT SIN TAB RET"
15073         to get the character "‘" (U+2018 LEFT SINGLE QUOTATION MARK).
15074         (Bug#20499)
15075         * doc/emacs/mule.texi (Unibyte Mode):
15076         A few other printing characters now work too.
15077         * etc/NEWS: Document this.
15078         * lisp/international/iso-transl.el (iso-transl-char-map):
15079         Also support the following characters:
15080         ‐ ‑ ‒ – — ― ‘ ’ “ ” † ‡ • ′ ″ € № ← → ↔ − ≈ ≠ ≤ ≥
15082 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
15084         Add xref-find-regexp
15085         * lisp/progmodes/xref.el (xref-find-function): Describe the
15086         `matches' action.
15087         (xref-find-regexp): New command, using it.
15088         (xref-collect-references): Rename to xref-collect-matches.
15089         (xref--collect-reference): Rename to xref--collect-match.
15090         (xref-collect-matches, xref--collect-match): Accept new argument,
15091         KIND.  Update accordingly.
15092         (xref--regexp-to-extended): New function.
15093         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Support the
15094         `matches' action.
15095         (elisp--xref-find-matches): Accept new argument.  Resolve a FIXME.
15096         * lisp/progmodes/etags.el (etags-xref-find):
15097         Support the `matches' action.
15098         (etags--xref-find-matches): New function.
15100 2015-05-10  Glenn Morris  <rgm@gnu.org>
15102         * Makefile.in: Fixes for recent change-history changes.
15103         (change-history-nocommit): Update footer regexp.
15104         Ensure output script stays executable.
15106 2015-05-10  Nicolas Petton  <nicolas@petton.fr>
15108         New version of `seq-let' based on a pcase pattern
15109         * lisp/emacs-lisp/seq.el (seq-let): Define the macro in terms of a
15110         pcase pattern if `pcase-defmacro' is defined (Emacs>=25.1).
15112 2015-05-10  Przemysław Wojnowski  <esperanto@cumego.com>
15114         Add basic HTML5 tags and a template
15115         * lisp/textmodes/sgml-mode.el: Basic HTML5 support.
15116         (html-tag-alist): Add HTML5 tags.
15117         (html-tag-help): Add new tags descriptions.
15118         (html-navigational-links): Template for nav links.
15119         (html-html5-template): Template for a HTML5 page.
15121 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
15123         semantic/symref/grep: Don't use word boundaries
15124         * lisp/cedet/semantic/symref/grep.el
15125         (semantic-symref-perform-search): Instead of wrapping input in
15126         word boundaries, check that the characters before and after are
15127         not word constituents.
15129         semantic/symref/grep: Support regexp search
15130         * lisp/cedet/semantic/symref.el
15131         (semantic-symref-hit-to-tag-via-buffer): Don't regexp-quote when
15132         the search type is regexp.
15133         * lisp/cedet/semantic/symref/grep.el
15134         (semantic-symref-perform-search): Support the regexp search type.
15135         Pass -E to Grep when it's used.
15137         semantic-symref-regexp: Allow to input an arbitrary string
15138         * lisp/cedet/semantic/symref/list.el (semantic-symref-regexp):
15139         Allow to input an arbitrary string interactively.
15141         Remove tag-symbol-match-p from etags-xref-find-definitions-tag-order
15142         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
15143         Remove tag-symbol-match-p from the default value
15144         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00292.html).
15146         Declare find-tag obsolete
15147         * lisp/progmodes/etags.el (find-tag): Declare obsolete in favor of
15148         xref-find-definitions.
15150 2015-05-10  Jan D  <jan.h.d@swipnet.se>
15152         Draw composite string correctly (Bug#20537)
15153         * src/nsterm.m (ns_draw_composite_glyph_string_foreground):
15154         New function.
15155         (ns_draw_glyph_string): Call it.
15157 2015-05-09  Eli Zaretskii  <eliz@gnu.org>
15159         Avoid infloop in ERC
15160         * lisp/simple.el (line-move-to-column): Ignore field boundaries
15161         while computing line beginning position.  (Bug#20498)
15163 2015-05-08  Glenn Morris  <rgm@gnu.org>
15165         * Makefile.in (ChangeLog): No longer pass "srcprefix"; cd instead.
15166         * build-aux/gitlog-to-emacslog: Check called from right directory.
15167         (srcprefix): Remove.
15169         * build-aux/gitlog-to-emacslog: Get rid of "distprefix".
15170         * Makefile.in (ChangeLog): No longer pass "distprefix".
15171         * make-dist: Update "make ChangeLog" syntax for the above change.
15173         * build-aux/gitlog-to-emacslog: Don't hard-code "ChangeLog.2".
15174         * Makefile.in (ChangeLog): Pass -n to gitlog-to-emacslog.
15176         * build-aux/gitlog-to-emacslog: Add "for earlier changes" to footer.
15178         Add command-line option-parsing to gitlog-to-emacslog
15179         * build-aux/gitlog-to-emacslog: Add command-line options.
15180         By default, refuse to remove an existing output file.
15181         * Makefile.in (CHANGELOG): Update default.
15182         (ChangeLog): Do not test for existing file.
15183         (change-history-nocommit): Ensure temp file does not exist.
15185         Quieten --without-x compilation
15186         * lisp/term/common-win.el: Provide a feature.
15187         * lisp/term/x-win.el (term/common-win): Require it.
15189         * lisp/dired-aux.el (dired-do-print): Require lpr.
15191         Quieten compilation, eg in --without-x builds
15192         * lisp/dired-aux.el (lpr-printer-switch):
15193         * lisp/frame.el (tool-bar-height):
15194         * lisp/linum.el (font-info):
15195         * lisp/window.el (font-info, overflow-newline-into-fringe)
15196         (tool-bar-height):
15197         * lisp/emacs-lisp/package-x.el (tar-data-buffer):
15198         * lisp/gnus/gnus-util.el (iswitchb-mode):
15199         * lisp/mail/rmailmm.el (libxml-parse-html-region):
15200         * lisp/net/nsm.el (gnutls-peer-status)
15201         (gnutls-peer-status-warning-describe):
15202         * lisp/net/shr.el (libxml-parse-xml-region):
15203         * lisp/url/url-http.el (gnutls-peer-status): Declare.
15205 2015-05-08  Stefan Monnier  <monnier@iro.umontreal.ca>
15207         CEDET (srecode-pop, srecode-peek): Don't use `subclass'
15208         * lisp/cedet/srecode/insert.el (srecode-pop, srecode-peek): Don't use
15209         `subclass' since they're never called with a class.
15210         (srecode-insert-method, srecode-insert-subtemplate): Avoid obsolete
15211         srecode-dictionary-child-p.
15213 2015-05-08  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
15215         * lisp/help.el (help--binding-locus): Document argument POSITION.
15216         (Bug#20530)
15218 2015-05-08  Paul Eggert  <eggert@cs.ucla.edu>
15220         Merge from gnulib
15221         * doc/misc/texinfo.tex: Get latest version.
15223 2015-05-08  Oleh Krehel  <ohwoeowho@gmail.com>
15225         ffap.el (ffap-read-file-or-url): Fix completing-read call
15226         * lisp/ffap.el (ffap-read-file-or-url): The HIST argument of
15227         `completing-read' should be a symbol.
15229 2015-05-08  Eli Zaretskii  <eliz@gnu.org>
15231         Verify file modifications by other programs
15232         * src/filelock.c (lock_file): Check whether the file was modified
15233         since it was visited even if 'create-lockfiles' is nil.  (Bug#18828)
15235         Fix keyboard macros that include function keys
15236         * src/keyboard.c (read_char_minibuf_menu_prompt): Record function
15237         keys in the macro before returning.  (Bug#20454)
15239 2015-05-08  Glenn Morris  <rgm@gnu.org>
15241         * build-aux/gitlog-to-changelog: Treat "Tiny-change" like
15242         "Copyright-paperwork-exempt".  (Bug#20324)
15244         * lisp/vc/log-edit.el: Handle "(tiny change)".  (Bug#20324)
15245         (log-edit-rewrite-tiny-change): New variable.
15246         (log-edit-insert-changelog): Maybe add "Copyright-paperwork-exempt".
15247         (log-edit-changelog-ours-p): Set log-edit-author to a cons.
15248         * etc/NEWS: Mention this.
15250         * lisp/calc/calc.el (math-zerop): Declare.
15252         * lisp/emacs-lisp/eieio-opt.el (help-fns-short-filename): Declare.
15254 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
15256         * lisp/emacs-lisp/subr-x.el (if-let): Fix debug spec.
15257         Support the case when BINDINGS is a single tuple.  (Bug#20525)
15259         * etc/NEWS: Fix typo in previous commit
15260         (14bb519f1034ddb38ce375cbad7095d9b07f8b26).
15262 2015-05-07  Jan D  <jan.h.d@swipnet.se>
15264         * configure.ac: Warn for multiple display crash for all Gtk+ versions.
15265         Output URL to Gtk+ bug (Bug#20452).
15267         * lisp/term/ns-win.el (ns-paste-secondary): Use gui-get-selection.
15269 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
15271         * lisp/emacs-lisp/package.el: New "external" package status.
15272         An external package is any installed package that's not built-in
15273         and not from `package-user-dir', which usually means it's from an
15274         entry in `package-directory-list'.  They are treated much like
15275         built-in packages, in that they cannot be through the Package Menu
15276         deleted and are not considered for upgrades.
15277         (package-desc-status): Identify if a package is installed outside
15278         `package-user-dir'.
15279         (package-menu--print-info-simple)
15280         (package-menu--status-predicate): Add support for it.
15281         * etc/NEWS: Document it.
15283 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
15285         * lisp/mail/rmail.el: Use lexical-binding.
15286         (rmail-bury): Remove unused var `buffer-to-bury'.
15287         (rmail-get-new-mail): Remove unused vars `opoint' and `success'.
15288         (rmail-parse-url): Remove unused var `proto', `user', and `host'.
15289         (rmail-unrmail-new-mail-maybe): Remove unused var `new-file'.
15290         (rmail-insert-inbox-text): Remove unused var `movemail'.
15291         (rmail-add-mbox-headers): Remove unused var `limit'.
15292         (rmail-undelete-previous-message): Remove unused var `value'.
15293         (rmail-reply): Remove unused vars `resent-to', `resent-cc',
15294         `resent-reply-to'.
15295         (rmail-mime-mbox-buffer, rmail-mime-view-buffer): Declare.
15296         (rmail-restore-desktop-buffer): Rename arguments.
15298 2015-05-06  Glenn Morris  <rgm@gnu.org>
15300         * Makefile.in (change-history-commit): Add missing piece of previous.
15302         Avoid unnecessary bumping of Makefile.in's timestamp
15303         * Makefile.in (gen_origin): Move to gitlog-to-emacslog.
15304         (emacslog): New variable.
15305         (ChangeLog): Use $emacslog.  Don't pass $gen_origin.
15306         (unchanged-history-files): Use $emacslog rather than Makefile.in.
15307         (change-history-nocommit): Store hash in $emacslog.
15308         * build-aux/gitlog-to-emacslog (gen_origin): Move default here.
15309         * admin/update_autogen (changelog_files): Update for the above.
15311         * Makefile.in: Don't always insist on removing existing "ChangeLog".
15312         (CHANGELOG): New variable.
15313         (no-ChangeLog): Remove.
15314         (ChangeLog): Replace "no-ChangeLog"; pass output file to script.
15315         (change-history-nocommit): Use a temp file rather than insisting
15316         on deletion of any existing "ChangeLog".
15318         * build-aux/gitlog-to-emacslog: Allow specification of output.
15320         * admin/update_autogen: Add option to update ChangeLog.
15321         (usage): Mention -H.
15322         (changelog_flag, changelog_n, changelog_files): New variables.
15323         (main): Check for -H, and maybe run change-history-nocommit.
15325 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
15327         * lisp/subr.el (delete-dups): Pre-size the hashtable.
15329         * lisp/emacs-lisp/cl.el (define-modify-macro): Make sure
15330         cl--arglist-args is defined (bug#20517).
15332 2015-05-06  Glenn Morris  <rgm@gnu.org>
15334         * Makefile.in (change-history-nocommit): New.
15336 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
15338         * lisp/cedet/pulse.el (pulse-momentary-unhighlight): Only cancel
15339         timer when it is non-nil
15340         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00223.html).
15342 2015-05-06  Glenn Morris  <rgm@gnu.org>
15344         Quieten CEDET compilation
15345         * lisp/cedet/semantic/db-el.el (semanticdb-elisp-sym->tag):
15346         Invert fboundp test to quieten on current Emacs.
15347         * lisp/cedet/ede/config.el (ede-shell-run-something)
15348         (semanticdb-file-table-object, semanticdb-needs-refresh-p)
15349         (semanticdb-refresh-table): Declare.
15350         (ede-preprocessor-map): Require semantic/db.
15352         Quieten cc-mode compilation
15353         * lisp/progmodes/cc-awk.el (c-forward-sws):
15354         * lisp/progmodes/cc-cmds.el (c-forward-subword, c-backward-subword):
15355         Declare.
15357 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
15359         * lisp/subr.el (delete-dups): Avoid nreverse.
15361 2015-05-06  Artur Malabarba  <bruce.connor.am@gmail.com>
15363         * lisp/subr.el (delete-dups): Make it destructive again.
15365 2015-05-06  Paul Eggert  <eggert@cs.ucla.edu>
15367         * doc/lispref/sequences.texi (Sequence Functions): Fix quoting.
15369 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
15371         * lisp/emacs-lisp/testcover.el: Don't use edebug--read (bug#20487).
15372         * lisp/emacs-lisp/testcover.el: Use lexical-binding.
15373         (testcover--read): Rename from testcover-read.  Change calling
15374         convention.  Use edebug-read-and-maybe-wrap-form now that edebug-read
15375         is gone.
15376         (testcover-start): Use add-function.  Move edebug-all-defs binding to
15377         testcover--read.
15378         (testcover-this-defun): Tighten scope of edebug-all-defs binding.
15379         (testcover-mark): Remove unused var `item'.
15380         * src/lread.c (syms_of_lread): Default load-read-function to `read'.
15382 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
15384         * lisp/subr.el (delete-dups): When there are more than 100 candidates,
15385           use a hash table.  This can result in ~500 times speed-up for typical
15386           collections of size 5000, like that of `load-library'.
15388 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
15390         CEDET: Avoid `oref' on classes in a few more cases
15391         * lisp/cedet/ede/generic.el (ede-find-target):
15392         * lisp/cedet/ede.el (ede-project-forms-menu): Avoid `oref' on classes.
15393         * lisp/cedet/semantic/bovine/gcc.el (semantic-gcc-setup): Remove unused
15394         var `prefix'.
15396         * lisp/cedet/semantic/symref/grep.el: Fix unused var warnings.
15397         (grepflags, greppattern): Declare.
15398         (semantic-symref-perform-search): Remove unused var `pat'.
15400         CEDET (srecode-compile-inserter): Avoid `oref' on classes
15401         * lisp/cedet/srecode/compile.el (srecode-compile-inserter):
15402         Avoid `oref' on classes (bug#20491).
15403         (srecode-compile-split-code): Remove unused var `key'.
15405 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
15407         Clean up pulse.el a little
15408         * lisp/cedet/pulse.el (pulse): Remove.
15409         (pulse-momentary-timer): Save instead of the stop time.
15410         (pulse-momentary-highlight-overlay):
15411         Call pulse-momentary-unhighlight first thing.
15412         Treat pulse-momentary-overlay as a single value, not a list.
15413         Save the created timer.  Only pass the stop time to the timer.
15414         (pulse-tick): Update accordingly.
15415         (pulse-momentary-unhighlight): Treat pulse-momentary-overlay as a
15416         single value.  Cancel the timer.
15418 2015-05-06  Tassilo Horn  <tsdh@gnu.org>
15420         * lisp/textmodes/reftex-cite.el (reftex-format-bib-entry):
15421         Support the biblatex journaltitle field.
15423 2015-05-05  Glenn Morris  <rgm@gnu.org>
15425         Minor declare-function improvement
15426         * lisp/emacs-lisp/bytecomp.el
15427         (byte-compile-macroexpand-declare-function):
15428         Handle declarations after calls.  (Bug#20509)
15430         * lisp/progmodes/js.el (js--optimize-arglist): Remove declaration.
15432         * lisp/w32-fns.el (w32-shell-name): Silence compiler.
15434 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
15436         Pulse using a timer
15437         * lisp/cedet/pulse.el (pulse-momentary-stop-time): New variable.
15438         (pulse-momentary-highlight-overlay): Set up the timer instead of
15439         calling `pulse'
15440         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/).
15441         (pulse-tick): New function.
15442         (pulse-momentary-unhighlight): Cut off the stop time.
15443         (pulse-delay): Update the docstring WRT to not using sit-for.
15445         Add semantic/symref/grep file patterns for ruby-mode
15446         * lisp/cedet/semantic/symref/grep.el
15447         (semantic-symref-filepattern-alist): Add patterns for ruby-mode.
15448         Clarify the docstring.
15450         Don't require match
15451         * lisp/progmodes/xref.el (xref--read-identifier): Don't require
15452         match.  That doesn't work for every command, and some identifier
15453         completion tables are bound to be imperfect anyway.
15455 2015-05-05  Stefan Monnier  <monnier@iro.umontreal.ca>
15457         * lisp/cedet/semantic/grammar.el: Fix compiler warnings (bug#20505).
15458         (semantic-grammar--template-expand): New function.
15459         (semantic-grammar-header, semantic-grammar-footer): Use it.
15460         (semantic-grammar--lex-block-specs): Remove unused var `block-spec'.
15461         (semantic-grammar-file-regexp): Refine regexp.
15462         (semantic-grammar-eldoc-get-macro-docstring):
15463         Use elisp-get-fnsym-args-string when available.
15464         (semantic-idle-summary-current-symbol-info): Use new elisp-* names
15465         instead of the old eldoc-* names.
15466         * lisp/emacs-lisp/eldoc.el (eldoc-docstring-format-sym-doc): Move back
15467         from elisp-mode.el.  Tweak calling convention.
15468         * lisp/progmodes/elisp-mode.el (package-user-dir): Declare.
15469         (elisp-get-fnsym-args-string): Add `prefix' argument.  Rename from
15470         elisp--get-fnsym-args-string.
15471         (elisp--highlight-function-argument): Add `prefix' arg.
15472         (elisp-get-var-docstring): Rename from elisp--get-var-docstring.
15473         (elisp--docstring-format-sym-doc): Move back to eldoc.el.
15475 2015-05-05  Glenn Morris  <rgm@gnu.org>
15477         * lisp/help-fns.el (describe-function-1):
15478         Handle builtins with advertised calling conventions.  (Bug#20479)
15480 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
15482         Merge branch 'seq-let'
15484         Update `seq-let' documentation
15485         * doc/lispref/sequences.texi: Update the documentation of `seq-let'
15486         with the support of  `&rest'.
15488         Add support for &rest in `seq-let'
15489         * lisp/emacs-lisp/seq.el (seq--make-bindings): Add support for `&rest'
15490         in the argument list.
15491         * test/automated/seq-tests.el: Add a test for parsing and binding
15492         `&rest' in `seq-let'.
15494 2015-05-05  Pierre Lorenzon  <devel@pollock-nageoire.net>  (tiny change)
15496         * lisp/emacs-lisp/eieio-custom.el (eieio-object-value-get):
15497         Add missing increment (Bug#20467).
15498         (eieio-object-value-create): Adjust to new slots representation
15499         (Bug#20467).
15500         (eieio-object-value-create): Fix missed adjustment to new
15501         representation of slots metadata.
15503 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
15505         * lisp/emacs-lisp/seq.el (seq--make-bindings): Improve the docstring.
15507 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
15509         Work around "Attempt to modify read-only object"
15510         * lisp/progmodes/elisp-mode.el (elisp--xref-format): Extract from
15511         elisp--xref-find-definitions, to work around "Attempt to modify
15512         read-only object" error.
15514         Only skip some variables that have function counterparts
15515         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
15516         Only skip minor-mode-named variable if it's defined in a Lisp
15517         file, and it's in minor-mode-list (bug#20506).
15518         * test/automated/elisp-mode-tests.el
15519         (elisp-xref-finds-both-function-and-variable)
15520         (elisp-xref-finds-only-function-for-minor-mode): New tests.
15522 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
15524         * lisp/progmodes/xref.el (xref--location-at-point): Revert the
15525         previous change.
15526         (xref--insert-xrefs): Buttonize the whole line, including the
15527         number at the beginning.
15529         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
15530         Make sure we're inside the let bindings.
15531         * test/automated/elisp-mode-tests.el
15532         (elisp-completes-functions-after-let-bindings): New test.
15534 2015-05-04  Glenn Morris  <rgm@gnu.org>
15536         * lisp/cedet/semantic/grammar.el (eldoc-function-argstring)
15537         (eldoc-docstring-format-sym-doc, eldoc-last-data-store)
15538         (eldoc-get-fnsym-args-string, eldoc-get-var-docstring):
15539         Remove outdated declarations.
15541         Replace instances of "(eval-when-compile (autoload ...))"
15542         * lisp/gnus/gnus-art.el (nneething-get-file-name):
15543         Declare rather than autoload.
15544         * lisp/gnus/gnus-async.el (gnus-html-prefetch-images):
15545         Remove pointless autoload.
15546         * lisp/gnus/gnus-sync.el (gnus-group-topic): Autoload at run-time.
15547         (gnus-topic-create-topic, gnus-topic-enter-dribble):
15548         Declare rather than autoload.
15549         * lisp/gnus/mm-archive.el (gnus-recursive-directory-files)
15550         (mailcap-extension-to-mime): Autoload at run-time.
15551         * lisp/gnus/mm-util.el (latin-unity-massage-name)
15552         (latin-unity-maybe-remap, latin-unity-representations-feasible-region)
15553         (latin-unity-representations-present-region):
15554         Declare rather than autoload.
15555         * lisp/gnus/mml-smime.el (epg-make-context)
15556         (epg-passphrase-callback-function): Autoload at run-time.
15557         (epg-context-set-signers, epg-context-result-for)
15558         (epg-new-signature-digest-algorithm)
15559         (epg-verify-result-to-string, epg-list-keys, epg-verify-string)
15560         (epg-sign-string, epg-encrypt-string)
15561         (epg-context-set-passphrase-callback, epg-sub-key-fingerprint)
15562         (epg-configuration, epg-expand-group, epa-select-keys):
15563         Declare rather than autoload.
15564         * lisp/gnus/nnir.el (nnimap-change-group, nnimap-make-thread-query):
15565         Autoload at run-time.
15566         (gnus-group-topic-name, nnimap-buffer, nnimap-command)
15567         (gnus-registry-get-id-key, gnus-registry-action):
15568         Declare rather than autoload.
15569         * lisp/gnus/nnmail.el (mail-send-and-exit): Autoload at run-time.
15570         * lisp/gnus/spam.el (spam-stat-buffer-change-to-non-spam)
15571         (spam-stat-buffer-change-to-spam, spam-stat-buffer-is-non-spam)
15572         (spam-stat-buffer-is-spam, spam-stat-load, spam-stat-save)
15573         (spam-stat-split-fancy): Remove pointless autoloads.
15574         * lisp/net/mairix.el: Load gnus-util when compiling.
15575         (gnus-group-read-ephemeral-group, gnus-summary-toggle-header)
15576         (message-field-value): Declare rather than autoload.
15577         (mairix-gnus-ephemeral-nndoc, mairix-gnus-fetch-field):
15578         Check gnus-alive-p is fbound.
15579         (vm-quit, vm-visit-folder, vm-select-folder-buffer)
15580         (vm-check-for-killed-summary, vm-error-if-folder-empty)
15581         (vm-get-header-contents, vm-select-marked-or-prefixed-messages):
15582         Declare rather than autoload.
15584         * lisp/gnus/mm-view.el (epg-decrypt-string): Autoload.
15586         * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
15587         (epg-sub-key-capability, epg-sub-key-validity): Fix declarations.
15589         * lisp/progmodes/elisp-mode.el (xref-collect-references): Declare.
15591         * lisp/emacs-lisp/debug.el (help-xref-interned): Update declaration.
15593         * lisp/allout.el (epg-user-id-string, epg-key-user-id-list):
15594         * lisp/emacs-lisp/package.el (epg-signature-status):
15595         Fix declarations.
15597         * lisp/play/gametree.el (gametree-show-children-and-entry)
15598         (gametree-apply-layout, gametree-mouse-show-subtree)
15599         (gametree-mouse-hide-subtree): Replace obsolete outline aliases.
15601         * lisp/emacs-lisp/check-declare.el (check-declare-verify):
15602         Handle cl-defgeneric, cl-defmethod.
15604 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
15606         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions):
15607         Highlight both type and symbol name.
15609         Insert, highlight and align line numbers in xref output
15610         * lisp/progmodes/etags.el (xref-location-line): Specialize for
15611         xref-etags-location.
15612         * lisp/progmodes/xref.el (xref-location-line): New generic method.
15613         (xref-file-location): Add reader for the line slot.
15614         (xref--location-at-point): Skip to the `xref-location' property.
15615         (xref--collect-reference): Drop the line number from description.
15616         (xref--insert-xrefs): Insert, highlight and align line numbers.
15618 2015-05-04  Daniel Colascione  <dancol@dancol.org>
15620         * lisp/simple.el (save-mark-and-excursion--save)
15621         (save-mark-and-excursion--restore): Fix previous commit
15622         (255a011f0ecf004b31c59945b10154b10fac3af1).
15624 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
15626         Don't pulse the indentation, or the newline
15627         * lisp/cedet/pulse.el (pulse-lighten-highlight)
15628         (pulse-reset-face): Fall back to the inherited background
15629         attribute in FACE.
15630         (pulse-momentary-highlight-region): Add autoload cookie.
15631         * lisp/progmodes/xref.el (xref--maybe-pulse): Don't highlight the
15632         indentation, or the newline, if the line's non-empty
15633         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00118.html).
15635 2015-05-04  Daniel Colascione  <dancol@dancol.org>
15637         Add `save-mark-and-excursion', which has the old
15638         `save-excursion' behavior
15639         * doc/lispref/positions.texi (Excursions):
15640         Document `save-mark-and-excursion'.
15641         * lisp/font-lock.el (font-lock-fontify-block):
15642         Use `save-mark-and-excursion' instead of `save-excursion',
15643         restoring Emacs 24 behavior.
15644         * lisp/simple.el (save-mark-and-excursion--save)
15645         (save-mark-and-excursion--restore): New functions.
15646         (save-mark-and-excursion): New user macro.
15647         * src/editfns.c (Fsave_excursion): Mention `save-mark-and-excursion'
15648         in `save-excursion' documentation.
15650 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
15652         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
15653         Classify lone symbol inside let varlist as variable.
15654         * test/automated/elisp-mode-tests.el
15655         (completest-variables-in-let-bindings): New test.
15657         Add xref-pulse-on-jump
15658         * lisp/cedet/pulse.el (pulse-momentary-highlight-one-line):
15659         Add autoload cookie.
15660         * lisp/progmodes/xref.el (xref-pulse-on-jump): New option.
15661         (xref--maybe-pulse): New function.
15662         (xref-pop-marker-stack, xref--pop-to-location)
15663         (xref--display-position): Use it.
15664         (xref--location-at-point): Use back-to-indentation.
15666 2015-05-04  Stefan Monnier  <monnier@iro.umontreal.ca>
15668         lisp/org/org-{macs,list}.el: Fix lexical warnings
15669         * lisp/org/org-list.el (org-list-struct): Remove unused var `ind'.
15670         (org-list-get-next-item, org-list-get-prev-item)
15671         (org-list-get-children): Mark unused arg `struct'.
15672         (org-list-use-alpha-bul-p): Remove unused var `bul'.
15673         (org-toggle-checkbox): Mark unused var.
15674         (org-update-checkbox-count): Remove unused var `box-num'.
15675         (org-adapt-indentation): Declare.
15676         (org-list-parse-list): Declare var instead of adding a dummy duplicate.
15677         (org-list-send-list): Remove unused var `txt'.
15678         (org-list-to-latex, org-list-to-texinfo): Mark unused arg `params'.
15679         (org-list-to-subtree): Add prefix to dyn-bind var, and declare them.
15680         * lisp/org/org-macs.el: Use `declare'.
15681         (org-with-limited-levels): Declare dyn-bound vars.
15683 2015-05-04  Eli Zaretskii  <eliz@gnu.org>
15685         Fix minor issues with CEDET on MS-Windows
15686         * lisp/cedet/semantic/symref/idutils.el
15687         (semantic-symref-parse-tool-output-one-line): Fix the search
15688         regexp to match MS-Windows file names with drive letters.
15689         (Bug#19468)
15690         * lisp/cedet/semantic/symref/grep.el
15691         (semantic-symref-grep-use-template): Remove "--color=always" from
15692         Grep switches on MS-Windows.
15693         (semantic-symref-grep-shell): Use shell-file-name as the default
15694         value, so this works not only on Posix platforms.
15695         (semantic-symref-perform-search): Use shell-quote-argument instead
15696         of literal '..' for portable quoting of Grep command-line
15697         argument.  Use shell-command-switch instead of a literal "-c".
15698         * lisp/cedet/semantic/bovine/gcc.el
15699         (semantic-gcc-get-include-paths): Use file-name-absolute-p to test
15700         for an absolute file name in a portable way.
15702 2015-05-04  Artur Malabarba  <bruce.connor.am@gmail.com>
15704         * lisp/emacs-lisp/package.el: Remove `package--silence' variable.
15705         (package-import-keyring, package-refresh-contents)
15706         (package-compute-transaction, package--save-selected-packages)
15707         (package-install-from-archive, package-delete)
15708         (package-menu--perform-transaction): Use `inhibit-message' instead.
15709         (package--compile): Set `warning-minimum-level' to :error.
15711 2015-05-03  Stefan Monnier  <monnier@iro.umontreal.ca>
15713         * lisp/term/screen.el (xterm-screen-extra-capabilities): New custom.
15714         (terminal-init-screen): Use it (bug#20356).
15715         * lisp/term/xterm.el: Provide `term/xterm' instead of `xterm'.
15716         (xterm--extra-capabilities-type): New const.
15717         (xterm-extra-capabilities): Use it.
15718         (xterm--version-handler): Lower the pseudo-version for `screen'.
15720 2015-05-03  Dmitry Gutov  <dgutov@yandex.ru>
15722         * lisp/progmodes/xref.el (xref--insert-xrefs): Tweak the faces.
15723         Always insert a newline at the end (to avoid mouse-face background
15724         tail at the last line).
15726         elisp-completion-at-point: Prioritize being quoted over funpos
15727         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
15728         Only consider function position when not inside quoted form
15729         (bug#20425).
15730         * test/automated/elisp-mode-tests.el: New file.
15732         Stop vc-print-log from jumping to the top
15733         * lisp/vc/vc.el (vc-print-log-internal): Pass nil
15734         GOTO-LOCATION-FUNC to vc-log-internal-common when WORKING-REVISION
15735         is not specified.
15736         (vc-incoming-outgoing-internal): Always pass nil.
15737         (vc-log-internal-common): When GOTO-LOCATION-FUNC is nil, don't
15738         call it, and don't set vc-sentinel-movepoint (bug#15322).
15739         (vc-print-root-log): Don't fetch the root working revision, nor
15740         pass it to vc-print-log-internal.
15742 2015-05-02  Michael Vehrs  <Michael.Burschik@gmx.de>
15744         Fix display of keyboard layouts for right-to-left scripts
15745         * lisp/international/quail.el (quail-insert-kbd-layout):
15746         Force left-to-right paragraph direction.
15748 2015-05-02  K. Handa  <handa@gnu.org>
15750         * src/cmds.c (internal_self_insert): When we insert spaces for
15751         padding, set point before the padding spaces, not after them.
15753 2015-05-02  Nicolas Petton  <nicolas@petton.fr>
15755         * lisp/emacs-lisp/seq.el (seq-p): New alias to `sequencep'.
15757 2015-05-02  Dmitry Gutov  <dgutov@yandex.ru>
15759         Fix etags-xref-find for references
15760         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
15761         Use `cl-mapcan'.
15762         * lisp/progmodes/etags.el (etags-xref-find): Ditto.  Prompt for
15763         directory if no tags tables are loaded (bug#19468).
15765 2015-05-02  Philipp Stephani  <phst@google.com>
15767         Update the options in whitespace-style defcustom
15768         * lisp/whitespace.el (whitespace-style): Use `set' instead of a
15769         `repeat' because the option is really set-like.  Add missing
15770         options.  Reorder options to match the order in the
15771         documentation.  (Bug#20346)
15773 2015-05-02  Eli Zaretskii  <eliz@gnu.org>
15775         Fix error diagnostics of c-macro-expand
15776         * lisp/progmodes/cmacexp.el (c-macro-expansion): Don't bail out
15777         too early if no start-marker string was found -- that generally
15778         means cpp exited abnormally, and we still want to show its error
15779         messages to the user.
15781         Don't require Texinfo 5.0 for Emacs documentation
15782         * doc/emacs/docstyle.texi: Use "@set txicodequoteundirected" and
15783         "@set txicodequotebacktick" instead of "@codequotebacktick on" and
15784         "@codequoteundirected on", respectively, to avoid requiring
15785         Texinfo 5.x for Emacs documentation.
15787 2015-05-01  Simen Heggestøyl  <simenheg@gmail.com>
15789         * lisp/files.el (pwd):
15790         When called with a prefix argument, insert the current default
15791         directory at point.
15793 2015-05-01  Stefan Monnier  <monnier@iro.umontreal.ca>
15795         * lisp/isearch.el (isearch-mode-map): Allow backspace remapping
15796         * lisp/isearch.el (isearch-mode-map): Don't inhibit
15797         function-key-map remapping for backspace (bug#20466).
15799 2015-05-01  Dmitry Gutov  <dgutov@yandex.ru>
15801         Implement xref-find-references in etags and elisp-mode
15802         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references): New function.
15803         (elisp-xref-find): Use it.
15804         * lisp/progmodes/etags.el (etags-xref-find): Use `xref-collect-references'.
15805         * lisp/progmodes/xref.el (xref-collect-references):
15806         (xref--collect-reference): New functions.
15808 2015-05-01  Paul Eggert  <eggert@cs.ucla.edu>
15810         Prefer plain characters to Texinfo circumlocutions
15811         For example, prefer 'François' to 'Fran\c{c}ois', 'Fran\c cois',
15812         'Fran@,{c}ois' or 'Francois' (all of which were used!) in Texinfo sources.
15814         Fix single-quoting style in PDF manuals
15815         The PDF versions of the GNU manuals used curved single quotes to
15816         represent grave accent and apostrophe, which made it a pain to cut
15817         and paste code examples from them.  Fix the PDF versions to use
15818         grave accent and apostrophe for Lisp source code, keystrokes, etc.
15819         This change does not affect the info files, nor does it affect
15820         ordinary uses of curved single quotes in PDF.
15821         * doc/emacs/docstyle.texi: New file, which specifies treatment for
15822         grave accent and apostrophe, as well as the document encoding.
15823         * doc/emacs/emacs-xtra.texi, doc/emacs/emacs.texi:
15824         * doc/lispintro/emacs-lisp-intro.texi:
15825         * doc/lispref/back.texi, doc/lispref/book-spine.texi:
15826         * doc/lispref/elisp.texi, doc/lispref/lay-flat.texi:
15827         * doc/misc/ada-mode.texi, doc/misc/auth.texi:
15828         * doc/misc/autotype.texi, doc/misc/bovine.texi, doc/misc/calc.texi:
15829         * doc/misc/cc-mode.texi, doc/misc/cl.texi, doc/misc/dbus.texi:
15830         * doc/misc/dired-x.texi, doc/misc/ebrowse.texi, doc/misc/ede.texi:
15831         * doc/misc/ediff.texi, doc/misc/edt.texi, doc/misc/efaq-w32.texi:
15832         * doc/misc/efaq.texi, doc/misc/eieio.texi, doc/misc/emacs-gnutls.texi:
15833         * doc/misc/emacs-mime.texi, doc/misc/epa.texi, doc/misc/erc.texi:
15834         * doc/misc/ert.texi, doc/misc/eshell.texi, doc/misc/eudc.texi:
15835         * doc/misc/eww.texi, doc/misc/flymake.texi, doc/misc/forms.texi:
15836         * doc/misc/gnus-coding.texi, doc/misc/gnus-faq.texi:
15837         * doc/misc/gnus.texi, doc/misc/htmlfontify.texi:
15838         * doc/misc/idlwave.texi, doc/misc/ido.texi, doc/misc/info.texi:
15839         * doc/misc/mairix-el.texi, doc/misc/message.texi, doc/misc/mh-e.texi:
15840         * doc/misc/newsticker.texi, doc/misc/nxml-mode.texi:
15841         * doc/misc/octave-mode.texi, doc/misc/org.texi, doc/misc/pcl-cvs.texi:
15842         * doc/misc/pgg.texi, doc/misc/rcirc.texi, doc/misc/reftex.texi:
15843         * doc/misc/remember.texi, doc/misc/sasl.texi, doc/misc/sc.texi:
15844         * doc/misc/semantic.texi, doc/misc/ses.texi, doc/misc/sieve.texi:
15845         * doc/misc/smtpmail.texi, doc/misc/speedbar.texi:
15846         * doc/misc/srecode.texi, doc/misc/todo-mode.texi, doc/misc/tramp.texi:
15847         * doc/misc/url.texi, doc/misc/vhdl-mode.texi, doc/misc/vip.texi:
15848         * doc/misc/viper.texi, doc/misc/widget.texi, doc/misc/wisent.texi:
15849         * doc/misc/woman.texi:
15850         Use it instead of '@documentencoding UTF-8', to lessen the need for
15851         global changes like this in the future.
15852         * doc/emacs/Makefile.in (EMACS_XTRA):
15853         * doc/lispintro/Makefile.in (srcs):
15854         * doc/lispref/Makefile.in (srcs):
15855         Add dependency on docstyle.texi.
15856         * doc/misc/Makefile.in (style): New macro.
15857         (${buildinfodir}/%.info, %.dvi, %.pdf, %.html)
15858         (${buildinfodir}/ccmode.info, ${buildinfodir}/efaq%.info, gnus_deps):
15859         Use it.
15861 2015-05-01  Glenn Morris  <rgm@gnu.org>
15863         * test/automated/cl-lib-tests.el (cl-lib-adjoin-test): Fix it.
15865         * lisp/emacs-lisp/pcase.el (get-edebug-spec, edebug-match)
15866         (help-fns--signature): Declare.
15868         * lisp/emacs-lisp/pcase.el (pcase--make-docstring): Require help-fns.
15870 2015-05-01  Nicolas Petton  <nicolas@petton.fr>
15872         New macro seq-let, providing destructuring support to seq.el
15873         * lisp/emacs-lisp/seq.el (seq-let): New macro.  `seq-let' is similar
15874         to `cl-destructuring-bind' but works on all sequence types supported
15875         by `seq.el'.  Bump version number to 1.6.
15876         * test/automated/seq-tests.el: Add tests for seq-let.
15877         * doc/lispref/sequences.texi: Add documentation for seq-let.
15879 2015-05-01  Pontus Michael  <m.pontus@gmail.com>
15881         * lisp/simple.el (blink-matching-open): Better behavior in minibuffer.
15883 2015-05-01  Glenn Morris  <rgm@gnu.org>
15885         * lisp/emacs-lisp/ert.el (ert--special-operator-p): Fix previous.
15887 2015-05-01  Artur Malabarba  <bruce.connor.am@gmail.com>
15889         * lisp/emacs-lisp/bytecomp.el: Revert "Silence noninteractive compilations"
15890         This reverts commit 9a7ddde977378cb5276a81476ae458889c403267.
15891         This reverts commit 3c0ea587daf8b17960b90603a70e3ac4057d883d.
15892         With message: "* lisp/emacs-lisp/bytecomp.el: Use `inhibit-message'".
15893         (Bug#20445).
15895 2015-05-01  K. Handa  <handa@gnu.org>
15897         * lisp/international/mule-cmds.el (input-method-use-echo-area):
15898         Change :type to 'boolean.
15900 2015-05-01  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15902         Start using proportional fonts in eww by default
15903         * lisp/net/shr.el (shr-use-fonts): Switch the default to t, since
15904         it seems to work well.
15906         Fix links in tables in shr
15907         * lisp/net/shr.el: Remove `shr-inhibit-decoration', because that
15908         makes (some) links in tables not work.
15910 2015-05-01  Jan D  <jan.h.d@swipnet.se>
15912         * lisp/term/ns-win.el (ns-get-cut-buffer-internal): Remove this alias.
15914 2015-04-30  Glenn Morris  <rgm@gnu.org>
15916         * lisp/emacs-lisp/ert.el (ert--special-operator-p):
15917         Update for 2015-02-08 change to indirect-function.
15919         * lisp/term/ns-win.el (ns-get-selection-internal):
15920         Remove declaration for function deleted 2014-10-21.
15922         * lisp/dom.el: Load subr-x when compiling, for when-let.
15924         Silence some compilation warnings
15925         * lisp/emacs-lisp/check-declare.el (compilation-forget-errors):
15926         * lisp/emulation/cua-base.el (delete-active-region):
15927         * lisp/net/net-utils.el (w32-get-console-output-codepage):
15928         * lisp/term/ns-win.el (ns-own-selection-internal)
15929         (ns-disown-selection-internal, ns-selection-owner-p)
15930         (ns-selection-exists-p, ns-get-selection):
15931         Declare for compiler.
15933         Function declaration updates prompted by 'make check-declare'
15934         * lisp/emacs-lisp/package.el (lm-homepage):
15935         * lisp/gnus/gnus-util.el (iswitchb-read-buffer):
15936         * lisp/gnus/mm-decode.el (libxml-parse-html-region):
15937         * lisp/gnus/mml.el (libxml-parse-html-region):
15938         * lisp/gnus/nnrss.el (libxml-parse-html-region):
15939         * lisp/net/eww.el (libxml-parse-html-region):
15940         * lisp/net/shr.el (libxml-parse-html-region):
15941         * lisp/vc/vc-bzr.el (vc-annotate-convert-time):
15942         * lisp/vc/vc-cvs.el (vc-annotate-convert-time):
15943         * lisp/vc/vc-git.el (vc-annotate-convert-time):
15944         * lisp/vc/vc-hg.el (vc-annotate-convert-time):
15945         * lisp/vc/vc-mtn.el (vc-annotate-convert-time):
15946         * lisp/vc/vc-rcs.el (vc-annotate-convert-time):
15947         Update declaration.
15949         Remove compatibility code for 20-year old function renaming
15950         * lisp/progmodes/idlw-shell.el (idlwave-shell-comint-filter):
15951         Make it an obsolete alias.
15952         (idlwave-shell-filter): Change all uses to comint-output-filter.
15954 2015-04-30  Tassilo Horn  <tsdh@gnu.org>
15956         Add ace-window face config
15957         * etc/themes/tsdh-light-theme.el (tsdh-light): Add ace-window face
15958         configuration.
15960 2015-04-30  Paul Eggert  <eggert@cs.ucla.edu>
15962         Unclutter 'make doc' output a bit
15963         * Makefile.in ($(DOCS), $(INSTALL_DOC), $(UNINSTALL_DOC)):
15964         Use make subst rather than sh IFS to split target string apart.
15965         This makes 'make' output easier to follow.
15967         Merge from gnulib
15968         * doc/misc/texinfo.tex: Update from gnulib.
15970 2015-04-30  Artur Malabarba  <bruce.connor.am@gmail.com>
15972         * lisp/emacs-lisp/package.el: Some speed optimizations on menu refresh.
15973         (package-menu--print-info): Obsolete.
15974         (package-menu--print-info-simple): New function.
15975         (package-menu--refresh): Use it, simplify code, and improve
15976         performance.
15977         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print-entry):
15978         Tiny performance improvement.
15980         * lisp/emacs-lisp/package.el (package--message): inhibit-message.
15982 2015-04-29  Paul Eggert  <eggert@cs.ucla.edu>
15984         Omit -Wstrict-overflow workaround in GCC 5
15985         * src/process.c: Remove workaround for GCC -Wstrict-overflow bug
15986         if it's GCC 5 or later, as the bug appears to be fixed in GCC 5.1.
15988         Merge from gnulib
15989         This incorporates:
15990         2015-04-29 extern-inline: no need for workaround in GCC 5.1
15991         2015-04-26 file-has-acl: port to CentOS 6
15992         * m4/acl.m4, m4/extern-inline.m4: Update from gnulib.
15994 2015-04-29  Helmut Eller  <eller.helmut@gmail.com>
15996         Set next-error-* in xref--xref-buffer-mode
15997         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
15998         Set `next-error-function' and `next-error-last-buffer'.
15999         (xref--next-error-function): New function.
16000         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01311.html)
16002 2015-04-29  Fabián Ezequiel Gallina  <fgallina@gnu.org>
16004         python.el: Fix warnings on looking-back calls missing LIMIT
16005         * lisp/progmodes/python.el (python-shell-accept-process-output):
16006         Pass LIMIT arg to looking-back.
16008 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
16010         * lisp/emacs-lisp/package.el: Use pushnew for downloads in progress.
16011         (package--download-and-read-archives): Use pushnew instead of
16012         append.  If something terrible happened during a previous
16013         download, simply refreshing should now make things work again.
16015 2015-04-29  Dmitry Gutov  <dgutov@yandex.ru>
16017         Introduce etags-xref-find-definitions-tag-order
16018         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
16019         New variable.
16020         (etags--xref-find-definitions): Use it (bug#19468).
16022 2015-04-29  Eli Zaretskii  <eliz@gnu.org>
16024         PATH- and completion-related fixes in Eshell on MS-Windows
16025         * lisp/eshell/esh-ext.el (eshell-search-path): When running on
16026         MS-Windows, prepend "." to list of directories produced from PATH,
16027         as Windows always implicitly searches the current directory first.
16028         (eshell-force-execution): Make it have a non-nil default value on
16029         MS-Windows and MS-DOS.
16030         * lisp/eshell/em-cmpl.el (eshell-complete-commands-list): If
16031         eshell-force-execution is non-nil, complete on readable files and
16032         directories, not only executables.  When running on MS-Windows,
16033         prepend "." to list of directories produced from PATH, as Windows
16034         always implicitly searches the current directory first.
16036 2015-04-29  Sam Steingold  <sds@gnu.org>
16038         Bury RCIRC buffers when there is no activity
16039         * lisp/net/rcirc.el (rcirc-non-irc-buffer): Remove.
16040         (rcirc-bury-buffers): New function.
16041         (rcirc-next-active-buffer): When there is no new activity, use
16042         `rcirc-bury-buffers' to hide all RCIRC buffers.
16044 2015-04-29  Krzysztof Jurewicz  <krzysztof.jurewicz@gmail.com>  (tiny change)
16046         Fix DBUS query result parsing for secrets-search-items
16047         * lisp/net/secrets.el (secrets-search-items): Fix DBUS query result
16048         parsing.  The function assumed that return value of the
16049         SearchItems method called on a collection is a list of two lists,
16050         however this is true only when no collection is specified.  GNOME
16051         had used to incorrectly return a list of two lists in both cases,
16052         but this was already fixed:
16053         https://bugzilla.gnome.org/show_bug.cgi?id=695115 .  Also fix an
16054         incorrect information in the secrets-search-items’ docstring.
16055         (Bug#20449)
16057 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
16059         * lisp/emacs-lisp/bytecomp.el (byte-compile--message):
16060         Use `inhibit-message' instead of hiding the previous message
16061         with (message nil).
16063 2015-04-29  Oleh Krehel  <ohwoeowho@gmail.com>
16065         Remove the deprecated INTERNAL_FIELD macro by expanding it
16066         * src/lisp.h (INTERNAL_FIELD): Remove.
16067         (DEFVAR_KBOARD): Modify accordingly.
16068         * src/alloc.c, src/buffer.c, src/buffer.h, src/category.c:
16069         * src/keyboard.c, src/keyboard.h, src/syntax.c: Adjust users.
16070         * src/buffer.c (compact_buffer): Use BVAR.
16072 2015-04-29  Glenn Morris  <rgm@gnu.org>
16074         Replace an obsolete function alias
16075         * lisp/isearch.el (isearch-yank-x-selection):
16076         * lisp/mouse-copy.el (mouse-drag-secondary-pasting)
16077         (mouse-drag-secondary-moving):
16078         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
16079         Replace obsolete alias x-get-selection with gui-get-selection.
16081 2015-04-29  Stefan Monnier  <monnier@iro.umontreal.ca>
16083         * lisp/mail/rmailsum.el: Use lexical-binding.
16085 2015-04-29  Glenn Morris  <rgm@gnu.org>
16087         * test/automated/package-test.el (package-test-update-archives-async):
16088         Skip test on hydra.nixos.org.
16090 2015-04-28  Glenn Morris  <rgm@gnu.org>
16092         * lisp/foldout.el: Update for 2015-01-30 outline.el changes.
16093         (foldout-zoom-subtree, foldout-exit-fold, foldout-mouse-show)
16094         (foldout-mouse-hide-or-exit): Use new names for outline functions.
16096         * lisp/cedet/semantic/bovine/c.el (semantic-c-do-lex-if):
16097         Update for 2014-06-26 hideif.el change.
16099         * lisp/mail/rmailsum.el: Fix search for encoded subjects.  (Bug#19088)
16100         (rmail--decode-and-apply): New function.
16101         (rmail-message-regexp-p-1, rmail-message-subject-p): Use it.
16103         * lisp/mail/rmail.el (rmail-highlighted-headers): Fix :type.
16105 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
16107         * lisp/emacs-lisp/package.el: Fix priority-hiding corner case
16108         (package-menu--refresh): Delegate obsolete-hiding to
16109         `package--remove-hidden'.
16110         (package--remove-hidden): Disregard high-priority package if it is
16111         older than the installed one.
16113 2015-04-28  Paul Eggert  <eggert@cs.ucla.edu>
16115         Update source file encoding list
16116         Update admin/notes/unicode, along with coding system cookies in
16117         other files, so that the two match each other better.
16118         * admin/notes/unicode: lisp/language/ethio-util.el and
16119         lisp/language/ethiopic.el also use utf-8-emacs.
16120         * admin/notes/hydra, doc/misc/dbus.texi, doc/misc/org.texi:
16121         * doc/misc/remember.texi, etc/refcards/cs-dired-ref.tex:
16122         * etc/refcards/cs-refcard.tex, etc/refcards/cs-survival.tex:
16123         * etc/refcards/sk-dired-ref.tex, etc/refcards/sk-refcard.tex:
16124         * etc/refcards/sk-survival.tex:
16125         Add "coding: utf-8" so that this file is not mishandled in a
16126         Latin-1 or Big-5 locale.
16127         * lisp/international/robin.el, lisp/org/ox-ascii.el:
16128         Specify utf-8, not utf-8-emacs, as these are plain UTF-8 files.
16129         * lisp/language/ethio-util.el: Fix trailer.
16131 2015-04-28  Eli Zaretskii  <eliz@gnu.org>
16133         Fix synchronous invocation of Ispell
16134         * lisp/textmodes/ispell.el (ispell-init-process): Assign a non-nil
16135         value to ispell-process-directory before calling ispell-init-process.
16136         Don't call set-process-coding-system if ispell-async-processp is nil.
16137         (Bug#20448)
16139 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
16141         * lisp/emacs-lisp/package.el: Skip space and comments in init file
16142         (package--ensure-init-file): Insert snippet at first
16143         non-whitespace non-comments line.  Respects local-vars at the top
16144         of the file.
16146 2015-04-28  Glenn Morris  <rgm@gnu.org>
16148         * lisp/mail/rmail.el (rmail-copy-headers):
16149         Handle rmail-nonignored-headers being nil.  (Bug#18878)
16151         * lisp/subr.el (delay-mode-hooks): Fix doc typo.
16153         * lisp/vc/vc-bzr.el (vc-bzr-after-dir-status):
16154         Don't get confused by a bzrlib version mismatch warning.
16156 2015-04-27  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
16158         Change default location of EUDC options file
16159         * etc/NEWS: Document change to EUDC options file's default location.
16160         * lisp/net/eudc-vars.el (eudc-options-file): Use
16161         `locate-user-emacs-file' to change default options file location.
16163 2015-04-27  Glenn Morris  <rgm@gnu.org>
16165         * test/automated/package-test.el (package-test-update-archives-async):
16166         Try to handle the test server script dying.
16168 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
16170         * lisp/saveplace.el (save-place-mode): New minor mode.
16171         (save-place): Redefine as an obsolete alias.
16173         * lisp/midnight.el: Make it a minor mode.  Allow predicates.
16174         * lisp/midnight.el: Use lexical-binding.
16175         (midnight-mode): Make it a proper minor mode.
16176         (midnight-buffer-display-time): Make arg non-optional.
16177         (midnight-find): Remove.
16178         (clean-buffer-list-kill-never-regexps)
16179         (clean-buffer-list-kill-regexps): Tweak type for new function choice.
16180         (clean-buffer-list-delay): Allow clean-buffer-list-kill-regexps to
16181         contain functions.
16182         (clean-buffer-list): Use cl-find.
16183         Allow clean-buffer-list-kill-never-regexps to contain functions.
16185 2015-04-27  Nicolas Petton  <nicolas@petton.fr>
16187         Bump version of seq.el to 1.5
16188         * lisp/emacs-lisp/seq.el (seq-doseq): Remove undocumented return value
16189         from seq-doseq.  Bump version number of seq.el.
16191 2015-04-27  Glenn Morris  <rgm@gnu.org>
16193         * lisp/mail/rmail.el (rmail-reply):
16194         Decode subject before matching "Re:" prefix.  (Bug#20396)
16196 2015-04-27  Artur Malabarba  <bruce.connor.am@gmail.com>
16198         * lisp/emacs-lisp/package.el: Small improvements
16199         (package--with-work-buffer-async): More informative error.
16200         (package-install-user-selected-packages): Rename to
16201         `package-install-selected-packages'.
16203 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
16205         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last
16206         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last change.
16207         (eieio--class-make): Remove leftover `tag'.
16209 2015-04-27  Glenn Morris  <rgm@gnu.org>
16211         * lisp/gnus/message.el (gnus-extract-address-components):
16212         Remove bogus declaration that was masking previous problem.
16214 2015-04-27  Nicolas Graner  <nicolas.graner@u-psud.fr>  (tiny change)
16216         * lisp/gnus/message.el (message-insert-formatted-citation-line):
16217         Fix typo.  (Bug#20318)
16219 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
16221         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Reuse oldc.
16223         * lisp/textmodes/reftex-toc.el: Improve multi-frame behavior
16224         * lisp/textmodes/reftex-toc.el (reftex-toc-revert): Avoid displaying
16225         the buffer in yet another frame.
16226         (reftex-toc-visit-location): Make sure toc-window has focus at the end
16227         when `final' is nil.
16228         (reftex--rebuilding-toc): Defvar to avoid `boundp' and
16229         silence warnings.  Use `--' to clarify that it's internal.
16230         (reftex-toc-next, reftex-toc-previous, reftex-toc-demote)
16231         (reftex-toc-promote): Clarify unused argument.
16232         (reftex--pro-or-de, reftex--start-line, reftex--mark-line):
16233         Add `reftex--' prefix.  Fix all users.
16234         (reftex-toc-promote-prepare): Use _ for dummy variable.
16235         (reftex-toc-restore-region): Rename `m.
16237 2015-04-27  Eli Zaretskii  <eliz@gnu.org>
16239         Fix a typo in bibtex.el
16240         * lisp/textmodes/bibtex.el (bibtex-insert-kill): Fix a typo from
16241         last change.  (Bug#20429)
16243         Fix redisplay of frame after loading new fonts
16244         * src/xdisp.c (redisplay_internal): When retrying redisplay of
16245         a frame because new fonts were loaded, disable all redisplay
16246         optimizations on that frame by calling SET_FRAME_GARBAGED.
16247         (Bug#20410)
16249 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
16251         * lisp/info.el (Info-menu): Properly provide the `default'
16252         (Bug#20391)
16254         * lisp/progmodes/elisp-mode.el (elisp--get-fnsym-args-string):
16255         Catch errors from documentation (bug#20418).
16256         (emacs-lisp-mode-abbrev-table): Remove redundant defvar.
16258 2015-04-26  Stefan Monnier  <monnier@iro.umontreal.ca>
16260         * lisp/emacs-lisp/package.el: Move variables to silence byte-compiler.
16261         Remove redundant ":group 'package".
16263 2015-04-26  Eli Zaretskii  <eliz@gnu.org>
16265         Fix a typo in rmail.el
16266         * lisp/mail/rmail.el (rmail-ensure-blank-line): Fix a typo in the
16267         last commit.  (Bug#20429)
16269 2015-04-26  Dmitry Gutov  <dgutov@yandex.ru>
16271         Introduce xref-prompt-for-identifier
16272         * lisp/progmodes/xref.el (xref-prompt-for-identifier): New option.
16273         (xref--read-identifier): Use it
16274         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01205.html).
16276 2015-04-26  João Távora  <joaotavora@gmail.com>
16278         `tex-insert-quote' after single `'' opens quotes instead of closing
16279         Without this, it's very hard to precede double quotes with the
16280         apostrophe character, i.e. insert the sequence '``
16281         (quote-backquote-backquote), commonly useful in portuguese, for
16282         instance.
16283         * lisp/textmodes/tex-mode.el (tex-insert-quote): Add ?' to the list of
16284         preceding chars making `tex-insert-quote' be in the "opening" context.
16286 2015-04-25  Dmitry Gutov  <dgutov@yandex.ru>
16288         Pass `id' to `completing-read' as def instead of initial input
16289         * lisp/progmodes/xref.el (xref--read-identifier): Pass `id' to
16290         `completing-read' as the default value instead of initial input
16291         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01182.html).
16293 2015-04-25  Paul Eggert  <eggert@cs.ucla.edu>
16295         Don't freeze with unreadable processes
16296         Don't freeze if an exiting process can't be read from.  (Bug#19860).
16297         This fixes a bug I introduced in
16298         2014-07-08T07:24:07Z@eggert@cs.ucla.edu
16299         "* process.c: Add sanity checks for file descriptors."
16300         Dmitry Gutov did most of the legwork in finding the problem.
16301         * src/process.c (wait_reading_process_output):
16302         Treat non-running processes that can't be read from
16303         the same as other non-running processes.
16305 2015-04-25  Alan Mackenzie  <acm@muc.de>
16307         Fix change from 2015-04-22 "On C-y, stop some text property entries ..."
16308         * lisp/subr.el (remove-yank-excluded-properties): Put
16309         `with-silent-modifications' around only the last three lines of code.
16311 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
16313         * lisp/emacs-lisp/package.el (package-all-keywords): Don't cache
16314         (package--all-keywords): Deleted variable.
16316         * etc/NEWS: Document package-hiding functionality.
16318 2015-04-25  Eli Zaretskii  <eliz@gnu.org>
16320         * lisp/window.el (recenter-last-op): Doc fix.  (Bug#20419)
16322         Clarify the doc string of 'replace-regexp-in-string'
16323         * lisp/subr.el (replace-regexp-in-string): Doc fix.  (Bug#20395)
16325         Improve doc string of 'insert-buffer-substring'
16326         * src/editfns.c (Finsert_buffer_substring): Doc fix.  (Bug#20421)
16328         MS-Windows followup for the recent gnulib update
16329         * nt/gnulib.mk (libgnu_a_SOURCES): Replace file-has-acl.c with
16330         acl-internal.c.
16332 2015-04-24  Paul Eggert  <eggert@cs.ucla.edu>
16334         Spelling fixes
16336         Merge from gnulib
16337         This incorporates:
16338         2015-04-24 file-has-acl: new module, split from acl
16339         2015-04-24 manywarnings: add GCC 5.1 warnings
16340         2015-04-21 lstat: fix cross-compilation 'ln -s' problem
16341         2015-04-15 qacl: Simplify HP-UX acl_nontrivial check
16342         2015-04-15 acl: On Linux, check for acls without libacl
16343         2015-04-14 tempname: avoid unused parameter warnings (trivial)
16344         * lib/acl-internal.c: New file, from gnulib.
16345         * lib/file-has-acl.c: Remove; no longer imported from gnulib.
16346         * lib/acl-internal.h, lib/gnulib.mk, lib/qcopy-acl.c, lib/tempname.c:
16347         * m4/acl.m4, m4/gnulib-comp.m4, m4/lstat.m4, m4/manywarnings.m4:
16348         Update from gnulib.
16350         Port --enable-gcc-warnings to GCC 5.1 x86-64
16351         * lib-src/ebrowse.c (dump_sym):
16352         * lib-src/hexl.c (main):
16353         * src/ccl.c (ccl_driver):
16354         * src/character.c (string_escape_byte8):
16355         * src/dbusbind.c (xd_retrieve_arg, xd_add_watch):
16356         * src/gnutls.c (Fgnutls_boot):
16357         * src/gtkutil.c (xg_check_special_colors):
16358         * src/image.c (x_build_heuristic_mask):
16359         * src/print.c (safe_debug_print, print_object):
16360         * src/term.c (produce_glyphless_glyph):
16361         * src/xdisp.c (get_next_display_element)
16362         (produce_glyphless_glyph):
16363         * src/xterm.c (x_draw_glyphless_glyph_string_foreground):
16364         Don't use a signed format to print an unsigned integer, or vice
16365         versa.  GCC 5.1's new -Wformat-signedness option warns about this.
16366         * src/image.c (png_load_body, jpeg_load_body):
16367         Silence a bogus setjump diagnostic from GCC 5.1 (GCC bug 54561).
16369 2015-04-24  Tassilo Horn  <tsdh@gnu.org>
16371         Add new faces to tsdh-light-theme
16372         * etc/themes/tsdh-light-theme.el (tsdh-light): New face
16373         definitions for Info-quoted, ace-jump-face-foreground,
16374         hl-paren-face, show-paren-match, and show-paren-mismatch.
16376 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
16378         * lisp/emacs-lisp/seq.el (seq-doseq): Fix the macro.
16380 2015-04-24  Glenn Morris  <rgm@gnu.org>
16382         * build-aux/gitlog-to-emacslog:
16383         Use raw log format rather than wrapped one.
16385 2015-04-24  Stefan Monnier  <monnier@iro.umontreal.ca>
16387         * lisp/emacs-lisp/seq.el (seq-doseq): Tighten the code.
16388         (seq-doseq): Fix out-of-scope binding.
16389         Don't call `seq-length at every iteration.
16390         Reduce `if's from 3 to 2 per iteration.
16391         (emacs-lisp-mode-hook): Don't tweak in Emacs≥25.
16393 2015-04-24  Glenn Morris  <rgm@gnu.org>
16395         * lisp/textmodes/text-mode.el (text-mode-hook):
16396         Move text-mode-hook-identify to default.
16398         * lisp/mouse.el (minor-mode-menu-from-indicator):
16399         Handle non-function members of minor-mode-map-alist.  (Bug#20201)
16401         * lisp/help-fns.el (describe-function): More type checking.
16402         (describe-function-1): Handle changed symbol-function.  (Bug#20201)
16404         * build-aux/gitlog-to-emacslog: Convert "Fixes:" to "(Bug#)".
16405         (Bug#20325)
16407 2015-04-24  Andreas Schwab  <schwab@linux-m68k.org>
16409         shr: strip leading whitespace when expanding URLs
16410         * lisp/net/shr.el (shr-expand-url): Strip leading whitespace from URL.
16412 2015-04-24  Eli Zaretskii  <eliz@gnu.org>
16414         Clarify "co-authored" some more
16416         * CONTRIBUTE: Clarify "co-authored-by".  (Bug#20400)
16418         Clarify doc strings of functions that search for properties
16419         * src/textprop.c (Fnext_char_property_change)
16420         (Fprevious_char_property_change)
16421         (Fnext_single_char_property_change)
16422         (Fprevious_single_char_property_change, Fnext_property_change)
16423         (Fnext_single_property_change, Fprevious_property_change)
16424         (Fprevious_single_property_change): Clarify doc strings wrt return
16425         value and the optional LIMIT argument.  (Bug#20411)
16427 2015-04-24  Glenn Morris  <rgm@gnu.org>
16429         * test/automated/message-mode-tests.el (message-mode-propertize):
16430         Handle non-writable HOME; eg on hydra.nixos.org.
16432 2015-04-23  Eli Zaretskii  <eliz@gnu.org>
16434         Avoid starting threads by w32-shell-execute
16435         * src/w32fns.c (Fw32_shell_execute): Convert "file:///" URLs into
16436         local file names, before invoking ShellExecute.  (Bug#20220)
16438 2015-04-23  Martin Rudalics  <rudalics@gmx.at>
16440         Fix following doc-links in `widget-documentation-link-action'
16441         * lisp/wid-edit.el (widget-documentation-link-action): Make
16442         following doc-links less simplistic (Bug#20398).
16444 2015-04-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
16446         Improve EUDC manual
16447         * doc/misc/eudc.texi (Troubleshooting):
16448         New LDAP troubleshooting subsection.
16450 2015-04-22  Paul Eggert  <eggert@cs.ucla.edu>
16452         Omit needless "\ " after multibyte then newline
16453         * src/print.c: Include <c-ctype.h>, for c_isxdigit.
16454         (print_object): When print-escape-multibyte is non-nil and a
16455         multibyte character is followed by a newline or formfeed, followed
16456         by a hex digit, don't output a needless "\ " before the hex digit.
16457         * test/automated/print-tests.el (print-hex-backslash): New test.
16459 2015-04-22  Oleh Krehel  <ohwoeowho@gmail.com>
16461         Add a new `inhibit-message' variable
16462         * src/xdisp.c (syms_of_xdisp): Define a boolean `inhibit_message'.
16463         (message3): Don't call `message3_nolog' (i.e. use the Echo Area) when
16464         `inhibit_message' is non-zero.
16465         * etc/NEWS: Add an entry.
16466         * doc/lispref/display.texi: Add an entry for `inhibit-message',
16467         mention it in `message'.
16469 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
16471         Fix last fix in `display-buffer-record-window'.
16472         * lisp/window.el (display-buffer-record-window): Fix last fix.
16474 2015-04-22  Eli Zaretskii  <eliz@gnu.org>
16476         Minor edits in CONTRIBUTE
16477         * CONTRIBUTE: Rearrange instructions about log messages.
16478         Use "Git" capitalized all over.
16479         Use 2 spaces between sentences.
16481 2015-04-22  Artur Malabarba  <bruce.connor.am@gmail.com>
16483         * lisp/files.el (basic-save-buffer): Fix argument.
16485         * lisp/cus-edit.el (custom-file): Consider init-file-had-error.
16486         In case `(and (null custom-file) init-file-had-error)' do the same
16487         thing we'd do if `(null user-init-file)', which is to either error out
16488         or return nil.  This is in line with `custom-save-all' which would
16489         throw an error in that situation.  (Bug#20355)
16491         * lisp/emacs-lisp/package.el: Hide lower-priority packages in menu.
16492         (package-menu-hide-low-priority): New variable, see its doc.
16493         (package-archive-priorities): Update doc.
16494         (package-desc-priority): New function.
16495         (package-desc-priority-version): Use it.
16496         (package--remove-hidden): New function.
16497         (package-menu--refresh): Use it.
16499         * lisp/emacs-lisp/package.el: Implement displaying obsolete packages.
16500         (package-menu--hide-obsolete): New variable.
16501         (package--remove-hidden): Use it.
16502         (package-menu-hide-obsolete): New interactive function to toggle
16503         the variable.
16504         (package--quick-help-keys): Document it.
16505         (package-menu-async): Add :version tag.
16506         (package-menu-mode-map): Bind package-menu-hide-obsolete.
16507         (package-desc-status): Indicate non-installed obsolete packages as
16508         avail-obso.
16509         (package-menu-mark-install): Allow installation of avail-obso.
16510         (package-menu--status-predicate): Sort avail-obso with available.
16512 2015-04-22  Alan Mackenzie  <acm@muc.de>
16514         On C-y, stop some text property entries being written into buffer-undo-list
16515         * lisp/subr.el (remove-yank-excluded-properties): Enclose the code in
16516         `with-silent-modifications'.
16518 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
16520         In display-buffer-record-window record selected window if necessary
16521         * lisp/window.el (display-buffer-record-window): Store selected window
16522         if it differs from 3rd element of 'quit-restore' parameter (Bug#20353).
16524 2015-04-22  Tassilo Horn  <tsdh@gnu.org>
16526         Fix reftex-citation bug
16527         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
16528         Fix `wrong-type-argument stringp nil' error that occurs when AUCTeX
16529         integration is enabled and there are no citations in the document
16530         so far.
16532 2015-04-21  Dmitry Gutov  <dgutov@yandex.ru>
16534         Add or reset based on the presence of MERGE_HEAD
16535         * lisp/vc/vc-git.el (vc-git-find-file-hook): Add
16536         `vc-git-resolve-when-done' to `after-save-hook' in either case.
16537         (vc-git-conflicted-files): Add a TODO.
16538         (vc-git-resolve-when-done): Depending on the presence of
16539         MERGE_HEAD, either update the resolved file in the index, or
16540         remove it from there.  (Bug#20292)
16542 2015-04-21  Glenn Morris  <rgm@gnu.org>
16544         * lisp/custom.el (custom-declare-group): No need to purecopy
16545         custom-current-group-alist members following recent change to set
16546         it to nil before dumping.
16548         * build-aux/gitlog-to-emacslog: Get footer from ChangeLog.2.
16549         (Bug#20399)
16551 2015-04-21  Daniel Colascione  <dancol@dancol.org>
16553         Unbreak no-op buffer save message
16554         * lisp/files.el (basic-save-buffer): Accept called-interactively as
16555         an argument instead of directly invoking called-interactively-p,
16556         which will always yield nil in that context.
16558 2015-04-21  Alan Mackenzie  <acm@muc.de>
16560         CC Mode: Do nothing in before/after-change-functions for text
16561         property changes
16562         Fixes bug#20266.
16563         * lisp/progmodes/cc-mode.el (c-basic-common-init): Make
16564         yank-handled-properties buffer local, and remove 'category from it.
16565         (c-called-from-text-property-change-p): New function.
16566         (c-before-change): Don't do anything if a call of the new function
16567         returns non-nil.
16568         (c-after-change): Don't do much if a call of the new function returns
16569         non-nil.
16570         (c-extend-after-change-region): Put changes to text property 'fontified
16571         inside c-save-buffer-state.
16573 2015-04-20  Stefan Monnier  <monnier@iro.umontreal.ca>
16575         Fix byte-compiler warnings about looking-back
16576         * lisp/vc/log-view.el (log-view-end-of-defun-1):
16577         * lisp/textmodes/tex-mode.el (latex-forward-sexp-1):
16578         * lisp/textmodes/reftex-ref.el (reftex-goto-label):
16579         * lisp/textmodes/bibtex.el (bibtex-insert-kill):
16580         * lisp/progmodes/sh-script.el (sh--maybe-here-document):
16581         * lisp/progmodes/ruby-mode.el (ruby-end-of-defun):
16582         * lisp/progmodes/ada-mode.el (ada-in-numeric-literal-p):
16583         * lisp/org/org.el (org-insert-heading, org-sort-entries):
16584         * lisp/org/org-mouse.el (org-mouse-end-headline)
16585         (org-mouse-context-menu):
16586         * lisp/org/org-clock.el (org-clock-cancel):
16587         * lisp/man.el (Man-default-man-entry):
16588         * lisp/mail/rmail.el (rmail-get-new-mail, rmail-insert-inbox-text)
16589         (rmail-ensure-blank-line):
16590         * lisp/mail/footnote.el (Footnote-delete-footnote):
16591         * lisp/mail/emacsbug.el (report-emacs-bug):
16592         * lisp/info.el (Info-follow-reference, Info-fontify-node):
16593         * lisp/info-look.el (info-lookup-guess-custom-symbol):
16594         * lisp/help-fns.el (help-fns--key-bindings):
16595         * lisp/files.el (hack-local-variables):
16596         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-cmd-complete)
16597         (viper-get-ex-pat, ex-expand-filsyms, viper-get-ex-file)
16598         (viper-complete-filename-or-exit):
16599         * lisp/emulation/viper-cmd.el (viper-backward-indent):
16600         * lisp/emacs-lisp/lisp-mode.el (calculate-lisp-indent):
16601         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
16602         * lisp/cus-edit.el (custom-face-edit-value-create):
16603         * lisp/calendar/todo-mode.el (todo-set-item-priority)
16604         (todo-filter-items-1, todo-convert-legacy-files)
16605         (todo-prefix-overlays): Add explicit second arg to looking-back.
16607 2015-04-20  Glenn Morris  <rgm@gnu.org>
16609         Avoid non-nil current-load-list at startup
16610         * src/process.c (init_process_emacs): Move Fprovide statement...
16611         (syms_of_process): ... to here.
16613         * lisp/loadup.el (custom-current-group-alist): Reset before dumping.
16615         * lisp/startup.el (command-line) <site-run-file>: Avoid rogue value
16616         in emacs -Q.
16618 2015-04-20  Ludovic Courtès  <ludo@gnu.org>
16620         * lisp/loadup.el (exec-path): Avoid storing build-time PATH in binary.
16621         (Bug#20330)
16623 2015-04-20  Glenn Morris  <rgm@gnu.org>
16625         * lisp/cus-start.el (exec-path): Set standard value, to avoid rogue.
16627         Tweak exec-path in uninstalled case
16628         * src/callproc.c (init_callproc): If running uninstalled, do not
16629         include eventual installation libexec directory in exec-path.
16631 2015-04-20  Artur Malabarba  <bruce.connor.am@gmail.com>
16633         * lisp/emacs-lisp/package.el: Filter by multiple keywords and
16634         cache keywords.
16635         (package-menu-filter): Accept a list of keywords.
16636         (package--all-keywords): New variable to cache known keywords.
16637         (package-all-keywords): Populate it if necessary.
16638         (package-refresh-contents): Reset it.
16640         * lisp/emacs-lisp/package.el: Make archive and status pseudo-keywords
16641         (package--has-keyword-p): Understand "arc:xxxx" and "status:xxxx"
16642         as special keywords which match agains package archive and status
16643         respectively.
16644         * etc/NEWS: Document it.
16646 2015-04-20  Eli Zaretskii  <eliz@gnu.org>
16648         Describe and index "empty overlays".
16649         * doc/lispref/display.texi (Overlays): Improve indexing.
16650         (Managing Overlays): Describe "empty" overlays.
16651         (Overlay Properties, Finding Overlays): Add cross-reference to
16652         where empty overlays are described.
16654 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
16656         Spelling fixes
16658         Quote 'like this' in top-level files
16659         * CONTRIBUTE, INSTALL, Makefile.in, README, configure.ac, make-dist:
16660         Prefer to single-quote 'like this' (instead of the older style
16661         `like this').
16662         * configure.ac: Fix some space-before-tab problems that 'git commit'
16663         complained about.
16665         Use bool for boolean in textprop.c, undo.c
16666         * src/textprop.c (soft, hard): Now constants instead of macros.
16667         (validate_plist): Rewrite to avoid need for boolean local.
16668         (interval_has_all_properties, interval_has_some_properties)
16669         (interval_has_some_properties_list, add_properties)
16670         (remove_properties, get_char_property_and_overlay)
16671         (Fnext_single_char_property_change)
16672         (Fprevious_single_char_property_change, add_text_properties_1)
16673         (Fremove_text_properties, Fremove_list_of_text_properties)
16674         (copy_text_properties):
16675         * src/tparam.c (tparam1):
16676         * src/undo.c (record_change, record_property_change)
16677         (syms_of_undo):
16678         Use 'true' and 'false' for booleans.
16680 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
16682         * lisp/vc/vc-git.el (vc-git-find-file-hook):
16683         Call `smerge-start-session' even when dealing with a stash
16684         conflict (bug#20292).
16686 2015-04-19  Vibhav Pant  <vibhavp@gmail.com>
16688         Add option to eshell/clear to clear scrollback.
16689         * lisp/eshell/esh-mode.el (eshell/clear-scrollback): New function.
16690         (eshell/clear): Add an optional SCROLLBACK argument.  If non-nil,
16691         scrollback contents are cleared.
16692         * etc/NEWS: Describe change.
16693         * doc/misc/eshell.texi: Add entry for `clear'.
16695 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
16697         * src/widget.c (set_frame_size): Prefer 'int' to 'unsigned'
16698         where either will do.
16700 2015-04-19  Steve Purcell  <steve@sanityinc.com>
16702         Assume package archive-contents are UTF8-encoded
16703         * lisp/emacs-lisp/package.el (package--read-archive-file):
16704         Set `coding-system-for-read' explicitly to 'utf-8 when reading the
16705         downloaded and cached archive-contents files, so that non-ASCII
16706         characters in package descriptions are displayed correctly in the
16707         `list-packages' menu.  (Bug#20231)
16709 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
16711         Abort when looking at stashed changes
16712         * lisp/vc/vc-git.el (vc-git-find-file-hook): Abort when looking at
16713         stashed changes (bug#20292).
16715 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
16717         Refactor low-level printing for simplicity
16718         * src/print.c (PRINTDECLARE): Remove.  Move its contents into
16719         PRINTPREPARE; doable now that we assume C99.  All callers changed.
16720         (PRINTCHAR): Remove, as it adds more mystery than clarity.
16721         All callers changed.
16722         (strout): Assume that caller computes length.  All callers changed.
16723         (print_c_string): New function.
16724         (write_string, write_string_1): Compute length instead of asking
16725         the caller to compute it.  All callers changed.
16726         (write_string): Simplify by using write_string_1.
16727         (write_string_1): Simplify by using print_c_string.
16728         (Fterpri): Compute default val more clearly.
16729         (Fprin1_to_string, print_object):
16730         Assume C99 to avoid unnecessary nesting.
16731         (print_object): Prefer print_c_string to multiple printchar, or
16732         to calling strout with -1 length.  Coalesce into sprintf when
16733         this is easy.
16735 2015-04-18  Paul Eggert  <eggert@cs.ucla.edu>
16737         Prefer "Bug#1234" in commit messages (Bug#20325)
16738         * .dir-locals.el (log-edit-mode): Don't rewrite Bug#,
16739         as this isn't useful for Git.
16740         * CONTRIBUTE: Suggest "Bug#1234" instead of "Fixes: debbugs:1234".
16742 2015-04-18  Glenn Morris  <rgm@gnu.org>
16744         * lisp/files.el (auto-mode-alist): Use conf mode for gitconfig, hgrc.
16745         (Bug#19506)
16747 2015-04-18  Tom Willemse  <tom@ryuslash.org>  (tiny change)
16749         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
16750         Do not use `chomp' as a function.  (Bug#19505)
16752 2015-04-18  Glenn Morris  <rgm@gnu.org>
16754         * lisp/net/browse-url.el (browse-url, browse-url-at-point): Doc fixes.
16756         * doc/emacs/misc.texi (Sorting): Small edit.
16757         (Bug#19896)
16759         * admin/admin.el (make-manuals): Add emacs-xtra in pdf and ps.
16761 2015-04-18  Simen Heggestøyl  <simenheg@gmail.com>
16763         css-mode.el: Support multi-line comment filling
16764         (Bug#20256)
16765         * lisp/textmodes/css-mode.el (css-fill-paragraph): Support multi-line
16766         comment filling.
16767         (css-adaptive-fill): New function.
16768         (css-mode): Set `adaptive-fill-function'.
16769         (scss-mode): Set `comment-continue'.
16771 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
16773         * lisp/emacs-lisp/seq.el (seq-concatenate, seq-into):
16774         Better error messages.
16776 2015-04-18  Ivan Radanov Ivanov  <ivanradanov@yahoo.co.uk>  (tiny change)
16778         Minor improvements in Bulgarian input methods
16779         * lisp/leim/quail/cyrillic.el (bulgarian-phonetic, bulgarian-bds):
16780         Replace U+042C with U+045D, as the former character is not used in
16781         the modern Bulgarian language.
16782         (Bug#20350)
16784 2015-04-17  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
16786         Improve EUDC manual
16787         * doc/misc/eudc.texi (LDAP Configuration): Mention simple and SASL
16788         authentication schemes.  Add index items.  Shorten example server
16789         name.
16791 2015-04-17  Dmitry Gutov  <dgutov@yandex.ru>
16793         Don't show both feature and function with the same name
16794         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
16795         Don't show both feature and function with the same name.
16797         (elisp--xref-identifier-location): Skip variable, if it's also
16798         a function
16799         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
16800         Avoid returning both the variable and the function for the same
16801         minor mode.
16803 2015-04-17  Wolfgang Jenkner  <wjenkner@inode.at>
16805         Fix fontification of keywords clobbered by the prompt
16806         * lisp/comint.el (comint-output-filter): Remove the uses of
16807         with-silent-modifications I introduced as part of the last change.
16808         This fixes, e.g., erratically missing highlighting when running
16809         ./configure --help; ./configure in a shell-mode buffer with
16810         compilation-shell-minor-mode turned on.
16812 2015-04-17  Glenn Morris  <rgm@gnu.org>
16814         * admin/authors.el (authors-valid-file-names)
16815         (authors-renamed-files-alist): Additions.
16817 2015-04-17  Stefan Monnier  <monnier@iro.umontreal.ca>
16819         * lisp/indent.el (indent-region): Don't deactivate the mark.
16820         (Bug#20357)
16822 2015-04-17  Sam Steingold  <sds@gnu.org>
16824         * lisp/net/rcirc.el (defun-rcirc-command): Mark `target' as ignorable.
16826 2015-04-16  Leo Liu  <sdl.web@gmail.com>
16828         * lisp/progmodes/xref.el (xref-push-marker-stack): Add optional arg.
16830 2015-04-16  Stefan Monnier  <monnier@iro.umontreal.ca>
16832         * lisp/erc/erc-pcomplete.el (erc-pcomplete):
16833         Don't use `pcomplete' any more.
16835 2015-04-16  Glenn Morris  <rgm@gnu.org>
16837         * admin/authors.el (authors-lax-changelogs): Update for erc changes.
16839 2015-04-16  Eli Zaretskii  <eliz@gnu.org>
16841         Don't link with -ljpeg on MS-Windows, to avoid dependency on DLL
16842         * configure.ac (LIBJPEG): Leave it empty for MinGW.
16844 2015-04-16  Glenn Morris  <rgm@gnu.org>
16846         * lisp/replace.el (query-replace-from-to-separator):
16847         Delay initialization to avoid rogue setting after startup.
16849 2015-04-16  Paul Eggert  <eggert@cs.ucla.edu>
16851         Pre-4.6 GCC succeeds with unknown option
16852         * configure.ac (emacs_cv_prog_cc_nopie): Port to pre-4.6 GCC.
16853         (Bug#20338)
16855 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
16857         '[:graph:]' now excludes whitespace, not just ' '
16858         * doc/lispref/searching.texi (Char Classes):
16859         * lisp/emacs-lisp/rx.el (rx): Document [:graph:] to be [:print:]
16860         sans whitespace (not sans space).
16861         * src/character.c (graphicp): Exclude all Unicode whitespace chars,
16862         not just space.
16863         * src/regex.c (ISGRAPH): Exclude U+00A0 (NO-BREAK SPACE).
16865 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
16867         * lisp/subr.el (substitute-key-definition-key, special-form-p)
16868         (macrop): Drop deprecated second arg to indirect-function.
16869         (looking-back): Make the second arg non-optional.
16871         * lisp/org/org-clock.el (org-x11idle-exists-p): Be honest about which
16872         command is actually sent to the shell.
16874 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
16876         Port jpeg configuration to Solaris 10 with Sun C
16877         * configure.ac: Check for jpeglib 6b by trying to link it, instead
16878         of relying on cpp magic that has problems in practice.  Check for
16879         both jpeglib.h and jerror.h features.  Remove special case for
16880         mingw32, which should no longer be needed (and if it were needed,
16881         should now be addressable by hotwiring emacs_cv_jpeglib).
16882         (Bug#20332)
16884 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
16886         Move some Elisp-specific code from lisp-mode.el to elisp-mode.el
16887         * lisp/emacs-lisp/lisp-mode.el (lisp--el-font-lock-flush-elisp-buffers):
16888         Move to elisp-mode.el.
16889         (lisp-mode-variables): (Re)move elisp-specific settings.
16890         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode): Add settings removed
16891         from lisp-mode-variables.
16892         (elisp--font-lock-flush-elisp-buffers): New function, moved from
16893         lisp-mode.el.
16895         * lisp/emacs-lisp/lisp-mode.el (lisp--el-non-funcall-position-p):
16896         Avoid pathological slowdown at top-level in large file.
16898 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
16900         Standardize names of ChangeLog history files
16901         Suggested by Glenn Morris in:
16902         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
16903         * Makefile.in (install-man): Don't treat ChangeLog.1 as a man page.
16904         * doc/man/ChangeLog.1: Rename back from doc/man/ChangeLog.01.
16905         * lisp/erc/ChangeLog.1: New file, containing the old contents of ...
16906         * lisp/erc/ChangeLog.01, lisp/erc/ChangeLog.02, lisp/erc/ChangeLog.03:
16907         * lisp/erc/ChangeLog.04, lisp/erc/ChangeLog.05, lisp/erc/ChangeLog.06:
16908         * lisp/erc/ChangeLog.07, lisp/erc/ChangeLog.08, lisp/erc/ChangeLog.09:
16909         Remove.
16911         Split top-level entries into pre- and post-April 7
16912         This more clearly distingiushes pre-April-7 ChangeLog entries (which
16913         are for top-level files only) from post-April-7 entries (which are
16914         about files at all levels.  Problem reported by Glenn Morris in:
16915         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
16916         * ChangeLog.1: Move post-April-7 entries from here ...
16917         * ChangeLog.2: ... to this new file.
16918         * Makefile.in (CHANGELOG_HISTORY_INDEX_MAX): Bump to 2.
16920 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
16922         Fix recent cus-start changes that added customize-rogues
16923         * lisp/cus-start.el (custom-delayed-init-variables): Initialize the
16924         vars early.
16925         * lisp/loadup.el ("cus-start"): Move to the end to reduce
16926         customize-rogue.
16928 2015-04-15  Nicolas Petton  <nicolas@petton.fr>
16930         Define cl-concatenate as an alias to seq-concatenate
16931         * lisp/emacs-lisp/cl-extra.el (cl-concatenate): Removes duplicated
16932           code by making cl-concatenate an alias to seq-concatenate.
16934 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
16936         * src/lread.c (intern_1): Make sure we'd find the symbol we add
16937         (Bug#20334)
16938         * src/xfaces.c (resolve_face_name): Don't use `intern' with
16939         Lisp_Strings.
16941 2015-04-15  Glenn Morris  <rgm@gnu.org>
16943         * doc/lispref/sequences.texi (Sequence Functions): Fix typo in previous.
16945 2015-04-15  Lars Magne Ingebrigtsen  <larsi@gnus.org>
16947         Clean up gnus-uu saving code slightly
16948         * lisp/gnus/gnus-uu.el (gnus-uu-save-article): Make the
16949         save-restriction/widen calls make more sense.
16951 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
16953         Make [:graph:] act like [:print:] sans space
16954         In POSIX [[:print:]] is equivalent to [ [:graph:]], so change
16955         [:graph:] so that it matches everything that [:print:] does,
16956         except for space.
16957         * doc/lispref/searching.texi (Char Classes):
16958         * etc/NEWS:
16959         * lisp/emacs-lisp/rx.el (rx):
16960         Document [:graph:] to be [:print:] sans ' '.
16961         * src/character.c, src/character.h (graphicp): New function.
16962         * src/regex.c (ISGRAPH) [emacs]: Use it.
16963         (BIT_GRAPH): New macro.
16964         (BIT_PRINT): Increase to 0x200, to make room for BIT_GRAPH.
16965         (re_wctype_to_bit) [! WIDE_CHAR_SUPPORT]:
16966         Return BIT_GRAPH for RECC_GRAPH.
16967         (re_match_2_internal) [emacs]: Use ISGRAPH if BIT_GRAPH,
16968         and ISPRINT if BIT_PRINT.
16970 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
16972         automated/eieio-test-methodinvoke.el (make-instance) <(subclass C)>:
16973         Don't use call-next-method in a cl-defmethod.
16975         * lisp/emacs-lisp/eieio-core.el (eieio--class): Derive from cl--class
16976         (eieio--class-p): Remove, provided by cl-defstruct.
16978 2015-04-14  Nicolas Petton  <nicolas@petton.fr>
16980         Add seq-intersection and seq-difference to the seq library
16981         * lisp/emacs-lisp/seq.el (seq-intersection, seq-difference):
16982         New functions.
16983         * test/automated/seq-tests.el: Add tests for seq-intersection and
16984         seq-difference.
16985         * doc/lispref/sequences.texi: Add documentation for seq-intersection
16986         and seq-difference.
16988 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
16990         * lisp/emacs-lisp/eieio-core.el (class-abstract-p): Don't inline,
16991         to avoid leaking internals.
16993 2015-04-14  Sam Steingold  <sds@gnu.org>
16995         package--ensure-init-file: widen requires save-restriction
16997 2015-04-14  Eli Zaretskii  <eliz@gnu.org>
16999         Improve the commit-msg Git hook for unibyte environments
17000         * build-aux/git-hooks/commit-msg: Set LC_ALL=C, before running Awk
17001         in unibyte environments.  (Suggested by Paul Eggert
17002         <eggert@cs.ucla.edu>.)  Use a more accurate approximation to
17003         [:print:], based on UTF-8 sequences of the unprintable characters.
17005         Describe problems with cursor caused by Windows Magnifier
17006         * etc/PROBLEMS: Describe the problem with cursor shape on
17007         MS-Windows due to Windows Magnifier.
17008         (Bug#20271)
17010         Make [:print:] support non-ASCII characters correctly
17011         * src/regex.c (ISPRINT): Call 'printablep' for multibyte characters.
17012         (BIT_PRINT): New bit mask.
17013         (re_wctype_to_bit): Return BIT_PRINT for RECC_PRINT.
17014         * src/character.c (printablep): New function.
17015         * src/character.h (printablep): Add prototype.
17016         * lisp/emacs-lisp/rx.el (rx): Doc fix: document the new behavior
17017         of 'print', 'alnum', and 'alphabetic'.
17018         * doc/lispref/searching.texi (Char Classes): Document the new
17019         behavior of [:print:].
17020         * etc/NEWS: Mention the new behavior of [:print:].
17022         Assign correct general-category and names to surrogates
17023         * admin/unidata/unidata-gen.el (unidata-setup-list): Don't ignore
17024         surrogates.  This avoids assigning them the default
17025         general-category of 'Cn', i.e. unassigned codepoints.
17026         (unidata-get-name): Give surrogates synthetic names.
17028 2015-04-14  Paul Eggert  <eggert@cs.ucla.edu>
17030         Assume C89 offsetof in xterm.c, xlwmenu.c
17031         * lwlib/xlwmenu.c (offset):
17032         * src/xterm.c (cvt_string_to_pixel_args):
17033         Use offsetof, not XtOffset.
17035 2015-04-14  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
17037         Assume C89 offsetof in widget.c
17038         * src/widget.c (XtOffset): Remove; no longer needed.
17039         (offset): Implement via offsetof instead of via pre-C89 XtOffset hack.
17041         Fix think-o in previous patch
17042         * src/window.c (count_windows, get_leaf_windows):
17043         Don't optimize count_windows incorrectly.
17045 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
17047         Avoid some int overflows in window.c
17048         * src/print.c (print_object):
17049         * src/window.c (sequence_number):
17050         * src/window.h (struct window.sequence_number):
17051         Don't assume window sequence number fits in int.
17052         * src/window.c (window_select_count):
17053         * src/window.h (struct window.use_time, window_select_count):
17054         Don't assume window use time fits in int.
17055         * src/window.c (Fsplit_window_internal):
17056         Don't assume user-supplied integer, or sum, fits in int.
17057         (Fset_window_configuration, count_windows, get_leaf_windows)
17058         (save_window_save, Fcurrent_window_configuration):
17059         Use ptrdiff_t for object counts.
17060         (Fset_window_configuration): Omit unused local 'n'.
17061         (count_windows): Simplify by writing in terms of get_leaf_windows.
17062         (get_leaf_windows): Don't store through FLAT if it's null.
17063         (extract_dimension): New static function.
17064         (set_window_margins, set_window_fringes, set_window_scroll_bars):
17065         Use it to avoid undefined behavior when converting user-supplied
17066         integer to 'int'.
17068 2015-04-13  Glenn Morris  <rgm@gnu.org>
17070         Minor doc copyedits
17071         * doc/emacs/custom.texi (Init Examples): Tweak example, replace typo.
17072         * doc/lispintro/emacs-lisp-intro.texi (condition-case): Typo fix.
17074 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
17076         [Gnus] Catch the invalid-operation that idna.el will issue
17077         * lisp/gnus/gnus-art.el (gnus-use-idna):
17078         * lisp/gnus/gnus-sum.el (gnus-summary-idna-message):
17079         * lisp/gnus/message.el (message-use-idna):
17080         Catch the invalid-operation that idna.el will issue.
17082 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
17084         * doc/lispref/processes.texi (Shell Arguments): Prefer diff -u.
17086 2015-04-13  Sam Steingold  <sds@gnu.org>
17088         package--ensure-init-file: widen before looking for
17089         "(package-initialize)"
17091 2015-04-13  Dmitry Gutov  <dgutov@yandex.ru>
17093         Change diff-switches default to `-u' (Bug#20290)
17094         * doc/emacs/files.texi (Comparing Files): Document the new default
17095         value of `diff-switches'.
17096         * doc/emacs/trouble.texi (Sending Patches): Document the preference
17097         for unified diff format.  Escape the plus in the suggested `-F' regexp
17098         value.
17099         * lisp/vc/diff.el (diff-switches): Change the default to `-u'.
17101 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
17103         (gnus-group--setup-tool-bar-update): Fix last change
17104         * lisp/gnus/gnus-group.el (gnus-group--setup-tool-bar-update):
17105         cursor-sensor-functions should be a list of functions.
17107 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
17109         * lisp/gnus/gnus-topic.el (gnus-topic-mode):
17110         Use gmm-called-interactively-p.
17112 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
17114         * lisp/loadup.el ("cus-start"): Load it after loaddefs.el
17115         (Bug#20321)
17116         * lisp/cus-start.el (read-buffer-function): Don't advertise
17117         iswitchb-read-buffer any more.
17118         (iswitchb): Don't tweak this obsolete group any more.
17120 2015-04-13  Artur Malabarba  <bruce.connor.am@gmail.com>
17122         * lisp/emacs-lisp/package.el: Fix package--ensure-init-file.
17124         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Implement docstrings.
17125         Adding a string after a constructor's argument list will use
17126         that string as the constructor function docstring.  If this string
17127         is absent but the struct itself was given a docstring, use that as
17128         the constructor's docstring.
17129         Fixes bug#17284.
17131 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
17133         Deprecate `intangible' and `point-entered' properties
17134         * lisp/emacs-lisp/cursor-sensor.el: New file.
17135         * lisp/simple.el (pre-redisplay-functions): New hook.
17136         (redisplay--pre-redisplay-functions): New function.
17137         (pre-redisplay-function): Use it.
17138         (minibuffer-avoid-prompt): Mark obsolete.
17139         (redisplay--update-region-highlight): Adapt it to work as a function on
17140         pre-redisplay-functions.
17141         * lisp/cus-start.el (minibuffer-prompt-properties--setter): New fun.
17142         (minibuffer-prompt-properties): Use it.  Use cursor-intangible rather
17143         than point-entered to make the prompt intangible.
17144         * lisp/forms.el: Move `provide' calls to the end.
17145         (forms-mode): Don't use `run-hooks' on a local var.
17146         (forms--make-format, forms--make-format-elt-using-text-properties):
17147         Use cursor-intangible rather than `intangible'.
17148         (forms-mode): Enable cursor-intangible-mode.
17149         * lisp/isearch.el (isearch-mode): Use defvar-local.
17150         (cursor-sensor-inhibit): Declare.
17151         (isearch-mode): Set cursor-sensor-inhibit.
17152         (isearch-done): Set it back.
17153         (isearch-open-overlay-temporary, isearch-open-necessary-overlays)
17154         (isearch-close-unnecessary-overlays): Don't bother with `intangible'
17155         any more.
17156         * lisp/ses.el (ses-localvars): Remove `mode-line-process'.
17157         (ses-sym-rowcol, ses-cell-value, ses-col-width, ses-col-printer):
17158         Add Edebug spec.
17159         (ses-goto-print, ses-print-cell, ses-adjust-print-width)
17160         (ses-goto-data, ses-setup, ses-copy-region): Don't let-bind
17161         inhibit-point-motion-hooks any more.
17162         (ses--cell-at-pos, ses--curcell): New functions, extracted from
17163         ses-set-curcell.
17164         (ses-set-curcell): Use them.
17165         (ses-print-cell, ses-setup): Use cursor-intangible instead of
17166         `intangible'.  Make sure cursor-intangible isn't sticky at BOB.
17167         (ses-print-cell-new-width, ses-reprint-all, ses-recalculate-all):
17168         Use ses--cell-at-pos.
17169         (ses--mode-line-process, ses--cursor-sensor-highlight): New functions,
17170         extracted from ses-command-hook.  Make them work with multiple windows
17171         displaying the same buffer.
17172         (ses-mode): Use them via mode-line-process and pre-redisplay-functions.
17173         Enable cursor-intangible-mode.
17174         (ses-command-hook): Remove cell highlight and mode-line update code.
17175         (ses-forward-or-insert, ses-copy-region-helper, ses-sort-column):
17176         Update for new name of text-property holding the cell name.
17177         (ses-rename-cell): Don't mess with mode-line-process.
17178         * lisp/erc/erc-stamp.el (erc-add-timestamp): Use the new
17179         cursor-sensor-functions property instead of point-entered.
17180         (erc-insert-timestamp-right, erc-format-timestamp):
17181         Use cursor-intangible rather than `intangible'.
17182         (erc-munge-invisibility-spec): Use add-to-invisibility-spec and
17183         remove-from-invisibility-spec.  Enable cursor-intangible-mode and
17184         cursor-sensor-mode if needed.
17185         (erc-echo-timestamp): Adapt to calling convention of
17186         cursor-sensor-functions.
17187         (erc-insert-timestamp-right): Remove unused vars `current-window' and
17188         `indent'.
17189         * lisp/gnus/gnus-group.el (gnus-tmp-*): Declare.
17190         (gnus-update-group-mark-positions): Remove unused `topic' var.
17191         (gnus-group-insert-group-line): Remove unused var `header'.
17192         (gnus-group--setup-tool-bar-update): New function.
17193         (gnus-group-insert-group-line): Use it.
17194         (gnus-group-update-eval-form): Declare local
17195         dynamically-bound variables.
17196         (gnus-group-unsubscribe-group): Use \` and \' to match string bounds.
17197         * lisp/gnus/gnus-topic.el (gnus-topic-jump-to-topic)
17198         (gnus-group-prepare-topics, gnus-topic-update-topic)
17199         (gnus-topic-change-level, gnus-topic-catchup-articles)
17200         (gnus-topic-remove-group, gnus-topic-delete, gnus-topic-indent):
17201         Use inhibit-read-only.
17202         (gnus-topic-prepare-topic): Use gnus-group--setup-tool-bar-update.
17203         (gnus-topic-mode): Use define-minor-mode and derived-mode-p.
17204         * lisp/textmodes/reftex-index.el (reftex-display-index):
17205         Use cursor-intangible-mode if available.
17206         (reftex-index-post-command-hook): Check cursor-intangible.
17207         * lisp/textmodes/reftex-toc.el (reftex-toc):
17208         Use cursor-intangible-mode if available.
17209         (reftex-toc-recenter, reftex-toc-post-command-hook):
17210         Check cursor-intangible.
17211         * lisp/textmodes/sgml-mode.el: Use lexical-binding.
17212         (sgml-tag): Use cursor-sensor-functions instead of point-entered.
17213         (sgml-tags-invisible): Use with-silent-modifications and
17214         inhibit-read-only.  Enable cursor-sensor-mode.
17215         (sgml-cursor-sensor): Rename from sgml-point-entered and adjust to
17216         calling convention of cursor-sensor-functions.
17217         * lisp/textmodes/table.el (table-cell-map-hook, table-load-hook)
17218         (table-point-entered-cell-hook, table-point-left-cell-hook):
17219         Don't autoload.
17220         (table-cell-entered-state): Remove var.
17221         (table--put-cell-point-entered/left-property)
17222         (table--remove-cell-properties):
17223         Use cursor-sensor-functions rather than point-entered/left.
17224         (table--point-entered/left-cell-function): Merge
17225         table--point-entered-cell-function and table--point-left-cell-function
17226         and adjust to calling convention of cursor-sensor-functions.
17228         Update ldef-boots.el
17230         * lisp/emacs-lisp/pcase.el (pcase-dolist): Autoload as well.
17232         * doc/misc/eieio.texi: Don't advertise now obsolete constructs
17234         Collapse successive char deletions in the undo log
17235         * src/cmds.c (remove_excessive_undo_boundaries): New function,
17236         extracted from Fself_insert_command.
17237         (Fdelete_char, Fself_insert_command): Use it.
17238         * src/fileio.c (Fmake_symbolic_link): Rename arg to `target'.
17239         * src/keyboard.c (syms_of_keyboard): `top-level' shouldn't be special.
17241         xterm and OSC 52: Add NEWS entry, and tweak the code
17242         * lisp/term/xterm.el (gui-set-selection) <nil>: Move method definition
17243         to top-level.
17244         (terminal-init-xterm-activate-set-selection): Set a terminal property.
17245         (xterm--set-selection): Use it instead of checking the value of
17246         `terminal-initted'.  Don't use string-bytes.
17248 2015-04-13  Philipp Stephani  <p.stephani2@gmail.com>
17250         xterm.el: Implement OSC-52 functionality for setting the X selection
17251         * lisp/term/xterm.el (xterm-max-cut-length): New var.
17252         (xterm--set-selection, terminal-init-xterm-activate-set-selection):
17253         New funs.
17254         (terminal-init-xterm, xterm--version-handler): Use them.
17256 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
17258         Remove left over code from when we used an obsolete/loaddefs.el file
17259         * lisp/subr.el (do-after-load-evaluation): Remove left over code from
17260         when we used an obsolete/loaddefs.el file.
17262         * lisp/cedet/semantic/fw.el (semantic-exit-on-input)
17263         (semanticdb-without-unloaded-file-searches): Use declare.
17264         (semantic-fw-add-edebug-spec): Remove.
17266         * lisp/completion.el (completion-lisp-mode-hook):
17267         Use completion-separator-chars rather than local key binding.
17269         * src/*.c: Set deactivate_mark buffer-locally
17270         (Bug#20260)
17271         * src/insdel.c (prepare_to_modify_buffer_1):
17272         * src/fileio.c (Finsert_file_contents): Set deactivate_mark
17273         buffer-locally.
17275 2015-04-12  Fabián Ezequiel Gallina  <fgallina@gnu.org>
17277         python.el: Keep symmetry on sexp navigation with parens
17278         (Bug#19954)
17279         * lisp/progmodes/python.el
17280         (python-nav--forward-sexp): Add argument skip-parens-p.
17281         (python-nav-forward-sexp, python-nav-backward-sexp)
17282         (python-nav-forward-sexp-safe)
17283         (python-nav-backward-sexp-safe): Use it.
17284         * test/automated/python-tests.el
17285         (python-nav-forward-sexp-1): Fix test.
17287 2015-04-12  João Távora  <joaotavora@gmail.com>
17289         Don't use `setq-local' in Gnus code
17290         This might break upstream builds with older Emacsen
17291         * lisp/gnus/message.el (message-mode): Use `set' and
17292         `make-local-variable' instead of `setq-local'.
17294 2015-04-12  Paul Eggert  <eggert@cs.ucla.edu>
17296         Update Makefile.in's .PHONY dependencies
17297         * Makefile.in (change-history-commit, master-branch-is-current)
17298         (no-ChangeLog): Now phony.
17300         Remove configure's --with-mmdf option
17301         * configure.ac (MAIL_USE_MMDF): Remove.
17302         * etc/NEWS: Document this.
17303         * lib-src/movemail.c: Assume MAIL_USE_MMDF is not defined.
17304         (Bug#20308)
17306         * doc/man/ChangeLog.01: Rename from doc/man/ChangeLog.1.
17307         That way, 'make install' won't think it's a man page.
17308         Reported by Ashish SHUKLA in:
17309         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00656.html
17311         Improve 'make change-history' prereq tests
17312         * Makefile.in (gen_origin): Fix to match what's in the master branch.
17313         (no-ChangeLog, master-branch-is-current): New rules.
17314         (change-history): Depend on them, to avoid similar future problems.
17315         Escape the local-variables string to pacify Emacs when editing
17316         Makefile.in.
17318 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
17320         * test/automated/package-test.el (with-package-test):
17321         Kill Packages buffer.
17323         * lisp/emacs-lisp/package.el: Improve transaction y-or-n prompt.
17324         (package-menu--prompt-transaction-p): Prompt for "Delete" first,
17325         "Upgrade" last, and use capitalized instead of all-caps.
17327         * lisp/emacs-lisp/package.el: Completely silence async operations.
17328         (package--make-autoloads-and-stuff): Silence autoloads.
17329         (package--save-selected-packages): New function, silences
17330         `customize-save-variable'.
17331         (package--user-selected-p, package-install-from-buffer)
17332         (package-delete, package-install): Use it.
17333         (package-install-from-archive)
17334         (package-menu--perform-transaction): Silence.
17335         (package-menu-execute): Feedback when operation starts.
17337         Use delay-mode-hooks when visiting the init-file
17338         * lisp/emacs-lisp/package.el (package--ensure-init-file):
17339         delay-mode-hooks.
17340         * lisp/cus-edit.el (custom-save-all): delay-mode-hooks.
17342         * lisp/files.el: Only message when saving if save-silently is nil.
17343         (save-silently): New variable.
17344         (files--message): New function.
17345         (find-file-noselect, save-buffer, basic-save-buffer)
17346         (basic-save-buffer-2, save-some-buffers, not-modified)
17347         (append-to-file): Use them.
17349 2015-04-12  Johan Bockgård  <bojohan@gnu.org>
17351         Support debug declarations in pcase macros
17352         * lisp/emacs-lisp/pcase.el (pcase-MACRO): New edebug spec.
17353         (pcase-UPAT): Use it.  Remove "`".
17354         (pcase--edebug-match-macro): New function.
17355         (pcase-defmacro): Support debug declarations.
17356         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
17357         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>:
17358         * lisp/emacs-lisp/pcase.el (\`): <pcase-defmacro>:
17359         Add debug declaration.
17361         pcase.el: Edebug support for `app' and vector patterns
17362         * lisp/emacs-lisp/pcase.el (pcase-FUN): New edebug spec.
17363         (pcase-UPAT): Use it.  Support `app' patterns.
17364         (pcase-QPAT): Support vector patterns.
17366         edebug.el: Disambiguate vector specifications
17367         * lisp/emacs-lisp/edebug.el (edebug-match-list): Always treat
17368         `(vector ...)' as a vector specification, not as a sublist.
17370         (gnus-summary-refer-thread): Don't clobber unread articles
17371         This fixes a bug where `A T' causes "random" articles to become marked
17372         as read.
17373         * lisp/gnus/gnus-sum.el (gnus-summary-refer-thread): Make sure
17374         gnus-newsgroup-unreads remains sorted.
17376         mouse-sel.el: Fix mouse-sel-get-selection-function
17377         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
17378         Use gui--last-selected-text-primary instead of no longer existing
17379         gui-last-selected-text.
17381         * lisp/rect.el (delete-whitespace-rectangle-line): Don't cross EOL.
17383         * lisp/net/nsm.el (nsm-query-user): Use cursor-in-echo-area.
17385 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
17387         * lisp/emacs-lisp/package.el (list-packages): Avoid redundant generate.
17389         * lisp/emacs-lisp/package.el (list-packages): Call refresh in
17390         right buffer.
17392         * lisp/emacs-lisp/bytecomp.el: Silence noninteractive compilations.
17393         (byte-compile--interactive): New var.
17394         (byte-compile--message): New function.
17395         (byte-compile-log-1, byte-force-recompile)
17396         (byte-recompile-directory, byte-recompile-file)
17397         (byte-compile-file, compile-defun)
17398         (byte-compile-file-form-defmumble, byte-compile)
17399         (byte-compile-file-form-defalias, display-call-tree): Use it.
17401         * lisp/files.el: Don't message when nothing happened.
17402         (save-some-buffers, basic-save-buffer): Before messaging to say
17403         "nothing was saved" check if (called-interactively-p 'any).
17405 2015-04-12  João Távora  <joaotavora@gmail.com>
17407         Summary: Improve sexp-based movement in message-mode
17408         Works by giving citations and smileys a different syntax.  This helps
17409         modes like `show-paren-mode', `electric-pair-mode', and C-M-*
17410         sexp-based movement.
17411         * lisp/gnus/message.el (message--syntax-propertize): New function.
17412         (message-mode): Set syntax-related vars.
17413         (message-smileys): New variable.
17414         * test/automated/message-mode-tests.el: New file
17416 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
17418         Use bool for boolean in window.c
17419         * src/window.c: Omit unnecessary static function decls.
17420         (adjust_window_count, select_window, Fselect_window)
17421         (window_body_width, Fwindow_body_height, Fwindow_body_width)
17422         (set_window_hscroll, check_window_containing, Fwindow_at)
17423         (Fwindow_end, Fset_window_start, Fpos_visible_in_window_p)
17424         (unshow_buffer, replace_window, recombine_windows)
17425         (add_window_to_list, candidate_window_p, next_window)
17426         (Fnext_window, Fprevious_window, window_loop, check_all_windows)
17427         (Fget_buffer_window, Fdelete_other_windows_internal)
17428         (replace_buffer_in_windows_safely, set_window_buffer)
17429         (Fset_window_buffer, Fforce_window_update)
17430         (temp_output_buffer_show, make_parent_window)
17431         (window_resize_check, window_resize_apply, Fwindow_resize_apply)
17432         (resize_frame_windows, Fsplit_window_internal)
17433         (Fdelete_window_internal, grow_mini_window, shrink_mini_window)
17434         (Fresize_mini_window_internal, mark_window_cursors_off)
17435         (window_scroll, window_scroll_pixel_based)
17436         (window_scroll_line_based, scroll_command, Fscroll_other_window)
17437         (Fscroll_left, Fscroll_right, displayed_window_lines, Frecenter)
17438         (Fmove_to_window_line, Fset_window_configuration)
17439         (delete_all_child_windows, apply_window_adjustment)
17440         (set_window_fringes, set_window_scroll_bars)
17441         (Fset_window_vscroll, foreach_window, foreach_window_1)
17442         (compare_window_configurations, Fcompare_window_configurations):
17443         Prefer 'bool', 'true', and 'false' for booleans.
17444         * src/window.h (WINDOW_MODE_LINE_LINES)
17445         (WINDOW_HEADER_LINE_LINES): Omit unnecessary "!!" on bool value.
17447 2015-04-11  Artur Malabarba  <bruce.connor.am@gmail.com>
17449         Speed up byte-compilation and autoload generation by avoiding mode-hooks
17450         This prevents emacs-lisp-mode-hook from being run everytime an
17451         autoload file is generated, which can account for a fraction of
17452         package installation time depending on the hooks the user has
17453         configured.
17454         * lisp/emacs-lisp/bytecomp.el (byte-compile-file): Use delay-mode-hooks.
17455         * lisp/emacs-lisp/autoload.el (autoload-find-file)
17456         (autoload-find-generated-file): Use delay-mode-hooks.
17458         * lisp/emacs-lisp/package.el: Improve `package-menu-refresh'.
17459         (package-menu-refresh): Respect async and do new package checking.
17460         (list-packages): Use `package-menu-refresh' instead of repeating code.
17462         * lisp/emacs-lisp/package.el: Improve package-menu-quick-help.
17463         (package--quick-help-keys): New variable.
17464         (package--prettify-quick-help-key): New function.
17465         (package-menu-quick-help): Use it.
17467         * lisp/emacs-lisp/package.el: Fix initially wrong compat table.
17468         (package--build-compatibility-table): Require finder.
17470         * test/automated/package-test.el: Fix new test.
17472         * lisp/emacs-lisp/package.el: Silence async operations.
17473         (package--silence): New variable.
17474         (package--message): New function.
17475         (package-import-keyring, package-refresh-contents)
17476         (package-compute-transaction, package-install, package-delete)
17477         (package-menu--perform-transaction, package-menu-execute): Use it.
17479         * test/automated/package-test.el: Test async functionality.
17480         (package-test-update-archives-async): New test.
17482 2015-04-11  Daiki Ueno  <ueno@gnu.org>
17484         Utilize `make-process' in epg.el
17485         * lisp/epg.el (epg-error-output): Abolish.
17486         (epg-context): New slot `error-buffer'.
17487         (epg--start): Use `make-process' and `make-pipe-process'.
17488         (epg--process-filter): Remove code separating stderr from stdout.
17489         (epg-wait-for-completion): Simplify `error-output' handling.
17490         (epg-reset): Dispose error buffer.
17492 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
17494         * .gitignore: Ignore doc temps and outputs.
17496         Port commit-msg to MSYS Bash+Gawk
17497         See Eli Zaretskii in:
17498         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00610.html
17499         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format)
17500         (cent_sign, print_at_sign, at_sign): Revert previous change.
17501         (print_at_sign): Prepend "BEGIN".
17502         (at_sign): Redirect from /dev/null to be safer with pre-POSIX awk.
17504         Port commit-msg to broken MS-Windows shell
17505         * build-aux/git-hooks/commit-msg (cent_sign):
17506         Just use UTF-8 here rather than ASCII + printf, as the latter fails
17507         on a broken MS-Windows shell.  Reported by Eli Zaretskii in:
17508         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00592.html
17510 2015-04-11  Chris Zheng  <chriszheng99@gmail.com>  (tiny change)
17512         Support GnuTLS v3.4 and later on MS-Windows
17513         * src/gnutls.c (syms_of_gnutls) <libgnutls-version>: New DEFSYM.
17514         * lisp/term/w32-win.el (dynamic-library-alist): Determine which
17515         GnuTLS DLL to load according to value of libgnutls-version.
17516         (Bug#20294)
17518 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
17520         Minor quoting etc. fixes to misc manuals
17521         Fix some minor quoting and spacing issues.  Distinguish more
17522         clearly among grave accent and apostrophe (which are ASCII) and
17523         single quote (which is not).  Prefer the standard terms
17524         "apostrophe" and "grave accent" to alternative names that can be
17525         confusing.  Use apostrophes to single-quote ASCII text.
17526         * doc/misc/remember.texi: Spell the mystic's pseudonym in UTF-8
17527         rather than approximating it in ASCII with grave accent.
17529 2015-04-11  Daiki Ueno  <ueno@gnu.org>
17531         Respect more keyword args in `make-process'
17532         * src/process.c (Fmake_process): Respect `:sentinel' and `:filter'
17533         keywords as documented.
17535 2015-04-10  Dmitry Gutov  <dgutov@yandex.ru>
17537         Extract ChangeLog entries when committing a directory
17538         * lisp/vc/vc-dispatcher.el (vc-log-edit): Update FIXME comment.
17539         * lisp/vc/log-edit.el (log-edit-changelog-insert-entries):
17540         Add a FIXME comment.
17541         (log-edit-changelog-entries): Extract from
17542         `log-edit-changelog-entries', handle FILE being a directory
17543         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00555.html).
17545 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
17547         Fix problems found by --enable-gcc-warnings
17548         * src/process.c (create_process, Fmake_pipe_process)
17549         (Fmake_network_process): Omit unused locals.
17551         Fix commit-msg to handle scissors lines
17552         * build-aux/git-hooks/commit-msg:
17553         Ignore every line after a scissors line, such as a line generated
17554         by 'git commit -v'.  Problem reported by Johan Bockgård in:
17555         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00580.html
17557         port commit-msg to Gawk 3.0.4 (1999)
17558         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format, cent_sign)
17559         (print_at_sign, at_sign): New vars.  Use them to avoid problems
17560         Eli Zaretskii encountered with Gawk 3.0.4 (1999) on MSYS.  See:
17561         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
17563         Have commit-msg report commit failure
17564         * build-aux/git-hooks/commit-msg: If the commit is aborted,
17565         say so.  Simplify by doing this at the end.  Problem reported
17566         by Eli Zaretskii in:
17567         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
17569 2015-04-10  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
17571         Clean up LDAP Configuration section of EUDC manual
17572         * doc/misc/eudc.texi: Combine indices.
17573         (LDAP Configuration): Use command markup.  Add index entries.
17574         Change formatting.  Wrap long lines.  Add noindent markup.
17576 2015-04-10  Daiki Ueno  <ueno@gnu.org>
17578         Add facility to collect stderr of async subprocess
17579         * src/w32.h (register_aux_fd): New function declaration.
17580         * src/w32.c (register_aux_fd): New function.
17581         * src/process.h (struct Lisp_Process): New member stderrproc.
17582         * src/process.c (PIPECONN_P): New macro.
17583         (PIPECONN1_P): New macro.
17584         (Fdelete_process, Fprocess_status, Fset_process_buffer)
17585         (Fset_process_filter, Fset_process_sentinel, Fstop_process)
17586         (Fcontinue_process): Handle pipe process specially.
17587         (create_process): Respect p->stderrproc.
17588         (Fmake_pipe_process): New function.
17589         (Fmake_process): Add new keyword argument :stderr.
17590         (wait_reading_process_output): Specially handle a pipe process when
17591         it gets an EOF.
17592         (syms_of_process): Register Qpipe and Smake_pipe_process.
17593         * doc/lispref/processes.texi (Asynchronous Processes): Document
17594         `make-pipe-process' and `:stderr' keyword of `make-process'.
17595         * lisp/subr.el (start-process): Suggest to use `make-process' handle
17596         standard error separately.
17597         * test/automated/process-tests.el (process-test-stderr-buffer)
17598         (process-test-stderr-filter): New tests.
17599         * etc/NEWS: Mention new process type `pipe' and its usage with the
17600         `:stderr' keyword of `make-process'.
17602 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
17604         Minor quoting etc. fixes to lispref manual
17605         * doc/lispref/tips.texi (Documentation Tips):
17606         Distinguish more clearly among grave accent, apostrophe,
17607         and single quote.
17608         * doc/lispref/README, doc/lispref/buffers.texi:
17609         * doc/lispref/commands.texi, doc/lispref/control.texi:
17610         * doc/lispref/customize.texi, doc/lispref/display.texi:
17611         * doc/lispref/elisp.texi, doc/lispref/files.texi:
17612         * doc/lispref/frames.texi, doc/lispref/hash.texi:
17613         * doc/lispref/help.texi, doc/lispref/internals.texi:
17614         * doc/lispref/loading.texi, doc/lispref/makefile.w32-in:
17615         * doc/lispref/markers.texi, doc/lispref/modes.texi:
17616         * doc/lispref/nonascii.texi, doc/lispref/objects.texi:
17617         * doc/lispref/os.texi, doc/lispref/positions.texi:
17618         * doc/lispref/strings.texi, doc/lispref/syntax.texi:
17619         * doc/lispref/text.texi, doc/lispref/tips.texi:
17620         * doc/lispref/two-volume-cross-refs.txt, doc/lispref/windows.texi:
17621         Use American-style double quoting in ordinary text,
17622         and quote 'like this' when single-quoting in ASCII text.
17623         Also, fix some minor spacing issues.
17625 2015-04-10  Michael Albinus  <michael.albinus@gmx.de>
17627         Handle symlinked test directory in tramp-tests.el
17628         * test/automated/tramp-tests.el (tramp-test18-file-attributes)
17629         (tramp--test-check-files): Use `file-truename' for directories.
17631 2015-04-10  Eli Zaretskii  <eliz@gnu.org>
17633         Fix 'recenter' when visual-line-mode is turned on
17634         * src/window.c (Frecenter): Use the same code for GUI and TTY
17635         frames alike; use vmotion only for "initial" frames.  This is
17636         because vmotion doesn't support visual-line-mode.  Rewrite the
17637         'iarg >= 0' case to use move_it_* functions instead of using
17638         vmotion, for the same reason.  Fix the clipping of the argument
17639         value to support scroll-margin in all cases and avoid unwarranted
17640         recentering.  Reported by Milan Stanojević <milanst@gmail.com> in
17641         http://lists.gnu.org/archive/html/help-gnu-emacs/2015-04/msg00092.html,
17642         which see.
17644 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
17646         * lisp/abbrev.el (define-abbrev-table): Refine last change.
17648         * lisp/emacs-lisp/cl-lib.el: Partial revert of "2015-04-05 Rationalize
17649         use of c[ad]+r", so as to keep the "cl-" prefix on all
17650         cl-lib definitions.
17652         * lisp/progmodes/vhdl-mode.el (vhdl-prepare-search-2):
17653         Use inhibit-point-motion-hooks.
17655         * lisp/cedet/semantic: Remove some dead code.
17656         * lisp/cedet/semantic/util-modes.el
17657         (semantic-stickyfunc-header-line-format): Emacs<22 is not supported
17658         any more.
17659         * lisp/cedet/semantic/fw.el (semantic-buffer-local-value): Emacs<21 is
17660         not supported any more.
17661         (semantic-safe): Use `declare'.
17662         * lisp/cedet/semantic/decorate.el (semantic-set-tag-intangible)
17663         (semantic-tag-intangible-p): Remove unused functions.
17664         * lisp/cedet/semantic/complete.el (semantic-displayor-window-edges):
17665         Remove unused function.
17667         * lisp/gnus/gnus-art.el (gnus-hidden-properties): Simplify.
17668         (gnus-article-hide-text, gnus-article-unhide-text)
17669         (gnus-article-unhide-text-type): Remove special handling of
17670         `intangible' since that property is not used any more.
17671         (gnus-article-treat-body-boundary): Use gnus-hidden-properties.
17673 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
17675         Use the VC root in `log-edit-listfun'
17676         * lisp/vc/vc-dispatcher.el (vc-log-edit): Use the VC root in
17677         `log-edit-listfun'.
17679 2015-04-09  Jay Belanger  <jay.p.belanger@gmail.com>
17681         Fix description of Unix time, mention new function.
17682         * lisp/calc/calc-forms.el (calcFunc-unixtime): Fix adjustment for
17683         Unix time.
17684         * doc/misc/calc.texi (Date Forms): Fix description of Unix time.
17685         (Basic Operations on Units): Mention `calc-convert-exact-units'.
17687 2015-04-09  Artur Malabarba  <bruce.connor.am@gmail.com>
17689         * lisp/emacs-lisp/package.el: Use mode-line-process for notification.
17691 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
17693         * lisp/vc/log-edit.el (log-edit-insert-changelog-entries):
17694         Don't add newline after the last entry.
17696 2015-04-09  Simen Heggestøyl  <simenheg@gmail.com>
17698         css-mode.el: Add "not" pseudo-class
17699         (Bug#20267)
17700         * lisp/textmodes/css-mode.el (css-pseudo-class-ids): Add "not" to
17701         list of CSS pseudo-classes.
17703 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
17705         * etc/NEWS: Add missing entry for "Stop messing with the EMACS env var".
17707 2015-04-09  Michael Albinus  <michael.albinus@gmx.de>
17709         Stop messing with the EMACS env var
17710         * doc/emacs/misc.texi (Interactive Shell): Remove description of
17711         EMACS env var.
17713 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
17715         Adapt 'make change-history' to coding cookie
17716         * Makefile.in (change-history): Adjust to change of format of
17717         ChangeLog file, which now has a coding cookie before an indented
17718         copyright notice.
17720 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
17722         Adapt 'make change-history' to coding cookie
17723         * Makefile.in (change-history): Adjust to change of format of
17724         ChangeLog file, which now has a coding cookie before an indented
17725         copyright notice.
17727         gitlog-to-changelog coding cookie and mv -i
17728         * build-aux/gitlog-to-emacslog: Use ChangeLog.1, not Makefile.in,
17729         for copyright notice prototype, so that we get a proper "coding:"
17730         cookie.  Use 'mv -i' to avoid unconditionally overwriting an
17731         existing ChangeLog.  Problems reported by Eli Zaretskii in:
17732         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00504.html
17734         Merge from gnulib
17735         * build-aux/gitlog-to-changelog: Update from gnulib, incorporating:
17736         2015-04-09 gitlog-to-changelog: port to MS-Windows
17738 2015-04-09  Boruch Baum  <boruch_baum@gmx.com>  (tiny change)
17740         * lisp/bookmark.el (bookmark-bmenu-goto-bookmark): Don't inf-loop.
17741         (Bug#20212)
17743 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
17745         Stop messing with the EMACS env var
17746         (Bug#20202)
17747         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
17748         * lisp/comint.el (comint-exec-1):
17749         * lisp/term.el (term-exec-1): Don't set EMACS envvar.
17750         * lisp/progmodes/compile.el (compilation-start): Same and bring
17751         INSIDE_EMACS's format in line with other users.
17753         css-mode.el (css-smie-rules): Fix indentation after complex selectors
17754         (Bug#20282)
17755         * lisp/textmodes/css-mode.el (css-smie-rules): Don't get confused by
17756         inner structure of selectors.
17758 2015-04-08  Fabián Ezequiel Gallina  <fgallina@gnu.org>
17760         python.el: Indent docstring lines to base-indent
17761         (Bug#19595)
17762         Thanks to immerrr <immerrr@gmail.com> for reporting and providing
17763         an initial patch.
17764         * lisp/progmodes/python.el
17765         (python-indent-context): Add :inside-docstring context.
17766         (python-indent--calculate-indentation): Handle :inside-docstring.
17767         (python-indent-region): Re-indent docstrings.
17768         * test/automated/python-tests.el (python-indent-region-5)
17769         (python-indent-inside-string-2): Fix tests.
17771         python.el: Increase native completion robustness
17772         (Bug#19755)
17773         Thanks to Carlos Pita <carlosjosepita@gmail.com> for reporting
17774         this and providing useful ideas.
17775         * lisp/progmodes/python.el
17776         (python-shell-completion-native-output-timeout): Increase value.
17777         (python-shell-completion-native-try-output-timeout): New var.
17778         (python-shell-completion-native-try): Use it.
17779         (python-shell-completion-native-setup): New readline setup avoids
17780         polluting current context, ensures output when no-completions are
17781         available and includes output end marker.
17782         (python-shell-completion-native-get-completions): Trigger with one
17783         tab only.  Call accept-process-output until output end is found or
17784         python-shell-completion-native-output-timeout is exceeded.
17786 2015-04-08  Samer Masterson  <samer@samertm.com>
17788         * lisp/eshell: Make backslash a no-op in front of normal chars
17789         (Bug#8531)
17790         * lisp/eshell/esh-arg.el (eshell-parse-argument-hook): Update comment.
17791         (eshell-parse-backslash): Return escaped character after backslash
17792         if it is special.  Otherwise, if the backslash is not in a quoted
17793         string, ignore the backslash and return the character after; if
17794         the backslash is in a quoted string, return the backslash and the
17795         character after.
17796         * test/automated/eshell.el (eshell-test/escape-nonspecial)
17797         (eshell-test/escape-nonspecial-unicode)
17798         (eshell-test/escape-nonspecial-quoted)
17799         (eshell-test/escape-special-quoted): Add tests for new
17800         `eshell-parse-backslash' behavior.
17802 2015-04-08  Gustav Hållberg  <gustav@gmail.com>  (tiny change)
17804         * lisp/vc/diff-mode.el (diff-hunk-file-names): Don't require a TAB
17805         after the file name.
17806         (Bug#20276)
17808 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
17810         Minor quoting etc. fixes to Emacs manual
17811         * doc/emacs/Makefile.in, doc/emacs/ack.texi, doc/emacs/building.texi:
17812         * doc/emacs/calendar.texi, doc/emacs/cmdargs.texi:
17813         * doc/emacs/custom.texi, doc/emacs/dired.texi, doc/emacs/emacs.texi:
17814         * doc/emacs/files.texi, doc/emacs/glossary.texi, doc/emacs/gnu.texi:
17815         * doc/emacs/indent.texi, doc/emacs/macos.texi:
17816         * doc/emacs/maintaining.texi, doc/emacs/makefile.w32-in:
17817         * doc/emacs/programs.texi, doc/emacs/rmail.texi:
17818         * doc/emacs/search.texi, doc/emacs/trouble.texi:
17819         * doc/emacs/vc1-xtra.texi:
17820         Use American-style double quoting in ordinary text,
17821         and quote 'like this' when single-quoting in ASCII text.
17822         Also, fix some minor spacing issues.
17824         Minor quoting etc. fixes to elisp intro
17825         * doc/lispintro/emacs-lisp-intro.texi: Consistently use
17826         American-style double quoting in ordinary text.  In ASCII text,
17827         consistently quote 'like this' instead of `like this', unless
17828         Emacs requires the latter.
17830 2015-04-08  Dmitry Gutov  <dgutov@yandex.ru>
17832         * CONTRIBUTE: Mention log-edit-insert-changelog.
17834         * CONTRIBUTE: Emphasize creating the top-level ChangeLog file manually.
17836 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
17838         * doc/misc/calc.texi (Summary): Avoid '@:' when usurped.
17840 2015-04-08  Stefan Monnier  <monnier@iro.umontreal.ca>
17842         * lisp/emacs-lisp/eieio-core.el (eieio-copy-parents-into-subclass):
17843         Fix inheritance of initargs.  (Bug#20270)
17845 2015-04-08  Artur Malabarba  <bruce.connor.am@gmail.com>
17847         * lisp/emacs-lisp/package.el (package-menu-mode): Mode-line notification
17848         while dowloading information.
17850         * lisp/emacs-lisp/package.el: More conservative `ensure-init-file'
17851         (package--ensure-init-file): Check file contents before visiting.
17852         (package-initialize): Call it.
17853         (package-install-from-buffer, package-install): Don't call it.
17855 2015-04-08  Eli Zaretskii  <eliz@gnu.org>
17857         * src/eval.c (init_eval_once): Bump max_lisp_eval_depth to 800.
17858         (Bug#17517)
17860 2015-04-08  Michael Albinus  <michael.albinus@gmx.de>
17862         * lisp/net/tramp-cache.el (tramp-flush-file-property):
17863         Fix nasty scoping bug.
17865 2015-04-08  Tassilo Horn  <tsdh@gnu.org>
17867         Add notice to visual commands section
17868         * doc/misc/eshell.texi (Input/Output): Add notice that some tools
17869         such as git call less with its -F option which omits pagination if
17870         the contents is less than one page long.  This interferes with
17871         eshell's visual (sub-)commands.
17873 2015-04-07  Dmitry Gutov  <dgutov@yandex.ru>
17875         * lisp/ffap.el (ffap-string-at-point-mode-alist): Support
17876         environment variable expansion in file names.  (Bug#19839)
17878 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
17880         Prefer double-quote to accent-grave in man pages
17882 2015-04-07  Stefan Monnier  <monnier@iro.umontreal.ca>
17884         (Bug#20257)
17885         * lisp/files.el (set-visited-file-name): Clear auto-save if nil.
17887 2015-04-07  Ivan Shmakov  <ivan@siamics.net>
17889         Update etc/PROBLEMS.
17890         * etc/PROBLEMS: Mention visible-cursor; a few more mentions of
17891         ~/.Xresources and xrdb(1); refer to 'GNU Coreutils' and
17892         'X Window System' or 'X' (were: 'GNU Fileutils' and 'X Windows',
17893         respectively); other minor updates and tweaks.  (Bug#20011)
17895 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
17897         Add doc strings for some Isearch state vars
17898         * lisp/misearch.el (multi-isearch-buffer-list)
17899         (multi-isearch-file-list): Add doc strings.
17900         (Bug#20232)
17902 2015-04-07  Alan Mackenzie  <acm@muc.de>
17904         Always mark "<" and ">" in #include directives with text properties.
17905         * lisp/progmodes/c-fonts.el (c-cpp-matchers): Replace a font-lock
17906         "anchored matcher" with an invocation of
17907         c-make-font-lock-search-function to allow fontification when there's
17908         no trailing space on an "#include <..>" line.
17910 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
17912         Generate a ChangeLog file from commit logs
17913         * .gitignore: Add 'ChangeLog'.
17914         * build-aux/gitlog-to-changelog: New file, from Gnulib.
17915         * build-aux/gitlog-to-emacslog: New file.
17916         * CONTRIBUTE: Document the revised workflow.
17917         * Makefile.in (clean): Remove *.tmp and etc/*.tmp*
17918         instead of just special cases.
17919         (CHANGELOG_HISTORY_INDEX_MAX, CHANGELOG_N, gen_origin): New vars.
17920         (ChangeLog, unchanged-history-files, change-history)
17921         (change-history-commit): New rules.
17922         * admin/admin.el (make-manuals-dist--1):
17923         Don't worry about doc/ChangeLog.
17924         * admin/authors.el: Add a FIXME.
17925         * admin/make-tarball.txt:
17926         * lisp/calendar/icalendar.el:
17927         * lisp/gnus/deuglify.el:
17928         * lisp/obsolete/gulp.el:
17929         * lwlib/README:
17930         Adjust to renamed ChangeLog history files.
17931         * admin/merge-gnulib (GNULIB_MODULES): Add gitlog-to-changelog.
17932         * admin/notes/repo: Call it 'master' a la Git, not 'trunk' a la Bzr.
17933         Remove obsolete discussion of merging ChangeLog files.
17934         New section "Maintaining ChangeLog history".
17935         * build-aux/git-hooks/pre-commit:
17936         Reject attempts to commit files named 'ChangeLog'.
17937         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
17938         * make-dist: Make and distribute top-level ChangeLog if there's a
17939         .git directory.  Distribute the new ChangeLog history files
17940         instead of scattered ChangeLog files.  Distribute the new files
17941         gitlog-to-changelog and gitlog-to-emacslog.
17942         (Bug#19113)
17944         Rename ChangeLogs for gitlog-to-changelog
17945         This patch was implemented via the following shell commands:
17946         find * -name ChangeLog |
17947         sed 's,.*,git mv & &.1,
17948         s, lisp/ChangeLog\.1$, lisp/ChangeLog.17,
17949         s, lisp/erc/ChangeLog\.1$, lisp/erc/ChangeLog.09,
17950         s, lisp/gnus/ChangeLog\.1$, lisp/gnus/ChangeLog.3,
17951         s, lisp/mh-e/ChangeLog\.1$, lisp/mh-e/ChangeLog.2,
17952         s, src/ChangeLog\.1$, src/ChangeLog.13,' |
17953         sh
17954         git commit -am"[this commit message]"
17956 This file records repository revisions from
17957 commit 9d56a21e6a696ad19ac65c4b405aeca44785884a (exclusive) to
17958 commit 8a8613bcf4227dfe46a694b761e9575bdf6ca2ce (inclusive).
17959 See ChangeLog.1 for earlier changes.
17961 ;; Local Variables:
17962 ;; coding: utf-8
17963 ;; End:
17965   Copyright (C) 2015-2016 Free Software Foundation, Inc.
17967   This file is part of GNU Emacs.
17969   GNU Emacs is free software: you can redistribute it and/or modify
17970   it under the terms of the GNU General Public License as published by
17971   the Free Software Foundation, either version 3 of the License, or
17972   (at your option) any later version.
17974   GNU Emacs is distributed in the hope that it will be useful,
17975   but WITHOUT ANY WARRANTY; without even the implied warranty of
17976   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17977   GNU General Public License for more details.
17979   You should have received a copy of the GNU General Public License
17980   along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.