Merge branch 'release-process-lowercase'
[emacs.git] / ChangeLog.2
blob3636e382eb207ac7dffd7e2aa0a037a17bc20d13
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  Anders Lindgren  <andlind@gmail.com>
790         Merge branch 'master' of /Volumes/HD2/build/emacs-git-ssh
792         Merge branch 'master' of ssh://git.sv.gnu.org/srv/git/emacs
794         Merge branch 'master' of /Volumes/HD2/build/emacs-git-ssh
796 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
798         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files):
799         Revert 692bce5b9eccfae19ae2a5a23a9ccd8d6bf86076, `delete-dups'
800         does not exist in XEmacs 21.4.
802 2015-10-28  Anders Lindgren  <andlind@gmail.com>
804         Fixed OS X startup crash
806         Input events started to arrive before ns_term_init() was finished.
807         Solved by blocking input.  This also seems to correct the "You
808         can't open the application "Emacs" because it may be damaged or
809         incomplete" error issued when double-clicking on the Emacs
810         application.
812         * nsterm.m (ns_constrain_all_frames, ns_init_term): Block input.
813         * nsterm.m (ns_send_appdefined, EmacsApp): Trace output.
815 2015-10-28  Anders Lindgren  <andlind@gmail.com>
817         Merge branch 'master' of ssh://git.sv.gnu.org/srv/git/emacs
819 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
821         * src/process.c (Fget_buffer_process): Improve docstring.
822         Document the fact that it doesn't return dead processes.
824 2015-10-28  Anders Lindgren  <andlind@gmail.com>
826         Fix incorrect NextStep tool-bar-mode -- wrong number of rows in frame.
828         * nsterm.h (struct ns_output): New flag, in_animation.
829         * nsfns.m (Fx_create_frame): Initialize in_animation flag.
830         * nsmenu.m (free_frame_tool_bar, update_frame_tool_bar): Set
831         in_animation flag around call to "setVisible". Set new tool bar
832         height before call to setVisible.
833         * nsterm.m (x_set_window_size): Don't call [view setRow:
834         andColumns:] as this fools the subsequent call to updateFrameSize
835         from performing the real resize.
836         (windowDidResize): Don't update anything when in_animation is
837         non-zero.
839         Trace output.
841         * nsmenu.m (free_frame_tool_bar, update_frame_tool_bar)
842         (EmacsToolbar):
843         * nsterm.m (x_set_window_size, updateFrameSize)
844         ([EmacsView setRows: andColumns:])
846 2015-10-28  Nicolas Petton  <nicolas@petton.fr>
848         * lisp/emacs-lisp/thunk.el (thunk-delay): Fix the macro.
850 2015-10-28  Tassilo Horn  <tsdh@gnu.org>
852         Prettify TeX macros not ending in a word char
854         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
855         Prettify macros which don't end in a word character.
857 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
859         Pipe Hg commit descriptions through 'tabindent'
861         * lisp/vc/vc-hg.el (vc-hg-log-format): Pipe commit description
862         through 'tabindent'.
863         (vc-hg-log-view-mode): Set tab-width to 2 locally.
864         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02259.html)
866 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
868         * lisp/net/tramp-smb.el: Avoid using `add-to-list' on a let-local var.
869         (tramp-smb-handle-directory-files): Use `delete-dups'.
871         * lisp/net/tramp.el (auto-save-file-name-transforms): Declare.
873 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
875         * lisp/international/ccl.el: Use lexical-binding.
876         (ccl-compile-if): Remove unused var `false-ic'.
877         (ccl-compile-write-repeat): Remove unused var `i'.
878         (ccl-compile-map-single): Remove unused var `id'.
879         (ccl-dump, ccl-dump-binary): Use explicit let-binding to bind the
880         dynamic var `ccl-code'.
882 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
884         * lisp/json.el (json-new-object): Optimize trivial `list' call.
886 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
888         * lisp/help.el: Fix bug with incorrect arglist string.
889         (help-add-fundoc-usage): Don't mistake a mis-formatted string
890         for a list.
892 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
894         * lisp/gnus/gnus-topic.el: Silence some warnings.
895         (gnus-topic-prepare-topic): Remove unused var `topic'.
896         (gnus-topic-remove-topic): Mark unused arg `hide'.
897         (gnus-tmp-header): Declare.
898         (gnus-topic-goto-missing-group): Remove unused var `entry'.
899         (gnus-topic-unmark-topic): Mark unused arg `dummy'.
900         (gnus-topic-copy-matching): Mark unused arg `copyp'.
901         Move initialization of `topic' into its declaration.
903 2015-10-27  Stephen Leake  <stephen_leake@stephe-leake.org>
905         Minor CEDET fixes
907         * lisp/cedet/cedet-global.el (cedet-gnu-global-gtags-call):
908         Handle warnings from gtags about invalid options.
909         (cedet-gnu-global-create/update-database): Do incremental update
910         properly.
912         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
913         Get monotone root right.
915 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
917         Fall back to polling in autorevert when needed
919         * lisp/autorevert.el (auto-revert-notify-handler): When a
920         `stopped' event arrives from file notification, fall back to polling.
922         * test/automated/file-notify-tests.el
923         (file-notify-test03-autorevert): Extend test for polling when file
924         notification ceases to work.
926 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
928         Show full commit messages in 'hg log' when appropriate
930         * lisp/vc/vc-hg.el (vc-hg-log-format): New variable.
931         (vc-hg-print-log, vc-hg-expanded-log-entry): Use it.
932         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02191.html)
934 2015-10-27  Nicolas Petton  <nicolas@petton.fr>
936         Use a plain SVG file for the icon
938         * etc/images/icons/hicolor/scalable/apps/emacs.svg: Use a plain SVG
939           format instead of the Inkscape SVG format.
941 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
943         Fix subtle bug in auto-revert-tests.el
945         * test/automated/auto-revert-tests.el
946         (auto-revert-test02-auto-revert-mode-dired): Narrow *Messages*
947         buffer where it belongs to.  (Bug#21668)
949 2015-10-26  Nicolas Petton  <nicolas@petton.fr>
951         * lisp/emacs-lisp/map.el: Better docstrings.
953         * lisp/emacs-lisp/seq.el: Better docstrings.
955         * lisp/emacs-lisp/seq.el: Rename all seq arguments to sequence.
957 2015-10-26  Phillip Lord  <phillip.lord@russet.org.uk>
959         * lisp/emacs-lisp/ert.el: Print results without newline escaping.
961 2015-10-26  Stephen Leake  <stephen_leake@stephe-leake.org>
963         Clarify that load-path contents should be directory file names
965         * doc/lispref/files.texi (Directory Names): Define and use "directory
966         file name".  Recommend `expand-file-name'.
968         * src/lread.c (load-path): Fix doc string; elements are directory file
969         names.
971 2015-10-26  Eli Zaretskii  <eliz@gnu.org>
973         Fix simple-test.el test
975         * test/automated/simple-test.el (simple-test--dummy-buffer):
976         Make sure indentation doesn't use TABs, otherwise the 6th test
977         might fail.
979 2015-10-26  Mark Oteiza  <mvoteiza@udel.edu>
981         * lisp/net/eww.el (eww-bookmark-prepare): Use truncate-string-to-width.
982         `substring' does not account for full width characters.
984 2015-10-26  Michael Albinus  <michael.albinus@gmx.de>
986         Further work on `stopped' events in filenotify.el
988         * doc/lispref/os.texi (File Notifications): Rework examples.
990         * lisp/filenotify.el (file-notify--rm-descriptor): Optional parameter.
991         (file-notify--rm-descriptor, file-notify-callback): Improve check
992         for sending `stopped' event.
993         (file-notify-add-watch): Check for more events for `inotify'.
995         * test/automated/file-notify-tests.el
996         (file-notify--test-expected-events): New defvar.
997         (file-notify--test-with-events): Use it.
998         (file-notify--test-cleanup): Make it more robust when deleting
999         directories.
1000         (file-notify--test-event-test): Check also for watched directories.
1001         (file-notify--test-event-handler): Suppress temporary .#files.
1002         (file-notify-test02-events, file-notify-test04-file-validity):
1003         Rework `stopped' events.
1004         (file-notify-test05-dir-validity): Wait for events when appropriate.
1006 2015-10-26  Artur Malabarba  <bruce.connor.am@gmail.com>
1008         * src/keyboard.c (post-command-hook): Shorten docstring.
1010 2015-10-26  Tassilo Horn  <tsdh@gnu.org>
1012         Fix infinite loop in sh-script's SMIE code
1014         * lisp/progmodes/sh-script.el (sh-smie-sh-forward-token): Fix infinite
1015         loop (bug#21747).
1017 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
1019         * lisp/isearch.el (search-default-regexp-mode): Revert to nil.
1020         Character-fold search _still_ doesn't play well with
1021         lax-whitespace.  So disable it by default (again) for now.
1023 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
1025         * lisp/isearch.el: No visual feedback for default search mode.
1026         During an isearch where character-folding is the default, we don't
1027         want to take up minibuffer space just to tell the user that
1028         "Char-fold " is on.  The same goes for other modes, if the user
1029         changes the default.  In contrast, if the user toggles OFF the
1030         default mode, they should see "Literal", to distinguish it from
1031         the default mode.
1032         (isearch--describe-regexp-mode): Return "" if describing the
1033         default mode, and return "literal " if describing a plain search
1034         and it is not default.
1036 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
1038         * test/automated/simple-test.el: New file.
1039         Define tests for `newline' and `open-line'.
1041 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
1043         * lisp/simple.el (open-line): Integrate with electric-indent-mode.
1044         Also run `post-self-insert-hook' when called interactively.
1046 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
1048         * lisp/simple.el (open-line): Fix docstring.
1049         Also explain apparently redundant line.
1051 2015-10-25  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
1052             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
1054         Sync with soap-client repository, version 3.0.1
1056         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
1057         Bump version to 3.0.1.
1059         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Update home page.
1061 2015-10-25  Eli Zaretskii  <eliz@gnu.org>
1063         * lisp/progmodes/grep.el (grep): Doc fix.  (Bug#21754)
1065 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
1067         * src/keyboard.c (post-command-hook): Extend the docstring.
1068         Mainly, explain how to use it without hanging Emacs, or giving the
1069         impression that it is hanging.  Also mention `pre-command-hook'.
1070         (pre-command-hook): Mention `post-command-hook'.
1072 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
1074         * lisp/custom.el (custom-declare-variable): Shorten code again.
1075         Without using pcase this time.  We can't use pcase because it is
1076         loaded after custom in loadup.el.  Also add a comment explaining
1077         this to future dummies like me.
1079 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
1081         * doc/lispref/os.texi (File Notifications): Document `stopped event'.
1083 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
1085         Introduce `stopped' event in file notification
1087         * lisp/filenotify.el (file-notify--rm-descriptor): New defun.
1088         (file-notify-rm-watch): Use it.
1089         (file-notify-callback): Implement `stopped' event.
1090         (file-notify-add-watch): Mention `stopped' in the docstring.
1091         Check, that upper directory exists.
1093         * test/automated/file-notify-tests.el (file-notify-test01-add-watch):
1094         Add two test cases.
1095         (file-notify-test02-events): Handle also `stopped' event.
1096         (file-notify-test04-file-validity): Add another test case.
1098 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
1100         Revert commit that broke 'make bootstrap'
1102         * lisp/custom.el (custom-declare-variable): Revert commit
1103         79fac080d277fed07b3c192890ad59d36d9f83b6.  custom.el needs to work
1104         even when pcase has not been defined yet, when doing bootstrapping.
1106 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
1108         Port recent inline functions fix to Standard C
1110         * src/lisp.h (LISP_MACRO_DEFUN, LISP_MACRO_DEFUN_VOID): Remove.
1111         All uses rewritten to define the function directly rather than to
1112         use a macro to define the function.  This conforms to Standard C,
1113         which does not allow stray semicolons at the top level.  I hope it
1114         also avoids the problems with TAGS.  Those macros, though clever,
1115         were pretty confusing anyway, and it wasn’t clear they were worth
1116         the aggravation even without the TAGS problem.
1118 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
1120         * lisp/isearch.el: Make character-fold search the default again.
1122 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
1124         * lisp/character-fold.el: Many improvements.
1125         (character-fold-search-forward, character-fold-search-backward):
1126         New command.
1127         (character-fold-to-regexp): Remove lax-whitespace hack.
1128         (character-fold-search): Remove variable.  Only isearch and
1129         query-replace use char-folding, and they both have their own
1130         variables to configure that.
1132 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
1134         * lisp/isearch.el: Generalize definition of regexp-function toggles.
1135         (isearch-specify-regexp-function): New macro for specifying
1136         possible values of `isearch-regexp-function'.
1137         (isearch-toggle-character-fold, isearch-toggle-symbol)
1138         (isearch-toggle-word): Define with `isearch-specify-regexp-function'.
1140 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
1142         * lisp/isearch.el (search-default-regexp-mode): New variable.
1143         (isearch-mode): Use it.
1145 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
1147         * lisp/isearch.el (search-exit-option, search-slow-window-lines)
1148         (search-slow-speed, search-upper-case)
1149         (search-nonincremental-instead, search-whitespace-regexp)
1150         (search-invisible, isearch-hide-immediately)
1151         (isearch-resume-in-command-history, search-ring-max)
1152         (regexp-search-ring-max, search-ring-update, search-highlight)
1153         (isearch-fail): Delete :group entries.
1155 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
1157         * lisp/custom.el (custom-declare-variable): Shorten code a bit.
1159 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
1161         addpm.c: Silence some warnings.
1163         * nt/addpm.c (DdeCommand): Cast pData argument of DdeClientTransaction
1164         to LPBYTE.
1165         (add_registry): Pass NULL to optional lpClass argument of
1166         RegCreateKeyEx, not an empty string.
1168 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
1170         addpm.c: Do not add obsolete GTK libraries to the path.
1172         * nt/addpm.c (REG_GTK, REG_RUNEMACS_PATH): Delete.
1173         (add_registry): Remove variables `size' and `gtk_key'.
1174         Do not add the GTK DLL directory to the library search path; it is
1175         confusing behavior (in particular, the same Emacs version with and
1176         without invoking addpm will use a different path), and the GTK image
1177         libraries are obsolete anyway.
1179 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
1181         addpm.c: Replace existing registry entries, but do not create new ones
1183         * nt/addpm.c (add_registry): If the Emacs registry key exists, replace
1184         existing values from previous versions, but do not add new ones; the
1185         key could exist for other reasons unrelated to old Emacsen, like X-style
1186         resources, or to set some environment variables like HOME or LANG, and
1187         in that case we don't want to populate it with obsolete values.
1189 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
1191         * nt/addpm.c (add_registry): Do not compute unused return value.
1193 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
1195         addpm.c: Don't pass REG_OPTION_NON_VOLATILE to RegOpenKeyEx
1197         * nt/addpm.c (add_registry): Pass 0 to ulOptions argument of
1198         RegOpenKeyEx, not REG_OPTION_NON_VOLATILE.  This doesn't change
1199         current behavior because REG_OPTION_NON_VOLATILE is defined to
1200         be 0L anyway, but that option is actually documented only for
1201         RegCreateKeyEx.
1203 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
1205         * src/w32notify.c (Fw32notify_add_watch): Fix version check.
1207 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
1209         Update frame title when redisplay scrolls selected window
1211         * src/xdisp.c (redisplay_window): Reconsider the frame's title
1212         when the mode-line of the frame's selected window needs to be
1213         updated.
1215 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
1217         Update frame title when scrolling the selected window
1219         * src/window.c (wset_update_mode_line): New function, sets either
1220         the window's update_mode_line flag or the global update_mode_lines
1221         variable.
1222         (Fset_window_start, set_window_buffer, window_scroll_pixel_based)
1223         (window_scroll_line_based): Call it instead of only setting the
1224         window's update_mode_line flag.
1226 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
1228         An even better fix for bug#21739
1230         * src/window.c (set_window_buffer): If the window is the frame's
1231         selected window, set update_mode_lines, not the window's
1232         update_mode_line flag.
1233         * src/buffer.c (Fkill_buffer): Undo last change.
1234         (set_update_modelines_for_buf): Function deleted.
1236 2015-10-24  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
1237             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
1239         Sync with soap-client repository, version 3.0.0
1241         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
1242         Bump version to 3.0.0.
1244         * lisp/net/soap-inspect.el: Merge in changes from Emacs master branch.
1246         * lisp/net/soap-client.el: Merge in changes from Emacs master branch.
1248         * lisp/net/soap-inspect.el: Shorten first line description.
1250         * lisp/net/soap-client.el: Make a small whitespace fix.
1252         * lisp/net/soap-inspect.el: Update copyright years.
1254         * lisp/net/soap-client.el (soap-encoded-namespaces): Move above
1255         first use in soap-encode-xs-element.
1257         * lisp/net/soap-client.el (soap-type-is-array?): new defun
1258         (soap-encode-xs-element): handle array elements in this function
1259         (soap-encode-xs-complex-type): flag error if asked to encode an
1260         array type, this is handled in `soap-encode-xs-element'
1262         * lisp/net/soap-inspect.el (soap-inspect-xs-attribute-group):
1263         Do not print type for attribute group.
1265         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute-group)
1266         New function.
1267         (soap-inspect-xs-attribute-group): Likewise.
1269         * lisp/net/soap-inspect.el
1270         (soap-resolve-references-for-xs-attribute-group): Resolve
1271         references of attributes in an attribute group.
1273         * lisp/net/soap-client.el (soap-decode-xs-attributes): Process attribute
1274         type directly, not through soap-wsdl-get.
1276         * lisp/net/soap-client.el (soap-xs-parse-attribute): Leave reference
1277         nil if reference attribute is nil.
1279         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
1280         Convert XML schema attributes to xsd:string.
1282         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute):
1283         New function.
1284         (soap-sample-value-for-xs-simple-type): Prepend attributes to result.
1285         (soap-sample-value-for-xs-complex-type): Likewise.
1286         (soap-inspect-xs-attribute): New function.
1287         (soap-inspect-xs-simple-type): Print attributes.
1288         (soap-inspect-xs-complex-type): Likewise.
1290         * lisp/net/soap-inspect.el (soap-resolve-references-for-xs-simple-type):
1291         Resolve references for attributes.
1292         (soap-resolve-references-for-xs-complex-type): Likewise.
1294         * lisp/net/soap-client.el (soap-xml-node-find-matching-child):
1295         Rename from soap-xml-node-first-child.
1296         (soap-xs-parse-attribute): Call soap-xml-node-find-matching-child.
1297         (soap-xs-parse-simple-type): Likewise.
1299         * lisp/net/soap-client.el (soap-invoke-async): Add error checking.
1301         * lisp/net/soap-client.el (soap-invoke-internal): New function.
1302         (soap-invoke-async): Call soap-invoke-internal.
1303         (soap-invoke): Likewise.
1305         * lisp/net/soap-client.el (soap-invoke-async): Ensure buffer passed to
1306         url-retrieve callback is killed.
1308         * lisp/net/soap-client.el (soap-parse-wsdl-phase-validate-node):
1309         Rename function.
1310         (soap-parse-wsdl-phase-fetch-imports): Likewise.
1311         (soap-parse-wsdl-phase-parse-schema): Likewise.
1312         (soap-parse-wsdl-phase-fetch-schema): Likewise.
1313         (soap-parse-wsdl-phase-finish-parsing): Likewise.
1314         (soap-parse-wsdl): Update calls.
1316         * lisp/net/soap-client.el (soap-invoke-async): Fix callback invocation.
1318         * lisp/net/soap-client.el (soap-invoke-async): New function.
1319         (soap-invoke): Reimplement using soap-invoke-async.
1321         * lisp/net/soap-client.el (soap-parse-server-response):
1322         Improve docstring.
1323         (soap-invoke): Inline call to soap-parse-server-response.
1325         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
1326         Prevent incorrect warning.
1328         * lisp/net/soap-client.el (soap-parse-server-response):
1329         Rename soap-process-url-response.  Destroy the mime part.
1330         (soap-invoke): Call soap-parse-server-response.
1332         * lisp/net/soap-client.el: Update copyright date.
1334         * lisp/net/soap-client.el: Fix checkdoc issues.
1336         * lisp/net/soap-client.el: Fix indentation and long lines.
1338         * lisp/net/soap-client.el (soap-time-format): Remove variable.
1339         (soap-encode-xs-basic-type): Simplify date-time format detection.
1340         (soap-decode-xs-basic-type): Remove soap-time-format support.
1342         * lisp/net/soap-client.el (soap-process-url-response): New function.
1343         (soap-fetch-xml-from-url): Call soap-process-url-response.
1344         (soap-parse-wsdl-phase-1): New function.
1345         (soap-parse-wsdl-phase-2): Likewise.
1346         (soap-parse-wsdl-phase-3): Likewise.
1347         (soap-parse-wsdl-phase-4): Likewise.
1348         (soap-parse-wsdl-phase-5): Likewise.
1349         (soap-parse-wsdl): Call phase functions.
1351         * lisp/net/soap-client.el (soap-decode-xs-basic-type):
1352         Remove one-argument and call.
1354         * lisp/net/soap-client.el (soap-decode-date-time): Improve docstring.
1356         * lisp/net/soap-client.el (soap-xmlschema-imports): Remove variable.
1357         (soap-parse-schema): Add wsdl argument.  Look up XML schema
1358         imports from wsdl.
1359         (soap-load-wsdl): Do not set soap-xmlschema-imports.
1360         (soap-parse-wsdl): Get XML schema imports from wsdl.
1362         * lisp/net/soap-client.el (soap-current-file): Remove variable.
1363         (soap-wsdl): Add current-file slot.
1364         (soap-fetch-xml-from-url): Add wsdl argument.  Look up current
1365         file from wsdl.
1366         (soap-fetch-xml-from-file): Likewise.
1367         (soap-fetch-xml): Likewise.
1368         (soap-load-wsdl): Always create wsdl object first.
1369         (soap-parse-wsdl): Pass wsdl to soap-fetch-xml.
1371         * lisp/net/soap-client.el (soap-xs-element): Add is-group slot.
1372         (soap-xs-parse-element): Set is-group slot.
1373         (soap-resolve-references-for-xs-element): Skip is-group elements.
1374         (soap-xs-complex-type): Add is-group slot.
1375         (soap-xs-parse-complex-type): Set is-group slot.
1376         (soap-xs-parse-sequence): Parse xsd:group elements.
1377         (soap-resolve-references-for-xs-complex-type): Inline elements
1378         from referenced xsd:group nodes.
1379         (soap-parse-schema): Parse xsd:group nodes.
1381         * lisp/net/soap-client.el (soap-invoke):
1382         Don't set url-http-version to 1.0.
1384         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
1385         Allow choice nodes to accept multiple values.
1387         * lisp/net/soap-client.el (soap-encode-body): Check parameters argument
1388         for extra header values.
1390         * lisp/net/soap-client.el (soap-well-known-xmlns):
1391         Add wsa and wsaw tags.
1392         (soap-operation): Add input-action and output-action slots.
1393         (soap-parse-operation): Parse wsaw:Action nodes.
1394         (soap-encode-body): Encode service-url for WS-Addressing.
1395         (soap-create-envelope): Likewise.
1396         (soap-invoke): Update soap-create-envelope call to provide
1397         service-url argument.
1399         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
1400         Support xsi:type override attribute.
1401         (soap-decode-array): Likewise.
1403         * lisp/net/soap-client.el (soap-parse-schema):
1404         Handle location attribute.
1406         * lisp/net/soap-client.el (soap-decode-type): Check that multiRef
1407         matched validation regexp.
1409         * lisp/net/soap-client.el (soap-encode-xs-simple-type):
1410         Encode xsd:list nodes.
1411         (soap-decode-xs-simple-type): Decode xsd:list nodes.
1413         * lisp/net/soap-client.el (soap-get-candidate-elements):
1414         Fix reference handling.
1416         * lisp/net/soap-client.el (soap-xs-simple-type): Add is-list slot.
1417         (soap-xs-parse-simple-type): Call soap-xs-add-list for xsd:list nodes.
1418         (soap-xs-add-list): New function.
1420         * lisp/net/soap-client.el (soap-encode-xs-element): When a boolean is
1421         expected, interpret nil as "false".
1423         * lisp/net/soap-client.el (soap-make-xs-basic-types): Add gYearMonth,
1424         gYear, gMonthDay, gDay and gMonth.
1426         * lisp/net/soap-client.el (soap-time-format): New variable.
1427         (soap-encode-xs-basic-type): Handle dateTime, time, date,
1428         gYearMonth, gYear, gMonthDay, gDay and gMonth.
1429         (soap-decode-date-time): New function.
1430         (soap-decode-xs-basic-type): Use soap-decode-date-time.
1432         * lisp/net/soap-client.el (soap-encode-xs-basic-type): Validate value
1433         after encoding.
1434         (soap-decode-xs-basic-type): Validate value before decoding.
1436         * lisp/net/soap-client.el (soap-validate-xs-basic-type): New function.
1437         (soap-validate-xs-simple-type): Call soap-validate-xs-basic-type.
1439         * lisp/net/soap-client.el (soap-xs-add-union): Append result to base
1440         instead of overwriting it.
1441         (soap-validate-xs-simple-type): Add union support.
1443         * lisp/net/soap-client.el (soap-xs-add-restriction): Translate pattern
1444         to Emacs regexp using xsdre-translate.
1445         (soap-validate-xs-simple-type): Validate value against pattern.
1447         * lisp/net/soap-client.el (soap-xs-add-union): Preserve WSDL order of
1448         inline simpleType nodes.
1449         (soap-decode-type): Handle union types.
1451         * lisp/net/soap-client.el (soap-decode-xs-attributes): Decode basic-type
1452         attributes.
1454         * lisp/net/soap-client.el (soap-get-xs-attributes-from-groups): Rename
1455         from soap-xs-attribute-group-consolidate, all callers updated
1456         (soap-get-xs-attributes): Rename from
1457         soap-xs-attributes-consolidate, all callers updated
1459         * lisp/net/soap-client.el (soap-xs-type): Add attribute-group slot.
1460         (soap-xs-attribute-group): New type.
1461         (soap-xs-parse-attribute-group): New function.
1462         (soap-resolve-references-for-xs-attribute-group): Likewise.
1463         (soap-xs-add-extension): Handle attribute groups.
1464         (soap-resolve-references-for-xs-simple-type): Likewise.
1465         (soap-xs-parse-complex-type): Likewise.
1466         (soap-xs-parse-extension-or-restriction): Likewise.
1467         (soap-resolve-references-for-xs-complex-type): Likewise.
1468         (soap-xs-attribute-group-consolidate): New function.
1469         (soap-xs-attributes-consolidate): Handle attribute groups.
1470         (soap-parse-schema): Likewise.
1472         * lisp/net/soap-client.el (soap-encode-xs-basic-type):
1473         Fix boolean encoding.
1475         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Print ref
1476         element names in warnings.
1478         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Fix splicing.
1480         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
1481         Eliminate invalid warnings for choice types.
1483         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
1484         Also encode base type attributes.
1486         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Fix compilation
1487         warning.  Print e-name in warnings, or element if e-name is nil.
1489         * lisp/net/soap-client.el (soap-xs-element): Add alternatives slot.
1490         (soap-xs-parse-element): Set substitution-group.
1491         (soap-resolve-references-for-xs-element): Populate alternatives slot.
1492         (soap-get-candidate-elements): New function.
1493         (soap-encode-xs-complex-type): Iterate through all candidate elements.
1494         Handle types with nil type indicator.  Fix warning logic.
1496         * lisp/net/soap-client.el (soap-current-wsdl): Move declaration
1497         earlier in the file to prevent compiler warning.
1499         * lisp/net/soap-client.el (soap-node-optional): New function.
1500         (soap-node-multiple): Likewise.
1501         (soap-xs-parse-element): Call soap-node-optional and
1502         soap-node-multiple.
1503         (soap-xs-complex-type): Add optional? and multiple? slots.
1504         (soap-xml-get-children-fq): New function.
1505         (soap-xs-element-get-fq-name): Likewise.
1506         (soap-xs-complex-type-optional-p): Likewise.
1507         (soap-xs-complex-type-multiple-p): Likewise.
1508         (soap-xs-attributes-consolidate): Likewise.
1509         (soap-decode-xs-attributes): Likewise.
1510         (soap-decode-xs-complex-type): Decode types with nil type indicator.
1511         Support children that use local namespaces.  Decode attributes.
1512         Add type considerations to optional? and multiple? warnings.
1514         * lisp/net/soap-client.el (soap-xs-parse-extension-or-restriction):
1515         Store parsed attributes.
1516         (soap-encode-xs-complex-type-attributes): Encode custom attributes.
1518         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
1519         Don't add the xsi:type attribute (Exchange refuses requests which have
1520         this attribute).
1522         * lisp/net/soap-client.el, soap-inspect.el: Convert to lexical binding,
1523         correct compiler warnings about unused function arguments and
1524         local variables.
1526         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Handle nil
1527         type indicator.
1528         (soap-parse-envelope): Handle response headers.
1529         (soap-parse-response): Likewise.  Only return non-nil decoded values.
1531         * lisp/net/soap-client.el (soap-validate-xs-simple-type):
1532         Return validated value.
1534         * lisp/net/soap-client.el (soap-xs-parse-element)
1535         (soap-xs-parse-simple-type)
1536         (soap-xs-parse-complex-type)
1537         (soap-parse-message)
1538         (soap-parse-operation): Add the current namespace to the element
1539         being created.
1540         (soap-resolve-references-for-xs-element)
1541         (soap-resolve-references-for-xs-simple-type)
1542         (soap-resolve-references-for-xs-complex-type)
1543         (soap-resolve-references-for-operation): Resolve the namespace to
1544         the namespace tag.
1545         (soap-make-wsdl): specify a namespace tag when creating the xsd
1546         and soapenc namespaces
1547         (soap-wsdl-resolve-references): don't update namespace tags in
1548         elements here
1549         (soap-parse-port-type): bind the urn: to soap-target-xmlns
1550         (soap-encode-body): don't add nil namespace tags to
1551         soap-encoded-namespaces
1553         * lisp/net/soap-inspect.el: Use `soap-make-wsdl` to construct the object
1554         for registering the soap-inspect method.  Make debbugs tests pass.
1555         * lisp/net/soap-client.el (soap-decode-any-type): Use soap-l2fq on the
1556         type name, also skip string only nodes when decoding a structure.
1557         (soap-xs-parse-complex-type): (BUG) Dispatch parsing for choice
1558         types too.
1559         (soap-encode-body): Grab the header value from the param table.
1561         * lisp/net/soap-client.el (soap-should-encode-value-for-xs-element):
1562         New function.
1563         (soap-encode-xs-element): Don't encode nil value unless needed.
1565         * lisp/net/soap-client.el (soap-bound-operation): New slot `soap-body`.
1566         (soap-parse-binding): Parse the message parts required in the body.
1567         (soap-encode-body): Encode only the parts that are declared to be
1568         part of the body.
1570         * lisp/net/soap-client.el (soap-encode-xs-element): use the fq name
1571         when writing out the tag.
1572         (soap-encode-body): Remove hack that inserts the xmlns in the
1573         element attributes list.
1575         * lisp/net/soap-client.el (soap-xs-attribute): Add "default" slot.
1576         (soap-xs-parse-attribute): Default slot is set from the XML
1577         "fixed" attribute.
1578         (soap-encode-xs-complex-type-attributes): Encode any attributes
1579         that have a default value.  Also, don't put the xsi:nil attribute
1580         when the complex type has no content anyway.
1582         * lisp/net/soap-client.el (soap-well-known-xmlns):
1583         Add the xml namespace.
1584         (soap-local-xmlns): Start with the xml namespace.
1585         (soap-xml-node-first-child): Skip xsd:annotation nodes too.
1586         (soap-make-xs-basic-types): More xsd types added.
1587         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
1588         Handle "language", "time", "date", "nonNegativeInteger".
1589         (soap-resolve-references-for-xs-element): Don't signal an error if
1590         the element does not have a type.
1591         (soap-xs-parse-simple-type): Subtypes are handled with ecase,
1592         added stum for xsd:list.
1593         (soap-xs-add-union): Call soap-l2fq on all union members.
1594         (soap-xs-add-extension): Call soap-l2fq on the base member.
1595         (soap-resolve-references-for-xs-simple-type): Don't signal an
1596         error if the simple type has no base.
1597         (soap-resolve-references-for-xs-simple-type): Bugfix, call
1598         soap-wsdl-get on each type of the base.
1600         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
1601         Referenced type can be eiher a simple type or a basic type.
1602         (soap-xs-add-restriction)
1603         (soap-xs-parse-extension-or-restriction): Use `soap-l2fq' on base.
1604         (soap-make-xs-basic-types)
1605         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
1606         Add support for more XMLSchema basic types.
1607         (soap-current-file, soap-xmlschema-imports): New defvars.
1608         (soap-parse-schema): Add locations from xsd:import tags to
1609         `soap-xmlschema-imports'.
1610         (soap-wsdl): Make destructor private.
1611         (soap-make-wsdl): New defun, SOAP-WSDL object constructor.
1612         (soap-wsdl-add-alias): Check if we try to replace aliases.
1613         (soap-fetch-xml-from-url, soap-fetch-xml-from-file)
1614         (soap-fetch-xml): New defuns.
1615         (soap-load-wsdl): Update to load the WSDL from either a file or
1616         an url.
1617         (soap-load-wsdl-from-url): Now an alias to `soap-load-wsdl'.
1618         (soap-parse-wsdl): Process wsdl:import tags and imports from
1619         `soap-xmlschema-imports'.
1620         * lisp/net/soap-client.el (soap-l2wk): Bugfix: call symbolp instead of
1621         symbol-name.
1622         (soap-l2fq): Make the name part always a string.
1623         (soap-name-p): New defun, used for name tests.
1625         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-complex-type):
1626         Supply sample values for choice types with a special tag.
1627         * lisp/net/soap-client.el (soap-encode-xs-complex-type):
1628         Handle anonymous elements correctly.
1629         (soap-encode-value): Accept nodes that have no namespace tag.
1631         * lisp/net/soap-client.el (soap-invoke): Encode the string for
1632         `url-request-data' as UTF-8.  Fixes issue 16.
1634 2015-10-24  Nicolas Petton  <nicolas@petton.fr>
1636         Update the new icon
1638         Move the E slightly to the right in the circle.
1640         * etc/images/icons/hicolor/128x128/apps/emacs.png:
1641         * etc/images/icons/hicolor/16x16/apps/emacs.png:
1642         * etc/images/icons/hicolor/24x24/apps/emacs.png:
1643         * etc/images/icons/hicolor/32x32/apps/emacs.png:
1644         * etc/images/icons/hicolor/48x48/apps/emacs.png:
1645         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
1646         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
1647         * nt/icons/emacs.ico: New icom update.
1649 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
1651         Avoid missing inline functions from lisp.h in TAGS
1653         * src/lisp.h (LISP_MACRO_DEFUN): Mention in the commentary the
1654         need to end each invocation with a semi-colon.
1655         Add a semi-colon at the end of each invocation of LISP_MACRO_DEFUN
1656         and LISP_MACRO_DEFUN_VOID.  This is to avoid missing in TAGS
1657         inline functions defined immediately after each invocation, and
1658         also avoid tagging every invocation of these macros.
1660 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
1662         A better fix for bug#21739
1664         * src/buffer.c (set_update_modelines_for_buf): New function.
1665         (Fkill_buffer): Use it to set the global variable
1666         update_mode_lines if the killed buffer was displayed in some
1667         window.  Don't set windows_or_buffers_changed.  This is a better
1668         fix for bug#21739 than the previous fix, since it will cause only
1669         redisplay of mode lines, not of entire windows, but will still
1670         catch attention of x_consider_frame_title in xdisp.c, which
1671         redraws the frame title.
1673 2015-10-24  Tassilo Horn  <tsdh@gnu.org>
1675         * lisp/dired-aux.el (dired-compress-files-alist): Add support for
1676         tar.bz2 and tar.xz archives.
1678 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
1680         Fix infloop in redisplay introduced by a recent change
1682         * src/xdisp.c (redisplay_internal): Avoid inflooping when
1683         redisplaying the selected window sets the selected frame's
1684         redisplay flag.  (Bug#21745)
1686 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
1688         * lisp/emacs-lisp/thunk.el: Better documentation.
1690 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
1692         Replace the old icon for Windows and Mac OSX
1694         * nt/icons/emacs.ico:
1695         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
1696         Use the new icons.
1698 2015-10-23  Stephen Leake  <stephen_leake@stephe-leake.org>
1700         * lisp/emacs-lisp/package.el (package-autoload-ensure-default-file):
1701         `load-path' should contain only directory names.
1703 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
1705         New library thunk.el
1707         thunk.el is extracted from stream.el in ELPA, with additional tests.
1709         * lisp/emacs-lisp/thunk.el: New file.
1710         * test/automated/thunk-tests.el: New file.
1711         * etc/NEWS: Add information about thunk.el
1713 2015-10-23  Michael Albinus  <michael.albinus@gmx.de>
1715         Fix bug#21669
1717         * lisp/filenotify.el (file-notify-rm-watch): Improve check for
1718         calling low-level functions.
1720         * test/automated/file-notify-tests.el (file-notify--test-timeout):
1721         Decrase to 6 seconds for remote directories.
1722         (file-notify-test02-events): Expect different number of
1723         `attribute-changed' events for the local and remote cases.  Apply
1724         short delays between the operations, in order to receive all
1725         events in the remote case.  Combine `attribute-change' tests.
1726         (Bug#21669)
1728 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
1730         Decode the HTML source when displaying it in EWW
1732         * lisp/net/eww.el (eww-view-source): Decode the HTML source
1733         according to its headers.
1735 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
1737         New default icon
1739         * etc/images/icons/hicolor/128x128/apps/emacs23.png:
1740         * etc/images/icons/hicolor/16x16/apps/emacs23.png:
1741         * etc/images/icons/hicolor/24x24/apps/emacs23.png:
1742         * etc/images/icons/hicolor/32x32/apps/emacs23.png:
1743         * etc/images/icons/hicolor/48x48/apps/emacs23.png:
1744         * etc/images/icons/hicolor/scalable/apps/emacs23.svg:
1745         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document23.svg:
1746         Move the old logo files to emacs23.*.
1747         * etc/images/icons/hicolor/128x128/apps/emacs.png:
1748         * etc/images/icons/hicolor/16x16/apps/emacs.png:
1749         * etc/images/icons/hicolor/24x24/apps/emacs.png:
1750         * etc/images/icons/hicolor/32x32/apps/emacs.png:
1751         * etc/images/icons/hicolor/48x48/apps/emacs.png:
1752         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
1753         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document.svg:
1754         New files.
1755         * etc/images/icons/README: Update the copyright information.
1757 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
1759         Fix redisplay of frame title when current buffer is killed
1761         * src/buffer.c (Fkill_buffer): Set windows_or_buffers_changed to a
1762         non-zero value, to redisplay more than just the affected windows.
1763         (Bug#21739)
1765 2015-10-23  Anders Lindgren  <andlind@gmail.com>
1767         NextSten maximization and NSTRACE rewrite
1769         Full-height, full-width, and maximized windows now cover the
1770         entire screen (except the menu bar), including the part where the
1771         system dock is placed.  The system zoom animation is no longer
1772         used.
1774         Made NonMaximized->FullWidth->FullHeight->NonMaximized restore the
1775         original size.
1777         * src/nsterm.m (ns_menu_bar_height): New function, return height of
1778         the menu bar, or 0 when it's hidden.
1779         (constrain_frame_rect): New function for constraining a frame.
1780         (ns_constrain_all_frames): Set frame size explicitly rather than
1781         relying on the system doing it for us by writing back the current
1782         frame size.
1783         (windowWillUseStandardFrame): Register non-maximized width or
1784         height as new user size.  When entering full width or height,
1785         the other size component is taken from the user size.
1786         (fullscreenState): New method for accessing the fullscreen state.
1787         (constrainFrameRect): Restrict frame to be placed under the menu bar,
1788         if present.  The old version, sometimes, restricted the height of a
1789         frame to the screen, this version never does this.
1790         (zoom): Perform zoom by setting the frame to the full size of the
1791         screen (minus the menu bar).  The default system function, with the
1792         zoom animation, is no longer used, as the final frame size doesn't
1793         cover the entire screen.
1795         Rework how to constrain resizing to the character grid.  The old
1796         system used "resizeIncrements" in NSWindows.  However, once a frame
1797         was resized so that it was not aligned to the text grid, it
1798         remained unaligned even after a resize.  In addition, it conflicted
1799         when resizing a fullheight window.
1801         * src/nsterm.m (windowWillResize): Restrict frame size to text grid,
1802         unless when pixelwise frame resizing is enabled.
1803         (updateFrameSize, initFrameFromEmacs)
1804         (toggleFullScreen, handleFS): Don't set resizeIncrements.
1806         Redesign the NS trace system.  The call structure is represented
1807         using indentations and vertical lines.  The NSTRACE macro accepts
1808         printf-style arguments.  New macros for printing various
1809         information.
1811         * src/nsterm.h (NSTRACE_ENABLED): Macro to enable trace system.
1812         (NSTRACE, NSTRACE_WHEN, NSTRACE_UNLESS): Macros to start a new
1813         block (typically a function), accept printf-style arguments.
1814         (NSTRACE_MSG): Macro for extra information, accepts
1815         printf-style arguments.
1816         (NSTRACE_what): Macros for printing various types.
1817         (NSTRACE_FMT_what): Macro with printf format string snippets.
1818         (NSTRACE_ARG_what): Macros for passing printf-style arguments,
1819         corresponds to NSTRACE_FMT_what.
1820         (NSTRACE_RETURN): Macro to print return value, accept
1821         printf-style arguments.
1822         (NSTRACE_RETURN_what): Macros to print return value for
1823         various types.
1825         * nsterm.m: Remove old NSTRACE macro
1826         * src/nsterm.m (nstrace_num): Trace counter.
1827         (nstrace_depth): Current call depth.
1828         (nstrace_leave): NSTRACE support function, called when the
1829         local variable "nstrace_enabled" goes out of scope using the
1830         "cleanup" extension.
1831         (ns_print_fullscreen_type_name): NSTRACE_FSTYPE support function.
1832         (constrain_frame_rect, ns_constrain_all_frames)
1833         (ns_update_auto_hide_menu_bar, ns_update_begin)
1834         (ns_update_window_begin, update_window_end, ns_update_end)
1835         (ns_focus, ns_unfocus, ns_ring_bell, ns_frame_raise_lower)
1836         (ns_frame_rehighlight, x_make_frame_visible)
1837         (x_make_frame_invisible, x_iconify_frame, x_free_frame_resources)
1838         (x_destroy_window, x_set_offset, x_set_window_size)
1839         (ns_fullscreen_hook, ns_lisp_to_color, ns_color_to_lisp)
1840         (ns_defined_color, frame_set_mouse_pixel_position)
1841         (note_mouse_movement, ns_mouse_position, ns_frame_up_to_date)
1842         (ns_define_frame_cursor, x_get_keysym_name, ns_redraw_scroll_bars)
1843         (ns_clear_frame, ns_clear_frame_area, ns_scroll_run)
1844         (ns_after_update_window_line, ns_shift_glyphs_for_insert)
1845         (dumpcursor, ns_draw_vertical_window_border)
1846         (ns_draw_window_divider, ns_draw_relief)
1847         (ns_dumpglyphs_box_or_relief, ns_maybe_dumpglyphs_background)
1848         (ns_dumpglyphs_image, ns_draw_glyph_string, ns_send_appdefined)
1849         (ns_read_socket, ns_select, ns_set_vertical_scroll_bar)
1850         (ns_set_horizontal_scroll_bar, ns_condemn_scroll_bars)
1851         (ns_redeem_scroll_bar, ns_judge_scroll_bars, ns_delete_terminal)
1852         (ns_create_terminal, ns_term_init, sendEvent)
1853         (applicationDidFinishLaunching, applicationDidBecomeActive)
1854         (timeout_handler, fd_handler, EmacsView_dealloc, changeFont)
1855         (acceptsFirstResponder, resetCursorRects, keyDown, mouseDown)
1856         (deltaIsZero, rightMouseDown, otherMouseDown, mouseUp)
1857         (rightMouseUp, otherMouseUp, scrollWheel, mouseMoved)
1858         (mouse_autoselect_window, in_window, mouseDragged)
1859         (rightMouseDragged, otherMouseDragged, windowShouldClose)
1860         (updateFrameSize, windowWillResize, windowDidResize)
1861         (windowDidBecomeKey, windowDidResignKey, windowWillMiniaturize)
1862         (initFrameFromEmacs, windowDidMove, windowDidDeminiaturize)
1863         (windowDidExpose, windowDidMiniaturize, windowWillEnterFullScreen)
1864         (windowDidEnterFullScreen, windowWillExitFullScreen)
1865         (windowDidExitFullScreen, toggleFullScreen, handleFS, setFSValue)
1866         (mouseEntered, mouseExited, menuDown, toolbarClicked, drawRect)
1867         (draggingEntered, performDragOperation, validRequestorForSendType)
1868         (setMiniwindowImage, constrainFrameRect, performZoom, zoom)
1869         (EmacsScroller_initFrame, EmacsScroller_setFrame)
1870         (EmacsScroller_dealloc, condemn, reprieve, judge)
1871         (resetCursorRects, setPosition, EmacsScroller_mouseDown)
1872         (EmacsScroller_mouseDragged, syms_of_nsterm): Use new trace system.
1874         * nsfns.m: Remove old NSTRACE macro
1875         * src/nsfns.m (x_set_icon_name, ns_set_name, x_explicitly_set_name)
1876         (x_implicitly_set_name, x_set_title, ns_set_name_as_filename)
1877         (ns_implicitly_set_icon_type, x_set_icon_type): Use new trace system.
1879         * nsimage.m: Remove old NSTRACE macro
1880         * src/nsimage.m (ns_image_from_XBM, ns_image_for_XPM)
1881         (ns_image_from_bitmap_file, ns_load_image): Use new trace system.
1883         * nsmenu.m: Remove old NSTRACE macro
1884         * src/nsmenu.m (ns_update_menubar, ns_menu_show, ns_popup_dialog):
1885         Use new trace system.
1887 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
1889         No need to use eval-and-compile
1891         * lisp/gnus/auth-source.el: Do require epg (when compiling) before
1892         autoload epg functions.
1894 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
1896         Fix auth-source-epa-make-gpg-token compilation (bug#21724)
1898         * lisp/gnus/auth-source.el: Add eval-and-compile to autoloads for
1899         epg-context-set-passphrase-callback, epg-decrypt-string, and
1900         epg-encrypt-string; require epg when compiling for the setf-method
1901         for epg-context-armor. (bug#21724)
1903 2015-10-22  Eli Zaretskii  <eliz@gnu.org>
1905         Include file cleanup for w32 files in src directory
1907         * src/w32xfns.c: Don't include keyboard.h, window.h, charset.h,
1908         fontset.h, blockinput.h.
1909         * src/w32uniscribe.c: Don't include dispextern.h, character.h,
1910         charset.h, fontset.h.
1911         * src/w32term.c: Don't include systty.h, systime.h, charset.h,
1912         character.h, ccl.h, dispextern.h, disptab.h, intervals.h,
1913         process.h, atimer.h, keymap.h, w32heap.h.  Include bitmap/gray.xbm
1914         in an ifdef-ed away block.
1915         Include fcntl.h for CYGWIN.
1916         (set_frame_param): Remove unused function.
1917         * src/w32select.c: Don't include charset.h and composite.h.
1918         (setup_config, Fw32_get_clipboard_data): Avoid compiler warnings
1919         due to pointer signedness mismatches.
1920         * src/w32reg.c (w32_get_string_resource): Avoid compiler warnings
1921         due to pointer signedness mismatches.
1922         * src/w32proc.c: Include unistd.h.  Don't include systime.h,
1923         process.h, dispextern.h.
1924         (sys_spawnve, Fw32_short_file_name, Fw32_long_file_name)
1925         (Fw32_application_type): Avoid compiler warnings due to pointer
1926         signedness mismatches.
1927         * src/w32menu.c: Don't include keymap.h, termhooks.h, window.h,
1928         character.h, charset.h, dispextern.h.
1929         (simple_dialog_show, add_menu_item): Avoid compiler warnings due
1930         to pointer signedness mismatches.
1931         * src/w32inevt.c: Don't include dispextern.h, window.h,
1932         termhooks.h, w32heap.h.
1933         * src/w32font.c: Don't include dispextern.h, character.h,
1934         charset.h, fontset.h, font.h.
1935         (intern_font_name, add_font_entity_to_list)
1936         (registry_to_w32_charset, w32_to_x_charset, fill_in_logfont)
1937         (list_all_matching_fonts): Avoid compiler warnings due to pointer
1938         signedness mismatches.
1939         * src/w32fns.c: Don't include character.h, intervals.h,
1940         dispextern.h, epaths.h, charset.h, ccl.h, fontset.h, systime.h,
1941         termhooks.h, w32heap.h, bitmap/gray.xbm, font.h, w32font.h.
1942         (w32_color_map_lookup, add_system_logical_colors_to_map)
1943         (x_decode_color, x_set_name, FPRINTF_WM_CHARS, Fxw_color_defined_p)
1944         (Fxw_color_values, x_display_info_for_name, Fset_message_beep)
1945         (x_create_tip_frame, Fx_file_dialog, Fsystem_move_file_to_trash)
1946         (w32_parse_hot_key, Ffile_system_info, w32_kbd_patch_key): Avoid
1947         compiler warnings, mainly due to pointer signedness mismatches.
1948         (unwind_create_frame_1): Remove unused function.
1949         * src/w32console.c: Don't include character.h, disptab.h, frame.h,
1950         window.h, termhooks.h, dispextern.h.
1951         (w32con_write_glyphs, w32con_write_glyphs_with_face): Fix pointer
1952         signedness mismatch.
1953         * src/w32.c: Include c-strcase.h and systty.h.  Don't include
1954         w32heap.h.
1956 2015-10-22  Tassilo Horn  <tsdh@gnu.org>
1958         Improve doc-view wrt. auto-revert-mode
1960         * lisp/doc-view.el (doc-view-revert-buffer): Don't revert when file
1961         is corrupted (bug#21729).
1962         (doc-view-mode): Set doc-view-revert-buffer as revert-buffer-function.
1964 2015-10-22  Oleh Krehel  <ohwoeowho@gmail.com>
1966         Describe dired-do-compress-to in the manual
1968         * etc/NEWS: Update.
1970         * lisp/dired-aux.el: Fix typo.
1972         * doc/emacs/dired.texi: Add entry.
1974 2015-10-22  Jürgen Hötzel  <juergen@archlinux.org>
1976         Further fix for proper locale handling in tramp-gvfs.el
1978         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
1979         Just suppress LC_MESSAGES locale category settings.
1981 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
1983         New lispref section “Security Considerations”
1985         This attempts to document some of the issues recently discussed
1986         on emacs-devel, and to indicate other such issues.  The section
1987         could be a lot longer.
1988         * doc/lispref/os.texi (Security Considerations):
1989         New node.
1990         * doc/lispref/elisp.texi (Top):
1991         * doc/lispref/processes.texi (Shell Arguments):
1992         * lisp/subr.el (shell-quote-argument):
1993         * src/callproc.c (syms_of_callproc):
1994         Reference it.
1996 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
1998         Merge from gnulib
2000         This incorporates:
2001         2015-10-18 stdalign: work around pre-4.9 GCC x86 bug
2002         2015-10-18 time_rz: avoid warning from bleeding-edge gcc's -Wnonnull
2003         * doc/misc/texinfo.tex, lib/stdalign.in.h, lib/time_rz.c:
2004         Copy from gnulib.
2006 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
2008         * lisp/gnus/mailcap.el (mailcap-mime-data): Remove fboundp checks.
2009         (mailcap-viewer-passes-test): Do it instead.  Thanks to Stefan Monnier.
2011 2015-10-21  Ken Brown  <kbrown@cornell.edu>
2013         Further include-file cleanup
2015         * src/sheap.c: Include stdlib.h.
2016         * src/unexcw.c: Include string.h.
2018 2015-10-21  Eli Zaretskii  <eliz@gnu.org>
2020         Fix logic in 'server-kill-emacs-query-function'
2022         * lisp/server.el (server-kill-emacs-query-function): Correct the
2023         logic that controls whether the user is asked for confirmation.
2024         (Bug#21723)
2026 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
2028         * lisp/isearch.el (isearch-search-fun-default): Simplify logic.
2029         (isearch--lax-regexp-function-p): New function.
2031 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
2033         * lisp/isearch.el: Support lax-whitespace in regexp-function searches.
2034         (isearch-search-fun-default): Let-bind `search-spaces-regexp'
2035         around `isearch-regexp-function'.
2037 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
2039         * lisp/isearch.el: Rename word search to regexp-function search.
2040         `isearch-word' went well beyond its original purpose, and the name
2041         no longer makes sense.  It is now called
2042         `isearch-regexp-function', and its value should always be a function
2043         that converts a string to a regexp (though setting it to t is still
2044         supported for now).
2045         (isearch-word): Make obsolete.
2046         (isearch-regexp-function): New variable.
2047         (isearch-mode, isearch-done, isearch--state, isearch--set-state)
2048         (with-isearch-suspended, isearch-toggle-regexp)
2049         (isearch-toggle-word, isearch-toggle-symbol)
2050         (isearch-toggle-character-fold, isearch-query-replace)
2051         (isearch-occur, isearch-highlight-regexp)
2052         (isearch-search-and-update, isearch-message-prefix)
2053         (isearch-search-fun-default, isearch-search)
2054         (isearch-lazy-highlight-new-loop, isearch-lazy-highlight-search):
2055         Use it.
2056         (isearch-lazy-highlight-regexp-function): New var.
2057         (isearch-lazy-highlight-word): Make obsolete.
2058         (isearch--describe-regexp-mode): New function.
2059         (isearch--describe-word-mode): Make obsolete.
2061         * lisp/info.el (Info-isearch-search):
2062         * lisp/replace.el (replace-search, replace-highlight):
2063         * lisp/obsolete/longlines.el (longlines-search-function):
2064         * lisp/hexl.el (hexl-isearch-search-function):
2065         * lisp/cedet/semantic/senator.el (senator-isearch-search-fun):
2066         Use the new var.
2068 2015-10-21  Oleh Krehel  <ohwoeowho@gmail.com>
2070         Add dired-do-compress-to command bound to "c"
2072         * lisp/dired-aux.el (dired-shell-command): Use the caller's
2073           `default-directory', return the result of `process-file'.
2074         (dired-compress-file-suffixes): Add comment on why "tar -zxf" isn't
2075         used by default.
2076         (dired-compress-files-alist): New defvar.
2077         (dired-do-compress-to): New command.
2079         * lisp/dired.el (dired-mode-map): Bind `dired-do-compress-to' to "c".
2080         (dired-do-compress-to): Add an autoload entry.
2082         * etc/NEWS: Add two entries.
2084 2015-10-21  Tassilo Horn  <tsdh@gnu.org>
2086         Make RefTeX work with LaTeX subfiles package
2088         * lisp/textmodes/reftex.el (reftex-TeX-master-file): Recognize subfiles
2089         document class argument as master file for referencing purposes.
2091 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
2093         * lisp/gnus/mailcap.el (mailcap-mailcap-entry-passes-test): Doc fix.
2095 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
2097         Include-file cleanup for src directory
2099         Omit ‘#include "foo.h"’ unless the file needs foo.h (Bug#21707).
2100         In a few cases, add ‘#include "foo.h"’ if the file needs foo.h
2101         but does not include it directly.  As a general rule, a source
2102         file should include foo.h if it needs the interfaces that foo.h
2103         defines.
2104         * src/alloc.c: Don’t include process.h.  Include dispextern.h,
2105         systime.h.
2106         * src/atimer.c: Don’t include blockinput.h.
2107         * src/buffer.c: Include coding.h, systime.h.  Don’t include
2108         keyboard.h, coding.h.
2109         * src/callint.c: Don’t include commands.h, keymap.h.
2110         * src/callproc.c: Don’t include character.h, ccl.h, composite.h,
2111         systty.h, termhooks.h.
2112         * src/casetab.c: Don’t include character.h.
2113         * src/category.c: Don’t include charset.h, keymap.h.
2114         * src/ccl.h: Don’t include character.h.
2115         * src/character.c: Don’t include charset.h.
2116         * src/charset.c: Don’t include disptab.h.
2117         * src/chartab.c: Don’t include ccl.h.
2118         * src/cm.c: Don’t include frame.h, termhooks.h.
2119         * src/cmds.c: Don’t include window.h, dispextern.h.
2120         * src/coding.c: Don’t include window.h, frame.h.
2121         * src/composite.c: Include composite.h.  Don’t include window.h,
2122         font.h.
2123         * src/data.c: Don’t include syssignal.h, termhooks.h, font.h.
2124         * src/dbusbind.c: Don’t include frame.h.
2125         * src/decompress.c: Don’t include character.h.
2126         * src/dired.c: Don’t include character.h, commands.h, charset.h.
2127         * src/dispnew.c: Don’t include character.h, indent.h, intervals.h,
2128         process.h, timespec.h.  Include systime.h.
2129         * src/doc.c: Include coding.h.  Don’t include keyboard.h.
2130         * src/editfns.c: Include composite.h.  Don’t include frame.h.
2131         * src/emacs.c: Include fcntl.h, coding.h.  Don’t include
2132         commands.h, systty.h..
2133         * src/fileio.c: Don’t include intervals.h, dispextern.h.
2134         Include composite.h.
2135         * src/filelock.c: Don’t include character.h, systime.h.
2136         * src/fns.c: Don’t include time.h, commands.h, keyboard.h,
2137         keymap.h, frame.h, blockinput.h, xterm.h.  Include composite.h.
2138         * src/font.c: Include termhooks.h.
2139         * src/font.h: Don’t include ccl.h, frame.h.  Add forward decls of
2140         struct composition_it, struct face, struct glyph_string.
2141         * src/fontset.c: Don’t include buffer.h, ccl.h, keyboard.h,
2142         intervals.h, window.h, termhooks.h.
2143         * src/frame.c: Don’t include character.h, commands.h, font.h.
2144         * src/frame.h: Don’t include dispextern.h.
2145         * src/fringe.c: Don’t include character.h.
2146         * src/ftcrfont.c: Don’t include dispextern.h, frame.h,
2147         character.h, charset.h, fontset.h.
2148         * src/ftfont.c: Don’t include frame.h, blockinput.h, coding.h,
2149         fontset.h.
2150         * src/ftxfont.c: Don’t include dispextern.h, character.h,
2151         charset.h, fontset.h.
2152         * src/gfilenotify.c: Don’t include frame.h, process.h.
2153         * src/gtkutil.c: Include dispextern.h, frame.h, systime.h.
2154         Don’t include syssignal.h, buffer.h, charset.h, font.h.
2155         * src/gtkutil.h: Don’t include frame.h.
2156         * src/image.c: Include fcntl.h and stdio.h instead of sysstdio.h.
2157         Don’t include character.h.
2158         * src/indent.c: Don’t include keyboard.h, termchar.h.
2159         * src/inotify.c: Don’t include character.h, frame.h.
2160         * src/insdel.c: Include composite.h.  Don’t include blockinput.h.
2161         * src/intervals.c: Don’t include character.h, keyboard.h.
2162         * src/intervals.h: Don’t include dispextern.h, composite.h.
2163         * src/keyboard.c: Don’t include sysstdio.h, disptab.h, puresize.h.
2164         Include coding.h.
2165         * src/keyboard.h: Don’t incldue systime.h.
2166         * src/keymap.c: Don’t include charset.h, frame.h.
2167         * src/lread.c: Include dispextern.h and systime.h.
2168         Don’t include frame.h.  Include systime.h.
2169         * src/macros.c: Don’t include commands.h, character.h, buffer.h.
2170         * src/menu.c: Include character.h, coding.h.  Don’t include
2171         dispextern.h.
2172         * src/menu.h: Don’t include systime.h.
2173         * src/minibuf.c: Don’t include commands.h, dispextern.h, syntax.h,
2174         intervals.h, termhooks.h.
2175         * src/print.c: Include coding.h.  Don’t include keyboard.h,
2176         window.h, dispextern.h, termchar.h, termhooks.h, font.h.
2177         Add forward decl of struct terminal.
2178         * src/process.c: Don’t include termhooks.h, commands.h,
2179         dispextern.h, composite.h.
2180         * src/region-cache.c: Don’t include character.h.
2181         * src/scroll.c: Don’t include keyboard.h, window.h.
2182         * src/search.c: Don’t include category.h, commands.h.
2183         * src/sound.c: Don’t include dispextern.h.
2184         * src/syntax.c: Don’t include command.h, keymap.h.
2185         * src/sysdep.c: Don’t include window.h, dispextern.h.
2186         * src/systime.h: Use ‘#ifdef emacs’, not ‘#ifdef EMACS_LISP_H’,
2187         * src/term.c: Don’t include systty.h, intervals.h, xterm.h.
2188         * src/terminal.c: Include character.h.
2189         Don’t include charset.h, coding.h.
2190         * src/textprop.c: Don’t include character.h.
2191         * src/undo.c: Don’t include character.h, commands.h, window.h.
2192         * src/unexsol.c: Don’t include character.h, charset.h.
2193         * src/widget.c: Include widget.h.  Don’t include keyboard.h,
2194         window.h, dispextern.h, blockinput.h, character.h, font.h.
2195         * src/widgetprv.h: Don’t include widget.h.
2196         * src/window.c: Don’t include character.h, menu.h, intervals.h.
2197         * src/xdisp.c: Include composite.h, systime.h.  Don’t include
2198         macros.h, process.h.
2199         * src/xfaces.c: Don’t include charset.h, keyboard.h, termhooks.h,
2200         intervals.h.
2201         * src/xfns.c: Don’t include menu.h, character.h, intervals.h,
2202         epaths.h, fontset.h, systime.h, atimer.h, termchar.h.
2203         * src/xfont.c: Don’t include dispextern.h, fontset.h, ccl.h.
2204         * src/xftfont.c: Don’t include dispextern.h, character.h, fontset.h.
2205         * src/xgselect.c: Don’t include timespec.h, frame.h.
2206         Include systime.h.
2207         * src/xgselect.h: Don’t include time.h.
2208         Use a forward decl to struct timespec instead.
2209         * src/xmenu.c: Don’t include keymap.h, character.h, charset.h,
2210         dispextern.h.  Include systime.h.
2211         * src/xml.c: Don’t include character.h.
2212         * src/xrdb.c [USE_MOTIF]: Don’t include keyboard.h.
2213         * src/xselect.c: Don’t include dispextern.h, character.h,
2214         buffer.h, process.h.
2215         * src/xsmfns.c: Don’t include systime.h, sysselect.h.
2216         * src/xterm.c: Don’t include syssignal.h, charset.h, disptab.h,
2217         intervals.h process.h, keymap.h, xgselect.h.  Include composite.h.
2219 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
2221         (/ N) now returns the reciprocal of N
2223         This is more compatible with Common Lisp and XEmacs (Bug#21690).  See:
2224         http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg01053.html
2225         * lisp/color.el (color-hue-to-rgb, color-hsl-to-rgb)
2226         (color-xyz-to-srgb, color-xyz-to-lab):
2227         * lisp/emacs-lisp/cl-extra.el (cl-float-limits):
2228         * lisp/net/shr-color.el (shr-color-hue-to-rgb)
2229         (shr-color-hsl-to-rgb-fractions):
2230         Exploit the change to simplify the code a bit.
2231         * lisp/emacs-lisp/bytecomp.el (byte-compile-quo):
2232         Don’t complain about single-argument calls to ‘/’.
2233         * src/data.c (arith_driver, float_arith_driver):
2234         Implement the change.
2236 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
2238         Call vc-dir-refresh after stash operations
2240         * lisp/vc/vc-git.el (vc-git-stash-apply-at-point)
2241         (vc-git-stash-pop-at-point): Call vc-dir-refresh (bug#13960).
2243         * lisp/vc/vc-dir.el (vc-dir-resynch-file): Expand FNAME as well,
2244         since it can be abbreviated (as returned by vc-find-root).
2246 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
2248         * lisp/vc/vc-svn.el:
2249         * lisp/vc/vc-mtn.el:
2250         * lisp/vc/vc-hg.el:
2251         * lisp/vc/vc-cvs.el:
2252         * lisp/vc/vc-git.el:
2253         * lisp/vc/vc-bzr.el: Don't declare vc-exec-after anymore.
2254         Its usages have been replaced with vc-run-delayed.
2256 2015-10-20  Dima Kogan  <dima@secretsauce.net>
2258         Fix memory leak in fontset handling
2260         * src/font.c (copy_font_spec): Make a deep copy of the input
2261         argument FONT.  (Bug#21651)
2263 2015-10-20  Michael Sperber  <mike@xemacs.org>
2265         * lisp/gnus/mailcap.el (mailcap-mime-data):
2266         Conditonalize `doc-view-mode', which does not exist on XEmacs.
2268 2015-10-20  Oleh Krehel  <ohwoeowho@gmail.com>
2270         Update the way directories are compressed
2272         * lisp/dired-aux.el (dired-compress-file-suffixes): Update the recipe
2273         for *.tar.gz decompression to use a pipe.
2274         Add an entry for the default directory compression (to *.tar.g).
2275         (dired-compress-file): Update.
2277         See https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg00949.html.
2279 2015-10-20  Michael Sperber  <mike@xemacs.org>
2281         Unbreak `group' option for `mail-sources'
2283         * nnml.el (nnml-retrieve-groups, nnml-request-scan):
2284         * nnmail.el (nnmail-get-new-mail-per-group)
2285         (nnmail-get-new-mail-1): Unbreak `group' option for `mail-sources'.
2287 2015-10-19  Nicolas Petton  <nicolas@petton.fr>
2289         New function seq-position
2291         * lisp/emacs-lisp/seq.el (seq-position): New function.
2292         * test/automated/seq-tests.el: New tests for seq-position.
2293         * doc/lispref/sequences.texi: Add documentation for `seq-position'.
2295 2015-10-19  Ken Brown  <kbrown@cornell.edu>
2297         Enable --with-wide-int build on 32-bit Cygwin
2299         * src/sheap.c (STATIC_HEAP_SIZE): Remove distinction between x86
2300         and x86_64 to enable --with-wide-int build on 32-bit Cygwin.
2302 2015-10-19  Glenn Morris  <rgm@gnu.org>
2304         * doc/emacs/ack.texi (Acknowledgments): Small, sad, update.
2306 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
2308         Resurrect image loading under auto-image-file-mode
2310         * src/image.c (x_find_image_fd): Handle the case of -2 returned by
2311         'openp' specially.  This special case was lost in the changes on
2312         2015-08-18.  (Bug#21685)
2314 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
2316         Fix return value of 'set-file-extended-attributes'
2318         * lisp/files.el (set-file-extended-attributes): Return non-nil
2319         when setting either ACLs or SELinux context succeeds.  Document
2320         the return value.  (Bug#21699)
2322         * doc/lispref/files.texi (Changing Files): Document the return
2323         value of set-file-extended-attributes.
2325 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
2327         Improve documentation of functions that change files
2329         * doc/lispref/files.texi (Changing Files): Document that these
2330         functions signal an error on failure.
2332 2015-10-18  Eli Zaretskii  <eliz@gnu.org>
2334         Fix doc string of 'shell-quote-argument'
2336         * lisp/subr.el (shell-quote-argument): Doc fix.  (Bug#21702)
2338 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
2340         Some minor Tramp changes
2342         * doc/misc/tramp.texi (Obtaining Tramp): Add http git cloning.
2344         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
2345         Expand `tramp-auto-save-directory'.
2347 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
2349         Minor edits in Tramp
2351         * lisp/net/tramp-adb.el (directory-listing-before-filename-regexp):
2352         Declare it.
2354         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
2355         Remove declaration.
2357 2015-10-17  Mark Oteiza  <mvoteiza@udel.edu>
2359         * lisp/emacs-lisp/eldoc.el: Add back-to-indentation to the command list.
2361 2015-10-17  Eli Zaretskii  <eliz@gnu.org>
2363         Avoid crashes when redisplayng a window changes faces or fonts
2365         * src/xdisp.c (redisplay_internal): If redisplaying the selected
2366         window or one of the frames turns on the frame's 'redisplay' flag,
2367         redisplay again.  (Bug#21428)
2369         * src/frame.c (x_set_font): Set the frame's 'fonts_changed' flag.
2371 2015-10-17  Michael Albinus  <michael.albinus@gmx.de>
2373         Solve timimg issues in file-notify-tests.el
2375         * test/automated/file-notify-tests.el (file-notify-test02-events):
2376         Rectify `attribute-change' tests.  There are timing issues with
2377         gfilenotify.  (Bug#21669)
2379 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
2381         Fix quoting of data within htmlfontify doc
2383         * doc/misc/htmlfontify.texi (Data Structures, Customization):
2384         Fix quoting of data structures.  A Lisp quote is needed only
2385         when data appears within Lisp code.
2387 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
2389         * lisp/emacs-lisp/package.el: Reload archive-contents if
2390         priorities change.
2391         (package--old-archive-priorities): New variable.
2392         (package-read-all-archive-contents, package-menu--refresh): Use it
2393         to decide when the `package-archive-contents' needs to be read
2394         again.
2396 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
2398         Make src headers idempotent and standalone
2400         Redo src/*.h so that each include file is idempotent (that is, can
2401         be included multiple times with the latter inclusions having no
2402         effect) and standalone (that is, can be included by itself,
2403         with no include file other than config.h needed as a prerequisite).
2404         This is standard practice in GNU programs nowadays.
2405         * lwlib/lwlib-widget.h, src/buffer.h, src/category.h, src/character.h:
2406         * src/charset.h, src/coding.h, src/commands.h, src/disptab.h:
2407         * src/fontset.h, src/gnutls.h, src/indent.h, src/keymap.h, src/macros.h:
2408         * src/regex.h [emacs]:
2409         * src/syntax.h, src/systty.h, src/termhooks.h:
2410         Include lisp.h, for Lisp_Object.
2411         * src/buffer.h, src/category.h, src/cm.h, src/commands.h, src/disptab.h:
2412         * src/indent.h, src/intervals.h, src/keyboard.h, src/macros.h:
2413         * src/process.h, src/puresize.h, src/region-cache.h, src/syntax.h:
2414         * src/syssignal.h, src/sysstdio.h, src/systty.h, src/termchar.h:
2415         * src/termopts.h, src/tparam.h, src/unexec.h:
2416         Protect against multiple inclusion.
2417         * src/buffer.h: Include character.h, for STRING_CHAR.
2418         * src/emacsgtkfixed.h (struct frame):
2419         * src/fontset.h (struct face):
2420         * src/region-cache.h (struct buffer):
2421         * src/termhooks.h (struct glyph):
2422         * src/xsettings.h (struct x_display_info):
2423         Add possibly-forward decl.
2424         * src/syntax.h: Include buffer.h, for BVAR.
2425         * src/sysselect.h: Include lisp.h, for eassume.
2426         * src/termchar.h: Include <stdio.h>, for FILE.
2427         * src/widget.h: Include <X11/IntrinsicP.h>, for Widget.
2428         * src/xsettings.h: Include <X11/Xlib.h>, for XEvent.
2430 2015-10-16  Jürgen Hötzel  <juergen@archlinux.org>
2432         Handle symlink targets containing spaces in tramp-gvfs.el
2434         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
2435         Handle symlink targets containing spaces.
2437 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
2439         * lisp/custom.el (custom-theme-load-path): Demote to defvar.
2441         `custom-theme-load-path' was a defcustom, but it shouldn't be for the
2442         same reason that `load-path' shouldn't.  Setting it via the customize
2443         interface is a trap for the user.
2445         Installed themes commonly add themselves to this variable, which means
2446         its value is not fit for being saved (it will permanently remember dirs
2447         that don't exist anymore).
2449         This is aggravated by the fact that Emacs always applies the `user'
2450         theme on top of any theme that's loaded, since this will apply the old
2451         variable value and remove any new directories that had been recently
2452         added by themes themselves.
2454         Not to mention, we already have `custom-theme-directory', which is safe
2455         to customize.
2457 2015-10-16  Stefan Monnier  <monnier@iro.umontreal.ca>
2459         * lisp/mpc.el: Rename the new toggling commands.
2460         (mpc-toggle-consume, mpc-toggle-repeat, mpc-toggle-single)
2461         (mpc-toggle-shuffle): Add "-toggle" in the name.
2463 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
2465         Improve the doc string of 'completion-boundaries'
2467         * lisp/minibuffer.el (completion-boundaries): Rename the argument
2468         TABLE to COLLECTION, for consistency with other high-level
2469         completion functions.  Document how COLLECTION is called if it
2470         is a function.  (Bug#21644)
2472 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
2474         * lisp/dired-aux.el (dired-shell-command): Fix compile warning.
2476 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
2478         Make dired-do-compress work for *.zip files
2480         * lisp/dired-aux.el (dired-check-process): Transform the top-level
2481           comment into a docstring.
2482         (dired-shell-command): New command.  This mirrors
2483         `dired-check-process', but is more user-friendly for passing
2484         arguments.
2485         (dired-compress-file-suffixes): Allow to specify the command switches
2486         along with input (%i) and output (%o) inside the PROGRAM part.
2487         Add an entry for *.zip files, and update the entry for *.tar.gz files
2488         to the new style.  Update the docstring.
2489         (dired-compress-file): When PROGRAM matches %i or %o, use the new
2490         logic.
2491         (dired-update-file-line): Avoid an error when at end of buffer.
2493         Fixes bug#21637.
2495 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
2497         Minor improvement in documentation of internals
2499         * doc/lispref/internals.texi (Writing Emacs Primitives): Document QUIT.
2501 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
2503         Improve documentation of COLLECTION in completion functions
2505         * doc/lispref/minibuf.texi (Minibuffer Completion): Add a
2506         cross-reference to "Programmed Completion".
2508         * src/minibuf.c (Fcompleting_read): Improve the doc string.
2509         (Bug#21644)
2511 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
2513         Add more release info to etc/HISTORY
2515         * etc/HISTORY: Add more release information about 19.x and 20.x
2516         versions.
2518 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
2520         New file etc/HISTORY
2522         * admin/FOR-RELEASE: Procedure for etc/HISTORY.
2523         * etc/HISTORY: New file.
2524         * etc/NEWS: Mention it.
2526 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
2528         js-mode: Don't misindent generator methods
2530         * lisp/progmodes/js.el (js--looking-at-operator-p): Distinguish
2531         generator methods from multiplication operator
2532         (https://github.com/mooz/js2-mode/issues/275).
2534 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
2536         Fix animation timeout delay calculation
2538         * lisp/image.el (image-animate-timeout):
2539         Don’t assume speed is floating-point.
2541 2015-10-15  Mark Oteiza  <mvoteiza@udel.edu>
2543         Add commands for controlling MPD modes
2545         * lisp/mpc.el (mpc-cmd-consume, mpc-cmd-random, mpc-cmd-repeat)
2546         (mpc-cmd-single): New functions.
2547         (mpc-consume, mpc-repeat, mpc-single, mpc-shuffle): New commands.
2548         (mpc-mode-menu): Add new commands as menu items.
2550 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
2552         Refer to `(elisp)Basic Completion' in completing-read docstring
2554         * src/minibuf.c (Fcompleting_read): Refer to `(elisp)Basic
2555         Completion' in the docstring (bug#21644).
2557 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
2559         * lisp/mpc.el (mpc-format): Always push form to pred
2561 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
2563         Spelling fixes
2565         * configure.ac (bitmapdir): Fix misspelling of bmd_acc.
2566         * test/automated/coding-tests.el (ert-test-coding-bogus-coding-systems):
2567         Fix misspelling of nonexistent file name.
2569 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
2571         * lisp/mpc.el (mpc-mode-menu, mpc-toggle-play): Fix docstrings
2573 2015-10-14  Michael Albinus  <michael.albinus@gmx.de>
2575         Some editing fixes in Tramp
2577         * lisp/net/tramp-gvfs.el:
2578         * doc/misc/tramp.texi: "customer option" -> "custom option".
2580         * lisp/net/tramp.el (tramp-completion-function-alist): Fix docstring.
2582 2015-10-14  Jürgen Hötzel  <juergen@archlinux.org>
2584         Use proper localization in tramp-gvfs.el
2586         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
2587         Suppress localized settings in order to proper parse gfvs output.
2589 2015-10-14  Warren Lynn  <wrn.lynn@gmail.com>  (tiny change)
2591         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band):
2592         Quote argument in proper order.  (Bug#21562)
2594 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
2596         Fix typos in docstrings
2598         * lisp/emacs-lisp/map.el:
2599         * lisp/emacs-lisp/seq.el: Fix typos in the docstrings of the pcase
2600           macros.
2602 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
2604         * lisp/mpc.el (mpc-volume-refresh): Check if buffer is live.
2606 2015-10-14  Oleh Krehel  <ohwoeowho@gmail.com>
2608         Make dired-jump work with tar-subfile-mode
2610         * lisp/dired-x.el (dired-jump): When in `tar-subfile-mode', instead of
2611           emitting an error, switch to `tar-superior-buffer'.
2613 2015-10-14  Juanma Barranquero  <lekktu@gmail.com>
2615         * .gitignore: Add build-aux/ar-lib.
2617 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
2619         Better docstrings in seq.el and map.el
2621         * lisp/emacs-lisp/map.el:
2622         * lisp/emacs-lisp/seq.el: Improve the docstring for the pcase patterns.
2624 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
2626         Merge from gnulib
2628         This incorporates:
2629         2015-10-13 binary-io, u64, unistd: port to strict C
2630         2015-09-26 c-ctype: do not worry about EBCDIC + char signed
2631         2015-09-25 c-ctype: port better to z/OS EBCDIC
2632         2015-09-25 gnulib-common.m4: fix gl_PROG_AR_RANLIB/AM_PROG_AR clash
2633         * doc/misc/texinfo.tex, lib/binary-io.c, lib/c-ctype.h, lib/u64.c:
2634         * lib/unistd.c, m4/gnulib-common.m4, m4/gnulib-comp.m4:
2635         Copy from gnulib.
2637 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
2639         Take XPNTR private
2641         * src/alloc.c (PURE_POINTER_P): Remove.
2642         All uses replaced with PURE_P.
2643         (XPNTR_OR_SYMBOL_OFFSET): New function.
2644         (XPNTR): Move here from lisp.h.
2645         Reimplement in terms of XPNTR_OR_SYMBOL_OFFSET.
2646         (mark_maybe_object, valid_lisp_object_p, survives_gc_p):
2647         Remove unnecessary cast.
2648         (purecopy): Use XPNTR_OR_SYMBOL_OFFSET instead of XPNTR,
2649         to avoid an unnecessary runtime test for symbols.
2650         * src/lisp.h (lisp_h_XPNTR, XPNTR): Remove, moving XPNTR to alloc.c.
2651         Only alloc.c needs XPNTR now.
2653 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
2655         Add MPC play/pause command
2657         * lisp/mpc.el (mpc-toggle-play): New command.
2658         (mpc-mode-map): Bind it to "s".
2659         (mpc-mode-menu): Add corresponding menu item.
2661 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
2663         Add bindings and menu items for prev and next tracks
2665         * lisp/mpc.el (mpc-mode-map): Bind ">" to mpc-next,
2666         "<" to mpc-prev.
2667         (mpc-mode-menu): Add corresponding menu items
2669 2015-10-13  Ken Raeburn  <raeburn@raeburn.org>
2671         Reduce face-related consing during frame creation.
2673         * faces.el (face--attributes-unspecified): Compute the "unspecified"
2674         attribute list once.
2675         (face-spec-reset-face): Use it instead of building the list.
2677 2015-10-13  Ken Raeburn  <raeburn@permabit.com>
2679         Do process ConfigureNotify events indicating size changes.
2681         * src/xterm.c (handle_one_xevent): If consecutive ConfigureNotify
2682         events don't have the same size, process each one.
2684 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
2686         Derive mpc-mode from special-mode
2688         lisp/mpc.el (mpc-mode-map): Make from sparse keymap.  Unbind g.
2689         (mpc-mode): Derive from special mode.
2690         (mpc-songs-mode-map): Don't set parent keymap.
2692 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
2694         Fix error messages for when covers are not found.
2696         The last change to mpc-format let the binding to file call
2697         mpc-file-local-copy with nil argument.  Instead, employ if-let here
2698         so nil bindings don't result in needless computation and errors.
2699         * lisp/mpc.el: Require 'subr-x at compile time.
2700         * lisp/mpc.el (mpc-format): Use if-let.
2702 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
2704         Make dired-do-compress work for *.tar.gz files
2706         * lisp/dired-aux.el (dired-compress-file-suffixes): Associate
2707           "tar -zxvf" to *.tar.gz; update docstring.
2709         (dired-compress-file): Allow to specify switches after the command in
2710         `dired-compress-file-suffixes'.
2712 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
2714         Make dired-do-compress work for directories
2716         * lisp/dired-aux.el (dired-compress-file): When FILE is a directory,
2717           instead of emitting an error, call "tar -czf FILE.tar.gz FILE".
2718         Also convert the top comment into a docstring.
2720 2015-10-13  Stefan Monnier  <monnier@iro.umontreal.ca>
2722         * lisp/mpc.el (mpc-songs-refresh): Don't side-effect `active'
2724         ... since it might come straight from the memoizing table.
2726 2015-10-13  Juanma Barranquero  <lekktu@gmail.com>
2728         * src/w32fns.c (x_change_tool_bar_height): Remove unused variable frame.
2730 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
2732         Use special-mode in eww list modes
2734         * lisp/net/eww.el (eww-bookmark-mode, eww-history-mode)
2735         (eww-buffers-mode): Derive from special-mode and remove redundant
2736         setting of buffer-read-only.
2737         (eww-mode-map): Remove redundant keymap parent setting.
2738         (eww-bookmark-mode-map, eww-history-mode-map, eww-buffers-mode-map):
2739         Remove redundant keymap suppressions and mappings.
2741 2015-10-13  Martin Rudalics  <rudalics@gmx.at>
2743         Allow setting frame pixel sizes from frame parameters (Bug#21415)
2745         Also fix some misfeatures in frame (re-)sizing code, add more
2746         debugging information and remove some dead code.
2748         * lisp/frame.el (frame-notice-user-settings, make-frame): Change
2749         parameter names when setting `frame-size-history'.
2750         (frame--size-history): New function.
2752         * src/frame.c (frame_inhibit_resize): If frame has not been made
2753         yet, return t if inhibit_horizontal_resize or
2754         inhibit_vertical_resize bit have been set.
2755         (adjust_frame_size): Simplify.
2756         (make_frame): Initialize inhibit_horizontal_resize,
2757         inhibit_vertical_resize, tool_bar_redisplayed, tool_bar_resized.
2758         (Fframe_after_make_frame): Reset inhibit_horizontal_resize and
2759         inhibit_vertical_resize slots.
2760         (x_set_frame_parameters): Handle `text-pixels' specification for
2761         width and height parameters.  Don't consider new_height or
2762         new_width changes.  Call adjust_frame_size instead of
2763         Fset_frame_size.
2764         (x_figure_window_size): Two new arguments x_width and y_width
2765         returning frame's figures width and height.  Calculate tool bar
2766         height before frame sizes so SET_FRAME_HEIGHT can pick it up.
2767         Handle `text-pixels' specification for width and height
2768         parameters.
2769         (Qtext_pixels, Qx_set_frame_parameters, Qset_frame_size)
2770         (Qx_set_window_size_1, Qx_set_window_size_2)
2771         (Qx_set_window_size_3, Qx_set_menu_bar_lines)
2772         (Qupdate_frame_menubar, Qfree_frame_menubar_1)
2773         (Qfree_frame_menubar_2): New symbols.
2774         * src/frame.h (structure frame): New booleans
2775         tool_bar_redisplayed, tool_bar_resized,
2776         inhibit_horizontal_resize, inhibit_vertical_resize.
2777         (x_figure_window_size): Update external declaration.
2778         * src/gtkutil.c (xg_frame_set_char_size): Set size hints before
2779         calling gtk_window_resize.
2780         (update_frame_tool_bar): Make inhibiting of frame resizing more
2781         discriminative.  Set tool_bar_resized bit.
2782         * src/nsfns.m (x_set_tool_bar_lines): Make inhibiting of frame
2783         resizing more discriminative.  Call adjust_frame_size instead of
2784         x_set_window_size.
2785         (Fx_create_frame): Handle x_width and x_height if
2786         set by x_figure_window_size.
2787         * src/nsterm.m (x_set_window_size): For GNUSTEP build don't
2788         subtract 3 from tool bar height.
2789         (x_set_window_size): Add frame_size_history_add call.
2790         (x_new_font): Call adjust_frame_size instead of
2791         x_set_window_size.
2792         * src/w32fns.c (x_change_tool_bar_height): Reset
2793         tool_bar_redisplayed and tool_bar_resized bits when adding tool
2794         bar.  Make inhibiting of frame resizing more discriminative.
2795         (w32_wnd_proc): Remove dead code in WM_WINDOWPOSCHANGING case.
2796         (Fx_create_frame): Handle x_width and x_height if set by
2797         x_figure_window_size.  Set size hints before adjusting frame size.
2798         (x_create_tip_frame): Adjust x_figure_window_size call.
2799         * src/w32term.c (x_set_window_size): Add frame_size_history_add
2800         call.
2801         * src/widget.c (set_frame_size): Remove dead code.  Add
2802         frame_size_history_add call.  When frame_resize_pixelwise is t
2803         use FRAME_PIXEL_WIDTH and FRAME_PIXEL_HEIGHT instead of
2804         pixel_width and pixel_height.
2805         (update_various_frame_slots): Remove dead code.
2806         (EmacsFrameResize): Add more information in
2807         frame_size_history_add call.
2808         (EmacsFrameQueryGeometry): Round only when frame_resize_pixelwise
2809         is not set.
2810         * src/xdisp.c (redisplay_tool_bar): Set tool_bar_redisplayed bits.
2811         * src/xfns.c (x_set_menu_bar_lines): Change argument name.
2812         (x_change_tool_bar_height): Reset tool_bar_redisplayed and
2813         tool_bar_resized bits when adding tool bar.  Make inhibiting of
2814         frame resizing more discriminative.
2815         (Fx_create_frame): Handle x_width and x_height if set by
2816         x_figure_window_size.  Set size hints before adjusting frame size.
2817         (x_create_tip_frame): Adjust x_figure_window_size call.
2818         * src/xmenu.c (update_frame_menubar): Don't handle Lucid specially.
2819         (set_frame_menubar): On Lucid never add core-border-width to
2820         avoid that adding XtNinternalBorderWidth adds it again.
2821         (free_frame_menubar): Handle frame_inhibit_resize true for Motif.
2822         * src/xterm.c (x_new_font): In non-toolkit case handle size
2823         change of menu bar.
2824         (x_set_window_size_1): Fix calls to frame_size_history_add.
2825         (x_wm_set_size_hint): Remove dead code.  Set
2826         size_hints.min_width and size_hints.min_height to base_width and
2827         base_height.
2829 2015-10-13  Michael Albinus  <michael.albinus@gmx.de>
2831         * test/automated/file-notify-tests.el (file-notify--test-timeout):
2832         Add docstring.  Increase to 10 seconds for remote
2833         directories.  (Bug#21669)
2835 2015-10-12  Paul Eggert  <eggert@cs.ucla.edu>
2837         Unmacroize ebrowse.c and etags.c a bit
2839         * lib-src/ebrowse.c (READ_CHUNK_SIZE): Now an enum constant.
2840         (streq, filename_eq, set_flag, has_flag): Now inline functions.
2841         (set_flag): First arg is now an address, not an lvalue.
2842         All callers changed.
2843         (filename_eq, set_flag, has_flag):
2844         Rename from FILENAME_EQ, SET_FLAG, HAS_FLAG.
2845         All callers changed.
2846         * lib-src/etags.c (streq, strcaseeq, strneq, strncaseeq):
2847         Now inline functions.  Remove asserts that are unnecessary these
2848         days (and in some cases were too-generous anyway).
2850 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
2852         Use highlight for current items
2854         * lisp/mpc.el (mpc-select-make-overlay, mpc-tagbrowser-all-select):
2855         Apply highlight face instead of region face.
2857 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
2859         Search for more cover image names in MPC
2861         * lisp/mpc.el (mpc-format): Also look for .folder.jpg or folder.jpg
2862         case insensitively
2864 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
2866         Remove or comment out unused variables
2868         * src/w32fns.c (x_set_mouse_color): Comment out variables cursor,
2869         nontext_cursor, mode_cursor, hand_cursor and count.
2870         (x_change_tool_bar_height): Remove variable old_text_height.
2871         (deliver_wm_chars): Remove variable strip_Alt.
2872         (Fw32_shell_execute): Remove variable document_a.
2873         (Fw32_frame_geometry): Remove variable fullboth.
2874         * src/w32term.c (w32_setup_relief_color): Comment out variable
2875         w32_display_info.
2876         (w32_horizontal_scroll_bar_handle_click): Remove variables start, end.
2877         (w32_read_socket): Comment out variables rows, columns.
2878         * src/w32uniscribe.c (uniscribe_check_otf_1): Remove variable rest.
2880 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
2882         * src/w32proc.c (sys_select): Fix bitwise test.
2884 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
2886         Minor typo corrections in doc strings
2888         * lisp/menu-bar.el (popup-menu, popup-menu-normalize-position):
2889         Doc fixes.
2891 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
2893         * nt/INSTALL: Recommend MSYS Automake/Autoconf from ezwinports.
2895 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
2897         Attempt to avoid crashes in plist-member
2899         * src/fns.c (Fplist_member): Don't call QUIT between a CONSP test
2900         and a call to XCDR.  (Bug#21655)
2902 2015-10-12  Mike FABIAN  <mfabian@redhat.com>
2904         * lisp/select.el (gui-get-primary-selection): In
2905         gui-get-primary-selection use gui--selection-value-internal (Bug#20906)
2907 2015-10-12  Tassilo Horn  <tsdh@gnu.org>
2909         Support RTF in doc-view
2911         * lisp/doc-view.el (doc-view-set-doc-type): Add entry for RTF extension.
2913 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
2915         * src/w32fns.c (get_wm_chars): Increment counter, not pointer.
2917 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
2919         Replace the usage of an obsolete function in auth-source.el
2921         * lisp/gnus/auth-source.el (auth-source-epa-make-gpg-token):
2922         Replace an usage of `epg-context-set-armor' with `setf'.
2924 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
2926         * lisp/gnus/auth-source.el: Use sharp-quoting with functions.
2928 2015-10-11  Jay Belanger  <jay.p.belanger@gmail.com>
2930         Have calc-yank recognize numbers in different bases.
2932         * lisp/calc/calc-yank.el (math-number-regexp): New function.
2933         (calc-yank): Use `math-number-regexp' to recognize numbers.
2935 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
2937         Handle an opaque-move X11 window manager operation more efficiently
2939         * src/xterm.c (handle_one_xevent): If a ConfigureNotify event is
2940         followed by more ConfigureNotify events for the same window, process
2941         only the last one.
2943 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
2945         Fix cursor setting for tip frame; re-enable cursor generation
2947         * src/xfns.c (x_create_tip_frame): Include the cursor in the window
2948         attributes sent when creating the new X window.  Don't skip setting
2949         the pointerColor parameter.
2951 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
2953         Rewrite x_set_mouse_color to sync less
2955         We can track serial numbers of X requests and correlate error events
2956         with the associated requests.  This way we can identify errors for
2957         specific calls without having to use XSync after every one.
2959         * src/xfns.c (enum mouse_cursor): New type.
2960         (struct mouse_cursor_types, struct mouse_cursor_data): New types.
2961         (mouse_cursor_types): New array listing the Lisp variables and default
2962         cursor appearances for each cursor type.
2963         (x_set_mouse_color_handler): New function; checks error event serial
2964         number against submitted requests.
2965         (x_set_mouse_color): Updated to use the new error handler callback,
2966         and to be more table-driven, to simplify repetitious code.
2968 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
2970         Add x_catch_errors_with_handler
2972         * src/xterm.c (struct x_error_message_stack): Add new fields for a
2973         callback function and associated data pointer.
2974         (x_error_catcher): If the callback function is set, call it after
2975         saving the error message string.
2976         (x_catch_errors_with_handler): Renamed from x_catch_errors but now
2977         accepts a callback function and data pointer.
2978         (x_catch_errors): Now a wrapper function.
2979         * src/xterm.h (x_special_error_handler): New typedef.
2980         (x_catch_errors_with_handler): Declare.
2982 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
2984         Introduce x_uncatch_errors_after_check to reduce XSync calls
2986         Both x_had_errors_p and x_check_errors call XSync, so if they're
2987         immediately followed by x_uncatch_errors, its XSync call will be
2988         redundant, resulting in a wasted round trip to the X server.
2990         * src/xterm.c (x_uncatch_errors_after_check): New routine; a copy of
2991         x_uncatch_errors without the XSync call.
2992         (XTmouse_position, x_wm_supports):
2993         * src/xfns.c (x_set_mouse_color):
2994         * src/xmenu.c (Fx_menu_bar_open_internal):
2995         * src/xselect.c (x_own_selection, x_get_foreign_selection):
2996         (Fx_get_atom_name): Call it instead of x_uncatch_errors.
2997         * src/xterm.h (x_uncatch_errors_after_check): Declare.
2999 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
3001         Document the optional prefix to `calc-yank'
3003         * doc/misc/calc.texi (Yanking into the Stack): Document the optional
3004         prefix to `calc-yank'.
3005         * lisp/calc/calc-yank.el (calc-yank): Ensure that things killed from
3006         the Calc buffer are yanked back unchanged.
3008 2015-10-10  Mark Oteiza  <mvoteiza@udel.edu>
3010         * lisp/calendar/calendar.el: Display buffer before executing body.
3012         In each use of this macro, the modeline is derived from a window width
3013         calculation, which will be wrong if (display-buffer) splits the window
3014         horizontally.
3016 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
3018         Use ‘echo’ safely with ‘\’ or leading ‘-’
3020         POSIX says that ‘echo FOO’ produces implementation-defined output
3021         if FOO contains leading ‘-’, or ‘\’ anywhere, so don’t assume GNU
3022         behavior in that case.
3023         * Makefile.in (removenullpaths): Remove.
3024         (epaths-force): Rewrite to avoid the need for ‘echo’.
3025         (install-etc): Be clearer about escaping the shell metacharacters
3026         ‘\’ and ‘$’.
3027         * Makefile.in (install-arch-indep, install-etcdoc):
3028         * admin/charsets/mapconv, admin/merge-gnulib, admin/merge-pkg-config:
3029         * admin/quick-install-emacs, build-aux/gitlog-to-emacslog:
3030         * configure.ac, lib-src/rcs2log, make-dist:
3031         * src/Makefile.in (lisp.mk):
3032         Don’t assume ‘echo’ outputs ‘\’ and leading ‘-’ unscathed.
3033         For example, use ‘printf '%s\n' "$foo"’ rather than ‘echo "$foo"’
3034         if $foo can contain arbitrary characters.
3035         * lisp/Makefile.in (TAGS): Use ‘ls’, not ‘echo’, to avoid ‘\’ issues.
3036         * doc/lispref/two-volume.make (vol1.pdf):
3037         * test/etags/make-src/Makefile (web ftp publish):
3038         Use ‘printf’ rather than ‘echo -e’.
3040 2015-10-10  Kaushal Modi  <kaushal.modi@gmail.com>
3042         Allow numbers with different radixes to be yanked.
3044         * lisp/calc/calc-yank.el (calc-yank): Allow radixes besides the
3045         default base 10.
3047 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
3049         Improve CHECK_IMPURE and PURE_P speedup
3051         * src/data.c (Faset): Use XVECTOR and XSTRING rather than XPNTR.
3053 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
3055         Use events instead of chars to keep track of steps.
3057         * lisp/calc/calc-prog.el (calc-kbd-loop): Use events instead of chars
3058         to keep track of steps.
3060 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
3062         Fix --enable-gcc-warnings problem with older GCC
3064         * src/puresize.h: Add INLINE_HEADER_BEGIN, INLINE_HEADER_END.
3065         This is for building with --enable-gcc-warnings with
3066         GCC 4.6 through 5.0.
3068 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
3070         Fix vertical-motion in truncated lines that end in a stretch
3072         * src/indent.c (Fvertical_motion): Expect overshoot when point is
3073         beyond window margin and lines are truncated, even if we have a
3074         stretch at point.  (Bug#21468)
3076 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
3078         Avoid link-time errors due to inline functions
3080         * src/emacs.c: Include puresize.h, to avoid link-time errors in
3081         unoptimized builds due to PURE_P and CHECK_IMPURE, which are now
3082         inline functions.
3084 2015-10-10  Andreas Schwab  <schwab@linux-m68k.org>
3086         * src/data.c (Faset): Fix last change.
3088 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
3090         CHECK_IMPURE and PURE_P speedup
3092         * src/intervals.c (create_root_interval):
3093         Do CHECK_IMPURE only for strings; not needed for buffers.
3094         Prefer ! STRINGP to BUFFERP, for a tad more speed.
3095         * src/puresize.h (CHECK_IMPURE, PURE_P):
3096         Now inline functions instead of macros.
3097         (PURE_P): Don’t use XPNTR; that is now the caller’s responsibility.
3098         All callers changed.
3099         (CHECK_IMPURE): New argument PTR, to save us the work of running XPNTR.
3100         All callers changed.
3102 2015-10-09  Noah Friedman  <friedman@splode.com>
3104         (tramp-open-connection-setup-interactive-shell): Send -onlcr as well.
3106 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
3108         * lisp/progmodes/cc-mode.el (c-after-font-lock-init): Only *move*
3110         our after-change-function, rather than re-adding it if it was removed.
3112 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
3114         * lisp/cedet/ede: Silence some compiler warnings
3116         * lisp/cedet/ede.el: Require cl-lib.  Silence some compiler warnings.
3117         (ede-menu-obj-of-class-p): Use cl-some rather than `eval'.
3118         (ede-apply-object-keymap, ede-reset-all-buffers)
3119         (ede-auto-add-to-target): Use dolist.
3120         (ede-new, ede-flush-deleted-projects, ede-global-list-sanity-check):
3121         Use field names rather than initarg names in `oref'.
3122         (ede-load-project-file): Remove unused var `file'.
3123         (ede-map-any-target-p): Use cl-some rather than ede-map-targets.
3124         (ede-set): Remove unused var `a'.
3126         * lisp/cedet/ede/emacs.el: Silence some compiler warnings.
3127         (ede-project-autoload): Avoid the old-style "name" argument.
3128         (ede-emacs-find-matching-target): Use field names rather than initarg
3129         names in `oref'.
3131         * lisp/cedet/ede/linux.el: Silence some compiler warnings.
3132         (ede-linux-load, ede-project-autoload): Avoid the old-style
3133         "name" argument.
3134         (ede-linux-find-matching-target): Use field names rather than initarg
3135         names in `oref'.
3137 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
3139         * lisp/textmodes/reftex.el: Silence byte-compiler warnings.
3141 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
3143         * lisp/progmodes/prolog.el (prolog-smie-rules): Try and avoid
3144         indenting too far after ":-".
3146 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
3148         Update case-table and categories of recently added characters
3150         * lisp/international/characters.el: Update information about Latin
3151         Extended-C, Latin Extended-D, Latin Extended-E, Cyrillic Extended,
3152         Georgian, Glagolitic, Deseret, Old Hungarian, and Warang Citi
3153         blocks.  (Byug#21654)
3155 2015-10-09  Martin Rudalics  <rudalics@gmx.at>
3157         * src/frame.c (adjust_frame_size): In minibuffer-only windows
3158         don't count minibuffer height twice.  (Bug#21643)
3160 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
3162         Avoid inflooping in font-lock
3164         * lisp/font-lock.el (font-lock-extend-region-wholelines): Bind
3165         inhibit-field-text-motion around the call to
3166         line-beginning-position, to avoid inflooping.  (Bug#21615)
3168 2015-10-09  Tassilo Horn  <tsdh@gnu.org>
3170         Refactor duplicated code; ensure default is in completions
3172         * lisp/textmodes/reftex-cite.el (reftex--query-search-regexps):
3173         New function.
3174         (reftex-extract-bib-entries): Use it.
3175         (reftex-extract-bib-entries-from-thebibliography): Use it.
3177 2015-10-09  Vincent Belaïche  <vincentb1@users.sourceforge.net>
3179         * doc/misc/autotype.texi (Skeletons as Abbrevs): "if" -> "ifst"
3180         in the example.
3182 2015-10-08  Stefan Monnier  <monnier@iro.umontreal.ca>
3184         * lisp/calc/calc.el: Silence byte-compiler warnings.
3185         (calc-scan-for-dels): Use ignore-errors.
3186         (calc-dispatch, calc-do-dispatch): Make unused arg optional.
3187         (calc-read-key-sequence): Remove unused var `prompt2'.
3188         (calc-kill-stack-buffer): Remove unused var `buflist'.
3189         (calc): Remove unused var `oldbuf'.
3190         (calc-refresh): Use inhibit-read-only.
3191         (calc-can-abbrev-vectors): Declare.
3192         (calc-record): Remove unused var `mainbuf'.
3193         (math-sub-bignum): Remove unused var `sum'.
3194         (math-svo-c, math-svo-wid, math-svo-off): Declare.
3196 2015-10-08  Daiki Ueno  <ueno@gnu.org>
3198         Use g_clear_error instead of g_error_free
3200         * src/image.c: Define g_clear_error instead of g_error_free.
3201         (init_svg_functions): Resolve symbol g_clear_error instead of
3202         g_error_free.
3203         (svg_load_image): Use g_clear_error instead of g_error_free, to
3204         suppress GLib warnings when ERR is not set.  See bug#21641.
3206 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
3208         * src/image.c (image_size_error): Simplify.
3210 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
3212         Fix problems caught with --enable-gcc-warnings
3214         * src/image.c (lookup_rgb_color):
3215         * src/xfns.c (x_defined_color):
3216         * src/xterm.c (x_parse_color):
3217         Remove unused locals.
3219 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
3221         * lisp/calc/calc.el (calc-digit-start-entry): Fix typo.
3223 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
3225         Format initial input uniformly
3227         * lisp/calc/calc.el (calc-digit-start-entry): New function.
3228         * lisp/calc/calc.el (calcDigit-start):
3229         * lisp/calc/calc-aent.el (calc-alg-digit-entry):
3230         Use `calc-digit-start-entry' to format input.
3232 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
3234         Disable non-working pointerColor setting for X tooltip frame
3236         It generates a bunch of server traffic, but there's some bug wherein
3237         the new mouse cursor settings don't seem to get used.  In most
3238         situations the cursor isn't likely to be seen anyway, so it's not
3239         urgent to fix.
3241         * src/xfns.c (x_create_tip_frame): Don't set pointerColor.
3243 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
3245         Reduce some unnecessary X calls
3247         * src/xfns.c (x_real_pos_and_offsets): Remove a redundant XGetGeometry
3248         call.  If border width is wanted, get it from the XGetGeometry call
3249         instead of calling XGetWindowAttributes on the same window.  Skip some
3250         X calls if we've already detected an error from the X server.
3251         * src/xterm.c (x_wm_supports): Delete x_sync before x_had_errors_p.
3252         (handle_one_xevent): Delete XSync call before x_uncatch_errors.
3254 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
3256         Reduce color allocation/query traffic in the TrueColor case
3258         When working with an X visual with TrueColor class, pixel values can
3259         be generated from the RGB values according to mask value provided by
3260         the server on connection.  Some of the image-handling code was already
3261         doing this.
3263         * src/xterm.h (x_make_truecolor_pixel): New function; code taken from
3264         lookup_rgb_color.
3265         (x_mutable_colormap): New function.
3266         * src/image.c (lookup_rgb_color): Move pixel composition code to
3267         x_make_truecolor_pixel.
3268         (x_kill_gs_process): Call x_mutable_colormap.
3269         * src/xfaces.c (x_free_colors, x_free_dpy_colors): Call
3270         x_mutable_colormap.
3271         * src/xftfont.c (xftfont_get_colors): Call x_query_colors.
3272         * src/xterm.c (x_query_colors): For a TrueColor display, decompose the
3273         pixel value into RGB values directly, and don't send a request to the
3274         server.
3275         (x_alloc_nearest_color): For a TrueColor display, construct the pixel
3276         value with x_make_truecolor_pixel.
3277         (x_copy_color): For an immutable color map, just return the provided
3278         pixel value.
3280 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
3282         Cache XParseColor results in the X display info structure
3284         With repeated lookups of foreground and background colors for multiple
3285         faces per frame, we issue a lot of redundant color name lookups to the
3286         X server, waiting every time for the response.  On a remote network
3287         with, say, 30ms round-trip time, this can add nearly a full second to
3288         creation of a new frame.
3290         * src/gtkutil.c (xg_check_special_colors): Call x_parse_color.
3291         * src/image.c (get_spec_bg_or_alpha_as_argb):
3292         (xpm_init_color_cache, xpm_lookup_color):
3293         * src/xfns.c (x_defined_color):
3294         * src/xterm.c (x_parse_color): New function; caches color names not
3295         starting with "#" in the display-info structure.
3296         (x_delete_display): Delete the cache content.
3297         * src/xterm.h (struct color_name_cache_entry): New type.
3298         (x_parse_color): Declare.
3299         (struct x_display_info): Add a new field for the cache.
3301 2015-10-07  Stefan Monnier  <monnier@iro.umontreal.ca>
3303         * src/syntax.c (syms_of_syntax): Make syntax-propertize--done local.
3305 2015-10-07  Eli Zaretskii  <eliz@gnu.org>
3307         Fix segfault in image_size_error
3309         * src/image.c (image_size_error): Pass a Lisp string to
3310         image_error, not a C string.  (Bug#21641)
3312 2015-10-07  Simen Heggestøyl  <simenheg@gmail.com>
3314         Highlight CSS variable definitions
3316         * lisp/textmodes/css-mode.el (css-nmstart-re): Tweak regexp to accept
3317         CSS variables.  (Bug#21638)
3319 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
3321         * test/automated/tabulated-list-test.el: New file.
3322         Test bug#21639 and some basic functionality.
3324 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
3326         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-sort):
3327         Check if column can be sorted before trying.  (Bug#21639)
3329 2015-10-07  Nicolas Richard  <youngfrog@members.fsf.org>
3331         Add test for `self-insert-command' (bug#21633)
3333         * test/automated/cmds-tests.el: New file.
3335 2015-10-07  Martin Rudalics  <rudalics@gmx.at>
3337         * src/window.c (resize_frame_windows): Don't set root window's
3338         top position when resizing horizontally.
3340 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
3342         * lisp/progmodes/prog-mode.el (prettify-symbols-alist):
3343         Document more possible values.
3345 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
3347         * lisp/textmodes/tex-mode.el: Use lexical-binding.
3349 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
3351         * lisp/indent.el (indent--default-inside-comment): New function.
3352         (indent-for-tab-command): Use it for `noindent' indentation.
3354 2015-10-06  Paul Eggert  <eggert@cs.ucla.edu>
3356         Fix bug in GC_CHECK_MARKED_OBJECTS check
3358         * src/alloc.c (mark_object): Fix bug in checking code.
3359         When GC_CHECK_MARKED_OBJECTS is defined, the bug caused
3360         CHECK_ALLOCATED_AND_LIVE_SYMBOL to repeatedly do the
3361         CHECK_ALLOCATED and CHECK_LIVE tests for the first symbol in each
3362         bucket.  The bug did not affect behavior either in the normal case
3363         where GC_CHECK_MARKED_OBJECTS is not defined, or where Emacs does
3364         not have an internal error that a properly-written
3365         CHECK_ALLOCATED_AND_LIVE_SYMBOL would detect.
3367 2015-10-06  Tassilo Horn  <tsdh@gnu.org>
3369         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
3370         Add prettified version for \\Bbb{Q}.
3372 2015-10-06  Artur Malabarba  <bruce.connor.am@gmail.com>
3374         * test/automated/package-test.el (package-test-install-single):
3375         Add a test for bug#21625.
3377 2015-10-06  Aaron Ecay  <aaronecay@gmail.com>
3379         * lisp/emacs-lisp/package.el (package-install): Fix error when pkg is
3380           not a package-desc object.  Also clarify documentation.  (Bug#21625)
3382 2015-10-06  Eli Zaretskii  <eliz@gnu.org>
3384         Fix display of characters adjacent to ZWJ and ZWNJ
3386         * src/bidi.c (bidi_resolve_neutral): Treat all Bn (a.k.a. "control")
3387         characters the same as directional formatting controls.
3388         (bidi_level_of_next_char): Include all Bn characters in rule L1,
3389         as mandated by the UBA.
3391 2015-10-06  Andreas Schwab  <schwab@suse.de>
3393         * src/cmds.c (Fself_insert_command): Don't use XFASTINT on a negative
3394         number.  (Bug#21633)
3396 2015-10-05  Xue Fuqiao  <xfq.free@gmail.com>
3398         * doc/lispref/objects.texi (Window Type): Add a cross reference.
3400         * src/buffer.c (syms_of_buffer): Typo fix.  (Bug#21622)
3402 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
3404         * lisp/language/misc-lang.el (composition-function-table):
3405         Fix entries for Arabic and Syriac.
3407 2015-10-05  Damien Cassou  <damien@cassou.me>
3409         Add first unit tests for auth-source.el
3411         * test/automated/auth-source-tests.el: New file.
3413 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
3415         Remove redundant redisplay code
3417         * src/xdisp.c (redisplay_internal, try_cursor_movement)
3418         (try_window_reusing_current_matrix, try_window_id): Remove
3419         redundant restrictions on redisplay optimizations based on the
3420         frame's 'redisplay' flag.  See
3421         http://osdir.com/ml/general/2015-10/msg02110.html for the relevant
3422         discussions.
3424 2015-10-04  Stefan Monnier  <monnier@iro.umontreal.ca>
3426         * src/xdisp.c (windows_or_buffers_changed): Improve docstring.
3428 2015-10-04  Xue Fuqiao  <xfq.free@gmail.com>
3430         Update tutorials/TUTORIAL.cn
3432         * etc/tutorials/TUTORIAL.cn: Improve translation.
3434 2015-10-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
3436         * src/macfont.m (macfont_encode_char, syms_of_macfont):
3437         Remove unused vars.
3439 2015-10-04  Stefan Merten  <stefan@merten-home.de>
3441         Pull in version numbers from rst.el upstream release.
3443         * lisp/textmodes/rst.el (rst-cvs-header, rst-svn-rev)
3444         (rst-svn-timestamp, rst-official-version)
3445         (rst-official-cvs-rev, rst-package-emacs-version-alist):
3446         Update version numbers.
3448 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
3450         * test/automated/coding-tests.el: New file.
3452 2015-10-04  Michael Albinus  <michael.albinus@gmx.de>
3454         Improve XEmacs compatibility of Tramp
3456         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
3457         Declare if it doesn't exist.
3458         (file-remote-p): Remove defalias, which was necessary for GNU Emacs 21.
3459         (redisplay): Make it an alias if it doesn't exist.
3461         * lisp/net/tramp.el (tramp-get-remote-tmpdir): Don't use
3462         `file-remote-p' (due to XEmacs compatibility).
3464         * lisp/net/trampver.el (locate-dominating-file)
3465         (tramp-compat-replace-regexp-in-string): Autoload.
3466         (tramp-repository-get-version): Do not dupe byte-compiler.
3468 2015-09-02  K. Handa  <handa@gnu.org>
3470         fix for the case that M17N_FLT_USE_NEW_FEATURE is not defined
3472         * src/ftfont.c (ftfont_drive_otf) [not M17N_FLT_USE_NEW_FEATURE]:
3473         Adjusted for the change of type of elements in the array
3474         MFLTGlyphString.glyphs.
3476 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
3477             Michael Heerdegen  <michael_heerdegen@web.de>
3479         shr: fix too long lines in rendered buffers (Bug#21012)
3481         * lisp/net/shr.el (shr-insert-document, shr-fill-text):
3482         Correct calculation of available width.
3483         (shr-find-fill-point): Don't overflow window edge if shr-kinsoku-shorten
3484         is nil.
3486 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
3488         Restore blank line before next section, erroneously erased
3489         in my previous commit
3491         * etc/compilation.txt (symbol ant): Add an additional trailing blank
3492         line to this section, so that there are two of them immediately before
3493         the next section.
3495 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
3497         Support MSW filename style for ant compilation error regexp
3499         * etc/compilation.txt (symbol ant):
3500         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
3501         Support MSW filename style.
3503 2015-10-03  Paul Eggert  <eggert@cs.ucla.edu>
3505         * nt/INSTALL: Minor spelling and quote fixes.
3507         * lisp/ibuffer.el: Fix docstring length (Bug#21541).
3509 2015-10-03  Simen Heggestøyl  <simenheg@gmail.com>
3511         Maintain ordering of JSON object keys by default
3513         * lisp/json.el (json-object-type): Mention order handling in doc-string.
3514         (json--plist-reverse): New utility function.
3515         (json-read-object): Maintain ordering for alists and plists.
3516         (json-pretty-print): Ensure that ordering is maintained.
3518         * test/automated/json-tests.el (test-json-plist-reverse): New test for
3519         `json--plist-reverse'.
3520         (json-read-simple-alist): Update test to accommodate for changes in
3521         `json-read-object'.
3523         * etc/NEWS: Document the new behavior of the pretty printing functions.
3525 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
3527         * src/coding.c (complement_process_encoding_system): Revert last change.
3529 2015-10-03  Ulf Jasper  <ulf.jasper@web.de>
3531         * admin/MAINTAINERS: Add entry for Ulf Jasper.
3533 2015-10-03  Xue Fuqiao  <xfq.free@gmail.com>
3535         Doc fix for `defmacro'
3537         * doc/lispref/objects.texi (Macro Type): `defmacro' is a macro now.
3539 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
3541         More validatation of coding systems
3543         * src/fileio.c (Finsert_file_contents): Remove redundant
3544         coding-system check.
3545         (choose_write_coding_system): Likewise.
3546         * src/coding.c (complement_process_encoding_system): Check argument
3547         for valid coding system.
3549 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
3551         Avoid crashes in coding_inherit_eol_type
3553         * src/coding.c (coding_inherit_eol_type): Check the validity of
3554         the arguments.  Suggested by Andreas Schwab <schwab@linux-m68k.org>.
3555         (Bug#21602)
3557 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
3559         More validatation of coding system in 'write-region'
3561         * src/coding.c (choose_write_coding_system): More validation of
3562         coding-system from various sources.  Suggested by Andreas Schwab
3563         <schwab@linux-m68k.org>.  (Bug#21602)
3565 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
3567         Avoid crashes due to invalid coding-system
3569         * src/fileio.c (choose_write_coding_system)
3570         (Finsert_file_contents): Check validity of coding-system-for-write
3571         and coding-system-for-read bound by the caller.  (Bug#21602)
3573 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
3575         Adapt to new prettify-symbols-unprettify-at-point default
3577         * etc/NEWS: Mention that unprettication of symbol at point is off
3578         by default.
3580 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
3582         Revert my two recent process.c changes
3584         Revert "Improve last commit to process.c" and "Remove callback-handled
3585         channels from Available set" because they did not fix bug#21313.
3587         This reverts commits bfa1aa8e2bdaf14adbbf1e9e824051d3f740694c and
3588         27f871907cc24f33a7d12ac3a4ab71a88f0bc554.
3590 2015-10-02  Markus Triska  <triska@metalevel.at>
3592         * lisp/progmodes/prolog.el: Update and extend operator table.
3593         (prolog-smie-grammar): Add multifile, public etc.
3595 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
3597         Allow autogen even when Git is not installed
3599         * autogen.sh: Test ‘git status’ before trying to use Git.
3601 2015-10-02  Stefan Monnier  <monnier@iro.umontreal.ca>
3603         * lisp/vc/vc-git.el (vc-git-region-history): Handle local changes.
3604         Adjust lto/lfrom when we have uncommitted changes.
3606 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
3608         Fix problems found by clang 3.5.0
3610         * src/cmds.c (Fdelete_char): Don’t assume XINT returns int.
3611         * src/font.c (font_parse_family_registry):
3612         Use &"str"[X] instead of "str"+X, to pacify clang -Wstring-plus-int.
3614 2015-10-02  Eli Zaretskii  <eliz@gnu.org>
3616         * nt/INSTALL: Update instructions for running autogen.sh.
3618         * nt/INSTALL: Point to ezwinports for libXpm binaries.
3620 2015-10-02  Daniel Colascione  <dancol@dancol.org>
3622         Fix winner in cl-lib not loaded case
3624         * lisp/winner.el (winner-change-fun): Don't use cl-lib functions
3625         without requiring CL
3627 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
3629         Fix a few problems with directed quotes
3631         This is in response to a problem report by Kaushal Modi in:
3632         http://bugs.gnu.org/21588#25
3633         * lisp/cedet/mode-local.el (describe-mode-local-overload):
3634         * lisp/emacs-lisp/bytecomp.el (byte-compile-fix-header):
3635         * lisp/info-xref.el (info-xref-check-all-custom):
3636         * lisp/mail/emacsbug.el (report-emacs-bug-hook):
3637         Prefer directed to undirected single quotes in diagnostics.
3639 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
3641         Revert "Attempt to fix slow redisplay caused by last changes"
3643         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
3644         (try_cursor_movement): Don't relax requirements for redisplay
3645         optimizations for the selected frame.  (Bug#21597)
3647         This reverts commit c4c1fb97727ff52bcfa83ad5ed94a64a93d12e59.
3649 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
3651         Fix slow redisplay when daemon frame exists
3653         * src/xdisp.c (redisplay_internal): Don't consider daemon frames
3654         when looking for frames that need to be redisplayed.  (Bug#21597)
3656 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
3658         Attempt to fix slow redisplay caused by last changes
3660         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
3661         (try_cursor_movement): Relax requirements for redisplay
3662         optimizations for the selected frame.  (Bug#21597)
3664 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
3666         * src/dired.c (Ffile_name_completion, Ffile_name_all_completions):
3667         Improve doc string.
3669 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
3671         * lisp/minibuffer.el (minibuffer-completion-help):
3672         Set default base-size, in case completion table does not set it.
3674 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
3676         Fix GUD display of GDB output with non-ASCII text
3678         * lisp/progmodes/gdb-mi.el (gdb-mi-decode-strings): New defcustom.
3679         (gdb-mi-decode): New function.
3680         (gud-gdbmi-marker-filter): If gdb-mi-decode-strings is non-nil,
3681         decode octal escapes in GDB output.  (Bug#21572)
3683 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
3685         * nt/INSTALL: Document where to find XPM support files.
3687 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
3689         Un- and re-prettification are not exclusive
3691         * lisp/progmodes/prog-mode.el (prettify-symbols--post-command-hook):
3692         Re-apply prettification to previous symbol also when unprettifying
3693         next one.
3695 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
3697         Don't unprettify symbol at point by default
3699         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
3700         Default to disabled (nil).
3702 2015-09-30  Artur Malabarba  <bruce.connor.am@gmail.com>
3704         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
3705         Support unprettifying when point is after a symbol.
3707         * etc/NEWS: Document `prettify-symbols-unprettify-at-point'.
3709 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
3711         Avoid assertion violations in push_prefix_prop
3713         * src/xdisp.c (push_prefix_prop): Avoid assertion violations when
3714         a line that has a line-prefix defined starts with an image.  (Bug#21428)
3716 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
3718         Disable some display optimizations when frames need redisplay
3720         These optimizations were previously disabled by the
3721         windows_or_buffers_changed flag, which now is not set
3722         when only some frames need to be redrawn.
3723         * src/xdisp.c (redisplay_internal): Redisplay any frame whose
3724         'redisplay' flag is set.
3725         (try_window_reusing_current_matrix, try_window_id)
3726         (try_cursor_movement): Disable these optimizations when the
3727         frame's 'redisplay' flag is set.
3729 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
3731         Don't modify buffer by unprettification
3733         * lisp/progmodes/prog-mode.el (prettify-symbols--compose-symbol):
3734         (prettify-symbols--post-command-hook, prettify-symbols-mode): Don't
3735         modify buffer when setting/removing custom prettify-symbols-start/end
3736         text properties.  Add them to font-lock-extra-managed-props, too.
3738 2015-09-30  Stefan Monnier  <monnier@iro.umontreal.ca>
3740         Try to avoid redisplaying all frames when creating a new one
3742         * src/xfns.c (x_set_menu_bar_lines, x_change_tool_bar_height):
3743         * src/xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
3744         (Finternal_set_lisp_face_attribute, update_face_from_frame_parameter):
3745         * src/frame.c (x_set_screen_gamma): Set the specific frame's
3746         `redisplay' bit rather than windows_or_buffers_changed.
3748         * src/window.c (apply_window_adjustment): Remove redundant setting of
3749         windows_or_buffers_changed.
3751         * src/xdisp.c (redisplay_internal): Set the specific frame's
3752         `redisplay' bit rather than update_mode_lines in response to
3753         cursor_type_changed.
3754         (syms_of_xdisp): Use hash-tables for redisplay_*_cause tables.
3755         (AINC): Adjust accordingly.
3757 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
3759         Implement unprettification of symbol at point
3761         * lisp/progmodes/prog-mode.el: Implement feature for unprettifying the
3762         symbol at point.
3763         (prettify-symbols--current-symbol-bounds): New variable.
3764         (prettify-symbols--post-command-hook): New function.
3765         (prettify-symbols-unprettify-at-point): New defcustom.
3766         (prettify-symbols-mode): Use it.
3767         (prettify-symbols--compose-symbol): Use them.
3769 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
3771         * src/macfont.m (mac_font_descriptor_supports_languages):
3772         Regard "zh" as synonym of "zh-Hans".
3774 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
3776         Work around crash when displaying etc/HELLO on OS X 10.11
3778         * src/macfont.m (mac_font_get_weight)
3779         (mac_font_descriptor_get_adjusted_weight): New functions.
3780         (macfont_store_descriptor_attributes): Adjust weight.
3782 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
3784         * src/macfont.m: Fix compilation with USE_CT_GLYPH_INFO.
3786 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
3788         * lisp/arc-mode.el (archive-rar-summarize): Better alignment
3789         of the columns.
3791 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
3793         Use unar and lsar to handle RAR archives in arc-mode
3795         * lisp/arc-mode.el (archive-rar-extract, archive-extract-by-file): Rely
3796         on unar and lsar instead of unrar-free for RAR archives (bug#17663).
3798 2015-09-30  Wieland Hoffmann  <themineo@gmail.com>  (tiny change)
3800         Clarify :create in auth-source's docs
3802         * lisp/gnus/auth-source.el (auth-source-search):
3803         Clarify :create's meaning.
3805 2015-09-30  Phil Sainty  <psainty@orcon.net.nz>
3807         Avoid empty -path arguments in rgrep
3809         * lisp/progmodes/grep.el (rgrep-default-command): Remove nil from
3810         the list produced according to grep-find-ignored-directories,
3811         before passing it to Find/Grep invocation.  (Bug#21548)
3813 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
3815         Clarify documentation of pos-visible-in-window-p
3817         * src/window.c (Fpos_visible_in_window_p): Clarify the meaning of
3818         t for POS.  See
3819         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg01040.html
3820         for the original report.
3822         * doc/lispref/windows.texi (Window Start and End): Clarify the
3823         meaning of t for the POSITION argument of pos-visible-in-window-p.
3825 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
3827         * lisp/progmodes/prolog.el: Fix various indentation cases.
3828         (prolog-operator-chars): New const (add \\).
3829         (prolog-smie-forward-token, prolog-smie-backward-token): Use it.
3830         (prolog-smie-rules): Add rules according to bug#21526.
3832 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
3834         * lisp/progmodes/sh-script.el: Old "dumb" continued line indent.
3835         (sh-indent-after-continuation): Add new value `always' (bug#17620)
3836         (sh-smie-sh-rules): Remove old handling of continued lines.
3837         (sh-smie--indent-continuation): New function.
3838         (sh-set-shell): Use it.
3840 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
3842         * lisp/progmodes/octave.el: Use grammar more; Handle enumeration fun.
3843         Remove redundant :group keyword args.
3844         (octave-begin-keywords, octave-else-keywords, octave-end-keywords):
3845         Remove variables.
3846         (octave-operator-table, octave-smie-bnf-table): Use let-when-compile to
3847         turn them into compile-time variables.
3848         Auto-generate the "foo ... end" rules from the "foo ... endfoo" rules.
3849         Add rules for break, continue, return, global, and persistent.
3850         Refine the rule for "until".
3851         (octave-smie--funcall-p, octave-smie--end-index-p)
3852         (octave-smie--in-parens-p): New functions.
3853         (octave-smie-backward-token, octave-smie-forward-token): Use them to
3854         distinguish the "enumeration" function and the "end" index from
3855         their corresponding keywords.
3856         (octave--block-offset-keywords): New constant.
3857         (octave-smie-rules): Use it.  Adjust rules for new global/persistent
3858         parsing.
3859         (octave-reserved-words): Redefine using octave-smie-grammar.
3860         (octave-font-lock-keywords): Use octave-smie--funcall-p and
3861         octave-smie--end-index-p.
3863 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
3865         * lisp/emacs-lisp/lisp-mode.el (let-when-compile): Work like let*.
3867 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
3869         * nt/INSTALL: Remove references to GTK site.
3870         That site no longer offers Windows downloads.
3872 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
3874         * nt/INSTALL: Add instructions for installing Git.
3876 2015-09-29  Katsumi Yamaoka  <yamaoka@jpl.org>
3878         * lisp/net/shr.el (shr-colorize-region): Allow 88-color tty to
3879         use colors.  Suggested by Eli Zaretskii.
3881 2015-09-28  Katsumi Yamaoka  <yamaoka@jpl.org>
3883         * lisp/net/shr.el (shr-colorize-region): Don't do it on a system
3884         not supporting 256 above colors (bug#21557).
3886 2015-09-28  Dmitry Gutov  <dgutov@yandex.ru>
3888         Revert "Don't rely on defaults in decoding UTF-8 encoded Lisp files"
3890         This reverts commit db828f62f6f17414fbbc3206dac123dc73dd6055.
3892 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
3894         Add documentation for seq.el
3896         * doc/lispref/sequences.texi: Add documentation regarding extending
3897         seq.el, as well as missing documentation for seq-elt, seq-length, seq-p,
3898         seq-do and seq-map.
3900 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
3902         Better documentation for seq-some
3904         * doc/lispref/sequences.texi:
3905         * lisp/emacs-lisp/seq.el: Update the documentation of seq-some to
3906         guarantee that the returned value is the first non-nil value that
3907         resulted from applying the predicate.
3909 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
3911         * lisp/arc-mode.el: Sharp-quote function arguments.
3913 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
3915         Avoid redisplay error in ediff-regions-wordwise
3917         * lisp/vc/ediff-util.el
3918         (ediff-clone-buffer-for-region-comparison): Make sure the mark is
3919         set before activating it.  (Bug#21567)
3921 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
3923         Another attempt to fix crashes due to prematurely freed faces
3925         * src/xdisp.c (redisplay_internal): Inhibit freeing of realized
3926         faces for as long as we might have desired matrices that reference
3927         those faces.  (Bug#21428)
3929 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
3931         Add auctex development list email address
3933 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
3935         * admin/MAINTAINERS: Add entries for AUCTeX team and myself.
3937 2015-09-28  Arash Esbati  <esbati@gmx.de>  (tiny change)
3939         Improve wrapfig package support and caption parsing
3941         * lisp/textmodes/reftex-vars.el (reftex-label-alist-builtin):
3942         Correct description string and add wraptable environment.
3943         (reftex-default-context-regexps): Improve caption regexp.
3945 2015-09-28  Anders Lindgren  <andlind@gmail.com>
3947         Respect value of frame_resize_pixelwise when handling fullscreen state
3949         * src/nsterm.m (handleFS): Respect frame_resize_pixelwise when
3950         setting size increments.
3952 2015-09-27  Michael Albinus  <michael.albinus@gmx.de>
3954         * src/gfilenotify.c (Fgfile_add_watch): Cleanup temporary variable.
3956 2015-09-27  Simen Heggestøyl  <simenheg@gmail.com>
3958         Add prettify-symbols-alist for js-mode
3960         * lisp/progmodes/js.el (js--prettify-symbols-alist): New defconst.
3961         (js-mode): Use it.
3963 2015-09-27  Eli Zaretskii  <eliz@gnu.org>
3965         * nt/subdirs.el: File deleted (no longer used).
3967 2015-09-26  Alan Mackenzie  <acm@muc.de>
3969         Fix follow-scroll-up/down, making them replacements for scroll-up/down
3971         1. Allow point to move between follow windows in scroll operations.
3972         2. Fix bug where `right-char' just before EOB caused spurious scrolling,
3973         when EOB was isolated in the last follow window.
3975         * lisp/follow.el (follow-fixed-window): New variable.
3976         (follow-get-scrolled-point): New function.
3977         (follow-scrol-up, follow-scroll-down): Add autoload cookies.
3978         Reformulate the code.  Put `scroll-command' properties on the functions.
3979         Correct minor errors in ...-down's doc string and code.
3980         (follow-calc-win-end): Amend incomplete doc string.  Use
3981         `pos-visible-in-window-p' to check whether EOB is in the window.
3982         (follow-estimate-first-window-start): Correct an off-by-1 error.
3983         (follow-adjust-window): Add handling for explicit scrolling operations.
3985 2015-09-26  Paul Eggert  <eggert@cs.ucla.edu>
3987         * admin/MAINTAINERS: Add self, plus list some more files
3988         sans maintaners.
3990 2015-09-26  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
3992         New DWIM commands for changing letter-case
3994         * lisp/simple.el (upcase-dwim, downcase-dwim, capitalize-dwim):
3995         New functions.  (Bug#21501)
3997 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
3999         * etc/PROBLEMS: Document problems with pasting on MS-Windows.
4001 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
4003         Make face realization be more frame-specific
4005         * src/frame.h (struct f): New flag face_change.
4006         * src/xfaces.c (Finternal_make_lisp_face)
4007         (Finternal_copy_lisp_face, Finternal_set_lisp_face_attribute)
4008         (update_face_from_frame_parameter): Set the face_change flag only
4009         for the frame whose faces are affected.
4010         * src/xdisp.c (init_iterator): If a frame's face_change flag is
4011         set, free faces only on that frame.
4012         (redisplay_internal): Disable "display optimization 1" if the
4013         frame's face_change flag is set.
4014         (redisplay_window): Don't allow skipping a window's redisplay if
4015         its frame's face_change flag is set.
4016         * src/frame.c (x_set_screen_gamma): Instead of calling
4017         Fclear_face_cache, call clear_face_cache and set
4018         windows_or_buffers_changed to a non-zero value.  This avoids
4019         setting the global face_change flag that triggers face realization
4020         on all frames and thorough redisplay of all of them.
4022         * lisp/term/tty-colors.el (tty-register-default-colors): Don't
4023         clear face cache if the selected frame is a GUI frame.
4025 2015-09-26  Tassilo Horn  <tsdh@gnu.org>
4027         Remove font-latex specific check
4029         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
4030         Use syntax-ppss data to identify verbatim contents.
4032 2015-09-25  Tassilo Horn  <tsdh@gnu.org>
4034         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
4035         Fix some false negatives.
4037 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
4039         Reorder Windows version in Emacs manifests
4041         * nt/emacs-x64.manifest:
4042         * nt/emacs-x86.manifest: Reorder Windows version from lowest to
4043         highest.
4045 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
4047         Update Emacs manifest files for Windows 10
4049         * nt/emacs-x86.manifest:
4050         * nt/emacs-x64.manifest: Declare compatibility with Windows 10.
4052 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
4054         Avoid non-ASCII decoding errors in C src files
4056         * src/nsterm.m:
4057         * src/lisp.h:
4058         * src/editfns.c:
4059         * src/doprnt.c: Add 'coding' cookies -- these files include
4060         Unicode characters and should be decoded as UTF-8.
4062 2015-09-25  Alan Mackenzie  <acm@muc.de>
4064         Resurrect edebug-set-initial-mode, repurposing it to set the global mode
4066         * lisp/emacs-lisp/edebug.el (edebug-initial-mode-alist): Uncomment, and
4067         amend to match current modes and functions.
4068         (edebug-set-initial-mode): Uncomment and change from setting a defun's
4069         `edebug-initial-mode''s property to setting the variable
4070         `edebug-initial-mode'.
4071         (top level): Create new binding C-x C-a C-m for
4072         `edebug-set-initial-mode'.
4074         * doc/lispref/edebug.texi (Edebug Execution Modes): Document
4075         `edebug-set-initial-mode' and its new key binding.
4076         (Edebug Options): Mention the new command in the pertinent place.
4078         * etc/NEWS: Write entry for this change.
4080 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
4082         Avoid non-ASCII decoding errors in Texinfo files
4084         * doc/misc/tramp.texi:
4085         * doc/lispref/strings.texi:
4086         * doc/lispref/positions.texi:
4087         * doc/lispref/help.texi:
4088         * doc/lispref/functions.texi:
4089         * doc/lispintro/emacs-lisp-intro.texi:
4090         * doc/emacs/text.texi:
4091         * doc/emacs/modes.texi:
4092         * doc/emacs/mini.texi:
4093         * doc/emacs/display.texi:
4094         * doc/emacs/custom.texi:
4095         * doc/emacs/basic.texi: Add 'coding' cookies -- these files use
4096         Unicode characters and should be decoded as UTF-8.
4097         * doc/lispref/frames.texi (Size Parameters): Don't use a non-ASCII
4098         apostrophe unnecessarily.
4100 2015-09-25  Paul Eggert  <eggert@cs.ucla.edu>
4102         Merge from gnulib
4104         This incorporates:
4105         2015-09-25 c-ctype: rewrite to use inline functions
4106         2015-09-24 maint: add coding cookies to non-ASCII sources
4107         2015-09-24 gitlog-to-changelog: trim only trailing whitespaces
4108         * build-aux/gitlog-to-changelog, doc/misc/texinfo.tex:
4109         * lib/acl-internal.c, lib/acl-internal.h, lib/c-ctype.c:
4110         * lib/c-ctype.h, lib/get-permissions.c, lib/qcopy-acl.c:
4111         * lib/set-permissions.c:
4112         Copy from gnulib.
4114 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
4116         Update publicsuffix.txt from upstream
4118         * etc/publicsuffix.txt: Update from
4119         https://publicsuffix.org/list/effective_tld_names.dat
4120         dated 2015-09-24 17:29:21 UTC.
4122 2015-09-24  Eli Zaretskii  <eliz@gnu.org>
4124         Prevent timers from messing up TTY menus
4126         * src/term.c (tty_menu_activate): Inhibit redisplay for as long as
4127         the TTY menu is open.  (Bug#21530)
4129 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
4131         No need to mention K&R C in c-mode intro
4133 2015-09-24  Stefan Monnier  <monnier@iro.umontreal.ca>
4135         Fix recent bootstrap problems
4137         * src/syntax.c (parse_sexp_propertize): Fix last fix.
4138         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): Fix paren typo.
4139         * lisp/emacs-lisp/lisp-mode.el: Require cl-lib for cl-progv.
4141 2015-09-24  Michael Albinus  <michael.albinus@gmx.de>
4143         * src/gfilenotify.c (Fgfile_add_watch): Decrease polling rate.
4145 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
4147         Properly quote nested xml comments (Bug#6267) (Bug#20001)
4149         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): New function.
4150         (nxml-mode): Set comment-quote-nested-function.
4152 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
4154         Allow major-modes full control over quoting nested comments
4156         * lisp/newcomment.el (comment-quote-nested-function): New variable.
4157         (comment-quote-nested-default): New function.
4158         (comment-quote-nested): Use `comment-quote-nested-function'.
4160 2015-09-23  Paul Eggert  <eggert@cs.ucla.edu>
4162         Prefer CALLN in a few more places
4164         * src/macfont.m (macfont_set_family_cache):
4165         * src/nsterm.m (append2):
4166         * src/xterm.c (x_cr_export_frames):
4167         Prefer CALLN to allocating the arg arrays by hand.
4169 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
4171         Adapt file-notify-test02-events test case
4173         * test/automated/file-notify-tests.el (file-notify-test02-events):
4174         Create a new watch for every test.
4176 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
4178         Continue gfilenotify.c implementation of missing parts
4180         * lisp/filenotify.el (file-notify-add-watch): Append `flags' to
4181         `gfile-add-watch' call.
4182         (file-notify-rm-watch): Modify `file-notify-descriptors' only
4183         after calling the low level functions.
4185         * src/gfilenotify.c (dir_monitor_callback): Check, whether
4186         event_type is expected.
4187         (Fgfile_add_watch): Allow also `change'and `attribute-change' for FLAGS.
4188         (Fgfile_rm_watch): Fix typo.
4189         (syms_of_gfilenotify): Declare Qchange and Qattribute_change.
4191 2015-09-23  Stefan Monnier  <monnier@iro.umontreal.ca>
4193         * src/syntax.c (parse_sexp_propertize): Handle spurious
4194         e_property_truncated flag.
4195         (update_syntax_table_forward): Remove invalid assertion.
4197 2015-09-23  Eli Zaretskii  <eliz@gnu.org>
4199         * src/xdisp.c (produce_stretch_glyph): Support ':relative-width'
4200         space display spec on text-mode terminals, by calling
4201         PRODUCE_GLYPHS instead of x_produce_glyphs.  Remove the
4202         HAVE_WINDOW_SYSTEM guards from the supporting code, as well as the
4203         test for a GUI frame.
4205 2015-09-23  Oleh Krehel  <ohwoeowho@gmail.com>
4207         Move let-when-compile to lisp-mode.el
4209         This fixes the bootstrapping problem of `let-when-compile' using
4210         `cl-progv' while being in subr.el (i.e. before cl stuff was loaded).
4212 2015-09-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
4214         * lisp/url/url-http.el (url-http-parse-headers): Do not
4215         automatically include Authorization header in redirect.
4216         (Bug#21350)
4218 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
4220         Clarify documentation of ':relative-width'
4222         * doc/lispref/display.texi (Specified Space): Document that
4223         ':relative-width' is only supported on GUI frames.
4225 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
4227         Fix 'current-column' in presence of :relative-width
4229         * src/indent.c (check_display_width): Support ':relative-width'
4230         in a display spec that specifies a stretch glyph.  (Bug#21533)
4232 2015-09-22  Ken Manheimer  <ken.manheimer@gmail.com>
4234         Reformat the pdbtrack remote-file fix ChangeLog.2 entry
4236         ... to conform better to CONTRIBUTE guidelines.
4238 2015-09-22  Stefan Monnier  <monnier@iro.umontreal.ca>
4240         * lisp/progmodes/prolog.el: Fix indentation of empty line
4242         * lisp/emacs-lisp/smie.el (smie-rules-function): Document new
4243         `empty-line-token' element.
4244         (smie-indent-empty-line): New function.
4245         (smie-indent-functions): Add it.
4247         * lisp/progmodes/prolog.el (prolog-smie-rules): Fix :list-intro
4248         behavior and use the new `empty-line-token' element (bug#21526).
4249         (prolog-mode-variables): Fix comment-start-skip setting to match
4250         comment-start.
4252         * test/indent/prolog.prolog: Add nested indentation tests.
4254         * lisp/newcomment.el (comment-normalize-vars): Fix default value of
4255         comment-start-skip not to misuse submatch 1.
4257 2015-09-22  Alan Mackenzie  <acm@muc.de>
4259         Make description of `edebug-initial-mode' user friendly
4261         Fixes bug#21365.
4263         * dec/lispref/edebug.texi (Edebug Execution Modes): Change the
4264         description of `edebug-initial-mode' from that of its implementation
4265         to that of its visual effect and use.  Move the paragraph higher up.
4267 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
4269         lisp/progmodes/gud.el (gud-format-command): Fix last commit
4271         * lisp/progmodes/gud.el (gud-format-command): Don't use Tramp internal
4272         functions 'tramp-file-name-localname' and 'tramp-dissect-file-name'.
4274 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
4276         Improve last commit to process.c
4278 2015-09-22  Michael Albinus  <michael.albinus@gmx.de>
4280         Implement gfile-valid-p
4282         * lisp/filenotify.el (file-notify-callback): Fix typo.
4283         (gfile-valid-p): Remove defalias.
4285         * src/gfilenotify.c (dir_monitor_callback): Cancel the monitor if
4286         the file or directory to be watched is deleted.
4287         (Fgfile_add_watch): Make watch_object a triple.
4288         (Fgfile_rm_watch): Check, whether watch is cancelled already.
4289         (Fgfile_valid_p): New defun.
4290         (syms_of_gfilenotify): Declare Sgfile_valid_p.
4292 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
4294         Remove callback-handled channels from Available set
4296         * src/process.c (wait_reading_process_output): Remove channel from
4297         Available set if it is handled by a callback, e.g., dbus or
4298         inotify (bug#21313).
4300 2015-09-21  Mark Oteiza  <mvoteiza@udel.edu>
4302         Use lunate epsilon for TeX \epsilon
4304         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
4305         Add \varepsilon using GREEK SMALL LETTER EPSILON, and change
4306         \epsilon to use GREEK LUNATE EPSILON SYMBOL
4308 2015-09-21  Stefan Monnier  <monnier@iro.umontreal.ca>
4310         * lisp/progmodes/prolog.el: Fix nested electric if-then-else
4312         * lisp/progmodes/prolog.el (prolog-find-unmatched-paren): Use innermost
4313         rather than outermost paren (bug#21526).
4315 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
4317         Improve git diff hunk headers for .el, .texi
4319         Problem reported by Alan Mackenzie in:
4320         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00826.html
4321         * .gitattributes (*.el, *.texi): New patterns.
4322         * autogen.sh: Configure diff.elisp.xfuncname and
4323         diff.texinfo.xfuncname if using Git.
4325 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
4327         Don't rely on defaults in decoding UTF-8 encoded Lisp files
4329         * lisp/replace.el:
4330         * lisp/textmodes/rst.el:
4331         * lisp/whitespace.el: Add an explicit UTF-8 encoding tag.
4333 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
4335         Clarify or replace a few \u escapes
4337         * doc/lispref/nonascii.texi (Character Properties)
4338         More-detailed commentary for \u escapes.
4339         * lisp/progmodes/python.el (python--prettify-symbols-alist):
4340         * lisp/replace.el (query-replace-from-to-separator):
4341         * lisp/textmodes/rst.el (rst-bullets, rst-re-alist-def)
4342         (rst-mode-syntax-table):
4343         * lisp/whitespace.el (whitespace-display-mappings):
4344         Prefer actual character to \u escape when this makes the code
4345         easier to follow in the usual case where Unicode chars can be
4346         displayed.
4348 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
4350         Pacify GCC -Wmaybe-uninitialized in xdisp.c
4352         * src/xdisp.c (face_before_or_after_it_pos): Use do-while rather
4353         than while loop to avoid GCC -Wmaybe-uninitialized diagnostic with
4354         charpos.  The loop should always execute at least once anyway.
4356 2015-09-21  Tassilo Horn  <tsdh@gnu.org>
4358         Signal error on invalid regexp
4360         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
4361         Signal an error when the user tries searching with a regexp
4362         matching the empty string.
4364 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
4366         Another fix of file-notify-tests for w32notify
4368         * test/automated/file-notify-tests.el (file-notify-test02-events):
4369         Further adaptation for w32notify: reduce the number of expected
4370         'changed' events.  (Bug#21435)
4372 2015-09-21  Michael Albinus  <michael.albinus@gmx.de>
4374         Adapt tests and manual for w32notify
4376         * doc/lispref/os.texi (File Notifications): w32notify does not
4377         send `attribute-changed' events.
4379         * test/automated/file-notify-tests.el (file-notify--test-with-events):
4380         Simplify parameters.  Adapt all callees.
4381         (file-notify-test02-events): w32notify does not send
4382         `attribute-changed' events.
4383         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
4384         Do not skip in case of w32notify.  Simply ignore this part of the test.
4386 2015-09-21  Dima Kogan  <dima@secretsauce.net>
4388         Fix setting breakpoints when remote-debugging
4390         * lisp/progmodes/gud.el (gud-format-command): Send localized file
4391         names to the debugger running on the remote.  (Bug#13304)
4393 2015-09-21  Nicolas Petton  <nicolas@petton.fr>
4395         Better docstring and parameter name for seq-find
4397         * lisp/emacs-lisp/seq.el (seq-find): Improve the docstring and rename
4398         the parameter `sentinel' to `default'.
4400         * doc/lispref/sequences.texi (Sequence Functions): Update the
4401           documentation for `seq-find' accordingly.
4403 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
4405         Avoid infinite recursion while displaying box face
4407         * src/xdisp.c (face_before_or_after_it_pos): Fix calculation of
4408         the previous string/buffer character position under bidi
4409         iteration.  (Bug#21428)
4411 2015-09-21  Anders Lindgren  <andlind@gmail.com>
4413         Keep upper edge unchanged when changing size of NS frame
4415         * src/nsterm.m (x_set_window_size): Keep upper frame edge unchanged
4416         (Bug#21415).
4418 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
4420         * lisp/progmodes/prolog.el: Improve handling of if/then/else.
4421         (prolog-smie-rules): Accommodate standard if/then/else special
4422         indentation.
4423         (prolog-mode): Add . to electric-indent-chars.
4424         (prolog-electric--if-then-else): Re-indent the line before adding space
4425         after the new char (bug#21526).
4427 2015-09-20  Mark Oteiza  <mvoteiza@udel.edu>
4429         Add prettify symbols to python-mode
4431         * lisp/progmodes/python.el (python-prettify-symbols-alist):
4432         New variable.
4433         (python-mode): Use it
4435 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
4437         * lisp/emacs-lisp/syntax.el (syntax-begin-function): Make obsolete.
4439 2015-09-20  Jostein Kjønigsen  <jostein@secure.kjonigsen.net>  (tiny change)
4441         (compilation-error-regexp-alist-alist): Tone down guile-file
4443         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
4444         Make guile-file a bit less enthusiastic (bug#21496).
4446 2015-09-20  Drew Csillag  <drew@thecsillags.com>
4448         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords):
4449         Fix m4_* highlighting.
4451         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords): Fix recognition
4452         of commands when they have a "m4_" prefix.
4454 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
4456         '.' -> `.' in doc string
4458         * lisp/emacs-lisp/timer.el (run-at-time): In doc string, quote
4459         individual chars with grave quotes instead of straight quotes, as
4460         this works better when they are translated to curved quotes.
4462 2015-09-20  Michael Albinus  <michael.albinus@gmx.de>
4464         Improve file notifications, especially for Tramp
4466         * doc/lispref/files.texi (Magic File Names):
4467         Mention `file-notify-valid-p'.
4469         * doc/lispref/os.texi (File Notifications):
4470         Describe `file-notify-valid-p'.
4472         * etc/NEWS: Add `file-notify-valid-p'.
4474         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch):
4475         Improve implementation.
4476         (tramp-gvfs-monitor-file-process-filter): Rename from
4477         `tramp-gvfs-file-gvfs-monitor-file-process-filter'.  Delete
4478         process if appropriate.
4480         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
4481         Improve implementation.
4482         (tramp-sh-gvfs-monitor-dir-process-filter): Rename from
4483         `tramp-sh-file-gvfs-monitor-dir-process-filter'.  Delete process
4484         if appropriate.
4485         (tramp-sh-inotifywait-process-filter): Rename from
4486         `tramp-sh-file-inotifywait-process-filter'.  Delete process if
4487         appropriate.
4489         * lisp/net/tramp.el (tramp-handle-file-notify-rm-watch):
4490         Use `delete-process'.
4491         (tramp-handle-file-notify-valid-p): Check also, that file or
4492         directory to be watched still exists.
4494         * test/automated/file-notify-tests.el (file-notify--test-timeout):
4495         New defun.  Use it at all places a timeout is needed.
4496         (file-notify--test-cleanup): Delete directories recursively.
4497         Cleanup also Tramp connections.
4498         (file-notify-test02-events): Add tests for `attribute-change'.
4499         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
4500         Add tests for `file-notify-rm-watch'.
4502 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
4504         Use %s to format strings instead of splicing them
4506         If FOO might contain quotes that are part of a file or variable
4507         name, the quotes should not be translated when showing FOO’s name
4508         in a diagnostic.  So, for example, (message (concat (FOO ": bar")))
4509         is not quite right, as it would translate FOO’s quotes.
4510         Change it to (message "%s: bar" FOO) instead.
4511         * lisp/allout.el (allout-process-exposed):
4512         * lisp/calc/calc-ext.el (calc-do-prefix-help):
4513         * lisp/calc/calc-store.el (calc-store-into):
4514         * lisp/calendar/todo-mode.el (todo-category-completions):
4515         * lisp/cedet/semantic/complete.el (semantic-completion-message):
4516         * lisp/org/ob-latex.el (convert-pdf):
4517         * lisp/org/org-crypt.el (org-crypt-check-auto-save):
4518         * lisp/org/ox-latex.el (org-latex-compile):
4519         * lisp/org/ox-man.el (org-man-compile):
4520         * lisp/org/ox-odt.el (org-odt--export-wrap):
4521         * lisp/org/ox-texinfo.el (org-texinfo-compile):
4522         * lisp/progmodes/ruby-mode.el (ruby-in-ppss-context-p):
4523         * lisp/progmodes/verilog-mode.el (verilog-batch-execute-func)
4524         (verilog-signals-combine-bus, verilog-read-defines)
4525         (verilog-getopt-file, verilog-expand-dirnames)
4526         (verilog-modi-lookup, verilog-modi-modport-lookup-one):
4527         * lisp/term/ns-win.el (ns-spi-service-call):
4528         Use %s to avoid translating quotes of file names etc. in diagnostics.
4530 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
4532         * lisp/progmodes/js.el (js--syntax-begin-function): Remove.
4533         (js-mode): Don't set syntax-begin-function.
4535 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
4537         * lisp/font-lock.el (font-lock-compile-keywords): Don't assume
4538         syntax-begin-function is a symbol.
4540 2015-09-20  Eli Zaretskii  <eliz@gnu.org>
4542         Improve documentation of 'run-at-time'
4543         * lisp/emacs-lisp/timer.el (run-at-time): Improve the doc string.
4544         In particular, don't refer to 'diary-entry-time', because it is
4545         unavailable until diary-lib is loaded.  Also, refer to
4546         'timer-duration-words', not 'timer-duration', as the latter's doc
4547         string says nothing about the accepted strings.
4549 2015-09-19  Jay Belanger  <jay.p.belanger@gmail.com>
4551         * lisp/calc/calc-ext.el (calc-do-prefix-help): Tidy up error message.
4553 2015-09-19  Ken Manheimer  <ken.manheimer@gmail.com>
4555         Repair pdbtrack remote file tracking
4556         * lisp/progmodes/python.el (python-pdbtrack-set-tracked-buffer):
4557         Rectify pdbtrack so it follows transitions from one remote source
4558         file to the next.
4560 2015-09-19  Artur Malabarba  <bruce.connor.am@gmail.com>
4562         * lisp/emacs-lisp/timer.el (run-at-time): Docstring formatting.
4564 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
4566         Adapt vc-src to the old-new vc-checkin API
4567         * lisp/vc/vc-src.el (vc-src-checkin): Accept and ignore an
4568         additional optional parameter.
4570 2015-09-19  Simen Heggestøyl  <simenheg@gmail.com>
4572         Add overflow module to CSS property list
4573         * lisp/textmodes/css-mode.el (css-property-ids): Add properties
4574         from CSS Overflow Module Level 3.
4576 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
4578         Fix documentation of "C-u C-x v v"
4579         * doc/emacs/maintaining.texi (Advanced C-x v v): Make the
4580         documentation of "C-u C-x v v" match what the code does.
4582         Resurrect the ability to specify a revision in vc-next-action
4583         * lisp/vc/vc-bzr.el (vc-bzr-checkin):
4584         * lisp/vc/vc-dav.el (vc-dav-checkin):
4585         * lisp/vc/vc-git.el (vc-git-checkin):
4586         * lisp/vc/vc-hg.el (vc-hg-checkin):
4587         * lisp/vc/vc-mtn.el (vc-mtn-checkin): Accept and silently ignore
4588         an additional optional argument, the revision to checkin.
4589         * lisp/vc/vc-sccs.el (vc-sccs-checkin):
4590         * lisp/vc/vc-cvs.el (vc-cvs-checkin):
4591         * lisp/vc/vc-rcs.el (vc-rcs-checkin): Allow to optionally specify
4592         a revision to checkin.
4593         * lisp/vc/vc.el (vc-next-action): Allow to optionally specify the
4594         revision when checking in files.
4595         See http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00688.html
4596         for the details.
4598 2015-09-18  Wilson Snyder  <wsnyder@wsnyder.org>
4600         * lisp/progmodes/verilog-mode.el (verilog-forward-sexp-function)
4601         (verilog-decls-princ, verilog-modport-princ)
4602         (verilog-modi-modport-lookup-one): Fix checkdoc warnings.
4604 2015-09-17  Jay Belanger  <jay.p.belanger@gmail.com>
4606         Fix the routine for help on Calc's prefixes
4607         * lisp/calc/calc-ext.el (calc-prefix-help-retry): New variable.
4608         (calc-do-prefix-help): Use `read-char' to determine the next Calc
4609         command.
4611 2015-09-17  Stefan Monnier  <monnier@iro.umontreal.ca>
4613         * lisp/font-lock.el (font-lock-beginning-of-syntax-function): Remove.
4614         (font-lock-fontify-block): Don't let-bind it.
4615         (font-lock-compile-keywords): Don't use it.
4616         (font-lock-set-defaults): Don't set it.  Allow the variable alist to
4617         start one slot earlier, instead.
4618         * lisp/emacs-lisp/syntax.el (font-lock-beginning-of-syntax-function):
4619         Don't declare.
4620         (syntax-ppss): Don't use it either.
4621         * lisp/font-core.el (font-lock-defaults): Remove SYNTAX-BEGIN
4622         from docstring.
4623         * doc/emacs/display.texi (Font Lock): Don't mention
4624         font-lock-beginning-of-syntax-function.
4625         * doc/lispref/modes.texi (Font Lock Basics): Update description of
4626         font-lock-defaults.
4627         (Syntactic Font Lock): Remove font-lock-beginning-of-syntax-function.
4628         * lisp/loadhist.el (unload-feature-special-hooks):
4629         Remove font-lock-beginning-of-syntax-function.
4630         * lisp/obsolete/lazy-lock.el (lazy-lock-fontify-region):
4631         * lisp/emacs-lisp/lisp.el (beginning-of-defun-raw): Don't let-bind
4632         font-lock-beginning-of-syntax-function.
4634 2015-09-17  Paul Eggert  <eggert@cs.ucla.edu>
4636         Backslash cleanup in Elisp source files
4637         This patch should not change behavior.  It typically omits backslashes
4638         where they are redundant (e.g., in the string literal "^\$").
4639         In a few places, insert backslashes where they make regular
4640         expressions clearer: e.g., replace "^\*" (equivalent to "^*") with
4641         "^\\*", which has the same effect as a regular expression.
4642         Also, use ‘\ %’ instead of ‘\%’ when avoiding confusion with SCCS IDs,
4643         and similarly use ‘\ $’ instead of ‘\$’ when avoiding confusion with
4644         RCS IDs, as that makes it clearer that the backslash is intended.
4646         Some more minor backslash fixes
4647         * test/automated/compile-tests.el (compile-tests--test-regexps-data):
4648         * test/automated/info-xref.el (info-xref-test-write-file):
4649         Double backslashes in strings.
4651         Fix several backslash typos in Elisp strings
4652         * lisp/calendar/todo-mode.el (todo-files, todo-rename-file)
4653         (todo-find-filtered-items-file, todo-reset-nondiary-marker)
4654         (todo-reset-done-string, todo-reset-comment-string)
4655         (todo-reset-highlight-item):
4656         * lisp/erc/erc-networks.el (erc-networks-alist):
4657         * lisp/gnus/gnus-art.el (gnus-button-handle-library):
4658         * lisp/gnus/gnus-group.el (gnus-read-ephemeral-gmane-group-url):
4659         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
4660         (nntp-telnet-shell-prompt):
4661         * lisp/gnus/spam-report.el (spam-report-gmane-regex):
4662         * lisp/image-dired.el (image-dired-rotate-original):
4663         (image-dired-get-exif-file-name):
4664         * lisp/international/latin1-disp.el (latin1-display-ucs-per-lynx):
4665         * lisp/mail/undigest.el (rmail-digest-parse-rfc1153strict):
4666         * lisp/mh-e/mh-letter.el (mh-file-is-vcard-p):
4667         * lisp/mh-e/mh-mime.el (mh-file-mime-type-substitutions):
4668         * lisp/net/shr-color.el (shr-color->hexadecimal):
4669         * lisp/org/org-bibtex.el (org-bibtex-fields):
4670         * lisp/org/org-docview.el (org-docview-export):
4671         * lisp/org/org-entities.el (org-entities):
4672         * lisp/org/ox-icalendar.el (org-icalendar-cleanup-string):
4673         * lisp/progmodes/cperl-mode.el (cperl-indent-exp):
4674         * lisp/progmodes/ebnf2ps.el (ebnf-file-suffix-regexp)
4675         (ebnf-style-database):
4676         * lisp/progmodes/idlw-help.el (idlwave-do-context-help1):
4677         * lisp/progmodes/ruby-mode.el (ruby-imenu-create-index-in-block):
4678         * lisp/progmodes/sql.el (sql-product-alist):
4679         * lisp/progmodes/verilog-mode.el (verilog-error-regexp-emacs-alist)
4680         (verilog-error-font-lock-keywords)
4681         (verilog-assignment-operator-re):
4682         * lisp/progmodes/vhdl-mode.el (vhdl-compiler-alist):
4683         * lisp/textmodes/reftex-parse.el (reftex-parse-from-file):
4684         * lisp/vc/add-log.el (change-log-version-number-regexp-list):
4685         Fix typo by replacing ‘\’ with ‘\\’ in a string literal.
4686         For example, to get the regular expression ‘\.’ use the string
4687         literal "\\.", not "\." (which is equivalent to ".").
4688         * lisp/emulation/viper-util.el (viper-glob-unix-files):
4689         Remove stray ‘\j’ from string.
4690         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
4691         (nntp-telnet-shell-prompt):
4692         Treat > like $ when matching a shell prompt.
4693         * lisp/progmodes/make-mode.el (makefile-browse):
4694         Properly quote a diagnostic.
4696         Fix minor quoting problems in diagnostics
4697         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
4698         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
4699         Follow text-quoting-style in diagnostic, and quote a file name.
4701 2015-09-17  Eli Zaretskii  <eliz@gnu.org>
4703         * doc/lispref/frames.texi (Cursor Parameters):
4704         Document 'x-stretch-cursor'.
4706 2015-09-16  Paul Eggert  <eggert@cs.ucla.edu>
4708         Omit unnecessary \ before paren in C docstrings
4709         Although \( is needed in docstrings in Elisp code, it is not needed in
4710         docstrings in C code, since C function definitiions do not start with
4711         a parenthesis.  The backslashes made the docstrings a bit harder to
4712         read and to format in columns.  Also, some C docstrings had ( in
4713         column 1 and this did not appear to be causing any problems.  So,
4714         simplify C docstrings by replacing \( with ( and \) with ).
4716         A few more minor quoting fixes in a script and a text file
4718         Minor quoting fixes in scripts and doc
4719         Prefer straight quotes in random script files, as they are not
4720         converted.  Prefer grave quotes in a couple of places in the manual
4721         that were missed earlier, as these quotes are converted.
4723         Minor backslash fixes in manuals and scripts
4724         * Makefile.in (install-arch-indep):
4725         * admin/charsets/compact.awk:
4726         * admin/charsets/gb180302.awk (gb_to_index):
4727         * admin/charsets/gb180304.awk (gb_to_index):
4728         Avoid undefined behavior in Awk regular expression backslashes.
4729         * doc/misc/efaq.texi (Matching parentheses):
4730         Omit unnecessary backslashes.
4731         * doc/misc/gnus-faq.texi (FAQ 5-8):
4732         Avoid undefined behavior in suggested sed backslash usage.
4734         Add -Wswitch to --enable-gcc-warnings
4735         Make --enable-gcc-warnings a bit pickier, by also using -Wswitch.
4736         * configure.ac (WERROR_CFLAGS): Don’t add -Wno-switch.
4737         * lib-src/etags.c (main, consider_token, C_entries):
4738         * src/coding.c (encode_invocation_designation):
4739         * src/data.c (Ftype_of):
4740         * src/eval.c (Fdefvaralias, default_toplevel_binding)
4741         (Fbacktrace__locals, mark_specpdl):
4742         * src/lisp.h (record_xmalloc):
4743         * src/syntax.c (scan_lists, scan_sexps_forward):
4744         * src/window.c (window_relative_x_coord):
4745         * src/xdisp.c (push_it, pop_it):
4746         * src/xterm.c (xg_scroll_callback, x_check_fullscreen):
4747         Error out or do nothing (as appropriate) if a switch statement
4748         with an enum value does not cover all of the enum.
4749         * src/dispextern.h (struct iterator_stack_entry.u.comp):
4750         Remove unused member discovered by using -Wswitch.
4751         * src/lisp.h (record_xmalloc): Add a ‘+ 0’ to pacify -Wswitch.
4752         * src/vm-limit.c (check_memory_limits):
4753         Simplify warning-diagnostic computation by using a table.
4755         etags ‘fatal’ function is now printf-like
4756         * lib-src/etags.c (fatal): Now printf-like.  All callers changed.
4757         Also, now static; not clear why it needed to be extern.
4758         (verror): New function, with most of the old contents of ‘error’.
4759         (fatal, error): Use it.
4761 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
4763         More adaptations in file-notify-tests.el
4764         * test/automated/file-notify-tests.el
4765         (file-notify-test05-dir-validity): Skip for w32notify in
4766         batch-mode.  (Bug#21432)
4768 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
4770         Adapt test in file-notify-tests.el
4771         * test/automated/file-notify-tests.el
4772         (file-notify-test04-file-validity): Skip for w32notify in
4773         batch-mode.  Add test lost last commit.
4775 2015-09-16  Dima Kogan  <dima@secretsauce.net>
4777         winner no longer holds on to dead frames
4778         * lisp/winner.el (winner-change-fun): Cull dead frames.
4779         This prevents a potentially massive memory leak.  See:
4780         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00619.html
4782 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
4784         Use common report_file_notify_error function
4785         * src/fileio.c (report_file_notify_error): New function.
4786         * src/inotify.c (report_inotify_error): Remove function.
4787         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
4788         (Finotify_rm_watch): Use report_file_notify_error.
4789         * src/lisp.h (report_file_notify_error): Declare external function.
4790         * src/w32notify.c (report_w32notify_error): Remove function.
4791         (Fw32notify_add_watch, Fw32notify_rm_watch):
4792         Use report_file_notify_error.
4794 2015-09-16  Jay Belanger  <jay.p.belanger@gmail.com>
4796         Fix documentation.
4797         * doc/misc/calc.texi (Single-Variable Statistics): Fix the wording of
4798         the documentation of the root mean square.
4800 2015-09-16  Martin Rudalics  <rudalics@gmx.at>
4802         Remove tool_bar_redisplayed_once and associated code.
4803         * src/frame.h (tool_bar_redisplayed_once): Remove slot.
4804         * src/frame.c (make_frame, x_set_font): Remove initialization of
4805         f->tool_bar_redisplayed_once.
4806         * src/w32fns.c (x_change_tool_bar_height):
4807         * src/xfns.c (x_change_tool_bar_height): Don't check for
4808         f->tool_bar_redisplayed_once.
4809         * src/xdisp.c (redisplay_internal): Remove handling of
4810         f->tool_bar_redisplayed_once.
4812 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
4814         Restore some of the quoting in the manuals
4815         * doc/lispref/windows.texi (Coordinates and Windows)
4816         (Coordinates and Windows):
4817         * doc/lispref/variables.texi (Lexical Binding)
4818         (File Local Variables):
4819         * doc/lispref/text.texi (Format Properties):
4820         * doc/lispref/symbols.texi (Symbol Components):
4821         * doc/lispref/strings.texi (Creating Strings):
4822         * doc/lispref/sequences.texi (Sequence Functions):
4823         * doc/lispref/searching.texi (Regexp Special, Regexp Search)
4824         (Search and Replace):
4825         * doc/lispref/processes.texi (Bindat Spec):
4826         * doc/lispref/os.texi (Idle Timers):
4827         * doc/lispref/objects.texi (Basic Char Syntax):
4828         * doc/lispref/numbers.texi (Float Basics, Random Numbers):
4829         * doc/lispref/nonascii.texi (Character Properties):
4830         * doc/lispref/modes.texi (Major Mode Conventions, Mode Hooks)
4831         (Mode Line Variables):
4832         * doc/lispref/minibuf.texi (Text from Minibuffer):
4833         * doc/lispref/loading.texi (Autoload):
4834         * doc/lispref/keymaps.texi (Controlling Active Maps):
4835         * doc/lispref/frames.texi (Frame Layout, Size and Position)
4836         (Size Parameters, Implied Frame Resizing):
4837         * doc/lispref/files.texi (Changing Files, Magic File Names):
4838         * doc/lispref/eval.texi (Self-Evaluating Forms):
4839         * doc/lispref/display.texi (Progress, Abstract Display)
4840         (Abstract Display Example, Bidirectional Display):
4841         * doc/lispref/commands.texi (Event Mod):
4842         * doc/emacs/windows.texi (Displaying Buffers):
4843         * doc/emacs/trouble.texi (Bug Criteria, Checklist):
4844         * doc/emacs/text.texi (Enriched Text):
4845         * doc/emacs/programs.texi (MixedCase Words):
4846         * doc/emacs/picture-xtra.texi (Insert in Picture)
4847         (Tabs in Picture):
4848         * doc/emacs/misc.texi (Emacs Server, Printing):
4849         * doc/emacs/mini.texi (Minibuffer History):
4850         * doc/emacs/maintaining.texi (Old Revisions, VC Change Log)
4851         (Pulling / Pushing):
4852         * doc/emacs/killing.texi (Yanking, Cut and Paste, Clipboard):
4853         * doc/emacs/help.texi (Help, Help Echo):
4854         * doc/emacs/glossary.texi (Glossary):
4855         * doc/emacs/frames.texi (Mouse Commands, Creating Frames)
4856         (Frame Commands):
4857         * doc/emacs/files.texi (Reverting, Saving, Directories):
4858         * doc/emacs/entering.texi (Exiting):
4859         * doc/emacs/emacs.texi (Top):
4860         * doc/emacs/cmdargs.texi (Window Size X, Icons X):
4861         * doc/emacs/anti.texi (Antinews): Restore quoting of text where
4862         appropriate or replace quoting with @dfn.
4863         * doc/misc/ediff.texi (Window and Frame Configuration):
4864         * doc/lispref/processes.texi (Network Feature Testing):
4865         * doc/lispref/display.texi (Display Margins): Quote the phrase
4866         after "a.k.a." where appropriate.
4868 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
4870         Clarify reftex-extra-bindings docs
4871         * lisp/textmodes/reftex-vars.el (reftex-extra-bindings):
4872         * doc/misc/reftex.texi (Key Bindings): Document that the variable
4873         only has an effect at load-time.
4875 2015-09-16  Daniel McClanahan  <danieldmcclanahan@gmail.com>  (tiny change)
4877         * lisp/emacs-lisp/lisp-mode.el (lisp--el-match-keyword): Fix
4878         search argument.  (Bug#21492) (Bug#21493)
4880 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
4882         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
4883         Add pretty symbols for \qquad and \varrho.
4885 2015-09-15  Jay Belanger  <jay.p.belanger@gmail.com>
4887         Add new functions for the root mean square of a (Calc) vector
4888         * lisp/calc/calc-stats.el (calcFunc-rms, calc-vector-rms):
4889         New functions.
4890         * lisp/calc/calc-ext.el (calc-init-extensions): Add keybinding for
4891         `calc-vector-rms', add autoloads for `calc-vector-rms' and
4892         `calcFunc-rms'.
4893         * lisp/calc/calc-map.el (calc-u-oper-keys): Add entry for
4894         `calcFunc-rms'.
4895         * lisp/calc/calc-menu.el (calc-vectors-menu): Add entry for
4896         `calc-vector-rms'.
4897         * doc/misc/calc.texi (Single-Variable Statistics): Document the rms
4898         command.
4900 2015-09-15  Stephen Leake  <stephen_leake@stephe-leake.org>
4902         Add monotone EDE generic project
4903         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
4904         Add monotone generic project.
4906         Revert premature commit
4907         * doc/lispref/files.texi: Revert premature commit of change to
4908         file-name-all-completions.
4910         Fix a bug in elisp--xref-find-definitions related to cl-generic defaults
4911         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions): Fix bug
4912         with cl-generic defaults.
4913         (elisp--xref-find-references): Add doc string.
4914         * test/automated/elisp-mode-tests.el (xref-elisp-generic-*): Improve
4915         tests to find bug.
4917         Fix bugs in eieio-oref-default related to class symbols
4918         * lisp/emacs-lisp/eieio-core.el (class-p): Handle symbol properly.
4919         (eieio-oref-default): Handle class properly.
4921 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
4923         Quote “fullboth” when defining it
4924         * doc/lispref/frames.texi (Size Parameters): Use @dfn for “fullboth”
4925         and rewrite the containing paragraph, which was awkward.  (Bug#21472).
4927 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
4929         Minor doc fix in emacs/ack.texi
4930         * doc/emacs/ack.texi (Acknowledgments): Fix an xref missing the
4931         first argument.
4933 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
4935         Adapt tests in auto-revert-tests.el
4936         * test/automated/auto-revert-tests.el (auto-revert--timeout):
4937         Make it a defconst.
4938         (auto-revert--wait-for-revert): New defun.
4939         (auto-revert-test00-auto-revert-mode)
4940         (auto-revert-test01-auto-revert-tail-mode)
4941         (auto-revert-test02-auto-revert-mode-dired): Use it.
4943 2015-09-15  Stefan Monnier  <monnier@iro.umontreal.ca>
4945         * lisp/emacs-lisp/lisp-mode.el (lisp-mode-symbol-regexp): New const.
4946         Use it everywhere "\\(\\sw\\|\\s_\\|\\\\.\\)+" was used.
4947         (cl-lib-fdefs): Add defgeneric.
4948         (cl-kw): Add all elements of eieio-kw and cl-lib-kw.
4949         (eieio-kw, cl-lib-kw, el-kw): Remove.
4951 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
4953         Quote less in manuals
4954         The manuals often used quotes ``...'' when it is better to use @dfn or
4955         @code or capitalized words or no quoting at all.  For example, there is
4956         no need for the `` and '' in “if a variable has one effect for
4957         @code{nil} values and another effect for ``non-@code{nil}'' values”.
4958         Reword the Emacs, Lisp intro, and Lisp reference manuals to eliminate
4959         unnecessary quoting like this, and to use @dfn etc. instead when called
4960         for (Bug#21472).
4962 2015-09-15  Mark Oteiza  <mvoteiza@udel.edu>
4964         * lisp/custom.el (load-theme): Only compute hash when needed.
4966 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
4968         Pacify --enable-gcc-warnings
4969         * src/inotify.c (report_inotify_error): Declare it _Noreturn.
4971 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
4973         Improve error reports in inotify.c
4974         * src/inotify.c (report_inotify_error): New function.  Clone of
4975         report_w32notify_error.
4976         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
4977         (Finotify_rm_watch): Use it.
4979 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
4981         Fix the file-notify tests for watch validation on w32
4982         * test/automated/file-notify-tests.el
4983         (file-notify-test04-file-validity): Move the directory deletion
4984         out of the file-notify--test-with-events macro.
4985         (file-notify-test04-file-validity)
4986         (file-notify-test05-dir-validity): Enlarge the timeout of
4987         read-event to 0.5, as 0.1 is borderline on w32.  (Bug#21432)
4989 2015-09-15  Tassilo Horn  <tsdh@gnu.org>
4991         Use OPEN BOX instead of space for \quad.
4992         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist): Use OPEN BOX
4993         character for \quad instead of a space.
4995 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
4997         Add missing *.pbm images
4998         * etc/images/connect.pbm: New file.
4999         * etc/images/custom/down-pushed.pbm: New file.
5000         * etc/images/custom/down.pbm: New file.
5001         * etc/images/custom/right-pushed.pbm: New file.
5002         * etc/images/custom/right.pbm: New file.
5003         * etc/images/describe.pbm: New file.
5004         * etc/images/disconnect.pbm: New file.
5005         * etc/images/ezimage/bits.pbm: New file.
5006         * etc/images/ezimage/bitsbang.pbm: New file.
5007         * etc/images/ezimage/box-minus.pbm: New file.
5008         * etc/images/ezimage/box-plus.pbm: New file.
5009         * etc/images/ezimage/box.pbm: New file.
5010         * etc/images/ezimage/checkmark.pbm: New file.
5011         * etc/images/ezimage/dir-minus.pbm: New file.
5012         * etc/images/ezimage/dir-plus.pbm: New file.
5013         * etc/images/ezimage/dir.pbm: New file.
5014         * etc/images/ezimage/doc-minus.pbm: New file.
5015         * etc/images/ezimage/doc-plus.pbm: New file.
5016         * etc/images/ezimage/doc.pbm: New file.
5017         * etc/images/ezimage/info.pbm: New file.
5018         * etc/images/ezimage/key.pbm: New file.
5019         * etc/images/ezimage/label.pbm: New file.
5020         * etc/images/ezimage/lock.pbm: New file.
5021         * etc/images/ezimage/mail.pbm: New file.
5022         * etc/images/ezimage/page-minus.pbm: New file.
5023         * etc/images/ezimage/page-plus.pbm: New file.
5024         * etc/images/ezimage/page.pbm: New file.
5025         * etc/images/ezimage/tag-gt.pbm: New file.
5026         * etc/images/ezimage/tag-minus.pbm: New file.
5027         * etc/images/ezimage/tag-plus.pbm: New file.
5028         * etc/images/ezimage/tag-type.pbm: New file.
5029         * etc/images/ezimage/tag-v.pbm: New file.
5030         * etc/images/ezimage/tag.pbm: New file.
5031         * etc/images/ezimage/unlock.pbm: New file.
5032         * etc/images/gnus/important.pbm: New file.
5033         * etc/images/gnus/mail-send.pbm: New file.
5034         * etc/images/gnus/receipt.pbm: New file.
5035         * etc/images/gnus/toggle-subscription.pbm: New file.
5036         * etc/images/gnus/unimportant.pbm: New file.
5037         * etc/images/gud/all.pbm: New file.
5038         * etc/images/gud/rcont.pbm: New file.
5039         * etc/images/gud/recstart.pbm: New file.
5040         * etc/images/gud/recstop.pbm: New file.
5041         * etc/images/gud/rfinish.pbm: New file.
5042         * etc/images/gud/rnext.pbm: New file.
5043         * etc/images/gud/rnexti.pbm: New file.
5044         * etc/images/gud/rstep.pbm: New file.
5045         * etc/images/gud/rstepi.pbm: New file.
5046         * etc/images/gud/thread.pbm: New file.
5047         * etc/images/lock-broken.pbm: New file.
5048         * etc/images/lock-ok.pbm: New file.
5049         * etc/images/lock.pbm: New file.
5050         * etc/images/mail/copy.pbm: New file.
5051         * etc/images/mail/forward.pbm: New file.
5052         * etc/images/mail/not-spam.pbm: New file.
5053         * etc/images/mail/outbox.pbm: New file.
5054         * etc/images/mail/preview.pbm: New file.
5055         * etc/images/mail/save-draft.pbm: New file.
5056         * etc/images/mh-logo.pbm: New file.
5057         * etc/images/mpc/add.pbm: New file.
5058         * etc/images/mpc/ffwd.pbm: New file.
5059         * etc/images/mpc/next.pbm: New file.
5060         * etc/images/mpc/pause.pbm: New file.
5061         * etc/images/mpc/play.pbm: New file.
5062         * etc/images/mpc/prev.pbm: New file.
5063         * etc/images/mpc/rewind.pbm: New file.
5064         * etc/images/mpc/stop.pbm: New file.
5065         * etc/images/redo.pbm: New file.
5066         * etc/images/smilies/braindamaged.pbm: New file.
5067         * etc/images/smilies/cry.pbm: New file.
5068         * etc/images/smilies/dead.pbm: New file.
5069         * etc/images/smilies/evil.pbm: New file.
5070         * etc/images/smilies/forced.pbm: New file.
5071         * etc/images/smilies/grin.pbm: New file.
5072         * etc/images/smilies/indifferent.pbm: New file.
5073         * etc/images/sort-ascending.pbm: New file.
5074         * etc/images/sort-column-ascending.pbm: New file.
5075         * etc/images/sort-criteria.pbm: New file.
5076         * etc/images/sort-descending.pbm: New file.
5077         * etc/images/sort-row-ascending.pbm: New file.
5078         * etc/images/unchecked.pbm: New file.
5079         * etc/images/zoom-in.pbm: New file.
5080         * etc/images/README: Update instructions for PBM files.
5082         Add separator.pbm tool-bar image
5083         * etc/images/separator.pbm: New file.  Having it avoids the side
5084         effect of changing the tool-bar height when the default font's size
5085         changes and XPM image support is not available, due to the SPC
5086         characters that are left in the Lisp string used to display the tool
5087         bar, because there are no images to display instead of those SPC
5088         characters.
5090         Make show-paren-match face visible on mono-color displays
5091         * lisp/faces.el (show-paren-match): Use the underline face for
5092         mono-color displays.  (Bug#21481)
5094 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
5096         Don’t double-encode non-ASCII mail clipboard
5097         * lisp/mail/mailclient.el (mailclient-send-it):
5098         Also fix the case when mailclient-place-body-on-clipboard-flag
5099         is non-nil.  Problem reported by Eli Zaretskii (Bug#21471#37).
5101 2015-09-14  Michael Albinus  <michael.albinus@gmx.de>
5103         Adapt file-notify-tests.el test cases
5104         * lisp/filenotify.el (file-notify-rm-watch): Ignore `file-notify-error'.
5105         * src/inotify.c (Finotify_valid_p): Adapt docstring.
5106         * test/automated/file-notify-tests.el
5107         (file-notify-test03-autorevert)
5108         (file-notify-test04-file-validity)
5109         (file-notify-test04-file-validity-remote)
5110         (file-notify-test05-dir-validity)
5111         (file-notify-test05-dir-validity-remote): Adapt docstring.
5112         (file-notify-test04-file-validity): Let events arrive before
5113         calling final `file-notify-valid-p'.  Do not ignore errors.
5114         (file-notify-test05-dir-validity): Do not manipulate
5115         `temporary-file-directory', it isn't necessary.  Let events arrive
5116         before calling final `file-notify-valid-p'.  Do not ignore errors.
5118 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
5120         Don’t double-encode non-ASCII for mail client
5121         * lisp/mail/mailclient.el (mailclient-encode-string-as-url):
5122         Use RFC 6068’s list of unreserved characters.
5123         (mailclient-send-it): When encoding the body as a URL,
5124         first decode it as per Content-Type: and Content-Transfer-Encoding:,
5125         as URLs must use percent-encoded UTF-8 (Bug#21471).
5126         * doc/misc/url.texi (mailto): Update RFC number.
5128 2015-09-14  Stefan Monnier  <monnier@iro.umontreal.ca>
5130         * lisp/progmodes/cc-langs.el (c-make-init-lang-vars-fun): Use dolist.
5132 2015-09-14  Alan Mackenzie  <acm@muc.de>
5134         Replace `cadar' with `cadr/car', since `cadar' is problematic on Emacs
5135         (c-make-init-lang-vars-fun): Replace two occurrences of `cadar' with
5136         `cadr/car'.
5138 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
5140         Clarify documentation of char-table extra slots
5141         * doc/lispref/sequences.texi (Char-Tables): Clarify that extra
5142         slot numbers are zero-based.  (Bug#21467)
5144 2015-09-14  Alan Mackenzie  <acm@muc.de>
5146         Elisp mode: Make font-lock and imenu handle escaped characters in symbols
5147         Fixes bug#21449.
5148         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression)
5149         (lisp--el-match-keyword, lisp-el-font-lock-keywords-1)
5150         (lisp-cl-font-lock-keywords-1, lisp-el-font-lock-keywords-2)
5151         (lisp-cl-font-lock-keywords-2, lisp-string-in-doc-position-p):
5152         Insert "\\|\\\\." into regexps which match symbols.
5154 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
5156         Improve the doc string of w32notify-valid-p
5157         * src/w32notify.c (Fw32notify_valid_p): Mention in the doc string
5158         that removing a watch makes its object invalid.
5160 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
5162         Fix tests for file-notify-valid-p
5163         * test/automated/file-notify-tests.el (file-notify--test-cleanup):
5164         Use delete-directory to delete file-notify--test-tmpfile if it is
5165         a directory.  Likewise for file-notify--test-tmpfile1.
5166         (file-notify-test04-file-validity)
5167         (file-notify-test05-dir-validity): Delete the parent directory of
5168         the test.  Ignore errors when cleaning up after the test.
5170 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
5172         Report file-notify-error in w32notify.c
5173         * src/w32notify.c (report_w32notify_error): New function.
5174         (Fw32notify_add_watch, Fw32notify_rm_watch): Use it to report
5175         errors, instead of calling report_file_error.  (Bug#21432)
5177         Implement w32notify-valid-p
5178         * src/w32notify.c (Fw32notify_valid_p): New function.  (Bug#21432)
5179         * lisp/filenotify.el (w32notify-valid-p): No longer an alias for
5180         'identity'.
5182 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
5184         Test file-notify-valid-p
5185         * test/automated/file-notify-tests.el
5186         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
5187         New tests.
5189 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
5191         Fix markup in ELisp manual
5192         * doc/lispref/frames.texi (Font and Color Parameters): Fix markup
5193         of the 'alpha' parameter value.  (Bug#21470)
5195 2015-09-13  Michael Albinus  <michael.albinus@gmx.de>
5197         Introduce `file-notify-valid-p'
5198         * lisp/filenotify.el (file-notify-valid-p): New defun.
5199         (gfile-valid-p, w32notify-valid-p): Make them an alias to `identity'.
5200         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist)
5201         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist)
5202         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist)
5203         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
5204         <file-notify-valid-p>: Add handler.
5205         * lisp/net/tramp.el (tramp-file-name-for-operation):
5206         Add `file-notify-valid-p'.
5207         (tramp-handle-file-notify-valid-p): New defun.
5208         * src/inotify.c (Finotify_valid_p): New defun.
5209         (syms_of_inotify): Declare Sinotify_valid_p.
5211 2015-09-13  Paul Eggert  <eggert@cs.ucla.edu>
5213         Port Unicode char detection to FreeBSD+svgalib
5214         Problem reported by Ashish SHUKLA in:
5215         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00531.html
5216         * configure.ac: Check for struct unipair.unicode instead of for
5217         <linux/kd.h>, since that’s more specific to what the code
5218         actually needs.
5219         * src/terminal.c: Use HAVE_STRUCT_UNIPAIR_UNICODE, not HAVE_LINUX_KD_H.
5221         * src/indent.c (Fvertical_motion): Simplify bugfix (Bug#21468).
5223 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
5225         Fix vertical cursor motion across overlay strings with newlines
5226         * src/indent.c (Fvertical_motion): Don't leave point in the middle
5227         of an overlay string with newlines, as that will position the
5228         cursor after the string at whatever column is there.  (Bug#21468)
5230 2015-09-12  Michael Albinus  <michael.albinus@gmx.de>
5232         Fix tests in file-notify-tests.el
5233         * test/automated/file-notify-tests.el: Remove Tramp declarations.
5234         (file-notify-test00-availability): Print remote command w/o Tramp
5235         internal functions.
5236         (file-notify-test02-events, file-notify-test02-events-remote):
5237         Adapt docstring.
5238         (file-notify-test03-autorevert): Use `format-message' when
5239         inspecting *Messages* buffer.
5241 2015-09-12  Stefan Monnier  <monnier@iro.umontreal.ca>
5243         Bind inhibit-modification-hooks rather than a/b-c-f
5244         * lisp/wid-edit.el (widget-editable-list-insert-before)
5245         (widget-editable-list-delete-at):
5246         * lisp/progmodes/cperl-mode.el (cperl-find-pods-heres)
5247         (cperl-font-lock-unfontify-region-function):
5248         * lisp/progmodes/antlr-mode.el (save-buffer-state-x):
5249         * lisp/obsolete/longlines.el (longlines-mode):
5250         * lisp/obsolete/fast-lock.el (save-buffer-state):
5251         * lisp/mouse.el (mouse-save-then-kill-delete-region):
5252         * lisp/gnus/message.el (message-hide-headers):
5253         * lisp/eshell/esh-mode.el (eshell-send-input, eshell-output-filter):
5254         * lisp/ibuffer.el (ibuffer-update-title-and-summary)
5255         (ibuffer-redisplay-engine): Bind inhibit-modification-hooks to t rather
5256         than after/before-change-functions to nil.
5258 2015-09-11  Stefan Monnier  <monnier@iro.umontreal.ca>
5260         (jit-lock-deferred-fontify): Pay attention to skipped redisplays
5261         * lisp/jit-lock.el (jit-lock-deferred-fontify): Make sure we refresh
5262         the buffers, even if the forced redisplay is interrupted.
5264         * lisp/emacs-lisp/eieio-core.el (class-p): Accept class objects
5266         Merge syntax-propertize--done and parse-sexp-propertize-done
5267         * lisp/emacs-lisp/syntax.el (syntax-propertize--done): Remove.
5268         (syntax-propertize): Set syntax-propertize--done even if
5269         syntax-propertize-function is nil.  Avoid recursive invocations.
5270         (syntax-propertize-chunks): New var.
5271         (internal--syntax-propertize): Use it.  Rename from syntax--jit-propertize.
5272         Simplify.
5273         (parse-sexp-propertize-function): Don't set any more.
5274         * src/syntax.c (SETUP_SYNTAX_TABLE): Call parse_sexp_propertize as needed.
5275         (parse_sexp_propertize): Don't assume charpos is not yet propertized.
5276         Call Qinternal__syntax_propertize instead of
5277         Vparse_sexp_propertize_function.  Truncate e_property if needed.
5278         (update_syntax_table_forward): Streamline.
5279         (syms_of_syntax): Define Qinternal__syntax_propertize.
5280         (syntax_propertize__done): Rename from parse_sexp_propertize_done.
5282 2015-09-11  Paul Eggert  <eggert@cs.ucla.edu>
5284         Prefer straight quoting in some text files
5285         Mostly this just changes ` to ' in static text.  Some exceptions:
5286         * INSTALL.REPO: Use curved quotes, as the diagnostic in question
5287         typically does that now.
5288         * admin/quick-install-emacs (TRY, top level):
5289         Use straight quoting in diagnostics.
5290         * src/README: Fix working-directory confusion.
5292         * CONTRIBUTE: Move send-email here from git-workflow.
5294 2015-09-11  Michael Albinus  <michael.albinus@gmx.de>
5296         Improve file notifications in Tramp
5297         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
5298         Set proper events to watch for.
5299         (tramp-sh-file-gvfs-monitor-dir-process-filter): Report only
5300         watched events.
5302 2015-09-11  Eli Zaretskii  <eliz@gnu.org>
5304         Fix NS build with --enable-checking='glyphs'
5305         * src/nsfns.m (unwind_create_frame): Make the preprocessor
5306         conditionals for referencing 'dpyinfo' consistent throughout the
5307         function.  (Bug#21426)
5309 2015-09-10  Nicolas Petton  <nicolas@petton.fr>
5311         Add seq-find
5312         This function is similar to `seq-some' but returns the found element.
5313         In the cases where nil can be the found element, a sentinel optional
5314         argument can be provided to avoid ambiguities.
5315         * lisp/emacs-lisp/seq.el (seq-find): New function.
5316         * test/automated/seq-tests.el (test-seq-find): Add tests for `seq-find'.
5317         * doc/lispref/sequences.texi (Sequence Functions): Add documentation for
5318         seq-find.
5320 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
5322         Document file-notify--test-with-events.
5323         * test/automated/file-notify-tests.el (file-notify--test-with-events):
5324         Add docstring.
5326 2015-09-10  Michael Albinus  <michael.albinus@gmx.de>
5328         Report used native library in file-notify-tests.el
5329         * test/automated/file-notify-tests.el
5330         (tramp-get-remote-gvfs-monitor-dir)
5331         (tramp-get-remote-inotifywait): Declare them.
5332         (file-notify-test00-availability): Print used native library.
5334 2015-09-10  Mark Oteiza  <mvoteiza@udel.edu>
5336         * lisp/mpc.el (mpc--proc-connect): Use file-name-absolute-p.
5337         (mpc-file-local-copy): Check for absolute path.  Check more config
5338         locations.
5340 2015-09-10  Eli Zaretskii  <eliz@gnu.org>
5342         Improve documentation of categories
5343         * doc/lispref/syntax.texi (Categories): Clarify the example of
5344         using define-category and modify-category-entry.  (Bug#21448)
5346 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
5348         Revert some stray curved quotes I missed earlier
5349         Problem reported by David Kastrup in:
5350         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00440.html
5351         * lisp/international/mule-cmds.el (leim-list-header):
5352         Use format-message with an ASCII-only format.
5354         Prefer NUMBERP to spelling it out
5355         * src/editfns.c (styled_format):
5356         * src/frame.h (NUMVAL):
5357         * src/image.c (parse_image_spec):
5358         * src/lisp.h (CHECK_NUMBER_OR_FLOAT)
5359         (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER):
5360         * src/process.c (Fsignal_process):
5361         * src/xdisp.c (calc_pixel_width_or_height, on_hot_spot_p):
5362         * src/xfaces.c (check_lface_attrs):
5363         * src/xselect.c (x_fill_property_data, x_send_client_event):
5364         Use NUMBERP rather than INTEGERP || FLOATP.
5366 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
5368         Improve file-notify-tests
5369         * test/automated/file-notify-tests.el: Use lexical-binding.
5370         (file-notify--test-cleanup): New function.
5371         (file-notify-test00-availability, file-notify-test01-add-watch)
5372         (file-notify-test02-events, file-notify-test03-autorevert): Use it.
5373         (file-notify--test-with-events): New macro.
5374         (file-notify-test02-events): Use it.
5376 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
5378         Add patch-sending instructions to git-workflow
5379         From a suggestion by Mitchel Humpherys in:
5380         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00421.html
5381         * admin/notes/git-workflow (Sending patches): New section.
5383         Port to GIFLIB 5.0.6 and later
5384         Problem reported by Mitchel Humpherys in:
5385         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00420.html
5386         * src/image.c (HAVE_GIFERRORSTRING) [HAVE_GIF]: New macro.
5387         (GifErrorString, init_gif_functions) [HAVE_GIF && WINDOWSNT]:
5388         (gif_load) [HAVE_GIF]: Use it.
5390 2015-09-10  Glenn Morris  <rgm@gnu.org>
5392         * lisp/cedet/ede/auto.el (ede-project-autoload): Doc fix.
5394 2015-09-09  Glenn Morris  <rgm@gnu.org>
5396         * test/automated/file-notify-tests.el (file-notify-test02-events):
5397         Fix recent change.
5399 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
5401         Refix movemail GCC pacification
5402         Problem reported by Ken Brown in:
5403         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00406.html
5404         * lib-src/movemail.c (main): Fix previous change.
5406 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
5408         * lisp/calendar/time-date.el (time-to-seconds, time-less-p):
5409         Mark unused vars with underscore.
5411         * src/syntax.c (SETUP_SYNTAX_TABLE): Move truncation...
5412         (parse_sexp_propertize): ...from here.
5414         * lisp/filenotify.el: Use lexical-binding
5415         (file-notify-add-watch): Avoid add-to-list.
5417 2015-09-09  Tassilo Horn  <tsdh@gnu.org>
5419         Start checking event types in file-notify tests
5420         * test/automated/file-notify-tests.el (file-notify--test-events):
5421         New variable.
5422         (file-notify--test-event-handler): Append received event to
5423         file-notify--test-events for later analysis.
5424         (file-notify-test02-events): Assert that the expected notifications have
5425         arrived in the expected order.
5427 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
5429         Merge from gnulib and texinfo
5430         This incorporates:
5431         2015-08-03 Improve port of stdalign to C++11
5432         * lib/stdalign.in.h: Copy from gnulib.
5433         * doc/misc/texinfo.tex: Copy from texinfo.
5435 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
5437         Make syntax.c call syntax-propertize on demand
5438         * lisp/emacs-lisp/syntax.el (syntax--jit-propertize): New function.
5439         (parse-sexp-propertize-function): Use it.
5440         (syntax-propertize): Disable parse-sexp-propertize-function.
5441         * src/syntax.c (parse_sexp_propertize, update_syntax_table_forward):
5442         New functions.
5443         (syms_of_syntax): New vars `parse-sexp-propertize-done' and
5444         `parse-sexp-propertize-function'.
5445         * src/syntax.h (struct gl_state_s): Add `e_property_truncated' field.
5446         (UPDATE_SYNTAX_TABLE_FORWARD): Use update_syntax_table_forward.
5447         (SETUP_BUFFER_SYNTAX_TABLE): Set e_property_truncated.
5448         * lisp/progmodes/elisp-mode.el (elisp-byte-code-syntax-propertize):
5449         Don't assume `point' is set.
5451 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
5453         Fix indentation of an @example in ELisp manual
5454         * doc/lispref/syntax.texi (Categories): Untabify the example.
5455         (Bug#21448)
5457 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
5459         Define internal-char-font even if --without-x
5460         The function is used now even in non-graphical environments.
5461         Problem reported by Glenn Morris in:
5462         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00401.html
5463         * src/font.c (Finternal_char_font): Move here ...
5464         * src/fontset.c (Finternal_char_font): ... from here.
5466 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
5468         * lisp/emacs-lisp/cl-generic.el (cl-generic-generalizers):
5469         Remove warning.
5471 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
5473         Fix display of complex local data types in GDB-MI
5474         * lisp/progmodes/gdb-mi.el (gdb-locals-handler-custom): If a
5475         variable has no value, display "<complex data type>" as a
5476         placeholder, instead of a confusing "nil".  (Bug#21438)
5478 2015-09-09  Oleh Krehel  <ohwoeowho@gmail.com>
5480         Remove redundant redefinition of seq-drop-while from seq.el
5481         * lisp/emacs-lisp/seq.el (seq-drop-while): Define only once.
5483 2015-09-09  Phil Sainty  <psainty@orcon.net.nz>
5485         * lisp/emacs-lisp/package.el (package--ensure-init-file):
5486         More robust check for `package-initialize' calls in init file.
5487         This function accepts an optional argument, but calls passing
5488         an argument would not have been detected.
5490 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
5492         Port movemail to RHEL 6 with --enable-gcc-warnings
5493         * lib-src/movemail.c (main): Declare local only if needed.
5495         Port recent Linux console changes to RHEL 6
5496         * src/terminal.c [HAVE_LINUX_KD_H]: Include <sys/ioctl.h>.
5498         Improvements for curved quotes on Linux consule
5499         This should help Emacs work better out-of-the-box on Linux consoles,
5500         which have only limited support for displaying Unicode characters.
5501         Also, undo the recent change that caused text-quoting-style to
5502         affect quote display on terminals, so that the two features are
5503         independent.  See Alan Mackenzie in:
5504         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00244.html
5505         Finally, add a style parameter to startup--setup-quote-display,
5506         so that this function can also be invoked after startup, with
5507         different styles depending on user preference at the time.
5508         * configure.ac: Check for linux/kd.h header.
5509         * doc/emacs/display.texi (Text Display): Document quote display.
5510         * doc/lispref/display.texi (Active Display Table):
5511         * etc/NEWS:
5512         * lisp/startup.el (startup--setup-quote-display, command-line):
5513         text-quoting-style no longer affects quote display.
5514         * doc/lispref/frames.texi (Terminal Parameters): Fix typo.
5515         * lisp/international/mule-util.el (char-displayable-p):
5516         * lisp/startup.el (startup--setup-quote-display):
5517         On a text terminal supporting glyph codes, use the reported
5518         glyph codes instead of the terminal coding system, as this
5519         is more accurate on the Linux console.
5520         * lisp/startup.el (startup--setup-quote-display):
5521         New optional arg STYLE.
5522         * src/fontset.c (Finternal_char_font):
5523         Report glyph codes for a text terminal, if they are available.
5524         Currently this is supported only for the Linux console.
5525         * src/termhooks.h (struct terminal): New member glyph-code-table.
5526         * src/terminal.c [HAVE_LINUX_KD_H]: Include <errno.h>, <linux/kd.h>.
5527         (calculate_glyph_code_table) [HAVE_LINUX_KD_H]: New function.
5528         (terminal_glyph_code): New function.
5530 2015-09-08  Juri Linkov  <juri@linkov.net>
5532         * lisp/info.el (Info-fontify-node): Don't stop at the non-title
5533         underline.  (Bug#21433)
5535 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
5537         * lisp/calendar/time-date.el (with-decoded-time-value): Fix debug spec.
5539 2015-09-08  Tassilo Horn  <tsdh@gnu.org>
5541         Fix double-reporting of rename events with inotify
5542         * lisp/filenotify.el (file-notify-callback): Fix double-reporting
5543         of rename events with inotify (bug#21435).
5545 2015-09-08  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
5547         * lisp/play/tetris.el (tetris-move-down): New command (bug#21360).
5548         (tetris-mode-map): Use it.
5550 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
5552         Remove a few simple cases of global redisplay
5553         * src/dispnew.c (redraw_frame): Don't redisplay all frames.
5554         * src/xdisp.c (echo_area_display): Set the frame's `redisplay' bit
5555         rather than returning a "resized_p" boolean.
5556         (redisplay_internal): Adjust call accordingly.
5557         * src/xfaces.c (free_realized_faces): Don't redisplay all frames.
5558         (free_all_realized_faces): Set windows_or_buffers_changed so as to ease
5559         tracking of this undesirable situation.
5561         * src/process.c (status_notify): Avoid global redisplay (bug#11822)
5562         * src/process.c (status_notify): Only set the update_mode_line on the
5563         relevant buffers rather than setting it globally.
5565 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
5567         * lisp/electric.el (electric-quote-post-self-insert-function):
5568         Don't use syntax-ppss if comment-use-syntax is nil (e.g. message-mode).
5569         (electric-quote-mode): Activate everywhere in message-mode.
5571 2015-09-07  Paul Eggert  <eggert@cs.ucla.edu>
5573         Go back to grave quoting in source-code docstrings etc.
5574         This reverts almost all my recent changes to use curved quotes
5575         in docstrings and/or strings used for error diagnostics.
5576         There are a few exceptions, e.g., Bahá’í proper names.
5577         * admin/unidata/unidata-gen.el (unidata-gen-table):
5578         * lisp/abbrev.el (expand-region-abbrevs):
5579         * lisp/align.el (align-region):
5580         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet)
5581         (outlineify-sticky):
5582         * lisp/apropos.el (apropos-library):
5583         * lisp/bookmark.el (bookmark-default-annotation-text):
5584         * lisp/button.el (button-category-symbol, button-put)
5585         (make-text-button):
5586         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
5587         * lisp/calc/calc-embed.el (calc-do-embedded):
5588         * lisp/calc/calc-ext.el (calc-user-function-list):
5589         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
5590         * lisp/calc/calc-help.el (calc-describe-key)
5591         (calc-describe-thing, calc-full-help):
5592         * lisp/calc/calc-lang.el (calc-c-language)
5593         (math-parse-fortran-vector-end, math-parse-tex-sum)
5594         (math-parse-eqn-matrix, math-parse-eqn-prime)
5595         (calc-yacas-language, calc-maxima-language, calc-giac-language)
5596         (math-read-giac-subscr, math-read-math-subscr)
5597         (math-read-big-rec, math-read-big-balance):
5598         * lisp/calc/calc-misc.el (calc-help, report-calc-bug):
5599         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
5600         (calc-auto-recompute):
5601         * lisp/calc/calc-prog.el (calc-fix-token-name)
5602         (calc-read-parse-table-part, calc-user-define-invocation)
5603         (math-do-arg-check):
5604         * lisp/calc/calc-store.el (calc-edit-variable):
5605         * lisp/calc/calc-units.el (math-build-units-table-buffer):
5606         * lisp/calc/calc-vec.el (math-read-brackets):
5607         * lisp/calc/calc-yank.el (calc-edit-mode):
5608         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
5609         * lisp/calendar/appt.el (appt-display-message):
5610         * lisp/calendar/diary-lib.el (diary-check-diary-file)
5611         (diary-mail-entries, diary-from-outlook):
5612         * lisp/calendar/icalendar.el (icalendar-export-region)
5613         (icalendar--convert-float-to-ical)
5614         (icalendar--convert-date-to-ical)
5615         (icalendar--convert-ical-to-diary)
5616         (icalendar--convert-recurring-to-diary)
5617         (icalendar--add-diary-entry):
5618         * lisp/calendar/time-date.el (format-seconds):
5619         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
5620         (timeclock-make-hours-explicit, timeclock-log-data):
5621         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
5622         (todo-item-mark, todo-check-format)
5623         (todo-insert-item--next-param, todo-edit-item--next-key)
5624         (todo-mode):
5625         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
5626         * lisp/cedet/mode-local.el (describe-mode-local-overload)
5627         (mode-local-print-binding, mode-local-describe-bindings-2):
5628         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
5629         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
5630         * lisp/cus-start.el (standard):
5631         * lisp/cus-theme.el (describe-theme-1):
5632         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
5633         (custom--sort-vars-1, load-theme):
5634         * lisp/descr-text.el (describe-text-properties-1, describe-char):
5635         * lisp/dired-x.el (dired-do-run-mail):
5636         * lisp/dired.el (dired-log):
5637         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
5638         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
5639         (ad-disable-advice, ad-remove-advice, ad-set-argument)
5640         (ad-set-arguments, ad--defalias-fset, ad-activate)
5641         (ad-deactivate):
5642         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
5643         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
5644         (byte-optimize-while, byte-optimize-apply):
5645         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
5646         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
5647         (byte-compile-log-file, byte-compile-format-warn)
5648         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
5649         (byte-compile-cl-warn)
5650         (byte-compile-warn-about-unresolved-functions)
5651         (byte-compile-file, byte-compile--declare-var)
5652         (byte-compile-file-form-defmumble, byte-compile-form)
5653         (byte-compile-normal-call, byte-compile-check-variable)
5654         (byte-compile-variable-ref, byte-compile-variable-set)
5655         (byte-compile-subr-wrong-args, byte-compile-setq-default)
5656         (byte-compile-negation-optimizer)
5657         (byte-compile-condition-case--old)
5658         (byte-compile-condition-case--new, byte-compile-save-excursion)
5659         (byte-compile-defvar, byte-compile-autoload)
5660         (byte-compile-lambda-form)
5661         (byte-compile-make-variable-buffer-local, display-call-tree)
5662         (batch-byte-compile):
5663         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use):
5664         * lisp/emacs-lisp/chart.el (chart-space-usage):
5665         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
5666         (check-declare-warn, check-declare-file)
5667         (check-declare-directory):
5668         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
5669         (checkdoc-message-text-engine):
5670         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer)
5671         (cl--describe-class):
5672         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
5673         (cl--generic-describe, cl-generic-generalizers):
5674         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
5675         (cl-symbol-macrolet):
5676         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
5677         * lisp/emacs-lisp/copyright.el (copyright)
5678         (copyright-update-directory):
5679         * lisp/emacs-lisp/edebug.el (edebug-read-list):
5680         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
5681         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
5682         (eieio-oref):
5683         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
5684         * lisp/emacs-lisp/eieio-speedbar.el:
5685         (eieio-speedbar-child-make-tag-lines)
5686         (eieio-speedbar-child-description):
5687         * lisp/emacs-lisp/eieio.el (defclass, change-class):
5688         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
5689         (elint-init-form, elint-check-defalias-form)
5690         (elint-check-let-form):
5691         * lisp/emacs-lisp/ert.el (ert-get-test, ert-results-mode-menu)
5692         (ert-results-pop-to-backtrace-for-test-at-point)
5693         (ert-results-pop-to-messages-for-test-at-point)
5694         (ert-results-pop-to-should-forms-for-test-at-point)
5695         (ert-describe-test):
5696         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
5697         (find-function-library):
5698         * lisp/emacs-lisp/generator.el (iter-yield):
5699         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
5700         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
5701         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
5702         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
5703         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
5704         (advice--make, define-advice):
5705         * lisp/emacs-lisp/package-x.el (package-upload-file):
5706         * lisp/emacs-lisp/package.el (package-version-join)
5707         (package-disabled-p, package-activate-1, package-activate)
5708         (package--download-one-archive)
5709         (package--download-and-read-archives)
5710         (package-compute-transaction, package-install-from-archive)
5711         (package-install, package-install-selected-packages)
5712         (package-delete, package-autoremove, describe-package-1)
5713         (package-install-button-action, package-delete-button-action)
5714         (package-menu-hide-package, package-menu--list-to-prompt)
5715         (package-menu--perform-transaction)
5716         (package-menu--find-and-notify-upgrades):
5717         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
5718         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
5719         * lisp/emacs-lisp/ring.el (ring-previous, ring-next):
5720         * lisp/emacs-lisp/rx.el (rx-check, rx-anything)
5721         (rx-check-any-string, rx-check-any, rx-check-not, rx-=)
5722         (rx-repeat, rx-check-backref, rx-syntax, rx-check-category)
5723         (rx-form):
5724         * lisp/emacs-lisp/smie.el (smie-config-save):
5725         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
5726         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
5727         * lisp/emacs-lisp/testcover.el (testcover-1value):
5728         * lisp/emacs-lisp/timer.el (timer-event-handler):
5729         * lisp/emulation/viper-cmd.el (viper-toggle-parse-sexp-ignore-comments)
5730         (viper-toggle-search-style, viper-kill-buffer)
5731         (viper-brac-function):
5732         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
5733         * lisp/env.el (setenv):
5734         * lisp/erc/erc-button.el (erc-nick-popup):
5735         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login, english):
5736         * lisp/eshell/em-dirs.el (eshell/cd):
5737         * lisp/eshell/em-glob.el (eshell-glob-regexp)
5738         (eshell-glob-entries):
5739         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
5740         * lisp/eshell/esh-opt.el (eshell-show-usage):
5741         * lisp/facemenu.el (facemenu-add-new-face)
5742         (facemenu-add-new-color):
5743         * lisp/faces.el (read-face-name, read-face-font, describe-face)
5744         (x-resolve-font-name):
5745         * lisp/files-x.el (modify-file-local-variable):
5746         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
5747         (set-auto-mode, hack-one-local-variable--obsolete)
5748         (dir-locals-set-directory-class, write-file, basic-save-buffer)
5749         (delete-directory, copy-directory, recover-session)
5750         (recover-session-finish, insert-directory)
5751         (file-modes-char-to-who, file-modes-symbolic-to-number)
5752         (move-file-to-trash):
5753         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer):
5754         * lisp/find-cmd.el (find-generic, find-to-string):
5755         * lisp/finder.el (finder-commentary):
5756         * lisp/font-lock.el (font-lock-fontify-buffer):
5757         * lisp/format.el (format-write-file, format-find-file)
5758         (format-insert-file):
5759         * lisp/frame.el (get-device-terminal, select-frame-by-name):
5760         * lisp/fringe.el (fringe--check-style):
5761         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
5762         * lisp/help-fns.el (help-fns--key-bindings)
5763         (help-fns--compiler-macro, help-fns--parent-mode)
5764         (help-fns--obsolete, help-fns--interactive-only)
5765         (describe-function-1, describe-variable):
5766         * lisp/help.el (describe-mode)
5767         (describe-minor-mode-from-indicator):
5768         * lisp/image.el (image-type):
5769         * lisp/international/ccl.el (ccl-dump):
5770         * lisp/international/fontset.el (x-must-resolve-font-name):
5771         * lisp/international/mule-cmds.el (prefer-coding-system)
5772         (select-safe-coding-system-interactively)
5773         (select-safe-coding-system, activate-input-method)
5774         (toggle-input-method, describe-current-input-method)
5775         (describe-language-environment):
5776         * lisp/international/mule-conf.el (code-offset):
5777         * lisp/international/mule-diag.el (describe-character-set)
5778         (list-input-methods-1):
5779         * lisp/mail/feedmail.el (feedmail-run-the-queue):
5780         * lisp/mouse.el (minor-mode-menu-from-indicator):
5781         * lisp/mpc.el (mpc-playlist-rename):
5782         * lisp/msb.el (msb--choose-menu):
5783         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
5784         * lisp/net/imap.el (imap-interactive-login):
5785         * lisp/net/mairix.el (mairix-widget-create-query):
5786         * lisp/net/newst-backend.el (newsticker--sentinel-work):
5787         * lisp/net/newst-treeview.el (newsticker--treeview-load):
5788         * lisp/net/rlogin.el (rlogin):
5789         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
5790         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
5791         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
5792         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
5793         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
5794         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
5795         (org-babel-goto-named-result):
5796         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
5797         * lisp/org/ob-ref.el (org-babel-ref-resolve):
5798         * lisp/org/org-agenda.el (org-agenda-prepare):
5799         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
5800         (org-clock-resolve):
5801         * lisp/org/org-ctags.el (org-ctags-ask-rebuild-tags-file-then-find-tag):
5802         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
5803         * lisp/org/org-habit.el (org-habit-parse-todo):
5804         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
5805         (org-mouse-context-menu):
5806         * lisp/org/org-table.el (org-table-edit-formulas):
5807         * lisp/org/ox.el (org-export-async-start):
5808         * lisp/proced.el (proced-log):
5809         * lisp/progmodes/ada-mode.el (ada-get-indent-case)
5810         (ada-check-matching-start, ada-goto-matching-start):
5811         * lisp/progmodes/ada-prj.el (ada-prj-display-page):
5812         * lisp/progmodes/ada-xref.el (ada-find-executable):
5813         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
5814         * lisp/progmodes/etags.el (etags-tags-apropos-additional):
5815         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
5816         (flymake-start-syntax-check-process):
5817         * lisp/progmodes/python.el (python-shell-get-process-or-error)
5818         (python-define-auxiliary-skeleton):
5819         * lisp/progmodes/sql.el (sql-comint):
5820         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
5821         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate):
5822         * lisp/recentf.el (recentf-open-files):
5823         * lisp/replace.el (query-replace-read-from)
5824         (occur-after-change-function, occur-1):
5825         * lisp/scroll-bar.el (scroll-bar-columns):
5826         * lisp/server.el (server-get-auth-key):
5827         * lisp/simple.el (execute-extended-command)
5828         (undo-outer-limit-truncate, list-processes--refresh)
5829         (compose-mail, set-variable, choose-completion-string)
5830         (define-alternatives):
5831         * lisp/startup.el (site-run-file, tty-handle-args, command-line)
5832         (command-line-1):
5833         * lisp/subr.el (noreturn, define-error, add-to-list)
5834         (read-char-choice, version-to-list):
5835         * lisp/term/common-win.el (x-handle-xrm-switch)
5836         (x-handle-name-switch, x-handle-args):
5837         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
5838         * lisp/textmodes/reftex-ref.el (reftex-label):
5839         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
5840         * lisp/textmodes/two-column.el (2C-split):
5841         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
5842         (tutorial--find-changed-keys):
5843         * lisp/type-break.el (type-break-noninteractive-query):
5844         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
5845         (wdired-do-perm-changes):
5846         * lisp/whitespace.el (whitespace-report-region):
5847         Prefer grave quoting in source-code strings used to generate help
5848         and diagnostics.
5849         * lisp/faces.el (face-documentation):
5850         No need to convert quotes, since the result is a docstring.
5851         * lisp/info.el (Info-virtual-index-find-node)
5852         (Info-virtual-index, info-apropos):
5853         Simplify by generating only curved quotes, since info files are
5854         typically that ways nowadays anyway.
5855         * lisp/international/mule-diag.el (list-input-methods):
5856         Don’t assume text quoting style is curved.
5857         * lisp/org/org-bibtex.el (org-bibtex-fields):
5858         Revert my recent changes, going back to the old quoting style.
5860 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
5862         * lisp/emacs-lisp/package.el: Reduce autoloading before compiling.
5863         (package--autoloads-file-name)
5864         (package--activate-autoloads-and-load-path): New function.
5865         (package-activate-1): Delegate autoloading and load-path
5866         configuration to `package--activate-autoloads-and-load-path'.
5867         (package--compile): Before compilation, call
5868         `package--activate-autoloads-and-load-path' instead of
5869         `package-activate-1'.
5871 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
5873         * src/keyboard.c (read_key_sequence): Complete last fix (bug#21403).
5875 2015-09-07  Eli Zaretskii  <eliz@gnu.org>
5877         Fix deletion of symlinks to directories on MS-Windows
5878         * src/w32.c (sys_unlink): If 'unlink' fails, and the argument is a
5879         symlink to a directory, try again with 'rmdir'.
5880         (is_symlink): If the argument is a symlink to a directory, set a
5881         bit in the return value to indicate that fact.
5883 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
5885         * lisp/emacs-lisp/package.el (package-initialize): Set enable-at-startup
5886         When `package-initialize' is called as part of loading the init file,
5887         the user probably doesn't want it to be called again afterwards.
5888         In this situation, `package-initialize' now sets
5889         `package-enable-at-startup' to nil to prevent that.  The user can have
5890         the old behavior by setting this variable to t after the call to
5891         `package-initialize'.  (Bug#21423)
5892         * doc/emacs/package.texi (Package Installation): Document it.
5893         * doc/lispref/package.texi (Packaging Basics): Document it.
5894         * etc/NEWS: Document it.
5896 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
5898         Bump version of ntlm.el to 2.00
5899         * lisp/net/ntlm.el: Bump version to 2.00.  New maintainer.
5900         Add comm keyword.
5902 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
5904         * doc/misc/gnus.texi (Mail Source Specifiers):
5905         Allow :mailbox to be a list.
5907 2015-09-06  Dmitry Gutov  <dgutov@yandex.ru>
5909         * lisp/progmodes/etags.el (etags-tags-completion-table):
5910         Allow even one non-regular character before the implicit tag name.
5911         Reported at http://emacs.stackexchange.com/questions/15269/.
5913 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
5915         Add support for NTLMv2 authentication
5916         * lisp/net/ntlm.el (ntlm): New customization group.
5917         (ntlm-compatibility-level): New defcustom.
5918         (ntlm-compute-timestamp): New function.
5919         (ntlm-generate-nonce): Likewise.
5920         (ntlm-build-auth-response): Add support for NTLMv2 authentication.
5922 2015-09-06  Artur Malabarba  <bruce.connor.am@gmail.com>
5924         * lisp/emacs-lisp/package.el: Rename custom faces.
5925         All of the recently introduced faces, like `package-name-face', have
5926         been renamed to no end in `-face' to comply with the convention
5927         described in (info "(elisp) Defining Faces").
5928         (package-name, package-description)
5929         (package-status-built-in, package-status-external)
5930         (package-status-available, package-status-new)
5931         (package-status-held, package-status-disabled)
5932         (package-status-installed, package-status-dependency)
5933         (package-status-unsigned, package-status-incompat)
5934         (package-status-avail-obso): New faces.
5935         (package-menu--print-info-simple): Use them.
5937 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
5939         mail-source.el: Make the imap mail-source's :mailbox handle a list
5940         * lisp/gnus/mail-source.el (mail-source-fetch-imap):
5941         Allow :mailbox to be  a list.
5943 2015-09-06  Eric Abrahamsen  <eric@ericabrahamsen.net>
5945         nnimap.el: Handle nil arg to nnimap-request-group
5946         * lisp/gnus/nnimap.el (nnimap-request-group): Handle nil "info" arg.
5947         This arg isn't always passed in, check it's not nil before making it
5948         into a list.  The active arg will also be nil if the group is new,
5949         check for that.
5951 2015-09-06  Michael Albinus  <michael.albinus@gmx.de>
5953         File notifications: Support renaming over directory boundaries
5954         * lisp/filenotify.el (file-notify-handle-event):
5955         (file-notify--pending-event): Adapt docstring.
5956         (file-notify--descriptor, file-notify-callback): Reimplement in
5957         order to support renaming over directory boundaries.
5958         (file-notify-add-watch): Adapt `file-notify--descriptor' call.
5959         * doc/lispref/os.texi (File Notifications): Remove limitation of
5960         file renaming to the same directory.
5962 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
5964         Spelling fix (Bug#21420)
5966 2015-09-05  Nicolas Petton  <nicolas@petton.fr>
5968         Improve the semantic of map-some
5969         Update map-some to return the returned by the predicate, similar to
5970         seq-some.
5971         * lisp/emacs-lisp/map.el (map-some): Update the function to return the
5972           return value of the predicate.
5973         * test/automated/map-tests.el (test-map-some): Update the test to check
5974           for non-nil values only.
5976         Rename map-contains-key-p and map-some-p
5977         Remove the "-p" suffix from both function names.
5978         * lisp/emacs-lisp/map.el (map-contains-key, map-some):
5979           Rename the functions.
5980         * test/automated/map-tests.el (test-map-contains-key, test-map-some):
5981           Update both test functions.
5983         Improve the semantic of seq-some
5984         Update seq-some to return non-nil if the predicate returns non-nil for
5985         any element of the seq, in which case the returned value is the one
5986         returned by the predicate.
5987         * lisp/emacs-lisp/seq.el (seq-some): Update the function and its
5988           docstring.
5989         * test/automated/seq-tests.el (test-seq-some): Add a regression test.
5990         * doc/lispref/sequences.texi (Sequence Functions): Update the
5991           documentation for seq-some.
5993         Rename seq-some-p to seq-some and seq-contains-p to seq-contains
5994         * lisp/emacs-lisp/seq.el (seq-some, seq-contains): Rename the functions
5995           without the "-p" prefix.
5996         * test/automated/seq-tests.el (test-seq-some, test-seq-contains): Update
5997           the tests accordingly.
5998         * doc/lispref/sequences.texi (Sequence Functions): Update the
5999           documentation for seq.el.
6001 2015-09-05  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
6003         text-quoting-style for usage of fn names with ‘’
6004         * lisp/help.el (help--docstring-quote): Don’t assume
6005         text-quoting-style is ‘curve’ when generating usage strings for
6006         functions whose names contain curved quotes.
6008 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
6010         Fix fix for describe-function keybinding confusion
6011         This fixes a bug introduced by the previous patch.
6012         * lisp/help-fns.el (help-fns--signature):
6013         Last arg of help-fns--signature is now a buffer, or nil if a
6014         raw signature is wanted.  All callers changed.
6015         (describe-function-1): Use this to do the right thing with signatures.
6017 2015-09-05  Johan Bockgård  <bojohan@gnu.org>
6019         * doc/lispref/frames.texi (Mouse Tracking): Fix typo.
6021         Use PAT rather than UPAT in pcase macros
6022         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
6023         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>: Use PAT rather
6024           than UPAT.
6026 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
6028         Fix describe-function keybinding confusion
6029         * lisp/help-fns.el (describe-function-1): Compute signature
6030         in the original buffer, not in standard-output, so that
6031         substitute-command-keys uses the proper keybindings.
6032         This fixes Bug#21412, introduced in commit
6033         2015-06-11T10:23:46-0700!eggert@cs.ucla.edu.
6035 2015-09-05  Xue Fuqiao  <xfq.free@gmail.com>
6037         * doc/emacs/programs.texi (Program Modes): Remove an index entry.
6039 2015-09-05  Robert Pluim  <rpluim@gmail.com>  (tiny change)
6041         Avoid read error messages from 'inotify'
6042         * src/process.c (wait_reading_process_output): Add a
6043         'tls_available' set and manipulate it instead of 'Available' when
6044         checking TLS inputs.  Assign the value to 'Available' only if we
6045         find any TLS data waiting to be read.  This avoids error messages
6046         from 'inotify' that tries to read data it shouldn't.  (Bug#21337)
6048 2015-09-05  Eli Zaretskii  <eliz@gnu.org>
6050         Avoid errors in thing-at-point with 2nd argument non-nil
6051         * lisp/thingatpt.el (thing-at-point): Only call 'length' on
6052         sequences.  (Bug#21391)
6054 2015-09-05  Philip  <pipcet@gmail.com>  (tiny change)
6056         Fix segfaults due to using a stale face ID
6057         * src/xdisp.c (forget_escape_and_glyphless_faces): New function.
6058         (display_echo_area_1, redisplay_internal): Call it to avoid
6059         reusing stale face IDs for 'escape-glyph' and 'glyphless-char'
6060         faces, which could case a segfault if the frame's face cache was
6061         freed since the last redisplay.  (Bug#21394)
6062         * src/xfaces.c (free_realized_faces):
6063         Call forget_escape_and_glyphless_faces.
6064         * src/dispextern.h (forget_escape_and_glyphless_faces): Add prototype.
6066 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
6068         Fix minor problems with " in manual
6070 2015-09-04  Michael Albinus  <michael.albinus@gmx.de>
6072         * doc/misc/tramp.texi (Frequently Asked Questions): New item for ad-hoc
6073         multi-hop files.
6075 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
6077         Support automated ‘make check’ in non-C locale
6078         This lets the builder optionally test Emacs behavior in other locales.
6079         The C locale is still the default for tests.
6080         * test/automated/Makefile.in (TEST_LOCALE): New macro.
6081         (emacs): Use it.
6082         * test/automated/flymake-tests.el (flymake-tests--current-face):
6083         Use C locale for subprocesses so that tests behave as expected.
6084         * test/automated/python-tests.el:
6085         (python-shell-prompt-validate-regexps-1)
6086         (python-shell-prompt-validate-regexps-2)
6087         (python-shell-prompt-validate-regexps-3)
6088         (python-shell-prompt-validate-regexps-4)
6089         (python-shell-prompt-validate-regexps-5)
6090         (python-shell-prompt-validate-regexps-6)
6091         (python-shell-prompt-set-calculated-regexps-1):
6092         Adjust expected output to match locale.
6093         * test/automated/tildify-tests.el (tildify-test--test)
6094         (tildify-space-test--test, tildify-space-undo-test--test):
6095         This test assumes UTF-8 encoding.
6097 2015-09-03  Paul Eggert  <eggert@cs.ucla.edu>
6099         Fix some more docstring etc. quoting problems
6100         Mostly these fixes prevent the transliteration of apostrophes
6101         that should stay apostrophes.  Also, prefer curved quotes in
6102         Bahá’í proper names, as that’s the preferred Bahá’í style and
6103         these names are chock-full of non-ASCII characters anyway.
6104         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-autoload)
6105         (eieio-defclass-internal):
6106         * lisp/emacs-lisp/eieio.el (defclass):
6107         * lisp/hi-lock.el (hi-lock-mode):
6108         Don’t transliterate Lisp apostrophes when generating a
6109         doc string or diagnostic.
6110         * lisp/international/mule-diag.el (list-coding-systems-1):
6111         * lisp/international/ogonek.el (ogonek-jak, ogonek-how):
6112         * lisp/mail/sendmail.el (sendmail-query-user-about-smtp):
6113         * lisp/vc/ediff-mult.el (ediff-redraw-registry-buffer):
6114         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
6115         Substitute quotes before putting them in the help buffer.
6117 2015-09-03  Stefan Monnier  <monnier@iro.umontreal.ca>
6119         Re-add the notion of echo_prompt lost in the translation
6120         * src/keyboard.h (struct kboard): Replace echo_after_prompt with new
6121         echo_prompt which contains the actual string.  Update all uses.
6122         * src/keyboard.c (kset_echo_prompt): New function.
6123         (echo_update): Add echo_prompt at the very beginning.
6124         (read_char): Remove workaround for bug#19875, not needed any more.
6125         (read_key_sequence): Set echo_prompt rather than echo_string
6126         (bug#21403).
6127         (mark_kboards): Mark echo_prompt.
6129         Fix disassembly of non-compiled lexical functions (bug#21377)
6130         * lisp/emacs-lisp/bytecomp.el (byte-compile): Handle `closure' arg.
6131         * lisp/emacs-lisp/disass.el: Use lexical-binding.
6132         (disassemble): Recognize `closure's as well.
6133         (disassemble-internal): Use indirect-function and
6134         help-function-arglist, and accept `closure's.
6135         (disassemble-internal): Use interactive-form.
6136         (disassemble-1): Use functionp.
6138         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
6139         Don't compose inside verbatim blocks!
6141 2015-09-03  Mark Oteiza  <mvoteiza@udel.edu>
6143         * lisp/thingatpt.el (thing-at-point-uri-schemes): Add "man:"
6144         (bug#19441).
6146         * lisp/mpc.el (mpc--proc-connect): Handle unix sockets (bug#19394).
6148 2015-09-03  Dmitry Gutov  <dgutov@yandex.ru>
6150         vc-git-mode-line-string: Explicitly re-apply the face
6151         * lisp/vc/vc-git.el (vc-git-mode-line-string): Explicitly re-apply
6152         the face (bug#21404).
6154 2015-09-02  Paul Eggert  <eggert@cs.ucla.edu>
6156         Treat initial-scratch-message as a doc string
6157         * doc/emacs/building.texi (Lisp Interaction):
6158         * doc/lispref/os.texi (Startup Summary):
6159         * etc/NEWS: Document this.
6160         * lisp/startup.el (initial-scratch-message):
6161         Look up find-file’s key rather than hardcoding it.
6162         (command-line-1): Substitute the doc string.
6163         This also substitutes the quotes, which will help test display
6164         quoting at startup.
6166         Fix describe-char bug with glyphs on terminals
6167         * lisp/descr-text.el (describe-char): Terminals can have glyphs in
6168         buffers too, so don’t treat them differently from graphic displays.
6169         Without this fix, describe-char would throw an error on a terminal
6170         if given a glyph with a non-default face.
6172         Follow text-quoting-style in display table init
6173         This attempts to fix a problem reported by Alan Mackenzie in:
6174         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00112.html
6175         * doc/lispref/display.texi (Active Display Table):
6176         Mention how text-quoting-style affects it.
6177         * doc/lispref/help.texi (Keys in Documentation):
6178         Say how to set text-quoting-style in ~/.emacs.
6179         * etc/NEWS: Document the change.
6180         * lisp/startup.el (startup--setup-quote-display):
6181         Follow user preference if text-quoting-style is set.
6182         (command-line): Setup quote display again if user expresses
6183         a preference in .emacs.
6185 2015-09-02  K. Handa  <handa@gnu.org>
6187         Fix typo
6188         * src/ftfont.c (ftfont_drive_otf): otf_positioning_type_components_mask
6189         -> OTF_positioning_type_components_mask.
6191         Fix previous change
6192         * src/ftfont.c (ftfont_drive_otf): Remember some bits of
6193         OTF_Glyph->positioning_type in MFLTGlyphFT->libotf_positioning_type.
6195 2015-09-01  David Caldwell  <david@porkrind.org>  (tiny change)
6197         * lisp/vc/vc-hooks.el (vc-refresh-state): New command.
6198         Rename from vc-find-file-hook and make interactive.
6199         (vc-find-file-hook): Redefine as obsolete alias.
6201 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
6203         Escape ` and ' in doc
6204         Escape apostrophes and grave accents in docstrings if they are
6205         are supposed to stand for themselves and are not quotes.  Remove
6206         apostrophes from docstring examples like ‘'(calendar-nth-named-day
6207         -1 0 10 year)’ that confuse source code with data.  Do some other
6208         minor docstring fixups as well, e.g., insert a missing close quote.
6210 2015-09-01  Stefan Monnier  <monnier@iro.umontreal.ca>
6212         Generalize the prefix-command machinery of C-u
6213         * lisp/simple.el (prefix-command-echo-keystrokes-functions)
6214         (prefix-command-preserve-state-hook): New hooks.
6215         (internal-echo-keystrokes-prefix): New function.
6216         (prefix-command--needs-update, prefix-command--last-echo): New vars.
6217         (prefix-command-update, prefix-command-preserve): New functions.
6218         (reset-this-command-lengths): New compatibility definition.
6219         (universal-argument--mode): Call prefix-command-update.
6220         (universal-argument, universal-argument-more, negative-argument)
6221         (digit-argument): Call prefix-command-preserve-state.
6222         * src/keyboard.c: Call internal-echo-keystrokes-prefix to build
6223         the "prefix argument" to echo.
6224         (this_command_key_count_reset, before_command_key_count)
6225         (before_command_echo_length): Delete variables.
6226         (echo_add_key): Always add a space.
6227         (echo_char): Remove.
6228         (echo_dash): Don't give up when this_command_key_count is 0, since that
6229         is now the case after a prefix command.
6230         (echo_update): New function, extracted from echo_now.
6231         (echo_now): Use it.
6232         (add_command_key, read_char, record_menu_key): Remove old disabled code.
6233         (command_loop_1): Don't refrain from pushing an undo boundary when
6234         prefix-arg is set.  Remove other prefix-arg special case, now handled
6235         directly in the prefix commands instead.  But call echo_now if there's
6236         a prefix state to echo.
6237         (read_char, record_menu_key): Use echo_update instead of echo_char.
6238         (read_key_sequence): Use echo_now rather than echo_dash/echo_char.
6239         (Freset_this_command_lengths): Delete function.
6240         (syms_of_keyboard): Define Qinternal_echo_keystrokes_prefix.
6241         (syms_of_keyboard): Don't defsubr Sreset_this_command_lengths.
6242         * lisp/simple.el: Use those new hooks for C-u.
6243         (universal-argument--description): New function.
6244         (prefix-command-echo-keystrokes-functions): Use it.
6245         (universal-argument--preserve): New function.
6246         (prefix-command-preserve-state-hook): Use it.
6247         (command-execute): Call prefix-command-update if needed.
6248         * lisp/kmacro.el (kmacro-step-edit-prefix-commands)
6249         (kmacro-step-edit-prefix-index): Delete variables.
6250         (kmacro-step-edit-query, kmacro-step-edit-insert): Remove ad-hoc
6251         support for prefix arg commands.
6252         (kmacro-step-edit-macro): Don't bind kmacro-step-edit-prefix-index.
6253         * lisp/emulation/cua-base.el (cua--prefix-override-replay)
6254         (cua--shift-control-prefix): Use prefix-command-preserve-state.
6255         Remove now unused arg `arg'.
6256         (cua--prefix-override-handler, cua--prefix-repeat-handler)
6257         (cua--shift-control-c-prefix, cua--shift-control-x-prefix):
6258         Update accordingly.
6259         (cua--prefix-override-timeout): Don't call reset-this-command-lengths
6260         any more.
6261         (cua--keep-active, cua-exchange-point-and-mark): Don't set mark-active
6262         if the mark is not set.
6264 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
6266         Rework quoting in Emacs Lisp Introduction
6267         * doc/lispintro/emacs-lisp-intro.texi (Sample let Expression)
6268         (if in more detail, type-of-animal in detail, else): Rework the
6269         early example to use " rather than ' so that we don’t burden
6270         complete novices with the low-priority detail of text quoting style.
6271         (Complete zap-to-char, kill-region, Complete copy-region-as-kill)
6272         (kill-new function, kill-ring-yank-pointer)
6273         (Complete forward-sentence, Loading Files)
6274         (Code for current-kill, Code for current-kill, yank):
6275         Resurrect the Emacs 22 versions of the code, which uses grave
6276         quoting style in doc strings.
6277         (Complete zap-to-char): Mention how quoting works in doc strings.
6279         Setup quote display only if interactive
6280         * lisp/startup.el (command-line):
6281         Skip call to startup--setup-quote-display if noninteractive.
6282         Without this change, python-shell-prompt-validate-regexps-1
6283         fails in test/automated/python-tests.el when run in an
6284         en_US.utf8 locale on Fedora.
6286 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
6288         Use defalias at the top level
6289         * lisp/gnus/gnus-util.el (gnus-format-message):
6290         * lisp/net/tls.el (tls-format-message): Use defalias at the top level
6291         so as to make eval-and-compile unnecessary.  Thanks to Stefan Monnier.
6293 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
6295         terminal-init-w32console mimicks command-line
6296         Problem reported by Eli Zaretskii.
6297         * lisp/startup.el (startup--setup-quote-display):
6298         New function, refactored from a part of ‘command-line’.
6299         (command-line): Use it.
6300         * lisp/term/w32console.el (terminal-init-w32console):
6301         Use it, so that this function stays consistent with ‘command-line’.
6303         Display replacement quotes with shadow glyphs
6304         * lisp/startup.el (command-line): When displaying ASCII
6305         replacements for curved quotes, use a shadow glyph instead of a
6306         regular one, to avoid ambiguity.
6308 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
6310         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Mask "Password:".
6312 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
6314         Docstring fixes re quotes in C code
6315         Fix some docstring quoting problems, mostly by escaping apostrophe.
6317 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
6319         Some Tramp password fixes
6320         * lisp/net/tramp.el (tramp-clear-passwd): Clear also the passwords
6321         of the hops.
6322         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Move "-p" "Password:"
6323         at the beginning of the command.  Otherwise, it could be
6324         interpreted as password prompt if the remote host echoes the
6325         command.
6326         (tramp-remote-coding-commands): Add "openssl enc -base64".
6328 2015-09-01  Dmitry Gutov  <dgutov@yandex.ru>
6330         Make vc-git-working-revision always return the commit hash
6331         * lisp/vc/vc-git.el (vc-git-working-revision):
6332         Return the commit hash (bug#21383).
6333         (vc-git--symbolic-ref): New function, extracted from above.
6334         (vc-git-mode-line-string): Use it.
6336 2015-09-01  K. Handa  <handa@gnu.org>
6338         Use the new type MFLTGlyphFT for MFLTGlyphString.glyphs
6339         * src/ftfont.c (MFLTGlyphFT): New type.
6340         (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_drive_otf)
6341         (ftfont_shape_by_flt): Make MFLTGlyphFT the actual type of
6342         elements in the array MFLTGlyphString.glyphs.
6344 2015-09-01  Stephen Leake  <stephen_leake@stephe-leake.org>
6346         Improve comments in elisp-mode.el, elisp-mode-tests.el
6347         * lisp/progmodes/elisp-mode.el: Clean up FIXMEs, comments.
6349         Delete Emacs 25 test in mode-local.el
6350         * lisp/cedet/mode-local.el (describe-mode-local-overload):
6351         Fix missed an edit in previous commit.
6353         Show all known mode-local overrides in *Help*
6354         * lisp/cedet/mode-local.el (describe-mode-local-overload):
6355         Assume Emacs 25. Add all known mode-local overrides.
6357 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
6359         * lisp/gnus/gnus-sum.el (gnus-summary-search-article):
6360         Ensure that the article where the search word is found is displayed
6361         and pointed to in the summary buffer.
6363 2015-08-31  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
6365         * lisp/newcomment.el (comment-dwim): Use `use-region-p'.
6366         When the region is active, but is empty (length 0), act as though
6367         the region was not active; that is, put a comment at the end of
6368         the line.  (Bug#21119)
6370 2015-08-31  Katsumi Yamaoka  <yamaoka@jpl.org>
6372         Port tls.el to older Emacs
6373         * lisp/net/tls.el (tls-format-message):
6374         Alias to format-message, or format if not available.
6375         (open-tls-stream): Use it.
6377 2015-08-31  Rüdiger Sonderfeld  <ruediger@c-plusplus.net>
6379         hideif.el: Recognize .h++ as C++ header
6380         * lisp/progmodes/hideif.el (hide-ifdef-header-regexp): Add .h++.
6382         isearch: Document character folding mode
6383         * lisp/isearch.el (isearch-forward):
6384         Mention `isearch-toggle-character-fold' in doc string.
6386 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
6388         Quoting fixes in ERC and Eshell
6389         * lisp/erc/erc-autoaway.el (erc-autoaway-set-away):
6390         * lisp/erc/erc-backend.el (define-erc-response-handler):
6391         * lisp/erc/erc-fill.el (erc-fill-static-center):
6392         * lisp/eshell/em-dirs.el (eshell-save-some-last-dir):
6393         * lisp/eshell/em-glob.el (eshell-glob-entries):
6394         * lisp/eshell/em-hist.el (eshell-save-some-history):
6395         * lisp/eshell/em-unix.el (eshell-remove-entries, eshell/rm)
6396         (eshell-shuffle-files):
6397         * lisp/eshell/esh-cmd.el (eshell-do-eval):
6398         * lisp/eshell/esh-proc.el (eshell-process-interact)
6399         (eshell-query-kill-processes):
6400         Respect ‘text-quoting-style’ in diagnostics and doc strings.
6402         Quoting fixes in Gnus
6403         * lisp/gnus/gnus-agent.el:
6404         (gnus-agent-possibly-synchronize-flags-server):
6405         * lisp/gnus/gnus-art.el (gnus-article-browse-delete-temp-files):
6406         * lisp/gnus/gnus-eform.el (gnus-edit-form):
6407         * lisp/gnus/gnus-group.el (gnus-group-edit-group)
6408         (gnus-group-nnimap-edit-acl):
6409         * lisp/gnus/gnus-topic.el (gnus-topic-edit-parameters):
6410         * lisp/gnus/mail-source.el (mail-source-delete-old-incoming):
6411         * lisp/gnus/message.el (message-strip-subject-encoded-words)
6412         (message-check-recipients, message-send-form-letter):
6413         * lisp/gnus/mm-decode.el (mm-display-part):
6414         * lisp/gnus/mm-uu.el (mm-uu-pgp-signed-extract-1):
6415         * lisp/gnus/mml-smime.el (mml-smime-get-dns-cert)
6416         (mml-smime-get-ldap-cert):
6417         * lisp/gnus/spam-report.el (spam-report-process-queue):
6418         Respect ‘text-quoting-style’ in diagnostics.
6419         * lisp/gnus/gnus-art.el (article-display-face)
6420         * lisp/gnus/gnus-fun.el (gnus-display-x-face-in-from):
6421         Use straight quoting in email.
6422         * lisp/gnus/rfc2231.el (rfc2231-decode-encoded-string):
6423         Escape apostrophes in doc strings.
6425         Quoting fixes in lisp mail, mh-e, net, url
6426         * lisp/mail/emacsbug.el (report-emacs-bug)
6427         (report-emacs-bug-hook): Use straight quotes in outgoing email,
6428         * lisp/mail/feedmail.el (feedmail-message-action-help-blat):
6429         * lisp/mail/rmail.el (rmail-unknown-mail-followup-to):
6430         * lisp/mail/rmailout.el (rmail-output-read-file-name):
6431         * lisp/net/imap.el (imap-interactive-login):
6432         * lisp/net/tls.el (open-tls-stream):
6433         * lisp/url/url-auth.el (url-register-auth-scheme):
6434         Respect ‘text-quoting-style’ in diagnostics.
6435         * lisp/mh-e/mh-e.el (mh-sortm-args):
6436         Quote docstring example using text quotes, not as a Lisp quote.
6438 2015-08-31  Stephen Leake  <stephen_leake@stephe-leake.org>
6440         Fix some byte-compiler warnings in EDE
6441         This fixes a bug that caused ede-generic-new-autoloader to overwrite the
6442         existing autoloader list, rather than add to it.
6443         * lisp/cedet/ede/auto.el (ede-project-class-files): Delete obsolete name
6444         argument to eieio class constructor.
6445         (ede-show-supported-projects): New.
6446         (ede-add-project-autoload): Replace obsolete `eieio-object-name-string'
6447         with (oref ... name).
6448         (ede-auto-load-project): Use slot name, not initarg key.
6449         * lisp/cedet/ede/generic.el (ede-generic-load)
6450         (ede-generic-find-matching-target): Use slot name, not initarg key.
6451         (ede-find-target): Use oref-default on class name.
6452         (ede-generic-new-autoloader): Delete obsolete name argument to eieio
6453         class constructor.
6454         (ede-enable-generic-projects): Make project type names unique.
6456 2015-08-31  Eli Zaretskii  <eliz@gnu.org>
6458         Fix directory accessibility tests for w32 network volumes
6459         * src/w32.c (faccessat): Don't fail with network volumes without a
6460         share.
6461         (w32_accessible_directory_p): Handle network volumes without a
6462         share.
6464         Fix handling long file names in readdir on MS-Windows
6465         * src/w32.c (sys_readdir): Append "\*" to the directory after
6466         converting it to UTF-16/ANSI, not before, to avoid overflowing the
6467         260-character limit on file names in filename_to_utf16/ansi.
6469         Make file-accessible-directory-p reliable on MS-Windows
6470         * src/w32.c (w32_accessible_directory_p): New function.
6471         * src/w32.h (w32_accessible_directory_p): Add prototype.
6472         * src/fileio.c (file_accessible_directory_p) [WINDOWSNT]: Call
6473         w32_accessible_directory_p to test a directory for accessibility
6474         by the current user.  (Bug#21346)
6475         (Ffile_accessible_directory_p): Remove the w32 specific caveat
6476         from the doc string.
6478 2015-08-31  Martin Rudalics  <rudalics@gmx.at>
6480         Don't call do_pending_window_change in signal handlers (Bug#21380)
6481         * src/gtkutil.c (xg_frame_resized):
6482         * src/xterm.c (x_set_window_size):
6483         * src/w32term.c (x_set_window_size): Don't call
6484         do_pending_window_change.
6486 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
6488         Quoting fixes in lisp/org
6489         * lisp/org/org-agenda.el (org-search-view, org-todo-list)
6490         (org-tags-view):
6491         * lisp/org/org-capture.el (org-capture-mode)
6492         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
6493         (org-ctags-ask-append-topic):
6494         * lisp/org/org.el (org-time-string-to-time)
6495         (org-time-string-to-absolute):
6496         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
6497         (org-ctags-ask-append-topic):
6498         * lisp/org/org.el (org-time-string-to-time)
6499         (org-time-string-to-absolute):
6500         Respect ‘text-quoting-style’ in diagnostics.
6501         * lisp/org/org-agenda.el (org-agenda-custom-commands)
6502         (org-agenda-dim-blocked-tasks): Plural of TODO is TODOs, not TODO’s.
6503         * lisp/org/org-capture.el (org-capture-fill-template):
6504         Avoid contraction in output file that might be ASCII.
6505         * lisp/org/org-compat.el (format-message):
6506         Define if not already defined, for backward compatibility.
6507         * lisp/org/org-src.el (org-edit-src-save):
6508         * lisp/org/org.el (org-cycle, org-ctrl-c-ctrl-c):
6509         Escape apostrophes in diagnostics.
6511         Treat “instead” strings as docstrings
6512         * lisp/emacs-lisp/bytecomp.el (byte-compile-form):
6513         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
6514         Substitute quotes in instead strings.
6516 2015-08-31  Nicolas Petton  <nicolas@petton.fr>
6518         Better documentation of seq-let
6519         * doc/lispref/sequences.texi (Sequence Functions): Rephrase the
6520         documentation of seq-let.
6522 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
6524         * lisp/international/ccl.el: Fix quoting.
6526         Quoting fixes in lisp/international and lisp/leim
6527         * lisp/international/ccl.el (ccl-dump, ccl-dump-call):
6528         * lisp/international/ja-dic-utl.el (skkdic-lookup-key):
6529         * lisp/international/mule-cmds.el:
6530         (select-safe-coding-system-interactively, leim-list-file-name):
6531         * lisp/international/quail.el (quail-use-package, quail-help):
6532         * lisp/international/titdic-cnv.el (tit-process-header)
6533         (miscdic-convert):
6534         Respect text quoting style in doc strings and diagnostics.
6535         * lisp/international/quail.el (lisp/international/quail.el):
6536         * lisp/leim/quail/ethiopic.el ("ethiopic"):
6537         Escape apostrophes in doc strings.
6539         Make ‘text-quoting-style’ a plain defvar
6540         It doesn’t need customization, as it’s likely useful only by experts.
6541         Suggested by Stefan Monnier in:
6542         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg01020.html
6543         * lisp/cus-start.el: Remove doc.c section for builtin customized vars.
6545         Quoting fixes in lisp/textmodes
6546         * lisp/textmodes/bibtex.el (bibtex-validate)
6547         (bibtex-validate-globally, bibtex-search-entries):
6548         * lisp/textmodes/ispell.el (ispell-command-loop):
6549         * lisp/textmodes/page-ext.el (search-pages, pages-directory):
6550         * lisp/textmodes/texinfmt.el (texinfmt-version)
6551         (texinfo-format-region, texinfo-format-buffer-1):
6552         * lisp/textmodes/two-column.el (2C-split):
6553         Respect text quoting style in doc strings and diagnostics.
6554         * lisp/textmodes/conf-mode.el (conf-mode-map, conf-quote-normal):
6555         * lisp/textmodes/sgml-mode.el (sgml-specials, sgml-mode):
6556         Escape apostrophes in doc strings.
6558         Documentation fixes re quotes
6559         Prefer curved quotes in examples if users will typically see
6560         curved quotes when the examples run.
6561         Mention format-message when appropriate.
6562         Don’t use @code in examples.
6563         Quote an apostrophe with @kbd.
6565         Quoting fixes in lisp/progmodes
6566         * lisp/progmodes/cc-engine.el (c-bos-report-error):
6567         * lisp/progmodes/cpp.el (cpp-edit-reset):
6568         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
6569         * lisp/progmodes/etags.el (etags-tags-apropos-additional)
6570         (etags-tags-apropos, list-tags, tags-apropos):
6571         * lisp/progmodes/executable.el (executable-set-magic):
6572         * lisp/progmodes/octave.el (octave-sync-function-file-names)
6573         (octave-help, octave-find-definition-default-filename)
6574         (octave-find-definition):
6575         Respect text quoting style in doc strings and diagnostics.
6576         * lisp/progmodes/cc-langs.el (c-populate-syntax-table):
6577         * lisp/progmodes/verilog-mode.el (verilog-auto-reset-widths):
6578         * lisp/progmodes/vhdl-mode.el (vhdl-electric-quote):
6579         Escape apostrophes in doc strings.
6580         * lisp/progmodes/cmacexp.el (c-macro-expansion):
6581         Use straight quoting in ASCII comment.
6582         * lisp/progmodes/idlwave.el (idlwave-auto-fill-split-string)
6583         (idlwave-pad-keyword):
6584         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate)
6585         (vhdl-electric-open-bracket, vhdl-electric-close-bracket):
6586         (vhdl-electric-semicolon, vhdl-electric-comma)
6587         (vhdl-electric-period, vhdl-electric-equal):
6588         Use directed quotes in diagnostics and doc strings.
6590 2015-08-30  Xue Fuqiao  <xfq.free@gmail.com>
6592         Minor documentation and NEWS tweak
6593         * doc/lispintro/emacs-lisp-intro.texi (fwd-para let):
6594         Add an index entry.
6595         * etc/NEWS: Fix a typo in character-fold-to-regexp.
6597 2015-08-30  Michael Albinus  <michael.albinus@gmx.de>
6599         * lisp/net/tramp-sh.el (tramp-convert-file-attributes):
6600         Revert patch from 2015-08-24.  Tramp shall behave like for local files.
6601         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
6602         Adapt test.
6604 2015-08-30  Paul Eggert  <eggert@cs.ucla.edu>
6606         Text quoting fixes in cedet, emulation, emacs-lisp
6607         * lisp/cedet/ede.el (ede-check-project-directory):
6608         * lisp/cedet/semantic/analyze/debug.el
6609         (semantic-analyzer-debug-insert-include-summary):
6610         * lisp/cedet/semantic/bovine/c.el (semantic-c-describe-environment):
6611         * lisp/cedet/semantic/decorate/include.el
6612         (semantic-decoration-unknown-include-describe)
6613         (semantic-decoration-all-include-summary):
6614         * lisp/cedet/semantic/ia.el (semantic-ia-fast-jump):
6615         * lisp/emulation/edt.el (edt-load-keys):
6616         * lisp/emulation/viper-cmd.el
6617         (viper-display-current-destructive-command)
6618         (viper-query-replace, viper-brac-function):
6619         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-compile):
6620         * lisp/emulation/viper-macs.el (viper-unrecord-kbd-macro):
6621         Respect text quoting style in doc string or diagnostic.
6622         * lisp/cedet/mode-local.el (describe-mode-local-overload):
6623         Use format-message to avoid overtranslating quotes.
6624         * lisp/emacs-lisp/checkdoc.el (checkdoc-in-sample-code-p):
6625         Escape an apostrophe in a docstring.
6626         * lisp/emacs-lisp/warnings.el (lwarn): Fix doc string.
6628 2015-08-29  Daniel Colascione  <dancol@dancol.org>
6630         Fix which-func for curly quotes: look for symbol, not message
6631         * lisp/progmodes/which-func.el (which-func-ff-hook): Look for new
6632         imenu-unavailable error symbol instead of trying to match message
6633         exactly.
6634         * lisp/imenu.el (imenu-unavailable): New error.
6635         (imenu-unavailable-error): New function.
6637 2015-08-29  Eli Zaretskii  <eliz@gnu.org>
6639         Fix Python tests on MS-Windows
6640         * test/automated/python-tests.el
6641         (python-shell-calculate-command-1): Run python-shell-interpreter
6642         through shell-quote-argument before comparing with what
6643         python-shell-calculate-command returns.
6644         (python-shell-calculate-pythonpath-1)
6645         (python-shell-calculate-pythonpath-2)
6646         (python-shell-calculate-process-environment-2): Use path-separator
6647         instead of a literal ':'.
6648         (python-shell-calculate-exec-path-2)
6649         (python-shell-calculate-exec-path-3)
6650         (python-shell-calculate-exec-path-4)
6651         (python-shell-with-environment-1)
6652         (python-shell-with-environment-2): Run "/env/bin" through
6653         expand-file-name before comparing with exec-path.  (Bug#21375)
6655 2015-08-29  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
6657         Use Core Text types/functions/variables/enumerators directly
6658         * src/macfont.h (FontDescriptorRef, FontRef, FontSymbolicTraits)
6659         (CharacterCollection): Remove typedefs.  All uses replaced with
6660         definitions.
6661         (MAC_FONT_NAME_ATTRIBUTE, MAC_FONT_FAMILY_NAME_ATTRIBUTE)
6662         (MAC_FONT_TRAITS_ATTRIBUTE, MAC_FONT_SIZE_ATTRIBUTE)
6663         (MAC_FONT_CASCADE_LIST_ATTRIBUTE)
6664         (MAC_FONT_CHARACTER_SET_ATTRIBUTE, MAC_FONT_LANGUAGES_ATTRIBUTE)
6665         (MAC_FONT_FORMAT_ATTRIBUTE, MAC_FONT_SYMBOLIC_TRAIT)
6666         (MAC_FONT_WEIGHT_TRAIT, MAC_FONT_WIDTH_TRAIT)
6667         (MAC_FONT_SLANT_TRAIT): Remove macros.  All uses replaced with
6668         definitions.
6669         (MAC_FONT_TRAIT_ITALIC, MAC_FONT_TRAIT_BOLD)
6670         (MAC_FONT_TRAIT_MONO_SPACE, MAC_FONT_TRAIT_COLOR_GLYPHS)
6671         (MAC_FONT_FORMAT_BITMAP)
6672         (MAC_CHARACTER_COLLECTION_IDENTITY_MAPPING)
6673         (MAC_CHARACTER_COLLECTION_ADOBE_JAPAN1): Remove enumerators.
6674         All uses replaced with definitions.
6675         (kCTFontTraitItalic, kCTFontTraitBold, kCTFontTraitMonoSpace)
6676         (kCTFontTraitColorGlyphs, kCTCharacterCollectionIdentityMapping)
6677         (kCTCharacterCollectionAdobeJapan1 kCTFontOrientationDefault):
6678         Add compatibility enumerators for older versions.
6679         (mac_font_descriptor_create_with_attributes)
6680         (mac_font_descriptor_create_matching_font_descriptors)
6681         (mac_font_descriptor_create_matching_font_descriptor)
6682         (mac_font_descriptor_copy_attribute)
6683         (mac_font_descriptor_supports_languages)
6684         (mac_font_create_with_name, mac_font_get_size)
6685         (mac_font_copy_family_name, mac_font_copy_character_set)
6686         (mac_font_get_glyphs_for_characters, mac_font_get_ascent)
6687         (mac_font_get_descent, mac_font_get_leading)
6688         (mac_font_get_underline_position)
6689         (mac_font_get_underline_thickness, mac_font_copy_graphics_font)
6690         (mac_font_copy_non_synthetic_table): Remove macros.  All uses
6691         replaced with definitions.
6692         (mac_font_create_preferred_family_for_attributes)
6693         (mac_font_get_advance_width_for_glyph)
6694         (mac_font_get_bounding_rect_for_glyph)
6695         (mac_font_create_available_families, mac_font_shape):
6696         Remove macros for renamed functions.
6697         (mac_nsctfont_copy_font_descriptor): Remove unused macro.
6698         * src/macterm.m (mac_font_descriptor_supports_languages):
6699         Rename from mac_ctfont_descriptor_supports_languages.
6700         (mac_font_create_preferred_family_for_attributes): Rename from
6701         mac_ctfont_create_preferred_family_for_attributes.
6702         (mac_font_get_advance_width_for_glyph): Rename from
6703         mac_ctfont_get_advance_width_for_glyph.
6704         Use kCTFontOrientationDefault also for older versions.
6705         (mac_font_get_bounding_rect_for_glyph): Rename from
6706         mac_ctfont_get_bounding_rect_for_glyph.
6707         Use kCTFontOrientationDefault also for older versions.
6708         (mac_font_create_available_families): Rename from
6709         mac_ctfont_create_available_families.
6710         (mac_font_equal_in_postscript_name): Rename from
6711         mac_ctfont_equal_in_postscript_name.  All uses changed.
6712         (mac_font_create_line_with_string_and_font): Rename from
6713         mac_ctfont_create_line_with_string_and_font.  All uses changed.
6714         (mac_font_shape): Rename from mac_ctfont_shape.
6715         (mac_font_family_compare): Remove unused declaration.
6717 2015-08-29  Paul Eggert  <eggert@cs.ucla.edu>
6719         Fix minor text quoting in calc, calendar, vc
6720         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
6721         * lisp/calc/calc-help.el (calc-j-prefix-help):
6722         * lisp/calc/calc-misc.el (calc-help):
6723         * lisp/calc/calc.el (calc-algebraic-mode, calc-mode):
6724         Escape an apostrophe in a docstring.
6725         * lisp/calc/calc-forms.el (calc-hms-notation):
6726         * lisp/calc/calc-mode.el (calc-display-raw, calc-algebraic-mode):
6727         Escape an apostrophe in a diagnostic.
6728         * lisp/calc/calc-misc.el (calc-help):
6729         * lisp/calendar/diary-lib.el (diary-include-files):
6730         * lisp/calendar/todo-mode.el (todo-prefix, todo-item-mark):
6731         * lisp/vc/diff-mode.el (diff-delete-trailing-whitespace):
6732         * lisp/vc/ediff-diff.el (ediff-same-contents):
6733         * lisp/vc/ediff-merg.el (ediff-re-merge):
6734         * lisp/vc/ediff-ptch.el (ediff-patch-file-internal):
6735         * lisp/vc/ediff-util.el (ediff-test-save-region)
6736         (ediff-status-info):
6737         * lisp/vc/ediff.el (ediff-merge-revisions)
6738         (ediff-merge-revisions-with-ancestor):
6739         * lisp/vc/pcvs.el (cvs-mode-checkout, cvs-vc-command-advice):
6740         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
6741         Respect text quoting style in doc string or diagnostic.
6742         * lisp/calc/calc-prog.el (calc-kbd-push, calc-kbd-pop):
6743         * lisp/vc/add-log.el (change-log-goto-source):
6744         Avoid double-formatting.
6745         * lisp/vc/ediff-init.el (format-message):
6746         New backward-compatibility alias.
6748 2015-08-28  Paul Eggert  <eggert@cs.ucla.edu>
6750         Fix minor text quoting problems in lisp top level
6751         * lisp/apropos.el (apropos-describe-plist):
6752         * lisp/cus-theme.el (customize-themes):
6753         * lisp/dired.el (dired-log):
6754         * lisp/help-fns.el (describe-variable):
6755         * lisp/hexl.el (hexl-insert-multibyte-char):
6756         * lisp/info.el (Info-finder-find-node):
6757         * lisp/json.el (json-read-string):
6758         * lisp/novice.el (disabled-command-function)
6759         (disabled-command-function):
6760         * lisp/startup.el (normal-mouse-startup-screen):
6761         * lisp/woman.el (WoMan-log, WoMan-warn):
6762         Respect text quoting style in doc string or diagnostic.
6763         * lisp/replace.el (replace-character-fold):
6764         * src/syntax.c (Fmodify_syntax_entry):
6765         Escape an apostrophe in a docstring.
6766         * lisp/tempo.el (tempo-define-template):
6767         Remove confusing apostrophe from docstring.
6768         * lisp/whitespace.el (whitespace-mark-x):
6769         Use directed quotes in docstring.
6771 2015-08-28  Simen Heggestøyl  <simenheg@gmail.com>
6773         Fix indentation rule in css-mode
6774         * lisp/textmodes/css-mode.el (css-smie-rules): Fix indentation of
6775         brackets in presence of pseudo-selectors.  (Bug#21328)
6777 2015-08-28  Eli Zaretskii  <eliz@gnu.org>
6779         Fix a bug in recording a macro while flyspell-mode is active
6780         * lisp/subr.el (sit-for): Don't call read-event when recording a
6781         macro.  (Bug#21329)
6783 2015-08-27  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
6785         Tweak startup screen quoting
6786         * lisp/startup.el (normal-splash-screen): Use standard
6787         "M-" abbrevation rather than a confusingly-different one.
6788         (normal-no-mouse-startup-screen): Follow ‘text-quoting-style’.
6790 2015-08-27  Paul Eggert  <eggert@cs.ucla.edu>
6792         Add test case for ‘format’ bug and refactor
6793         * src/editfns.c (styled_format): Refactor internally, mostly by
6794         moving declarations closer to uses.  This should not affect behavior.
6795         * test/automated/textprop-tests.el (textprop-tests-format): New test.
6797         Fix ‘format’ bug with property offsets
6798         * src/editfns.c (styled_format): Fix recently-introduced ‘format’
6799         bug in calculating string property offsets (Bug#21351).
6801         Use straight quotes in lib-src diagnostics
6802         These auxiliary programs can’t use Emacs’s text-quoting-style,
6803         and it’s too much trouble to redo that mechanism by hand.
6804         So just use straight quotes for now.
6805         * lib-src/ebrowse.c (main):
6806         * lib-src/emacsclient.c (decode_options, main):
6807         * lib-src/etags.c (Ada_help, default_C_help, Cplusplus_help)
6808         (Forth_help, HTML_help, Lisp_help, Makefile_help, Objc_help)
6809         (Perl_help, PHP_help, Python_help, Scheme_help, TeX_help, auto_help)
6810         (none_help, print_language_names, print_help, add_regex)
6811         (suggest_asking_for_help):
6812         * lib-src/make-docfile.c (write_c_args, scan_c_stream):
6813         Use straight quotes in diagnostics.
6815         ‘text-quoting-style’ fixes for admin
6816         * admin/admin.el (cusver-scan, cusver-check):
6817         * admin/authors.el (authors-canonical-file-name):
6818         * admin/bzrmerge.el (bzrmerge-missing):
6819         Respect ‘text-quoting-style’ in diagnostics.
6821 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
6823         Assume GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS
6824         This removes the need for GCPRO1 etc.  Suggested by Stefan Monnier in:
6825         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00918.html
6826         * doc/lispref/internals.texi (Writing Emacs Primitives):
6827         * etc/NEWS:
6828         Document the change.
6829         * src/alloc.c (gcprolist, dump_zombies, MAX_ZOMBIES, zombies)
6830         (nzombies, ngcs, avg_zombies, max_live, max_zombies, avg_live)
6831         (Fgc_status, check_gcpros, relocatable_string_data_p, gc-precise):
6832         * src/bytecode.c (mark_byte_stack) [BYTE_MARK_STACK]:
6833         * src/eval.c (gcpro_level) [DEBUG_GCPRO]:
6834         * src/lisp.h (struct handler.gcpro, struct gcpro, GC_MARK_STACK)
6835         (GC_USE_GCPROS_AS_BEFORE, GC_MAKE_GCPROS_NOOPS)
6836         (GC_MARK_STACK_CHECK_GCPROS, GC_USE_GCPROS_CHECK_ZOMBIES)
6837         (BYTE_MARK_STACK, GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5, GCPRO6)
6838         (GCPRO7, UNGCPRO, RETURN_UNGCPRO):
6839         Remove.  All uses removed.  The code now assumes
6840         GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS.
6841         * src/bytecode.c (relocate_byte_stack):
6842         Rename from unmark_byte_stack, since it now only relocates.
6843         All callers changed.
6844         * src/frame.c (make_frame): Add an IF_LINT to pacify GCC 5.2
6845         with GCPROs removed.
6846         * src/systime.h: Use EMACS_LISP_H as the canary instead of GCPRO1.
6847         * test/automated/finalizer-tests.el (finalizer-basic)
6848         (finalizer-circular-reference, finalizer-cross-reference)
6849         (finalizer-error):
6850         * test/automated/generator-tests.el (cps-test-iter-close-finalizer):
6851         Remove tests, as they depend on gc-precise.
6853 2015-08-26  Nicolas Petton  <nicolas@petton.fr>
6855         Improve seq-concatenate for new sequence types
6856         Use the new `seq-into-sequence' in seqs passed to `seq-concatenate' to
6857         ensure that concatenation happens on sequences only.  This makes it
6858         possible to use `seq-concatenate' for new types of seqs.
6859         * lisp/emacs-lisp/seq.el (seq-into-sequence, seq-concatenate):
6860         New function used in `seq-concatenate'.
6861         * test/automated/seq-tests.el (test-seq-into-sequence): New unit test
6862         for seq-into-sequence.
6864 2015-08-26  Stephen Leake  <stephen_leake@stephe-leake.org>
6866         Add mode local overrides to xref-find-definitions
6867         * lisp/cedet/mode-local.el (xref-mode-local--override-present)
6868         (xref-mode-local-overload): New; add mode local overrides to
6869         xref-find-definitions.
6870         * test/automated/elisp-mode-tests.el: Add mode local override tests.
6871         (xref-elisp-test-run): Handle indented defuns.
6872         (xref-elisp-generic-*): Improve doc strings.
6873         * lisp/progmodes/elisp-mode.el (elisp-xref-find-def-functions): New.
6874         (elisp--xref-find-definitions): Use it.
6876         Add mode local overrides to describe-function
6877         * lisp/cedet/mode-local.el (describe-mode-local-overload):
6878         New; add mode local overrides to describe-function.
6879         * etc/NEWS: Document change.
6881 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
6883         Prefer straight quoting in some etc text files
6884         These files are plain text and might be used by non-Emacs apps.
6885         They’re mostly ASCII, so just use straight quotes.
6887         Fix quoting in ‘message_with_string’
6888         * src/nsfont.m (nsfont_open): Use directed quotes in format; they
6889         should work now.
6890         * src/xdisp.c (message_to_stderr): New function, refactored from
6891         part of ‘message3_nolog’.
6892         (message3_nolog): Use it.
6893         (message_with_string): Use it.  Don’t mishandle NUL bytes when
6894         noninteractive.  Prefer AUTO_STRING when it’s most likely faster.
6895         Use ‘format-message’, not ‘format’, so that quotes are translated.
6897 2015-08-26  Eli Zaretskii  <eliz@gnu.org>
6899         Mention false positives of file-accessible-directory on w32
6900         * src/fileio.c (Ffile_accessible_directory_p): Doc fix.
6901         (Bug#21346)
6903 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
6905         Treat error strings as help
6906         * src/print.c (print_error_message): Translate quotes and command
6907         keys in errmsg so that users see, e.g., "Symbol’s value as
6908         variable is void: foo" when text-quoting-style is curved.
6910 2015-08-26  Michael Albinus  <michael.albinus@gmx.de>
6912         * lisp/net/tramp-cache.el (top): Use `message', not `format-message'.
6914 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
6916         Top-level elisp files respect ‘text-quoting-style’
6917         In top-level elisp files, use format-message in diagnostic formats,
6918         so that they follow user preference as per ‘text-quoting-style’
6919         rather than being hard-coded to quote `like this'.
6920         * lisp/allout.el (allout-get-configvar-values):
6921         * lisp/apropos.el (apropos-symbols-internal):
6922         * lisp/dired-aux.el (dired-do-shell-command, dired-create-files)
6923         (dired-do-create-files-regexp, dired-create-files-non-directory):
6924         * lisp/dired-x.el (dired-do-run-mail):
6925         * lisp/dired.el (dired-log, dired-dnd-handle-local-file):
6926         * lisp/disp-table.el (standard-display-european):
6927         * lisp/find-dired.el (find-dired):
6928         * lisp/forms.el (forms-mode):
6929         * lisp/ido.el (ido-buffer-internal):
6930         * lisp/info.el (Info-index-next):
6931         * lisp/outline.el (outline-invent-heading):
6932         * lisp/printing.el (pr-ps-outfile-preprint, pr-i-ps-send):
6933         * lisp/proced.el (proced-log):
6934         * lisp/ps-print.el (ps-print-preprint, ps-get-size):
6935         * lisp/recentf.el (recentf-open-files, recentf-save-list):
6936         * lisp/savehist.el (savehist-save):
6937         * lisp/server.el (server-ensure-safe-dir):
6938         * lisp/ses.el (ses-rename-cell):
6939         * lisp/simple.el (list-processes--refresh):
6940         * lisp/startup.el (command-line):
6941         * lisp/strokes.el (strokes-unset-last-stroke)
6942         (strokes-execute-stroke):
6943         Use format-message so that quotes are restyled.
6944         * lisp/cus-edit.el (custom-raised-buttons, customize-browse):
6945         Don’t quote ‘raised’.
6946         * lisp/descr-text.el (describe-char):
6947         * lisp/dirtrack.el (dirtrack-debug-message):
6948         * lisp/hexl.el (hexl-insert-multibyte-char):
6949         Apply substitute-command-keys to help string.
6950         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
6951         (wdired-do-perm-changes):
6952         Let dired-log do the formatting.
6954 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
6956         Go back to grave quoting in Tramp
6957         * lisp/net/tramp-adb.el:
6958         * lisp/net/tramp-cache.el:
6959         * lisp/net/tramp-compat.el:
6960         * lisp/net/tramp-gvfs.el:
6961         * lisp/net/tramp-gw.el:
6962         * lisp/net/tramp-sh.el:
6963         * lisp/net/tramp-smb.el:
6964         * lisp/net/tramp.el:
6965         Stick with grave quoting in diagnostics strings.  This is more
6966         portable to older Emacs, desirable for Tramp.
6967         * lisp/net/tramp-cache.el: Use ‘format-message’, not ‘format’,
6968         for diagnostic that needs requoting.
6969         * lisp/net/tramp-compat.el (format-message):
6970         Fall back on simple ‘format’, since that’s good enough now.
6972         Go back to grave quoting in Gnus
6973         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
6974         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
6975         (gnus-agent-fetch-headers):
6976         * lisp/gnus/gnus-int.el (gnus-start-news-server):
6977         * lisp/gnus/gnus-registry.el:
6978         (gnus-registry--split-fancy-with-parent-internal)
6979         (gnus-registry-post-process-groups):
6980         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
6981         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
6982         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
6983         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
6984         * lisp/gnus/spam.el (spam-check-blackholes):
6985         Stick with grave quoting in diagnostics strings.  This is more
6986         portable to older Emacs, desirable for Gnus.
6988         Fix customization of text-quoting-style
6989         * lisp/cus-edit.el (custom-guess-type, custom-variable-documentation):
6990         * lisp/wid-edit.el (widget-docstring):
6991         Get raw docstring here since it’s cooked later and should not be
6992         cooked twice.
6993         * lisp/cus-edit.el (custom-group-value-create):
6994         Cook the docstring before inserting it.
6995         * lisp/cus-start.el (text-quoting-style): Quote the customization
6996         docstrings according to the new rules.  Give curved examples.
6998         format-message now curves ` and '
6999         That way, the caller doesn’t have to use curved quotes to
7000         get diagnostics that match the text-quoting-style preferences.
7001         Suggested by Dmitry Gutov in:
7002         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00893.html
7003         This means we no longer need %qs, so remove that format.
7004         While we’re at it, fix an unlikely bug and lessen the pressure
7005         on the garbage collector by processing the string once rather
7006         than twice in the usual case.
7007         * doc/lispref/strings.texi (Formatting Strings):
7008         * etc/NEWS: Document this.
7009         * lisp/subr.el (format-message): Remove; now done in C.
7010         * src/callint.c (Fcall_interactively):
7011         * src/editfns.c (Fmessage, Fmessage_box):
7012         Use Fformat_message instead of Finternal__text_restyle
7013         followed by Fformat.
7014         * src/doc.c (LSQM, RSQM): Remove; all uses changed to use
7015         uLSQM and uRSQM.
7016         (Fsubstitute_command_keys): Prefer AUTO_STRING to build_string
7017         when pure ASCII now suffices.  Fix unlikely bug when parsing
7018         unibyte string containing non-ASCII bytes.  Use inline code
7019         rather than memcpy, as it’s a tiny number of bytes.
7020         (Finternal__text_restyle): Remove; no longer used.
7021         (syms_of_doc): Don’t declare it.
7022         * src/editfns.c (Fformat): Rewrite in terms of new function
7023         ‘styled_format’.
7024         (Fformat_message): New function, moved here from subr.el.
7025         (styled_format): New function, with the old guts of Fformat,
7026         except it now optionally transliterates quotes, and it transliterates
7027         traditional grave accent and apostrophe quoting as well.
7028         Remove recently-added q flag; no longer needed or used.
7029         (syms_of_editfns): Define format-message.
7030         * src/lisp.h (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
7031         Remove; no longer need to be global symbols.
7032         * src/xdisp.c (vadd_to_log): Use Fformat_message, not Fformat,
7033         so that callers can use `%s'.
7034         * src/image.c (image_size_error, xbm_load_image, xbm_load)
7035         (xpm_load, pbm_load, png_load_body, jpeg_load_body, tiff_load)
7036         (gif_load, imagemagick_load_image, imagemagick_load, svg_load)
7037         (svg_load_image, gs_load, x_kill_gs_process):
7038         * src/lread.c (load_warn_old_style_backquotes):
7039         * src/xfaces.c (load_pixmap):
7040         * src/xselect.c (x_clipboard_manager_error_1):
7041         Use `%s' instead of %qs in formats.
7043 2015-08-25  Eli Zaretskii  <eliz@gnu.org>
7045         Minor fixes in doc/emacs/search.texi
7046         * doc/emacs/search.texi (Basic Isearch): Fix a typo.
7047         (Special Isearch): Use @w{} to generate several consecutive spaces
7048         with Texinfo 6.  (Bug#21345)
7050 2015-08-25  Michael Albinus  <michael.albinus@gmx.de>
7052         * lisp/net/tramp-sh.el (tramp-awk-encode, tramp-awk-decode)
7053         (tramp-awk-coding-test): New defconsts.
7054         (tramp-remote-coding-commands): Use them.
7055         (tramp-find-inline-encoding): Check for Perl only if necessary.
7057 2015-08-25  Xue Fuqiao  <xfq.free@gmail.com>
7059         * doc/lispintro/emacs-lisp-intro.texi (Run a Program): Add some
7060         index entries for the special form `quote'.
7062 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
7064         Spelling fixes
7066         Gnus format-message typo fix
7067         * lisp/gnus/gnus-util.el (gnus-format-message):
7068         Fix typo when running in older Emacs.
7070         Prefer directed to neutral quotes in docstings and diagnostics.
7071         In docstrings, escape apostrophes that would otherwise be translated
7072         to curved quotes using the newer, simpler rules.
7073         * admin/unidata/unidata-gen.el (unidata-gen-table):
7074         * lisp/align.el (align-region):
7075         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet):
7076         * lisp/bookmark.el (bookmark-default-annotation-text):
7077         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
7078         * lisp/calc/calc-lang.el (math-read-giac-subscr)
7079         (math-read-math-subscr):
7080         * lisp/calc/calc-misc.el (report-calc-bug):
7081         * lisp/calc/calc-prog.el (calc-fix-token-name)
7082         (calc-read-parse-table-part):
7083         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
7084         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
7085         * lisp/dabbrev.el (dabbrev-expand):
7086         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
7087         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
7088         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
7089         * lisp/emulation/viper-cmd.el (viper-toggle-search-style):
7090         * lisp/erc/erc-button.el (erc-nick-popup):
7091         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login):
7092         * lisp/eshell/em-dirs.el (eshell/cd):
7093         * lisp/eshell/em-glob.el (eshell-glob-regexp):
7094         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
7095         * lisp/eshell/esh-arg.el (eshell-parse-arguments):
7096         * lisp/eshell/esh-opt.el (eshell-show-usage):
7097         * lisp/files-x.el (modify-file-local-variable):
7098         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer)
7099         (filesets-update-pre010505):
7100         * lisp/find-cmd.el (find-generic, find-to-string):
7101         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
7102         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
7103         (gnus-agent-fetch-headers):
7104         * lisp/gnus/gnus-int.el (gnus-start-news-server):
7105         * lisp/gnus/gnus-registry.el:
7106         (gnus-registry--split-fancy-with-parent-internal):
7107         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
7108         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
7109         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
7110         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
7111         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
7112         * lisp/gnus/spam.el (spam-check-blackholes):
7113         * lisp/mail/feedmail.el (feedmail-run-the-queue):
7114         * lisp/mpc.el (mpc-playlist-rename):
7115         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
7116         * lisp/net/mairix.el (mairix-widget-create-query):
7117         * lisp/net/tramp-cache.el:
7118         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
7119         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
7120         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
7121         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
7122         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
7123         (org-babel-goto-named-result):
7124         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
7125         * lisp/org/ob-ref.el (org-babel-ref-resolve):
7126         * lisp/org/org-agenda.el (org-agenda-prepare):
7127         * lisp/org/org-bibtex.el (org-bibtex-fields):
7128         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
7129         (org-clock-resolve):
7130         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
7131         * lisp/org/org-habit.el (org-habit-parse-todo):
7132         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
7133         (org-mouse-context-menu):
7134         * lisp/org/org-table.el (org-table-edit-formulas):
7135         * lisp/org/ox.el (org-export-async-start):
7136         * lisp/play/dunnet.el (dun-score, dun-help, dun-endgame-question)
7137         (dun-rooms, dun-endgame-questions):
7138         * lisp/progmodes/ada-mode.el (ada-goto-matching-start):
7139         * lisp/progmodes/ada-xref.el (ada-find-executable):
7140         * lisp/progmodes/antlr-mode.el (antlr-options-alists):
7141         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
7142         (flymake-start-syntax-check-process):
7143         * lisp/progmodes/python.el (python-define-auxiliary-skeleton):
7144         * lisp/progmodes/sql.el (sql-comint):
7145         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
7146         * lisp/server.el (server-get-auth-key):
7147         * lisp/subr.el (version-to-list):
7148         * lisp/textmodes/reftex-ref.el (reftex-label):
7149         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
7150         * lisp/vc/ediff-diff.el (ediff-same-contents):
7151         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
7152         * test/automated/tramp-tests.el (tramp-test33-asynchronous-requests):
7153         Use directed rather than neutral quotes in diagnostics.
7155         Treat ' like ’ even when not matching `
7156         This is simpler and easier to explain, and should encourage better
7157         typography.  Do this in Electric Quote mode and when translating
7158         quotes in docstrings.  Inspired by a suggestion by Dmitry Gutov in:
7159         https://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00806.html
7160         * doc/emacs/text.texi (Quotation Marks):
7161         * doc/lispref/help.texi (Keys in Documentation):
7162         * etc/NEWS:
7163         Document this.
7164         * lisp/electric.el (electric-quote-post-self-insert-function):
7165         * src/doc.c (Fsubstitute_command_keys):
7166         Always treat ' like ’ even when not matched by an open quote.
7168 2015-08-25  Glenn Morris  <rgm@gnu.org>
7170         * doc/emacs/cal-xtra.texi (Holiday Customizing): Fix typo in example.
7171         * lisp/calendar/holidays.el (calendar-holidays): Fix doc typo.
7173 2015-08-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
7175         * src/macfont.m (macfont_create_family_with_symbol):
7176         Accept localized names.
7178 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
7180         Tramp diagnostics as per ‘text-quoting-style’
7181         * lisp/net/tramp-adb.el (tramp-adb-handle-file-truename)
7182         (tramp-adb-get-ls-command, tramp-adb-handle-make-directory)
7183         (tramp-adb-handle-delete-directory)
7184         (tramp-adb-handle-delete-file)
7185         (tramp-adb-handle-file-local-copy)
7186         (tramp-adb-handle-write-region, tramp-adb-handle-copy-file)
7187         (tramp-adb-send-command-and-check, tramp-adb-wait-for-output)
7188         (tramp-adb-maybe-open-connection):
7189         * lisp/net/tramp-cache.el:
7190         * lisp/net/tramp-compat.el (tramp-compat-temporary-file-directory)
7191         (tramp-compat-octal-to-decimal)
7192         (tramp-compat-coding-system-change-eol-conversion):
7193         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler)
7194         (tramp-gvfs-do-copy-or-rename-file)
7195         (tramp-gvfs-handle-delete-directory)
7196         (tramp-gvfs-handle-delete-file)
7197         (tramp-gvfs-handle-expand-file-name)
7198         (tramp-gvfs-handle-file-local-copy)
7199         (tramp-gvfs-handle-file-notify-add-watch)
7200         (tramp-gvfs-handle-make-directory)
7201         (tramp-gvfs-handle-write-region, tramp-gvfs-url-file-name):
7202         * lisp/net/tramp-gw.el (tramp-gw-gw-proc-sentinel)
7203         (tramp-gw-aux-proc-sentinel, tramp-gw-open-connection):
7204         * lisp/net/tramp-sh.el (tramp-sh-handle-file-truename)
7205         (tramp-sh-handle-set-visited-file-modtime)
7206         (tramp-sh-handle-set-file-modes)
7207         (tramp-sh-handle-file-name-all-completions)
7208         (tramp-sh-handle-add-name-to-file, tramp-do-copy-or-rename-file)
7209         (tramp-do-copy-or-rename-file-directly)
7210         (tramp-do-copy-or-rename-file-out-of-band)
7211         (tramp-sh-handle-make-directory)
7212         (tramp-sh-handle-delete-directory, tramp-sh-handle-delete-file)
7213         (tramp-sh-handle-insert-directory, tramp-process-sentinel)
7214         (tramp-sh-handle-start-file-process)
7215         (tramp-sh-handle-file-local-copy)
7216         (tramp-sh-handle-write-region, tramp-sh-handle-vc-registered)
7217         (tramp-sh-handle-file-notify-add-watch, tramp-maybe-send-script)
7218         (tramp-find-file-exists-command, tramp-open-shell)
7219         (tramp-find-shell)
7220         (tramp-open-connection-setup-interactive-shell)
7221         (tramp-find-inline-encoding, tramp-find-inline-compress)
7222         (tramp-compute-multi-hops, tramp-maybe-open-connection)
7223         (tramp-wait-for-output, tramp-send-command-and-check)
7224         (tramp-send-command-and-read, tramp-get-remote-path)
7225         (tramp-get-ls-command, tramp-get-ls-command-with-dired)
7226         (tramp-get-ls-command-with-quoting-style)
7227         (tramp-get-test-command, tramp-get-remote-ln)
7228         (tramp-get-remote-perl, tramp-get-remote-stat)
7229         (tramp-get-remote-readlink, tramp-get-remote-trash)
7230         (tramp-get-remote-touch, tramp-get-remote-gvfs-monitor-dir)
7231         (tramp-get-remote-inotifywait, tramp-get-remote-id)
7232         (tramp-get-remote-python):
7233         * lisp/net/tramp-smb.el (tramp-smb-errors)
7234         (tramp-smb-handle-add-name-to-file, tramp-smb-handle-copy-file)
7235         (tramp-smb-handle-delete-directory)
7236         (tramp-smb-handle-delete-file)
7237         (tramp-smb-handle-file-local-copy)
7238         (tramp-smb-handle-make-directory)
7239         (tramp-smb-handle-make-directory-internal)
7240         (tramp-smb-handle-make-symbolic-link)
7241         (tramp-smb-handle-rename-file, tramp-smb-handle-set-file-acl)
7242         (tramp-smb-handle-set-file-modes)
7243         (tramp-smb-handle-write-region, tramp-smb-get-file-entries):
7244         * lisp/net/tramp.el (tramp-debug-message, tramp-error)
7245         (tramp-process-actions):
7246         Generate diagnostics according to ‘text-quoting-style’, by
7247         using curved quotes in format strings and ‘format-message’
7248         when appropriate.
7249         * lisp/net/tramp-compat.el (format-message):
7250         Define a replacement, if it’s an older version of Emacs
7251         that doesn’t have it already.
7253         * etc/NEWS: Clarify text-quoting-style and electric-quote-mode.
7255 2015-08-24  Xue Fuqiao  <xfq.free@gmail.com>
7257         Fix documentation for `save-excursion'
7258         * doc/lispref/positions.texi (Excursions):
7259         * doc/lispintro/emacs-lisp-intro.texi (save-excursion)
7260         (Template for save-excursion, Point and mark): `save-excursion'
7261         does not save&restore the mark any more.
7263 2015-08-24  Michael Albinus  <michael.albinus@gmx.de>
7265         * lisp/net/tramp-sh.el (tramp-stat-marker, tramp-stat-quoted-marker):
7266         New defconsts.
7267         (tramp-do-file-attributes-with-stat)
7268         (tramp-do-directory-files-and-attributes-with-stat): Use them.
7269         (tramp-convert-file-attributes): Remove double slashes in symlinks.
7270         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
7271         Handle symlinks with "//" in the file name.
7273         Revert fbb5531fa11d13854b274d28ccd329c9b6652cfc for tramp.el.
7275 2015-08-24  Nicolas Petton  <nicolas@petton.fr>
7277         Fix cl-subseq and cl-concatenate
7278         * lisp/emacs-lisp/cl-extra.el (cl-subseq, cl-concatenate): Do not use
7279         seq functions.
7280         * lisp/emacs-lisp/seq.el (seq-concatenate): Call cl-concatenate in
7281         seq-concatenate.
7283 2015-08-24  Pip Cet  <pipcet@gmail.com>  (tiny change)
7285         Fix full-screen code when there is no window manager (Bug#21317)
7286         * src/xterm.h (x_wm_supports): Declare external.
7287         * src/xterm.c (wm_suppports): Rename to `x_wm_supports', export.
7288         (do_ewmh_fullscreen, x_ewmh_activate_frame): Adjust for rename.
7289         (x_check_fullscreen): Call `x_wm_set_size_hint', restore
7290         `fullscreen' frame parameter.
7291         * src/gtkutil.c (x_wm_set_size_hint): Set size hints when running
7292         without a window manager.
7294 2015-08-24  Glenn Morris  <rgm@gnu.org>
7296         * lisp/version.el (emacs-version): No longer include build host.
7297         * doc/lispref/intro.texi (Version Info): Update example.
7299 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
7301         * doc/lispref/elisp.texi: Fix typo in previous change.
7303         More-conservative ‘format’ quote restyling
7304         Instead of restyling curved quotes for every call to ‘format’,
7305         create a new function ‘format-message’ that does the restyling,
7306         and using the new function instead of ‘format’ only in contexts
7307         where this seems appropriate.
7308         Problem reported by Dmitry Gutov and Andreas Schwab in:
7309         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00826.html
7310         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00827.html
7311         * doc/lispref/commands.texi (Using Interactive):
7312         * doc/lispref/control.texi (Signaling Errors, Signaling Errors):
7313         * doc/lispref/display.texi (Displaying Messages, Progress):
7314         * doc/lispref/elisp.texi:
7315         * doc/lispref/help.texi (Keys in Documentation):
7316         * doc/lispref/minibuf.texi (Minibuffer Misc):
7317         * doc/lispref/strings.texi (Formatting Strings):
7318         * etc/NEWS:
7319         Document the changes.
7320         * lisp/abbrev.el (expand-region-abbrevs):
7321         * lisp/apropos.el (apropos-library):
7322         * lisp/calc/calc-ext.el (calc-record-message)
7323         (calc-user-function-list):
7324         * lisp/calc/calc-help.el (calc-describe-key, calc-full-help):
7325         * lisp/calc/calc-lang.el (math-read-big-balance):
7326         * lisp/calc/calc-store.el (calc-edit-variable):
7327         * lisp/calc/calc-units.el (math-build-units-table-buffer):
7328         * lisp/calc/calc-yank.el (calc-edit-mode):
7329         * lisp/calendar/icalendar.el (icalendar-export-region)
7330         (icalendar--add-diary-entry):
7331         * lisp/cedet/mode-local.el (mode-local-print-binding)
7332         (mode-local-describe-bindings-2):
7333         * lisp/cedet/semantic/complete.el (semantic-completion-message):
7334         * lisp/cedet/semantic/edit.el (semantic-parse-changes-failed):
7335         * lisp/cedet/semantic/wisent/comp.el (wisent-log):
7336         * lisp/cedet/srecode/insert.el (srecode-insert-show-error-report):
7337         * lisp/descr-text.el (describe-text-properties-1, describe-char):
7338         * lisp/dframe.el (dframe-message):
7339         * lisp/dired-aux.el (dired-query):
7340         * lisp/emacs-lisp/byte-opt.el (byte-compile-log-lap-1):
7341         * lisp/emacs-lisp/bytecomp.el (byte-compile-log)
7342         (byte-compile-log-file, byte-compile-warn, byte-compile-form):
7343         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
7344         (cconv-analyze-form):
7345         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
7346         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
7347         * lisp/emacs-lisp/cl-macs.el (cl-symbol-macrolet):
7348         * lisp/emacs-lisp/edebug.el (edebug-format):
7349         * lisp/emacs-lisp/eieio-core.el (eieio-oref):
7350         * lisp/emacs-lisp/eldoc.el (eldoc-minibuffer-message)
7351         (eldoc-message):
7352         * lisp/emacs-lisp/elint.el (elint-file, elint-log):
7353         * lisp/emacs-lisp/find-func.el (find-function-library):
7354         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
7355         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
7356         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
7357         * lisp/emacs-lisp/package.el (package-compute-transaction)
7358         (package-install-button-action, package-delete-button-action)
7359         (package-menu--list-to-prompt):
7360         * lisp/emacs-lisp/timer.el (timer-event-handler):
7361         * lisp/emacs-lisp/warnings.el (lwarn, warn):
7362         * lisp/emulation/viper-cmd.el:
7363         (viper-toggle-parse-sexp-ignore-comments)
7364         (viper-kill-buffer, viper-brac-function):
7365         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
7366         * lisp/facemenu.el (facemenu-add-new-face):
7367         * lisp/faces.el (face-documentation, read-face-name)
7368         (face-read-string, read-face-font, describe-face):
7369         * lisp/files.el (find-alternate-file, hack-local-variables)
7370         (hack-one-local-variable--obsolete, write-file)
7371         (basic-save-buffer, delete-directory):
7372         * lisp/format.el (format-write-file, format-find-file)
7373         (format-insert-file):
7374         * lisp/help-fns.el (help-fns--key-bindings)
7375         (help-fns--compiler-macro, help-fns--obsolete)
7376         (help-fns--interactive-only, describe-function-1)
7377         (describe-variable):
7378         * lisp/help.el (describe-mode):
7379         * lisp/info-xref.el (info-xref-output):
7380         * lisp/info.el (Info-virtual-index-find-node)
7381         (Info-virtual-index, info-apropos):
7382         * lisp/international/kkc.el (kkc-error):
7383         * lisp/international/mule-cmds.el:
7384         (select-safe-coding-system-interactively)
7385         (select-safe-coding-system, describe-input-method):
7386         * lisp/international/mule-conf.el (code-offset):
7387         * lisp/international/mule-diag.el (describe-character-set)
7388         (list-input-methods-1):
7389         * lisp/international/quail.el (quail-error):
7390         * lisp/minibuffer.el (minibuffer-message):
7391         * lisp/mpc.el (mpc--debug):
7392         * lisp/msb.el (msb--choose-menu):
7393         * lisp/net/ange-ftp.el (ange-ftp-message):
7394         * lisp/net/gnutls.el (gnutls-message-maybe):
7395         * lisp/net/newst-backend.el (newsticker--sentinel-work):
7396         * lisp/net/newst-treeview.el (newsticker--treeview-load):
7397         * lisp/net/nsm.el (nsm-query-user):
7398         * lisp/net/rlogin.el (rlogin):
7399         * lisp/net/soap-client.el (soap-warning):
7400         * lisp/net/tramp.el (tramp-debug-message):
7401         * lisp/nxml/nxml-outln.el (nxml-report-outline-error):
7402         * lisp/nxml/nxml-parse.el (nxml-parse-error):
7403         * lisp/nxml/rng-cmpct.el (rng-c-error):
7404         * lisp/nxml/rng-match.el (rng-compile-error):
7405         * lisp/nxml/rng-uri.el (rng-uri-error):
7406         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
7407         * lisp/org/org-ctags.el:
7408         (org-ctags-ask-rebuild-tags-file-then-find-tag):
7409         * lisp/proced.el (proced-log):
7410         * lisp/progmodes/ebnf2ps.el (ebnf-log):
7411         * lisp/progmodes/flymake.el (flymake-log):
7412         * lisp/progmodes/vhdl-mode.el (vhdl-warning-when-idle):
7413         * lisp/replace.el (occur-1):
7414         * lisp/simple.el (execute-extended-command)
7415         (undo-outer-limit-truncate, define-alternatives):
7416         * lisp/startup.el (command-line):
7417         * lisp/subr.el (error, user-error, add-to-list):
7418         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
7419         (tutorial--find-changed-keys):
7420         * src/callint.c (Fcall_interactively):
7421         * src/editfns.c (Fmessage, Fmessage_box):
7422         Restyle the quotes of format strings intended for use as a
7423         diagnostic, when restyling seems appropriate.
7424         * lisp/subr.el (format-message): New function.
7425         * src/doc.c (Finternal__text_restyle): New function.
7426         (syms_of_doc): Define it.
7428 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
7430         * etc/NEWS: The new ‘q’ flag is not an incompatible change.
7432 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
7434         python.el: Fix python-shell-buffer-substring on indented code
7435         (Bug#21086)
7436         * lisp/progmodes/python.el (python-shell-buffer-substring):
7437         Respect current line indentation when calculating string.
7438         * test/automated/python-tests.el
7439         (python-shell-buffer-substring-10)
7440         (python-shell-buffer-substring-11)
7441         (python-shell-buffer-substring-12): New tests.
7443 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
7445         Fix minor glitches from ‘format’ reversion
7446         * doc/lispref/strings.texi (Formatting Strings):
7447         After reversion, ‘text-quoting-style’ is documented in ‘Keys in
7448         Documentation’, not below.
7449         * src/syntax.c (Finternal_describe_syntax_value):
7450         Prefer AUTO_STRING to build_string where either will do, as
7451         AUTO_STRING is a bit faster.
7453 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
7455         python.el: Defer shell setup code until first interactive prompt
7456         * lisp/progmodes/python.el
7457         (python-shell-comint-watch-for-first-prompt-output-filter):
7458         New function.
7459         (inferior-python-mode): Use it.
7460         (python-shell-first-prompt-hook): New hook.
7461         (python-shell-send-setup-code)
7462         (python-shell-completion-native-turn-on-maybe-with-msg): Attach to
7463         this hook instead of inferior-python-hook.
7465 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
7467         Remove the calls to `seq-into` from `seq-concatenate`
7468         Since most new types of seq would have to be defined as sequences (cons
7469         cells or CL structs, mostly), there is no need to convert the seqs to
7470         sequences (which can be a fairly expensive operation).
7471         * lisp/emacs-lisp/seq.el (seq-concatenate): Do not ensure that seqs are
7472         sequences.
7474 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
7476         python.el: Fix completion for pdb interactions
7477         * lisp/progmodes/python.el (python-shell-completion-setup-code):
7478         Simplify.  Toggle print_mode for native wrapped completer.
7479         (python-shell-completion-native-setup): Ensure process buffer.
7480         Add print_mode attribute to completer wrapper to toggle returning
7481         or printing candidates.
7482         (python-shell-completion-native-get-completions): Cleanup.
7483         (python-shell-completion-get-completions): Cleanup.
7484         (python-shell-completion-at-point): Perform prompt checks.
7485         Force fallback completion in pdb interactions.
7487 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
7489         Make seq.el more extensible by using cl-defmethod
7490         * lisp/emacs-lisp/seq.el: Define seq.el functions using cl-defmethod to
7491         make it easier to extend seq.el with new "seq types".
7492         * test/automated/seq-tests.el (test-setf-seq-elt): New test.
7493         * lisp/emacs-lisp/cl-extra.el (cl-subseq): Move back the definition of
7494         subseq in cl-extra.el, and use it in seq.el.
7496 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
7498         python.el: Fix prompt detection with user overridden interpreter
7499         * lisp/progmodes/python.el (python-shell-prompt-detect):
7500         Honor buffer local python-shell-interpreter and
7501         python-shell-interpreter-interactive-arg.
7503 2015-08-23  Eli Zaretskii  <eliz@gnu.org>
7505         Support exec-directory with non-ASCII characters on Windows
7506         * src/w32proc.c (sys_spawnve): Make sure exec-directory is encoded
7507         in the system's ANSI codepage, when it is used for invoking
7508         cmdproxy.
7510 2015-08-23  Andreas Schwab  <schwab@linux-m68k.org>
7512         Revert "Extend ‘format’ to translate curved quotes"
7513         This reverts commit 244c801689d2f7a80480d83cd7d092d4762ebe08.
7515         Revert "Prefer ‘format’ to ‘substitute-command-keys’"
7516         This reverts commit 6af5aad26411ffe21c3fe4bc5438347110910111.
7518 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
7520         * doc/lispintro/emacs-lisp-intro.texi (Switching Buffers):
7521         Clarify "invisible window".
7523 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
7525         * doc/emacs/modes.texi (Choosing Modes): Minor doc fix for
7526         magic-fallback-mode-alist.
7528 2015-08-22  Fabián Ezequiel Gallina  <fgallina@gnu.org>
7530         python.el: fallback completion, ffap and eldoc setup enhancements
7531         Setup codes are now sent continuously so that the current frame is
7532         always taken into account.  This allows working within debuggers
7533         and always keeping a fresh version of setup codes that will return
7534         proper results.
7535         * lisp/progmodes/python.el (python-shell-setup-codes): Cleanup.
7536         (python-shell-send-setup-code): Send code only when
7537         python-shell-setup-codes is non-nil.
7538         (python-shell-completion-string-code): Cleanup trailing newline.
7539         (python-shell-completion-get-completions): Always use
7540         python-shell-completion-setup-code.
7541         (python-ffap-setup-code): Work with any object, not only modules.
7542         (python-ffap-string-code): Cleanup trailing newline.
7543         (python-ffap-module-path): Always use python-ffap-setup-code.
7544         (python-eldoc-string-code): Cleanup trailing newline.
7545         (python-eldoc--get-doc-at-point): Always use
7546         python-eldoc-setup-code.  Return non-nil only if docstring is
7547         found.
7549         python.el: Increase native completion robustness
7550         * lisp/progmodes/python.el (python-shell-completion-native-setup):
7551         Make completer print real candidates and just return dummy ones to
7552         avoid input modification.
7553         (python-shell-completion-native-get-completions): Set
7554         comint-redirect-insert-matching-regexp to non-nil and make
7555         comint-redirect-finished-regexp match the last dummy candidate.
7556         Use python-shell-accept-process-output to wait for the full list
7557         of candidates.
7559 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
7561         Fix invocation of programs via cmdproxy.exe
7562         * src/w32proc.c (sys_spawnve): Use exec-directory, not
7563         invocation-directory, for finding cmdproxy.exe.  When Emacs is
7564         run from the source tree, look for cmdproxy.exe in the same source
7565         tree.  (Bug#21323)
7567 2015-08-22  Simen Heggestøyl  <simenheg@gmail.com>
7569         Handle comments inside unquoted URIs in css-mode
7570         * lisp/textmodes/css-mode.el (css--uri-re): New defconst.
7571         (css-syntax-propertize-function): New defconst.
7572         (css--font-lock-keywords): Handle parens around unquoted URIs.
7573         (css-mode): Set `syntax-propertize-function'.
7575 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
7577         Support invocation of Hunspell with multiple dictionaries
7578         * lisp/textmodes/ispell.el (ispell-parse-hunspell-affix-file):
7579         Support lists of dictionaries of the form "DICT1,DICT2,...".
7580         (ispell-hunspell-add-multi-dic): New command.  (Bug#20495)
7582         Minor formatting changes in ispell.el
7583         * lisp/textmodes/ispell.el (ispell-create-debug-buffer)
7584         (ispell-print-if-debug, ispell-aspell-find-dictionary)
7585         (ispell-aspell-add-aliases, ispell-hunspell-dict-paths-alist)
7586         (ispell-hunspell-dictionary-alist)
7587         (ispell-hunspell-fill-dictionary-entry)
7588         (ispell-find-hunspell-dictionaries, ispell-send-replacement)
7589         (ispell-buffer-with-debug, ispell-complete-word)
7590         (ispell-current-dictionary, ispell-current-personal-dictionary)
7591         (ispell-accept-output, ispell-minor-mode)
7592         (ispell-personal-dictionary, ispell-dictionary-alist)
7593         (ispell-really-aspell, ispell-really-hunspell)
7594         (ispell-encoding8-command, ispell-aspell-supports-utf8)
7595         (ispell-aspell-dictionary-alist, ispell-set-spellchecker-params):
7596         Fix whitespace, inconsistent capitalization, and arguments in doc
7597         strings.
7599 2015-08-22  Martin Rudalics  <rudalics@gmx.at>
7601         * lisp/window.el (adjust-window-trailing-edge): Fix bug where this
7602         function refused to resize a size-preserved window.
7604 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
7606         * doc/lispref/windows.texi (Selecting Windows): Improve
7607         documentation and indexing of 'window-use-time'.
7609 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
7611         * lisp/progmodes/cc-vars.el, lisp/progmodes/cc-styles.el:
7612         * lisp/progmodes/cc-mode.el, lisp/progmodes/cc-menus.el:
7613         * lisp/progmodes/cc-langs.el, lisp/progmodes/cc-guess.el:
7614         * lisp/progmodes/cc-fonts.el, lisp/progmodes/cc-engine.el:
7615         * lisp/progmodes/cc-defs.el, lisp/progmodes/cc-cmds.el:
7616         * lisp/progmodes/cc-bytecomp.el, lisp/progmodes/cc-awk.el:
7617         * lisp/progmodes/cc-align.el, lisp/net/soap-client.el:
7618         Fix up commenting style.
7620 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
7622         text-quoting-style in emacs-lisp diagnostics
7623         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
7624         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
7625         (ad-disable-advice, ad-remove-advice, ad-set-argument)
7626         (ad-set-arguments):
7627         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
7628         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
7629         (byte-optimize-while, byte-optimize-apply):
7630         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
7631         (byte-compile-log-file, byte-compile-format-warn)
7632         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
7633         (byte-compile-cl-warn)
7634         (byte-compile-warn-about-unresolved-functions)
7635         (byte-compile-file, byte-compile-fix-header)
7636         (byte-compile--declare-var, byte-compile-file-form-defmumble)
7637         (byte-compile-form, byte-compile-normal-call)
7638         (byte-compile-variable-ref, byte-compile-variable-set)
7639         (byte-compile-subr-wrong-args, byte-compile-setq-default)
7640         (byte-compile-negation-optimizer)
7641         (byte-compile-condition-case--old)
7642         (byte-compile-condition-case--new, byte-compile-save-excursion)
7643         (byte-compile-defvar, byte-compile-autoload)
7644         (byte-compile-lambda-form)
7645         (byte-compile-make-variable-buffer-local, display-call-tree)
7646         (batch-byte-compile):
7647         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
7648         (cconv-analyze-form):
7649         * lisp/emacs-lisp/chart.el (chart-space-usage):
7650         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
7651         (check-declare-warn, check-declare-file)
7652         (check-declare-directory):
7653         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
7654         (checkdoc-message-text-engine):
7655         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer):
7656         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
7657         (cl-symbol-macrolet):
7658         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
7659         * lisp/emacs-lisp/copyright.el (copyright)
7660         (copyright-update-directory):
7661         * lisp/emacs-lisp/edebug.el (edebug-read-list):
7662         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
7663         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
7664         (eieio-oref, eieio-oset-default):
7665         * lisp/emacs-lisp/eieio-speedbar.el:
7666         (eieio-speedbar-child-make-tag-lines)
7667         (eieio-speedbar-child-description):
7668         * lisp/emacs-lisp/eieio.el (defclass, change-class):
7669         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
7670         (elint-init-form, elint-check-defalias-form)
7671         (elint-check-let-form):
7672         * lisp/emacs-lisp/ert.el (ert-get-test):
7673         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
7674         (find-function-library):
7675         * lisp/emacs-lisp/generator.el (iter-yield):
7676         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
7677         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
7678         * lisp/emacs-lisp/package-x.el (package-upload-file):
7679         * lisp/emacs-lisp/package.el (package-version-join)
7680         (package-disabled-p, package-activate-1, package-activate)
7681         (package--download-one-archive)
7682         (package--download-and-read-archives)
7683         (package-compute-transaction, package-install-from-archive)
7684         (package-install, package-install-selected-packages)
7685         (package-delete, package-autoremove)
7686         (package-install-button-action, package-delete-button-action)
7687         (package-menu-hide-package, package-menu--list-to-prompt)
7688         (package-menu--perform-transaction)
7689         (package-menu--find-and-notify-upgrades):
7690         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
7691         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
7692         * lisp/emacs-lisp/ring.el (ring-next, ring-previous):
7693         * lisp/emacs-lisp/rx.el (rx-check, rx-anything):
7694         * lisp/emacs-lisp/smie.el (smie-config-save):
7695         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
7696         * lisp/emacs-lisp/testcover.el (testcover-1value):
7697         Use curved quotes in diagnostic format strings.
7699 2015-08-21  Fabián Ezequiel Gallina  <fgallina@gnu.org>
7701         python.el: Ensure remote process-environment on non-interactive processes
7702         * lisp/progmodes/python.el
7703         (python-shell-tramp-refresh-process-environment): New function.
7704         (python-shell-with-environment): Use it.
7705         * test/automated/python-tests.el (python-shell-with-environment-2):
7706         Update.
7708         python.el: Enhancements to process environment setup.
7709         * lisp/progmodes/python.el (python-shell-process-environment)
7710         (python-shell-extra-pythonpaths, python-shell-exec-path)
7711         (python-shell-virtualenv-root): Update docstring.  Remove :safe.
7712         (python-shell-setup-codes): Remove :safe.
7713         (python-shell-remote-exec-path): New defcustom.
7714         (python-shell--add-to-path-with-priority): New macro.
7715         (python-shell-calculate-pythonpath): Give priority to
7716         python-shell-extra-pythonpaths.  Update docstring.
7717         (python-shell-calculate-process-environment): Give priority to
7718         python-shell-process-environment.  Update docstring.
7719         (python-shell-calculate-exec-path): Give priority to
7720         python-shell-exec-path and calculated virtualenv bin directory.
7721         Update docstring.
7722         (python-shell-tramp-refresh-remote-path): New function.
7723         (python-shell-with-environment): Use it when working remotely and
7724         do not modify tramp-remote-path.  Allow nesting.
7725         (python-shell-calculate-command): Remove useless
7726         python-shell-with-environment call.
7727         * test/automated/python-tests.el (python-shell-calculate-pythonpath-1)
7728         (python-shell-calculate-pythonpath-2)
7729         (python-shell-calculate-process-environment-6)
7730         (python-shell-calculate-process-environment-7)
7731         (python-shell-calculate-process-environment-8)
7732         (python-shell-calculate-exec-path-3)
7733         (python-shell-calculate-exec-path-4)
7734         (python-shell-calculate-exec-path-5)
7735         (python-shell-calculate-exec-path-6)
7736         (python-shell-with-environment-3): New tests.
7737         (python-shell-calculate-process-environment-2)
7738         (python-shell-calculate-process-environment-3)
7739         (python-shell-calculate-process-environment-4)
7740         (python-shell-calculate-process-environment-5)
7741         (python-shell-calculate-exec-path-1)
7742         (python-shell-calculate-exec-path-2)
7743         (python-shell-with-environment-1)
7744         (python-shell-with-environment-2): Update and simplify.
7746 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
7748         Avoid hard-coding "M-x command" in docstrings
7749         * lisp/calendar/todo-mode.el (todo-mode):
7750         * lisp/desktop.el (desktop-save-mode):
7751         * lisp/edmacro.el (edit-kbd-macro):
7752         * lisp/emacs-lisp/package.el (package-menu-execute):
7753         * lisp/emulation/viper-cmd.el (viper-ask-level):
7754         * lisp/emulation/viper-init.el (viper-expert-level):
7755         * lisp/filesets.el (filesets-add-buffer):
7756         * lisp/follow.el (follow-mode):
7757         * lisp/gnus/auth-source.el (auth-sources):
7758         * lisp/international/ogonek.el (ogonek-informacja)
7759         (ogonek-information):
7760         * lisp/net/tramp.el (tramp-process-actions):
7761         * lisp/org/org-gnus.el (org-gnus-no-new-news):
7762         * lisp/org/org.el (org-ellipsis):
7763         * lisp/progmodes/python.el (python-shell-get-process-or-error):
7764         * lisp/progmodes/vhdl-mode.el (vhdl-mode):
7765         * lisp/server.el (server-start):
7766         * lisp/type-break.el (type-break-noninteractive-query):
7767         * lisp/userlock.el (ask-user-about-supersession-help):
7768         * lisp/whitespace.el (whitespace-report-region):
7769         Prefer (substitute-command-keys "`\\[foo-command]'")
7770         to "`M-x foo-command'" in docstrings and the like.
7772 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
7774         Use add-function for prettify-symbols-compose-predicate
7775         * lisp/textmodes/tex-mode.el (tex-common-initialization): Set
7776         prettify-symbols-compose-predicate in terms of add-function.
7777         * etc/NEWS: Mention prettify-symbols-compose-predicate and
7778         prettify-symbols-mode support in tex-mode.
7780 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
7782         * lisp/emacs-lisp/smie.el (smie-indent-current-column): New fun.
7783         (smie-indent-exps, smie-indent-keyword): Use it.
7784         * test/indent/css-mode.css: Test alignment with leading comment.
7786 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
7788         Respect text-quoting-style in (*Finder*) menus
7789         * lisp/info.el (info--prettify-description):
7790         Treat description as a docstring, so that it's requoted as
7791         per text-quoting-style.
7793 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
7795         Document `window-use-time' in Elisp manual
7796         * doc/lispref/windows.texi (Selecting Windows): Document
7797         `window-use-time'.
7799 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
7801         * src/w32uniscribe.c (_WIN32_WINNT): Define to 0x0600.
7802         This is a cleaner fix for Bug#21260 than the previous change.
7804 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
7806         Respect text-quoting-style in calc
7807         In calc, tespect text-quoting-style preference in diagnostic
7808         formats and fix a few similar problems in docstrings.
7809         * lisp/calc/calc-aent.el (math-read-factor):
7810         * lisp/calc/calc-embed.el (calc-do-embedded):
7811         * lisp/calc/calc-ext.el (calc-user-function-list)
7812         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
7813         * lisp/calc/calc-help.el (calc-describe-key)
7814         (calc-describe-thing):
7815         * lisp/calc/calc-lang.el (calc-c-language)
7816         (math-parse-fortran-vector-end, math-parse-tex-sum)
7817         (math-parse-eqn-matrix, math-parse-eqn-prime)
7818         (calc-yacas-language, calc-maxima-language, calc-giac-language)
7819         (math-read-big-rec, math-read-big-balance):
7820         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
7821         (calc-auto-recompute):
7822         * lisp/calc/calc-prog.el (calc-user-define-invocation)
7823         (math-do-arg-check):
7824         * lisp/calc/calc-store.el (calc-edit-variable):
7825         * lisp/calc/calc-units.el (math-build-units-table-buffer):
7826         * lisp/calc/calc-vec.el (math-read-brackets):
7827         * lisp/calc/calc-yank.el (calc-edit-mode):
7828         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
7829         Use curved quotes in diagnostic format strings.
7830         * lisp/calc/calc-help.el (calc-describe-thing):
7831         Format docstrings with substitute-command-keys.
7832         * lisp/calc/calc-help.el (calc-j-prefix-help):
7833         * lisp/calc/calc-misc.el (calc-help):
7834         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
7835         Escape a docstring "`".
7837 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
7839         Fix documentation of 'menu-set-font' and 'set-frame-font'
7840         * lisp/menu-bar.el (menu-set-font): Doc fix.  (Bug#21303)
7841         * doc/lispref/frames.texi (Frame Font): Document that
7842         set-frame-font with the last argument 't' will also make the font
7843         the default for the future GUI frames.
7845         Document '--create-frame' option to emacsclient
7846         * doc/emacs/misc.texi (emacsclient Options): Document the
7847         '--create-frame' option.  (Bug#21308)
7849 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
7851         * lisp/progmodes/js.el (js-mode): Don't eagerly syntax propertize.
7853 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
7855         Document 'get-mru-window' in the ELisp manual
7856         * doc/lispref/windows.texi (Cyclic Window Ordering): Document
7857         'get-mru-window'.  (Bug#21306)
7859         Clarify documentation of 'get-buffer-window-list'
7860         * doc/lispref/windows.texi (Buffers and Windows): Mention that the
7861         current window, if relevant, will be the first in the list
7862         returned by 'get-buffer-window-list'.
7863         * lisp/window.el (get-buffer-window-list): Doc fix.  (Bug#21305)
7865 2015-08-21  Vasilij Schneidermann  <v.schneidermann@gmail.com>
7867         In `ielm' use `pop-to-buffer-same-window' (Bug#20848)
7868         * lisp/ielm.el (ielm): Use `pop-to-buffer-same-window' instead of
7869         `switch-to-buffer'.
7871 2015-08-21  Kaushal Modi  <kaushal.modi@gmail.com>  (tiny change)
7873         In woman.el use `display-buffer' instead of `switch-to-buffer' (Bug#21047)
7874         * lisp/woman.el (woman-really-find-file, WoMan-find-buffer): Use
7875         `display-buffer' instead of `switch-to-buffer'.
7877 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
7879         Follow user preference in calendar diagnostics
7880         Respect text-quoting-style preference in diagnostic formats by
7881         using curved quotes (which are translated as per text-quoting-style)
7882         instead of grave accent and apostrophe (which are not).
7883         * lisp/calendar/appt.el (appt-display-message):
7884         * lisp/calendar/diary-lib.el (diary-check-diary-file)
7885         (diary-mail-entries, diary-from-outlook):
7886         * lisp/calendar/icalendar.el (icalendar-export-region)
7887         (icalendar--convert-float-to-ical)
7888         (icalendar--convert-date-to-ical)
7889         (icalendar--convert-ical-to-diary)
7890         (icalendar--convert-recurring-to-diary)
7891         (icalendar--add-diary-entry):
7892         * lisp/calendar/time-date.el (format-seconds):
7893         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
7894         (timeclock-make-hours-explicit):
7895         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
7896         (todo-item-mark, todo-check-format)
7897         (todo-insert-item--next-param, todo-edit-item--next-key)
7898         (todo-mode):
7899         Use curved quotes in diagnostic format strings.
7900         * lisp/calendar/icalendar.el (icalendar-import-format-sample):
7901         * test/automated/icalendar-tests.el (icalendar--import-format-sample):
7902         Just use straight quoting for simple test case.
7904 2015-08-21  Michael Albinus  <michael.albinus@gmx.de>
7906         * src/gfilenotify.c (Fgfile_add_watch):
7907         Handle errors from g_file_monitor.
7909 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
7911         In frames.texi use "minibuffer-less frame" instead of "non-minibuffer frame"
7912         * doc/lispref/frames.texi (Frame Layout): Use "minibuffer-less
7913         frame" instead of "non-minibuffer frame".
7915         Fix frame geometry related text
7916         * doc/lispref/frames.texi (Frame Layout):
7917         Rename `x-frame-geometry' to `frame-geometry'.
7918         * doc/lispref/frames.texi (Mouse Position):
7919         * doc/lispref/windows.texi (Coordinates and Windows):
7920         Use `set-mouse-absolute-pixel-position' instead of
7921         `x-set-mouse-absolute-pixel-position'.
7923         Sanitize frame geometry related functions
7924         * src/nsfns.m (Fx_frame_geometry): Rename to Fns_frame_geometry.
7925         (Fx_frame_edges): Rename to Fns_frame_edges.
7926         * src/w32fns.c (Fx_frame_geometry): Rename to Fw32_frame_geometry.
7927         (Fx_frame_edges): Rename to Fw32_frame_edges.
7928         (Fx_mouse_absolute_pixel_position): Rename to
7929         Fw32_mouse_absolute_pixel_position.
7930         (Fx_set_mouse_absolute_pixel_position): Rename to
7931         Fw32_set_mouse_absolute_pixel_position.
7932         * lisp/frame.el (x-frame-geometry, w32-frame-geometry)
7933         (ns-frame-geometry, x-frame-edges, w32-frame-edges)
7934         (ns-frame-edges, w32-mouse-absolute-pixel-position)
7935         (x-mouse-absolute-pixel-position)
7936         (w32-set-mouse-absolute-pixel-position)
7937         (x-set-mouse-absolute-pixel-position): Declare.
7938         (frame-geometry, mouse-absolute-pixel-position)
7939         (set-mouse-absolute-pixel-position): New functions.
7940         (frame-edges): Rewrite in terms of x-/w32-/ns-frame-edges.
7942 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
7944         Fix MinGW64 build broken by latest w32uniscribe.c changes
7945         * src/w32uniscribe.c (UNISCRIBE_OPENTYPE): Define to 0x0100, for
7946         MinGW64.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
7947         (Bug#21260)
7949 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
7951         Add TeX defaults for prettify-symbol-mode
7952         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
7953         Rename from tex-prettify-symbols-alist.
7954         (tex--prettify-symbols-compose-p): New function.
7955         (tex-common-initialization): Use them as prettify-symbols-alist
7956         and prettify-symbols-compose-predicate.
7958         Generalize prettify-symbols to arbitrary modes
7959         * lisp/progmodes/prog-mode.el
7960         (prettify-symbols-default-compose-p): New function.
7961         (prettify-symbols-compose-predicate): New variable.
7962         (prettify-symbols--compose-symbol): Use it.
7964 2015-08-20  Paul Eggert  <eggert@cs.ucla.edu>
7966         Don't quote symbols 'like-this' in docstrings etc.
7967         * admin/unidata/uvs.el (uvs-insert-fields-as-bytes):
7968         * lisp/allout-widgets.el (allout-widgets-count-buttons-in-region):
7969         * lisp/allout.el (allout-add-resumptions, allout-mode):
7970         * lisp/calculator.el (calculator-operators):
7971         * lisp/cedet/data-debug.el (dd-propertize):
7972         * lisp/cedet/ede/proj-prog.el (ede-proj-target-makefile-program):
7973         * lisp/cedet/semantic/analyze/debug.el:
7974         (semantic-analyzer-debug-global-miss-text):
7975         * lisp/cedet/semantic/lex-spp.el:
7976         (semantic-lex-spp-replace-or-symbol-or-keyword):
7977         * lisp/cedet/semantic/symref.el:
7978         (semantic-symref-cleanup-recent-buffers-fcn):
7979         * lisp/cedet/semantic/tag.el (semantic-tag-class):
7980         * lisp/cedet/srecode/el.el (srecode-semantic-handle-:el-custom):
7981         * lisp/gnus/nnmairix.el (nnmairix-propagate-marks-upon-close):
7982         * lisp/gnus/pop3.el (pop3-authentication-scheme):
7983         * lisp/help-fns.el (describe-function-orig-buffer):
7984         * lisp/imenu.el (imenu--history-list):
7985         * lisp/mail/feedmail.el (feedmail-confirm-outgoing)
7986         (feedmail-display-full-frame, feedmail-deduce-bcc-where)
7987         (feedmail-queue-default-file-slug)
7988         (feedmail-queue-buffer-file-name):
7989         * lisp/net/mairix.el (mairix-searches-mode-map):
7990         * lisp/net/newst-backend.el (newsticker-retrieval-method)
7991         (newsticker-auto-mark-filter-list):
7992         * lisp/obsolete/vi.el (vi-mode):
7993         * lisp/progmodes/cc-engine.el (c-literal-type):
7994         * lisp/progmodes/cpp.el (cpp-face):
7995         * lisp/progmodes/ebrowse.el (ebrowse-electric-list-looper):
7996         * lisp/progmodes/elisp-mode.el (elisp--xref-make-xref):
7997         * lisp/progmodes/pascal.el (pascal-auto-lineup):
7998         * lisp/progmodes/prog-mode.el (prog-widen):
7999         * lisp/progmodes/verilog-mode.el (verilog-regexp-words)
8000         (verilog-auto-lineup, verilog-auto-reset-widths)
8001         (verilog-auto-arg-format, verilog-auto-inst-template-numbers):
8002         * lisp/textmodes/flyspell.el (flyspell-maybe-correct-transposition)
8003         (flyspell-maybe-correct-doubling):
8004         * lisp/textmodes/table.el (table-justify, table-justify-cell)
8005         (table-justify-row, table-justify-column, table-insert-sequence)
8006         (table--justify-cell-contents):
8007         * lisp/url/url-auth.el (url-get-authentication):
8008         * lisp/window.el (display-buffer-record-window):
8009         * lisp/xml.el (xml-parse-file, xml-parse-region):
8010         * src/gfilenotify.c (Fgfile_add_watch):
8011         Don't quote symbols with apostrophes in doc strings.
8012         Use asymmetric quotes instead.
8013         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
8014         Likewise for symbol in diagnostic.
8015         * lisp/image.el (image-extension-data):
8016         * lisp/register.el (frame-configuration-to-register):
8017         * src/buffer.c (syms_of_buffer):
8018         Remove bogus apostrophes after symbols.
8019         * lisp/thumbs.el (thumbs-conversion-program):
8020         Quote Lisp string values using double-quotes, not apostrophes.
8022 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
8024         Describe frame geometry and related functions in Elisp manual
8025         * doc/lispref/display.texi (Size of Displayed Text, Line Height)
8026         (Showing Images): Update references.
8027         * doc/lispref/elisp.texi (Top): Update node listing.
8028         * doc/lispref/frames.texi (Frame Geometry): New node.
8029         Move `Size and Position' section here.
8030         (Size Parameters): Update references.
8031         (Mouse Position): Update references and nomenclature.
8032         Describe new functions `x-mouse-absolute-pixel-position' and
8033         `x-set-mouse-absolute-pixel-position'.
8034         * doc/lispref/windows.texi (Window Sizes): Update references.
8035         (Resizing Windows): Update references.  Move description of
8036         `fit-frame-to-buffer' here.
8037         (Coordinates and Windows): Update nomenclature and references.
8038         Describe new arguments of `window-edges'.  Comment out
8039         descriptions of `window-left-column', `window-top-line',
8040         `window-pixel-left' and `window-pixel-top'.  Describe
8041         `window-absolute-pixel-position'.
8043 2015-08-20  Alan Mackenzie  <acm@muc.de>
8045         Handling of `c-parse-state'.  Fix low level bug.
8046         * lisp/progmodes/cc-engine.el (c-remove-stale-state-cache-backwards):
8047         Add "CASE 3.5" to handle `cache-pos' being only slightly before `here'.
8049 2015-08-20  Andreas Politz  <politza@hochschule-trier.de>
8051         * lisp/wid-edit.el (widget-color--choose-action): Quit *Color*
8052         window instead of deleting it.
8054 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
8056         In w32fns.c's Fx_frame_geometry rewrite check whether frame has a titlebar
8057         * src/w32fns.c (Fx_frame_geometry): Use title_bar.rgstate[0] to
8058         determine whether frame has a titlebar.
8059         Suggested by Eli Zaretskii <eliz@gnu.org>
8061 2015-08-20  Tassilo Horn  <tsdh@gnu.org>
8063         Add a prettify-symbols-alist for (La)TeX
8064         * lisp/textmodes/tex-mode.el (tex-prettify-symbols-alist):
8065         New variable holding an alist suitable as prettify-symbols-alist in
8066         (La)TeX modes.
8068 2015-08-19  Alan Mackenzie  <acm@muc.de>
8070         Make electric-pair-mode, delete-selection-mode and CC Mode cooperate.
8071         Fixes debbugs#21275.
8072         In Emacs >= 25, let electric-pair-mode take precedence over
8073         delete-selection-mode.
8074         * lisp/delsel.el (delete-selection-uses-region-p): New function,
8075         previously a lambda expression in a property value for
8076         `self-insert-command'.
8077         (top-level): Set the `delete-selection' property of
8078         `self-insert-command' to `delete-selection-uses-region-p'.
8079         * lisp/progmodes/cc-cmds.el (top-level): Give the `delete-selection'
8080         property for c-electric-\(brace\|paren\) the value
8081         `delete-selection-uses-region-p' when the latter function exists.
8083 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
8085         Fix key binding quoting in tutorial *Help*
8086         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
8087         When generating help for custom key bindings, use the user-preferred
8088         quoting style rather than hardcoding the grave style.
8090 2015-08-19  Eli Zaretskii  <eliz@gnu.org>
8092         Improve and future-proof OTF fonts support in w32uniscribe.c
8093         * src/w32uniscribe.c (uniscribe_otf_capability): Add commentary
8094         about the expected results and why the new Uniscribe APIs are not
8095         used in this function.
8096         (ScriptGetFontScriptTags_Proc, ScriptGetFontLanguageTags_Proc)
8097         (ScriptGetFontFeatureTags_Proc): New function typedefs.
8098         (uniscribe_new_apis): New static variable.
8099         (uniscribe_check_features): New function, implements OTF features
8100         verification while correctly accounting for features in the list
8101         after the nil member, if any.
8102         (uniscribe_check_otf_1): New function, retrieves the features
8103         supported by the font for the requested script and language using
8104         the Uniscribe APIs available from Windows Vista onwards.
8105         (uniscribe_check_otf): If the new Uniscribe APIs are available,
8106         use them in preference to reading the font data directly.  Call
8107         uniscribe_check_features to verify that the requested features are
8108         supported, replacing the original incomplete code.
8109         (syms_of_w32uniscribe): Initialize function pointers for the new
8110         Uniscribe APIs.  (Bug#21260)
8111         (otf_features): Scan the script, langsys, and feature arrays back
8112         to front, so that the result we return has them in alphabetical
8113         order, like ftfont.c does.
8114         * src/w32fns.c (syms_of_w32fns) <w32-disable-new-uniscribe-apis>:
8115         New variable for debugging w32uniscribe.c code.
8117 2015-08-19  Artur Malabarba  <bruce.connor.am@gmail.com>
8119         * lisp/isearch.el (isearch-search-fun-default): Revert a5bdb87
8120         Remove usage of `isearch-lax-whitespace' inside the `iearch-word'
8121         clause of `isearch-search-fun-default'.  That lax variable does not
8122         refer to lax-whitespacing.  Related to (bug#21777).
8123         This reverts commit a5bdb872edb9f031fe041faf9a8c0be432e5f64c.
8124         * lisp/character-fold.el (character-fold-search): Set to nil.
8125         Default to nil for now, until someone implements proper
8126         lax-whitespacing with char-fold searching.
8128 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
8130         Fix doc-string of `help-mode-finish'.
8131         * lisp/help-mode.el (help-mode-finish): Fix doc-string.
8133         In nsimage.m include coding.h (Bug#21292)
8134         * src/nsimage.m (top-level): Include coding.h (Bug#21292).
8136         Move window edge functions to Elisp.
8137         * src/window.c (Fwindow_edges, Fwindow_pixel_edges)
8138         (Fwindow_absolute_pixel_edges, Fwindow_inside_edges)
8139         (Fwindow_inside_pixel_edges, Fwindow_inside_absolute_pixel_edges):
8140         Move to window.el.
8141         (calc_absolute_offset): Remove.
8142         * lisp/frame.el (frame-edges): New function.
8143         * lisp/window.el (window-edges, window-pixel-edges)
8144         (window-absolute-pixel-edges): Move here from window.c.
8145         (window-body-edges, window-body-pixel-edges)
8146         (window-absolute-body-pixel-edges): Move here from window.c and
8147         rename "inside" to "body".  Keep old names as aliases.
8148         (window-absolute-pixel-position): New function.
8150 2015-08-19  Katsumi Yamaoka  <yamaoka@jpl.org>
8152         [Gnus]: Use overlay functions directly
8153         * lisp/gnus/gnus-art.el (gnus-mime-inline-part, gnus-mm-display-part)
8154         (gnus-insert-mime-button, gnus-mime-buttonize-attachments-in-header)
8155         (gnus-article-highlight-signature, gnus-article-extend-url-button)
8156         (gnus-article-add-button, gnus-insert-prev-page-button)
8157         (gnus-insert-next-page-button, gnus-insert-mime-security-button):
8158         * lisp/gnus/gnus-cite.el (gnus-cite-delete-overlays)
8159         (gnus-cite-add-face):
8160         * lisp/gnus/gnus-html.el (gnus-html-wash-tags):
8161         * lisp/gnus/gnus-salt.el (gnus-tree-read-summary-keys)
8162         (gnus-tree-recenter, gnus-highlight-selected-tree):
8163         * lisp/gnus/gnus-sum.el (gnus-summary-show-all-threads)
8164         (gnus-summary-show-thread, gnus-summary-hide-thread)
8165         (gnus-highlight-selected-summary):
8166         * lisp/gnus/gnus-util.el (gnus-put-overlay-excluding-newlines):
8167         * lisp/gnus/message.el (message-fix-before-sending)
8168         (message-toggle-image-thumbnails):
8169         * lisp/gnus/mm-decode.el (mm-convert-shr-links):
8170         * lisp/gnus/sieve.el (sieve-highlight, sieve-insert-scripts):
8171         Use overlay functions directly instead of using gnus-overlay-*,
8172         message-overlay-*, and sieve-overlay-*.
8173         * lisp/gnus/gnus-sum.el (gnus-remove-overlays):
8174         * lisp/gnus/gnus.el (gnus-make-overlay, gnus-copy-overlay)
8175         (gnus-delete-overlay, gnus-overlay-get, gnus-overlay-put)
8176         (gnus-move-overlay, gnus-overlay-buffer, gnus-overlay-start)
8177         (gnus-overlay-end, gnus-overlays-at, gnus-overlays-in):
8178         * lisp/gnus/message.el (message-delete-overlay, message-make-overlay)
8179         (message-overlay-get, message-overlay-put, message-overlays-in):
8180         * lisp/gnus/sieve.el (sieve-make-overlay, sieve-overlay-put)
8181         (sieve-overlays-at): Remove.
8183 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
8185         In w32fns.c condition TITLEBAR_INFO declaration on WINDOWS version
8186         * src/w32fns.c (TITLEBAR_INFO): Make it a typedef so MinGW64
8187         builds can use the declaration from the system headers.
8188         (GetTitleBarInfo_Proc, Fx_frame_geometry): Adapt to new
8189         definition of TITLEBAR_INFO.
8190         Suggested by Eli Zaretskii  <eliz@gnu.org>
8192 2015-08-19  Glenn Morris  <rgm@gnu.org>
8194         * lisp/gnus/nnmaildir.el (nnmaildir-flag-mark-mapping): Add "P".
8196 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
8198         Use new q ‘format’ flag when fixing quotes in C
8199         * src/image.c (image_size_error): New function.  All uses of
8200         image_error with "Invalid image size ..."  changed to use it.
8201         * src/image.c (image_size_error, xbm_load_image, xbm_load)
8202         (xpm_load, xpm_load_image, xpm_load, pbm_load, png_load_body)
8203         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
8204         (imagemagick_load, svg_load, svg_load_image, gs_load)
8205         (x_kill_gs_process):
8206         * src/lread.c (load_warn_old_style_backquotes):
8207         * src/xfaces.c (load_pixmap):
8208         * src/xselect.c (x_clipboard_manager_error_1):
8209         Use %qs, not uLSQM and uRSQM.
8210         * src/syntax.c (Finternal_describe_syntax_value):
8211         Prefer Fsubstitute_command_keys to Fformat, as this lets
8212         us use AUTO_STRING.
8213         * src/xdisp.c (vadd_to_log): Use AUTO_STRING on the format argument,
8214         as it's now guaranteed to be ASCII.
8215         * src/xselect.c (x_clipboard_manager_error_2):
8216         Avoid grave accent in low-level stderr diagnostic.
8218 2015-08-19  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
8220         New q flag for ‘format’
8221         * doc/lispref/processes.texi (Sentinels):
8222         Don't hardwire grave quoting style in example.
8223         * doc/lispref/strings.texi (Formatting Strings):
8224         * etc/NEWS:
8225         Document new q flag.
8226         * src/editfns.c (Fformat): Implement it.
8228 2015-08-18  Daiki Ueno  <ueno@gnu.org>
8230         pinentry.el: Add debugging support
8231         * lisp/net/pinentry.el (pinentry-debug): New variable.
8232         (pinentry-debug-buffer): New variable.
8233         (pinentry--process-filter): Send input to the debug buffer, if
8234         `pinentry-debug' is set.
8236         pinentry.el: Improve multiline prompt
8237         * lisp/net/pinentry.el (pinentry--prompt): Simplify the interface.
8238         (pinentry--process-filter): Use `pinentry--prompt' for CONFIRM
8239         command.
8241 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
8243         Fix multibyte confusion in diagnostics
8244         * src/print.c (print_error_message):
8245         Don't assume that the caller's name is unibyte.
8246         * src/xdisp.c (vadd_to_log):
8247         Don't assume that the formatted diagnostic is unibyte.
8249         Fix file name encodings in diagnostics
8250         Also, close some minor races when opening image files, by opening
8251         them once instead of multiple times.
8252         * src/gtkutil.c (xg_get_image_for_pixmap):
8253         * src/image.c (xpm_load, tiff_load, gif_load, imagemagick_load)
8254         (svg_load):
8255         * src/nsimage.m (allocInitFromFile:):
8256         * src/xfns.c (xg_set_icon):
8257         Encode file name, since x_find_image_file no longer does that.
8258         * src/image.c (x_find_image_fd): New function.
8259         (x_find_image_file): Use it.  Do not encode resulting file name,
8260         since callers sometimes need it decoded.
8261         (slurp_file): File arg is now a fd, not a file name.
8262         All callers changed.  This saves us having to open the file twice.
8263         (xbm_load, xpm_load, pbm_load, png_load_body, jpeg_load_body)
8264         (svg_load):
8265         Use x_find_image_fd and fdopen to save a file-open.
8266         Report file name that failed.
8267         * src/lread.c (openp): If PREDICATE is t, open the file in binary mode.
8269 2015-08-18  Dmitry Gutov  <dgutov@yandex.ru>
8271         Allow blink-matching-paren to jump off screen
8272         * doc/emacs/programs.texi (Matching): Mention the
8273         `blink-matching-paren' value `jump-offscreen'.
8274         * lisp/simple.el (blink-matching-paren): New possible value.
8275         (blink-matching-paren-on-screen): Clarify the docstring.
8276         (blink-matching-open): Handle `jump-offscreen' (bug#21286).
8278         Refine the previous change
8279         * lisp/simple.el (blink-matching-open): Use minibuffer-message
8280         outside of save-excursion (bug#21286).
8282 2015-08-18  Martin Rudalics  <rudalics@gmx.at>
8284         Rewrite and add frame geometry related functions.
8285         * src/frame.c (Fframe_position): New function.
8286         (Fset_frame_position): Rename parameters and rewrite doc-string.
8287         (syms_of_frame): Remove Qframe_position, Qframe_outer_size,
8288         Qtitle_height and Qframe_inner_size.  Add Qouter_edges,
8289         Qouter_position, Qouter_size, Qnative_edges, Qinner_edges,
8290         Qtitle_bar_size.
8291         * src/nsfns.m (frame_geometry): New function.
8292         (Fx_frame_geometry): Call frame_geometry.
8293         (Fx_frame_edges): New function.
8294         * src/w32fns.c (C_CHILDREN_TITLEBAR, TITLEBAR_INFO)
8295         (GetTitleBarInfo_Proc): Define these so we can use the
8296         GetTitleBarInfo API.
8297         (Fw32_frame_menu_bar_size, Fw32_frame_rect): Remove.
8298         (Fx_frame_geometry): Rewrite.
8299         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
8300         (Fx_set_mouse_absolute_pixel_position): New functions.
8301         * src/xfns.c (frame_geometry): New function.
8302         (Fx_frame_geometry): Call frame_geometry.
8303         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
8304         (Fx_set_mouse_absolute_pixel_position): New functions.
8306 2015-08-18  Michael Albinus  <michael.albinus@gmx.de>
8308         Improve Tramp's compatibility
8309         * lisp/net/tramp.el (tramp-get-method-parameter):
8310         * lisp/net/tramp-adb.el (tramp-adb-parse-device-names)
8311         (tramp-adb-get-device):
8312         * lisp/net/trampver.el (tramp-repository-get-version):
8313         Use `tramp-compat-replace-regexp-in-string'.
8315 2015-08-18  Pierre Téchoueyres  <pierre.techoueyres@free.fr>  (tiny change)
8317         * lisp/net/tramp-cmds.el (tramp-reporter-dump-variable):
8318         Encode/decode string.
8320 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
8322         Clarify what happens to match data on failure
8323         Problem reported by Ernesto Alfonso (Bug#21279).
8324         * doc/lispref/searching.texi (Regexp Search, Simple Match Data):
8325         Document more carefully what happens to match data after a failed
8326         search.
8327         * src/search.c (Fmatch_beginning, Fmatch_end): Document that
8328         the return value is undefined if the last search failed.
8329         (Fmatch_data): Simplify doc string line 1.
8331 2015-08-18  Daiki Ueno  <ueno@gnu.org>
8333         Revert "pinentry.el: Support external passphrase cache"
8334         This reverts commit e086e55a664ec27fbca7b3231c4b32cb78a89337.
8335         pinentry.el shouldn't directly interact with the secrets service,
8336         but ask the caller to cache the passphrase.
8338 2015-08-17  Xue Fuqiao  <xfq.free@gmail.com>
8340         * doc/emacs/sending.texi (Mail Misc): Fix two index entries for
8341         Message mode hooks.
8343 2015-08-17  Daiki Ueno  <ueno@gnu.org>
8345         epg.el: Make gpgconf output parsing future proof
8346         * lisp/epg.el (epg--start): Count the number of fields in "gpgconf
8347         --list-options" output.
8349         pinentry.el: Support external passphrase cache
8350         * lisp/net/pinentry.el (pinentry-use-secrets): New user option.
8351         (pinentry--allow-external-password-cache): New local variable.
8352         (pinentry--key-info): New local variable.
8353         (secrets-enabled, secrets-search-items, secrets-get-secret):
8354         Declare.
8355         (pinentry--send-passphrase): New function, split from
8356         `pinentry--process-filter'.
8357         (pinentry--process-filter): Use secrets.el to retrieve passphrase
8358         from login keyring.
8360         pinentry.el: Popup window for multiline prompt
8361         * lisp/net/pinentry.el (pinentry): New custom group.
8362         (pinentry-popup-prompt-window): New user option.
8363         (pinentry-prompt-window-height): New user option.
8364         (pinentry--prompt-buffer): New variable.
8365         (pinentry-prompt-mode-map): New variable.
8366         (pinentry-prompt-mode): New function.
8367         (pinentry--prompt): New function.
8368         (pinentry--process-filter): Use `pinentry--prompt' instead of
8369         `read-passwd' and `y-or-n-p'.
8371 2015-08-17  Katsumi Yamaoka  <yamaoka@jpl.org>
8373         message.el: Silent the byte compiler
8374         * lisp/gnus/message.el (message-overlay-put, message-make-overlay)
8375         (message-kill-all-overlays, message-overlays-in, message-overlay-get)
8376         (message-delete-overlay, message-window-inside-pixel-edges):
8377         Declare before using.
8379         * lisp/gnus/message.el (message-overlay-get, message-overlays-in)
8380         (message-window-inside-pixel-edges): XEmacs compatible functions.
8382 2015-08-17  Lars Magne Ingebrigtsen  <larsi@gnus.org>
8384         * lisp/gnus/message.el (message-toggle-image-thumbnails): New command.
8386 2015-08-17  Noah Friedman  <friedman@splode.com>
8388         * lisp/simple.el (blink-matching-open): Restore point before
8389         calling minibuffer-message.
8391 2015-08-17  Ronnie Schnell  <ronnie@driver-aces.com>
8393         * lisp/play/dunnet.el: Update version number in header (now
8394         matches help).
8396 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
8398         Curved quotes in --batch diagnostics in non-UTF-8
8399         When run with --batch, check that curved quotes are compatible with
8400         the system locale before outputting them in diagnostics.
8401         Problem reported by Eli Zaretskii in:
8402         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00594.html
8403         * lisp/startup.el (command-line): Set internal--text-quoting-flag
8404         after the standard display table is initialized.
8405         * src/doc.c (default_to_grave_quoting_style): New function.
8406         (text_quoting_style): Use it.
8407         (text_quoting_flag): New static var, visible to Lisp as
8408         internal--text-quoting-flag.
8409         * src/emacs.c: Include <wchar.h> if available.
8410         (using_utf8): New function.
8411         (main): Use it to initialize text_quoting_flag.
8412         * src/regex.h (btowc) [WIDE_CHAR_SUPPORT && emacs]:
8413         Don't define, as it's not needed and it clashes with wchar.h.
8415 2015-08-17  Glenn Morris  <rgm@gnu.org>
8417         * doc/misc/tramp.texi (Configuration): Reword to avoid warning
8418         from makeinfo about spurious "Note:" cross-reference, and for grammar.
8420 2015-08-17  Ilya Zakharevich  <ilya@math.berkeley.edu>
8422         Minor change in variable initialization on MS-Windows
8423         * src/w32fns.c <after_dead_key>: Initialize to -1.
8424         (deliver_wm_chars): If after_deadkey is zero, don't set after_dead
8425         non-zero.
8427         Fix a bug with LWindow key remapping on MS-Windows
8428         * src/w32fns.c (deliver_wm_chars): Fix a typo.  (Bug#21276)
8430 2015-08-17  Eli Zaretskii  <eliz@gnu.org>
8432         Improve fontset support for latest OTF script tags
8433         * lisp/international/fontset.el (otf-script-alist): Add some
8434         missing script tags.
8435         (setup-default-fontset): Include settings for v2 versions of the
8436         script tags used by some modern OTF/TTF fonts.
8438 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
8440         Spelling fixes
8442 2015-08-16  Paul Eggert  <eggert@cs.ucla.edu>
8444         Use curved quotes in core elisp diagnostics
8445         In the core elisp files, use curved quotes in diagnostic formats,
8446         so that they follow user preference as per ‘text-quoting-style’
8447         rather than being hard-coded to quote `like this'.
8448         * lisp/abbrev.el (expand-region-abbrevs):
8449         * lisp/button.el (button-category-symbol, button-put)
8450         (make-text-button):
8451         * lisp/cus-start.el:
8452         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
8453         (custom--sort-vars-1, load-theme):
8454         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
8455         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
8456         (cl-generic-generalizers):
8457         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
8458         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
8459         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
8460         (advice--make, define-advice):
8461         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
8462         * lisp/emacs-lisp/timer.el (timer-event-handler):
8463         * lisp/env.el (setenv):
8464         * lisp/facemenu.el (facemenu-add-new-face)
8465         (facemenu-add-new-color):
8466         * lisp/faces.el (face-documentation, read-face-name)
8467         (face-read-string, read-face-font, face-spec-set-match-display)
8468         (read-color, x-resolve-font-name):
8469         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
8470         (set-auto-mode, hack-local-variables)
8471         (hack-one-local-variable--obsolete)
8472         (dir-locals-set-directory-class, write-file)
8473         (basic-save-buffer, delete-directory, copy-directory)
8474         (recover-session, recover-session-finish, insert-directory)
8475         (file-modes-char-to-who, file-modes-symbolic-to-number)
8476         (move-file-to-trash):
8477         * lisp/font-lock.el (font-lock-fontify-buffer):
8478         * lisp/format.el (format-write-file, format-find-file)
8479         (format-insert-file):
8480         * lisp/frame.el (get-device-terminal, select-frame-by-name):
8481         * lisp/fringe.el (fringe--check-style):
8482         * lisp/help.el (describe-minor-mode-from-indicator):
8483         * lisp/image.el (image-type):
8484         * lisp/international/fontset.el (x-must-resolve-font-name):
8485         * lisp/international/mule-cmds.el (prefer-coding-system)
8486         (select-safe-coding-system-interactively)
8487         (select-safe-coding-system, activate-input-method)
8488         (toggle-input-method, describe-current-input-method):
8489         * lisp/international/mule-conf.el (code-offset):
8490         * lisp/mouse.el (minor-mode-menu-from-indicator):
8491         * lisp/replace.el (query-replace-read-from)
8492         (occur-after-change-function, occur-1):
8493         * lisp/scroll-bar.el (scroll-bar-columns):
8494         * lisp/simple.el (execute-extended-command)
8495         (undo-outer-limit-truncate, compose-mail, set-variable)
8496         (choose-completion-string, define-alternatives):
8497         * lisp/startup.el (site-run-file, tty-handle-args)
8498         (command-line, command-line-1):
8499         * lisp/subr.el (noreturn, define-error, add-to-list)
8500         (read-char-choice):
8501         * lisp/term/common-win.el (x-handle-xrm-switch)
8502         (x-handle-name-switch, x-handle-args):
8503         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
8504         Use curved quotes in diagnostics.
8505         * lisp/international/mule.el (find-auto-coding):
8506         Use " to quote in a diagnostic, to be consistent with the rest of
8507         this file.
8509         Convert lisp/term/x-win.el to UTF-8
8510         * lisp/term/x-win.el: Convert to UTF-8.  This doesn't affect
8511         runtime behavior, and the file is multilingual so compile-time
8512         appearance shouldn't be an issue.
8513         * admin/notes/unicode: Document this.
8515 2015-08-16  Wilson Snyder  <wsnyder@wsnyder.org>
8517         Update verilog-mode.el to 2015-05-14-6232468-vpo-GNU.
8518         * lisp/progmodes/verilog-mode.el: Fix some non-automated indent
8519         issues and comments, bug#943.
8520         (verilog-type-font-keywords): Cycle delay operators like ##1 and
8521         ##[0:$] are now highlighted in their entirety similarly to the #
8522         delay-control operator.  Likewise, the followed-by operators #-#
8523         and #=# are no longer partially highlighed.
8524         (verilog-backward-syntactic-ws-quick)
8525         (verilog-skip-backward-comments): Minor performance improvements
8526         to buffer traversal functions for reduced latency.
8527         (verilog-calc-1, verilog-in-deferred-immediate-final-p): When the
8528         keyword 'final' follows 'assert/assume/cover', then it is part of
8529         a deferred immediate assertion item and should not be treated as a
8530         final construct for indentation.  Reported by Yuri Sugihara.
8531         (verilog-do-indent): Virtual task/function/class definition lines
8532         should not be considered as declarations.  Reported by Enzo Chi.
8533         (verilog-do-indent): Do not falsely indent to '=' of
8534         property/sequence operators on subsequent lines of a multi-line
8535         statement.
8536         (verilog-assignment-operator-re): Fix '!==' operator and add
8537         support for '<->', ':/', '#-#', and '#=#' operators.
8538         (verilog-calculate-indent, verilog-label-be): Enable
8539         case-sensitive regular expression parsing when looking for
8540         keywords.
8541         (verilog-calc-1): Detect 'pure virtual method' declarations which
8542         exist in abstract classes.  Reported by Enzo Chi and Kaushal Modi.
8543         (verilog-backward-ws&directives): When moving back to the start of
8544         a line and the preceeding line ended with an escaped-newline, then
8545         jump up one line.  This properly consumes a multi-line
8546         pre-processor directive.  Reported by Kaushal Modi.
8547         (verilog-dpi-import-export-re, verilog-extended-complete-re)
8548         (verilog-calc-1): Teach verilog-mode to properly indent after a
8549         DPI import/export statement that resides outside of a module.
8550         Reported by Kaushal Modi.
8551         (verilog-extended-complete-re): Update regexp to match both
8552         "DPI-C" and "DPI".  Reported by Kaushal Modi.
8554 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
8556         substitute-command-keys a few more doc strings
8557         * lisp/allout.el (outlineify-sticky):
8558         * lisp/files.el (hack-one-local-variable--obsolete):
8559         * lisp/help-fns.el (help-fns--obsolete, describe-variable):
8560         Use substitute-command-keys on some doc strings so that
8561         they don't use hard-coded key bindings or quoting styles.
8563         Fix quoting in Fformat calls
8564         * src/image.c (xbm_read_bitmap_data, xbm_load_image, xbm_load)
8565         (xpm_load, xpm_load_image, pbm_load, png_load_body)
8566         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
8567         (imagemagick_load, svg_load, svg_load_image, gs_load)
8568         (x_kill_gs_process):
8569         * src/lread.c (load_warn_old_style_backquotes):
8570         * src/xfaces.c (load_pixmap):
8571         * src/xselect.c (x_clipboard_manager_error_1):
8572         Quote diagnostics according to user preference when calling
8573         Fformat or its derivatives.
8575 2015-08-15  Glenn Morris  <rgm@gnu.org>
8577         * admin/admin.el (set-version, set-copyright): Remove deleted files.
8579 2015-08-15  Stephen Leake  <stephen_leake@stephe-leake.org>
8581         Allow describe-function helpers to access buffer-local values
8582         This will be used by cedet/mode-local.el `describe-mode-local-override'
8583         on `help-fns-describe-function-functions' in upstream CEDET.
8584         * lisp/help-fns.el (describe-function-orig-buffer): New, let-bound in
8585         `describe-function'.
8586         (describe-function): Bind it, save it on the help xref stack.
8588         Handle pulse-background being nil
8589         * lisp/cedet/pulse.el (pulse-lighten-highlight): Inherit
8590         pulse-background, handle it being nil.
8592 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
8594         Fix "\`" confusion in Lisp strings
8595         * admin/authors.el (authors-canonical-author-name):
8596         Fix typo by using "\\`" not "\`" in string RE.
8597         * lisp/obsolete/complete.el (PC-complete-as-file-name):
8598         * lisp/obsolete/vi.el (vi-backward-blank-delimited-word):
8599         * lisp/progmodes/verilog-mode.el (verilog-mode-map):
8600         Use plain "`", not the equivalent-but-confusing "\`", in strings.
8601         * lisp/textmodes/texinfmt.el: Fix comment likewise.
8603 2015-08-15  Dani Moncayo  <dmoncayo@gmail.com>
8605         * nt/zipdist.bat: Remove -- no longer used.
8607 2015-08-15  Jürgen Hötzel  <juergen@archlinux.org>
8609         * lisp/net/tramp-sh.el (tramp-remote-selinux-p): Use "selinuxenabled"
8610         rather than "getenforce".
8611         (tramp-sh-handle-set-file-selinux-context): Do not
8612         cache SELinux context if not all context components are given.
8614 2015-08-15  Eli Zaretskii  <eliz@gnu.org>
8616         Add doc strings to 2 help-mode.el functions
8617         * lisp/help-mode.el (help-mode-setup, help-mode-finish): Add doc
8618         strings.  (Bug#21263)
8620         Remove files used by the old MS-Windows specific build procedure
8621         * admin/unidata/makefile.w32-in:
8622         * doc/emacs/makefile.w32-in:
8623         * doc/lispintro/makefile.w32-in:
8624         * doc/lispref/makefile.w32-in:
8625         * doc/misc/makefile.w32-in:
8626         * leim/makefile.w32-in:
8627         * lib-src/makefile.w32-in:
8628         * lib/makefile.w32-in:
8629         * lisp/makefile.w32-in:
8630         * nt/INSTALL.OLD:
8631         * nt/config.nt:
8632         * nt/emacs-src.tags:
8633         * nt/envadd.bat:
8634         * nt/gmake.defs:
8635         * nt/makefile.w32-in:
8636         * nt/multi-install-info.bat:
8637         * nt/nmake.defs:
8638         * nt/paths.h:
8639         * src/makefile.w32-in: Files deleted.
8640         * nt/configure.bat: Remove everything except the blurb about the
8641         new build procedure.
8642         * make-dist: Remove references to makefile.w32-in in various
8643         directories, and to files in nt/ that were deleted.
8644         * etc/NEWS: Mention the fact that the files were dropped.
8646 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
8648         * doc/emacs/mule.texi (Charsets): Give fuller title for ISO-IR.
8649         (Bug#21248)
8651 2015-08-14  Paul Eggert  <eggert@cs.ucla.edu>
8653         Default to inotify instead of gfile
8654         * configure.ac (with_file_notification): Fix typo that
8655         prevented suppression of file notification if HAVE_NS.
8656         (NOTIFY_OBJ): Prefer inotify to gfile if both exist and
8657         with_file_notification is 'yes' (Bug#21241).
8658         * etc/NEWS: Mention this.
8660         Fix broken URLs for ISO-IR
8661         * doc/emacs/mule.texi (Charsets):
8662         * lisp/international/mule-conf.el:
8663         Fix broken URL (Bug#21248).
8665         Low-level diagnostics now use ‘text-quoting-style’
8666         * src/doprnt.c (doprnt):
8667         Format ` and ' as per ‘text-quoting-style’.
8668         * src/xdisp.c (vmessage, message): Mention that the format should
8669         not contain ` or '.
8671         Prefer ‘format’ to ‘substitute-command-keys’
8672         * src/character.h (uLSQM, uRSQM): Move here ...
8673         * src/doc.c (uLSQM, uRSQM): ... from here.
8674         * src/doc.c (Fsubstitute_command_keys):
8675         * src/syntax.c (Finternal_describe_syntax_value):
8676         * lisp/cedet/mode-local.el (mode-local-print-binding)
8677         (mode-local-describe-bindings-2):
8678         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
8679         * lisp/cus-theme.el (describe-theme-1):
8680         * lisp/descr-text.el (describe-text-properties-1, describe-char):
8681         * lisp/emacs-lisp/cl-extra.el (cl--describe-class):
8682         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
8683         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
8684         * lisp/emacs-lisp/package.el (describe-package-1):
8685         * lisp/faces.el (describe-face):
8686         * lisp/help-fns.el (help-fns--key-bindings)
8687         (help-fns--compiler-macro, help-fns--parent-mode)
8688         (help-fns--obsolete, help-fns--interactive-only)
8689         (describe-function-1, describe-variable):
8690         * lisp/help.el (describe-mode):
8691         Prefer ‘format’ to ‘substitute-command-keys’ when either will do
8692         to implement quoting style.  This generally makes the code simpler.
8694         Extend ‘format’ to translate curved quotes
8695         This is a followup to the recent doc string change, and deals with
8696         diagnostics and the like.  This patch is more conservative than
8697         the doc string change, in that the behavior of ‘format’ changes
8698         only if its first arg contains curved quotes and the user prefers
8699         straight or grave quotes.  (Come to think of it, perhaps we should
8700         be similarly conservative with doc strings too, but that can wait.)
8701         The upside of this conservatism is that existing usage is almost
8702         surely unaffected.  The downside is that we'll eventually have to
8703         change Emacs's format strings to use curved quotes in places where
8704         the user might want curved quotes, but that's a simple and
8705         mechanical translation that I'm willing to do later.  (Bug#21222)
8706         * doc/lispref/help.texi (Keys in Documentation):
8707         Move description of text-quoting-style from here ...
8708         * doc/lispref/strings.texi (Formatting Strings):
8709         ... to here, and describe new behavior of ‘format’.
8710         * etc/NEWS: Describe new behavior.
8711         * lisp/calc/calc-help.el (calc-describe-thing):
8712         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
8713         * lisp/info.el (Info-find-index-name):
8714         Use ‘concat’ rather than ‘format’ to avoid misinterpretation
8715         of recently-added curved quotes.
8716         * src/doc.c (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
8717         Move from here ...
8718         * src/lisp.h: ... to here.
8719         * src/doc.c (text_quoting_style): New function.
8720         (Fsubstitute_command_keys): Use it.
8721         * src/editfns.c (Fformat): Implement new behavior.
8722         * src/lisp.h (enum text_quoting_style): New enum.
8724 2015-08-14  Stefan Monnier  <monnier@iro.umontreal.ca>
8726         * src/keyboard.c: Use false/true instead of 0/1 for booleans.
8727         * src/keyboard.h (struct kboard): Mark kbd_queue_has_data as boolean.
8729 2015-08-14  Michael Albinus  <michael.albinus@gmx.de>
8731         * lisp/net/tramp-sh.el (tramp-sh-handle-file-acl): Do not redirect
8732         stderr to /dev/null, this is done in `tramp-send-command-and-check'.
8734 2015-08-14  Jürgen Hötzel  <juergen@archlinux.org>
8736         Flush file properties in Tramp
8737         * lisp/net/tramp-sh.el (tramp-sh-handle-set-file-modes)
8738         (tramp-sh-handle-set-file-times):
8739         * lisp/net/tramp-adb.el (tramp-adb-handle-set-file-modes)
8740         (tramp-adb-handle-set-file-times): Flush the file properties of
8741         the directory.
8743 2015-08-14  Ronnie Schnell  <ronnie@driver-aces.com>
8745         * doc/emacs/misc.text (Amusements): Fixed typo.
8747 2015-08-14  Eli Zaretskii  <eliz@gnu.org>
8749         Don't miss warnings about removing string text properties while dumping
8750         * src/alloc.c (purecopy): Warn about removing a string's text
8751         properties even when the same string was already pure-copied
8752         earlier.
8753         * lisp/progmodes/elisp-mode.el (elisp--xref-format)
8754         (elisp--xref-format-extra): Fix the commentary.
8756 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
8758         * lisp/progmodes/sh-script.el (sh-mode): Handle .cshrc (bug#21049).
8760 2015-08-13  Magnus Henoch  <magnus.henoch@gmail.com>
8762         * lisp/progmodes/compile.el: Use lexical-binding.
8763         (compilation-move-to-column): Assume 8-wide TABs (bug#21038).
8765 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
8767         (uniquify-ask-about-buffer-names-p): Remove, unused (bug#21037)
8768         * lisp/uniquify.el: Remove redundant `:group's.
8770 2015-08-13  Jürgen Hötzel  <juergen@archlinux.org>
8772         * lisp/net/tramp-adb.el
8773         (tramp-adb-handle-directory-files-and-attributes): Make a copy of
8774         result to prevent modification of the tramp-cache by side effects.
8775         Use the correct cache key.
8777 2015-08-13  Paul Eggert  <eggert@cs.ucla.edu>
8779         Make add_to_log varargs
8780         * src/alloc.c (run_finalizer_handler):
8781         * src/charset.c (load_charset_map_from_vector):
8782         * src/nsimage.m (ns_load_image):
8783         * src/xfaces.c (load_pixmap, load_color2):
8784         Simplify, now that add_to_log has a variable number of args.
8785         * src/image.c (image_error): Take a variable number of args.
8786         Callers simplified.
8787         * src/lisp.h (add_to_log, vadd_to_log): Adjust to new APIs.
8788         * src/xdisp.c (format_nargs, vadd_to_log): New functions.
8789         (add_to_log): Make varargs, and reimplement in terms of vadd_to_log.
8790         * src/xfaces.c (merge_face_ref): Fix typo that omitted color name.
8792         Optional args for holiday-greek-orthodox-easter
8793         * etc/NEWS: Document this.
8794         * lisp/calendar/holidays.el (holiday-greek-orthodox-easter):
8795         Add optional args N and STRING, mimicking the API and code of
8796         ‘holiday-easter-etc’.  From suggestion by Foivos S. Zakkak (Bug#21256).
8798 2015-08-13  Stephen Leake  <stephen_leake@stephe-leake.org>
8800         xref-find-definitions: Exclude more generic function items.
8801         * lisp/emacs-lisp/cl-generic.el (cl--generic-search-method):
8802         Add doc string.
8803         (cl--generic-find-defgeneric-regexp): New.
8804         (find-function-regexp-alist): Add it.
8805         * lisp/emacs-lisp/find-func.el (find-feature-regexp): Move here from
8806         elisp-mode.el, change to search for ";;; Code:"
8807         (find-alias-regexp): Move here from elisp-mode.el, cleaned up.
8808         (find-function-regexp-alist): Add them.
8809         * lisp/progmodes/elisp-mode.el:
8810         (elisp--xref-format, elisp--xref-format-extra): Change back to
8811         defvar due to bug#21237.
8812         (elisp--xref-find-definitions): Exclude co-located default methods for
8813         generic functions.  Also exclude implicitly declared defgeneric.
8814         (elisp--xref-find-definitions): Handle C source properly.  Exclude minor
8815         mode variables defined by 'define-minor-mode'.
8816         * test/automated/elisp-mode-tests.el: Declare generic functions, add
8817         tests for them.
8818         (xref-elisp-test-run): Fix bug.
8819         (emacs-test-dir): Improve initial value.
8820         (find-defs-defun-defvar-el): Don't expect defvar.
8821         (find-defs-feature-el): Match change to find-feature-regexp.
8823 2015-08-13  Eli Zaretskii  <eliz@gnu.org>
8825         Improve warning about purecopy of strings with properties
8826         * src/alloc.c (purecopy): Show the offending string with the
8827         warning about removing its text properties.
8829 2015-08-12  Alan Mackenzie  <acm@muc.de>
8831         Introduce new macros to cover Emacs's new names in cl-lib.el
8832         This also eliminates `mapcan' warnings in XEmacs.
8833         * lisp/progmodes/cc-defs.el (c--mapcan-status): New variable to
8834         characterise [X]Emacs versions.
8835         (top-level): Require either 'cl or 'cl-lib, depending on
8836         c--mapcan-status.
8837         Change this back to cc-external-require from an eval-when-compile
8838         require.
8839         (c--mapcan, c--set-difference, c--intersection, c--macroexpand-all)
8840         (c--delete-duplicates): New macros which expand into either old or new
8841         names.
8842         (c-make-keywords-re, c-lang-defconst, c-lang-const): Use the new macros
8843         rather than the old names.
8844         * lisp/progmodes/cc-engine.el (c-declare-lang-variables): Use c--mapcan
8845         rather than mapcan.
8846         * lisp/progmodes/cc-fonts.el (c-compose-keywords-list): Use c--mapcan.
8847         * lisp/progmodes/cc-langs.el (top-level): Require either 'cl or 'cl-lib,
8848         depending on c--mapcan-status.
8849         (c-filter-ops, c-all-op-syntax-tokens, c-assignment-op-regexp)
8850         (c-type-start-kwds, c-prefix-spec-kwds, c-specifier-key)
8851         (c-not-decl-init-keywords, c-not-primitive-type-keywords)
8852         (c-paren-any-kwds, c-<>-sexp-kwds, c-block-stmt-kwds, c-expr-kwds)
8853         (c-decl-block-key, c-keywords, c-keywords-obarray)
8854         (c-regular-keywords-regexp, c-primary-expr-regexp)
8855         (c-primary-expr-regexp, c-block-prefix-disallowed-chars)
8856         (c-known-type-key, c-nonlabel-token-key)
8857         (c-make-init-lang-vars-fun): Use the new macros rather than the old
8858         names.
8860 2015-08-12  Oleh Krehel  <ohwoeowho@gmail.com>
8862         loadhist.el (read-feature): Conform to completing-read
8863         * lisp/loadhist.el (read-feature): According to `completing-read'
8864         documentation, if collection is a list, then it must be a list of
8865         strings, not a list of symbols like before.
8867 2015-08-12  David Kastrup  <dak@gnu.org>
8869         Deal gracefully with up-events (Bug#19746)
8870         * src/keyboard.c (apply_modifiers_uncached, parse_solitary_modifier)
8871         (parse_modifiers_uncached): React gracefully to "up-" modifiers:
8872         those may easily be injected by user-level Lisp code.
8873         (read_key_sequence): Discard unbound up-events like unbound
8874         down-events: they are even more likely only relevant for special
8875         purposes.
8876         While Emacs will not produce up-events on its own currently (those are
8877         converted to drag or click events before being converted to
8878         Lisp-readable structures), the input queue can be made to contain them
8879         by synthesizing events to `unread-command-events'.  Emacs should deal
8880         consistently with such events.
8882 2015-08-12  Eli Zaretskii  <eliz@gnu.org>
8884         Fix display of thin lines whose newline has line-height property of t
8885         * src/xdisp.c (append_space_for_newline): Don't try to fix ascent
8886         and descent values of non-empty glyph rows, since they could have
8887         forced low values deliberately.  (Bug#21243)
8889 2015-08-12  Richard Stallman  <rms@gnu.org>
8891         Offer to combine multiple To or CC fields.
8892         * lisp/mail/sendmail.el (mail-combine-fields): New function.
8893         (mail-send): Call 'mail-combine-fields'.
8895         Don't decrypt encrypted files.
8896         * lisp/mail/mail-utils.el (mail-file-babyl-p): Bind epa-inhibit to t.
8898         Handle encrypted mbox files.
8899         * lisp/mail/rmailout.el (rmail-output-as-mbox): Decrypt and reencrypt
8900         the mbox file if necessary.
8902         Re-enable mime processing after decryption.  Add 'decrypt' keyword.
8903         * lisp/mail/rmail.el (rmail-epa-decrypt-1): New subroutine.
8904         (rmail-epa-decrypt): rmail-epa-decrypt-1 broken out.
8905         In a mime message, reenable Mime and show the parts that
8906         were shown before.
8907         Add keyword "decrypt" if anything decrypted.
8909         epa-inhibit inhibits auto-recognition of .gpg files
8910         * lisp/epa-file.el (epa-inhibit): New variable.
8911         (epa-file-handler): Check epa-inhibit.
8913 2015-08-12  Artur Malabarba  <bruce.connor.am@gmail.com>
8915         * lisp/emacs-lisp/lisp-mnt.el (lm-header): Add save-excursion.
8917 2015-08-11  Fabián Ezequiel Gallina  <fgallina@gnu.org>
8919         Respect python.el imenu when semantic-mode is off
8920         Fixes bug#21220
8921         * lisp/cedet/semantic/wisent/python.el: Do not force
8922         wisent-python-default-setup on python-mode-hook.
8924 2015-08-11  Paul Eggert  <eggert@cs.ucla.edu>
8926         Give names to Unicode code points in C code
8927         * src/character.h (NO_BREAK_SPACE, SOFT_HYPHEN)
8928         (ZERO_WIDTH_NON_JOINER, ZERO_WIDTH_JOINER, HYPHEN)
8929         (NON_BREAKING_HYPHEN, LEFT_SINGLE_QUOTATION_MARK)
8930         (RIGHT_SINGLE_QUOTATION_MARK, PARAGRAPH_SEPARATOR)
8931         (LEFT_POINTING_ANGLE_BRACKET, RIGHT_POINTING_ANGLE_BRACKET)
8932         (LEFT_ANGLE_BRACKET, RIGHT_ANGLE_BRACKET)
8933         (OBJECT_REPLACEMENT_CHARACTER):
8934         New named constants for Unicode code points.
8935         * src/bidi.c (bidi_fetch_char, CANONICAL_EQU):
8936         * src/composite.c (char_composable_p):
8937         * src/lread.c (readevalloop, read1):
8938         * src/xdisp.c (get_next_display_element):
8939         Use them.
8940         * src/doc.c (LEFT_SINGLE_QUOTATION_POINT):
8941         Remove; now in character.h.
8943 2015-08-11  Stephen Leake  <stephen_leake@stephe-leake.org>
8945         elisp--xref-find-definitions handle cl-defstuct default constructor
8946         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Add FIXME.
8947         (elisp--xref-format-extra): Rename from elisp--xref-format-cl-defmethod.
8948         (elisp--xref-find-definitions): Handle cl-defstuct default constructor.
8949         * test/automated/elisp-mode-tests.el (xref-elisp-test-run): Split out
8950         from xref-elisp-test for ease of debugging.
8951         (xref-elisp-deftest): Rename from xref-elisp-test.
8952         (find-defs-constructor): New test.
8953         (find-defs-defgeneric-el): Match batch test config.
8954         (compile): Required for find-defs compilation-minor-mode test.
8955         (find-defs-defvar-el): Match code change.
8956         (find-defs-face-el): Match code change.
8957         * lisp/progmodes/xref.el (xref-find-function, xref-find-definitions):
8958         Improve doc string.
8960 2015-08-11  Stefan Monnier  <monnier@iro.umontreal.ca>
8962         * lisp/replace.el (perform-replace): Document `replacements'.
8963         (perform-replace): Move the description of the format of `replacements'
8964         from the body's comment to the doc string.
8966 2015-08-11  Jürgen Hötzel  <juergen@archlinux.org>
8968         * lisp/net/tramp-adb.el (tramp-adb-prompt): Match leading escape
8969         sequence.  Recent adb version send initial escape sequences, even
8970         when terminal type is set to TERM=dumb.
8972 2015-08-10  Stephen Leake  <stephen_leake@stephe-leake.org>
8974         Rewrite elisp--xref-find-definitions to handle many more cases; add tests
8975         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
8976         Function deleted.
8977         (elisp--xref-format-cl-defmethod): New defconst.
8978         (find-feature-regexp, find-alias-regexp): New defcustoms.
8979         (elisp--xref-make-xref): New function.
8980         (elisp--xref-find-definitions): Rewrite using the above, handle many
8981         more cases.  Always output all available definitions.
8982         (xref-location-marker): No need for special cases.
8983         * test/automated/elisp-mode-tests.el: Add more tests of
8984         elisp--xref-find-definitions, improve current tests.
8986 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
8988         Fix recording of events pushed onto unread-command-events
8989         * src/keyboard.c (read_char): Make sure events read from
8990         unread-command-events and unread-post-input-method-events are
8991         always recorded by record_char.  Reported by David Kastrup
8992         <dak@gnu.org>, see
8993         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00193.html.
8995 2015-08-10  Samer Masterson  <samer@samertm.com>
8997         Set file buffer as current for "--file"
8998         * lisp/startup.el (command-line-1): Set file buffer as current before
8999         it is displayed so it can be used with options like "--eval".
9000         (Bug#21095)
9002 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
9004         Avoid setting LC_NUMERIC on MS-Windows to anything but "C"
9005         * src/emacs.c (synchronize_locale) [WINDOWSNT]: Call fixup_locale
9006         after setting LC_ALL to the desired locale, to avoid affecting how
9007         numbers are read and printed.  (Bug#21223)
9009 2015-08-10  Alan Mackenzie  <acm@muc.de>
9011         Fix "Invalid search bound (wrong side of point)" in fontification
9012         * lisp/progmodes/cc-fonts.el (c-font-lock-declarators): After skipping
9013         an initialization expression, check point is not beyond the
9014         fontification limit.
9016 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
9018         Fix DPI calculation when Xft/DPI is default
9019         * src/xsettings.c (parse_settings): Don't use Xft/DPI default
9020         value of -1, which evaluates to 2**32 - 1 (Bug#21152).
9021         Remove unnecessary cast while we're in the neighborhood.
9023 2015-08-09  Dmitry Gutov  <dgutov@yandex.ru>
9025         Add project-vc-search-path and project-vc-ignores
9026         * lisp/progmodes/project.el (project-vc): New group.
9027         (project-vc-search-path, project-vc-ignores): New variables.
9028         (project--value-in-dir): Utility function.
9029         (project-search-path, project-ignores): Use them.
9030         * lisp/progmodes/xref.el (xref--rgrep-command): Only replace `./'
9031         at bos.  Don't add extra `/'.  Don't prepend with `*' if replaced.
9033 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
9035         Fix some minor quoting issues with grave accent
9036         * src/dispnew.c (add_window_display_history) [GLYPH_DEBUG]:
9037         Remove redundant quotes.
9038         * src/doc.c (uLSQM, uRSQM): New macros.
9039         * src/doc.c (Fsubstitute_command_keys):
9040         * src/syntax.c (Finternal_describe_syntax_value): Follow the user
9041         preference for quotes rather than hardcoding the ‘grave’ style.
9042         * src/regex.c (PUSH_FAILURE_POINT, POP_FAILURE_POINT)
9043         (re_match_2_internal) [DEBUG]: In debugging output, quote C
9044         strings with "...", not `...'.
9046         ChangeLog.2 ignores remote-tracking merges
9047         * build-aux/gitlog-to-emacslog: Ignore commit logs matching
9048         "Merge remote-tracking branch '.*'" too.  See Eli Zaretskii in:
9049         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00384.html
9051 2015-08-09  Nicolas Richard  <youngfrog@members.fsf.org>
9053         Use kpsewhich in ffap-latex-mode, if available
9054         * lisp/ffap.el (ffap-latex-guess-rules): New variable.
9055         (ffap-latex-mode): Use kpsewhich if available.
9057         ffap: disallow braces in filenames for tex modes
9058         * lisp/ffap.el (ffap-string-at-point-mode-alist): Don't allow
9059         braces in tex-related modes.
9061         Remove useless backslashes from ffap-string-at-point-mode-alist
9062         * lisp/ffap.el (ffap-string-at-point-mode-alist): Remove useless and
9063         misleading backslashes from default value.
9065         Augment docstring of ffap-string-at-point-mode-alist
9066         * lisp/ffap.el (ffap-string-at-point-mode-alist): Describe how BEG
9067         and END are handled.
9069 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
9071         * lisp/org/org-src.el (org-edit-src-code)
9072         (org-edit-fixed-width-region):
9073         * lisp/simple.el (completion-setup-function):
9074         Remove calls to substitute-command-keys that always just return
9075         their argument.
9077 2015-08-09  Daiki Ueno  <ueno@gnu.org>
9079         * lisp/epa.el (epa-exit-buffer-function): Set to `quit-window'.
9080         (Bug#21210)
9082 2015-08-09  Ivan Kanis  <ivan@kanis.fr>
9084         Fix link to source code in help window
9085         * lisp/help-fns.el (find-lisp-object-file-name): Remove code that
9086         will never work due to Glenn Morris change a6d63d9 on Apr 20 2013
9087         'No longer include timestamp in header of .elc files'.  Add code
9088         that will return .el source file in load-path.
9090 2015-08-09  Artur Malabarba  <bruce.connor.am@gmail.com>
9092         * lisp/isearch.el (isearch-search-fun-default): (Bug#21164)
9093         Respect `isearch-lax-whitespace' when searching through
9094         `isearch-word'.
9096 2015-08-08  Stefan Monnier  <monnier@iro.umontreal.ca>
9098         * test/automated/ert-tests.el (ert-test-deftest): Add FIXME.
9100         * org.el: Fix up some lexical scoping warnings, and use dolist
9101         * lisp/org/org.el (org-set-regexps-and-options-for-tags, org-goto-map)
9102         (org-set-regexps-and-options, org-assign-fast-keys)
9103         (org-contextualize-keys, org-contextualize-validate-key)
9104         (org-notes-order-reversed-p, org-local-logging, org-map-entries)
9105         (org-find-olp, org-find-exact-heading-in-directory)
9106         (org-cycle-agenda-files, org-release-buffers, org-fill-template)
9107         (org-agenda-prepare-buffers, org-occur-in-agenda-files)
9108         (org-replace-escapes): Use dolist.
9109         (org-mode): Optimize away XEmacs-only code.
9110         (org-refile-get-targets): Remove unused var `f'.
9111         (org-fast-todo-selection): Remove unused var `e'.
9112         (org-make-tags-matcher): Use dolist.  Remove unused var `term'.
9113         (org-fast-tag-selection): Use dolist.  Remove unused var `e'.
9114         (org-format-latex): Use dolist.  Remove unused var `e'.
9115         (org-toggle-heading): Access vars lexically rather than dynamically.
9116         (org-backward-sentence, org-forward-sentence, org-meta-return)
9117         (org-kill-line): Mark arg as unused.
9118         (org-submit-bug-report): Silence compiler warning.
9119         (org-occur-in-agenda-files): Don't use add-to-list on local vars.
9120         (org-get-cursor-date): Remove unused var `tm'.
9121         (org-comment-or-uncomment-region): Use standard name `_'.
9122         (reftex-docstruct-symbol, reftex-cite-format): Declare to
9123         silence byte-compiler.
9124         (org-reftex-citation): Add `org--' prefix to dynamically scoped
9125         `rds' var.
9127 2015-08-08  Paul Eggert  <eggert@cs.ucla.edu>
9129         Electric quote if coding is undecided or no conv
9130         * lisp/electric.el (electric--insertable-p): Also say that a
9131         string is insertable if the buffer file coding system is undecided
9132         or uses no conversion, as curved quotes will work in either case.
9134         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Simplify configuration.
9136 2015-08-08  Eli Zaretskii  <eliz@gnu.org>
9138         Fix overlay string display regressions introduced in Emacs 24.5
9139         * src/xdisp.c (pop_it): Reset the flag to ignore overlays at this
9140         buffer position, if we move the iterator to a new position as
9141         result of jumping over text covered by a "replacing" display
9142         property.
9143         * test/redisplay-testsuite.el (test-redisplay-4): Add 2 new tests.
9145         Support recovery from C stack overflow on MS-Windows
9146         * src/w32fns.c (w32_reset_stack_overflow_guard)
9147         (stack_overflow_handler): New functions for handling C stack
9148         overflow exceptions.
9149         (my_exception_handler): Handle EXCEPTION_STACK_OVERFLOW exceptions
9150         specially, and zero out except_addr if we do.
9151         (globals_of_w32fns): Initialize dwMainThreadId in non-interactive
9152         mode.
9153         * src/sysdep.c [HAVE_STACK_OVERFLOW_HANDLING]: Add !WINDOWSNT to
9154         the condition, as HAVE_STACK_OVERFLOW_HANDLING is now defined for
9155         the MinGW build, but the code guarded by that is for Posix hosts.
9156         * src/keyboard.c (command_loop) [WINDOWSNT]:
9157         Call w32_reset_stack_overflow_guard.
9158         * nt/inc/ms-w32.h (sigjmp_buf): New typedef.
9159         (sigsetjmp): New macro.
9160         (w32_reset_stack_overflow_guard): Declare the prototype.
9161         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Set to 1 for MinGW.
9163 2015-08-07  Phillip Lord  <phillip.lord@newcastle.ac.uk>
9165         Improve error signalling for seq-subseq
9166         * lisp/seq.el (seq-subseq): The existing behavior is to error
9167         when indexes are too large, but to silently ignore numbers which
9168         are too negative for lists.  String and vector handling errors in
9169         both cases.  This has been regularized.  Error signaling behavior
9170         has been explicitly added to the doc string.
9172         * lisp/cl-extra.el (cl-subseq): Defers to (seq-subseq) and is
9173         therefore also impacted by this change.  Update the doc string
9174         to reflect this.
9176         * test/automated/seq-tests.el (test-seq-subseq): Tests have been
9177         added for these exceptional cases, as well as one non exceptional
9178         base case.
9180 2015-08-07  Jürgen Hötzel  <juergen@archlinux.org>
9182         Improve error checking in tramp-adb.el
9183         * lisp/net/tramp-adb.el (tramp-adb-ls-output-name-less-p):
9184         Improve error checking.  "ls -l" on Android in Enforcing mode can
9185         print "lstat './FILENAME failed: Permission denied".
9187 2015-08-07  Stefan Monnier  <monnier@iro.umontreal.ca>
9189         * lisp/emacs-lisp/cl-generic.el (cl--generic-struct-tag): Don't burp on
9190         non-struct vectors.
9192 2015-08-07  Stephen Leake  <stephen_leake@stephe-leake.org>
9194         Fix typo in lisp/window.el, more `display-buffer-use-some-frame'
9195         * lisp/window.el: Fix typo that broke build.
9196         (display-buffer--action-function-custom-type):
9197         Add `display-buffer-use-some-frame'.
9198         (display-buffer): Add `display-buffer-use-some-frame' to doc string.
9200         Add support for 'inhibit-same-window in 'display-buffer-use-some-frame'
9201         * lisp/window.el (display-buffer-use-some-frame): Add support for
9202         'inhibit-same-window in alist.
9203         * doc/windows.texi (display-buffer-use-some-frame): Doc support for
9204         'inhibit-same-window in alist.
9206 2015-08-07  Eli Zaretskii  <eliz@gnu.org>
9208         Avoid infinite loop in display of invisible text in strings
9209         * src/xdisp.c (handle_invisible_prop): If the next change of
9210         invisibility spec does not mean the beginning of a visible text,
9211         update the string position from which to start the search for the
9212         next invisibility change.  This avoids an infinite loop when we
9213         have more than one invisibility spec that are made inactive by
9214         buffer-invisibility-spec.  Simplify code.  (Bug#21200)
9215         * test/redisplay-testsuite.el (test-redisplay-4): Add a test case
9216         for the situation that caused bug #21200.
9218 2015-08-06  Artur Malabarba  <bruce.connor.am@gmail.com>
9220         * lisp/emacs-lisp/package.el: Simplify describe-package-1
9221         (package-help-section-name-face): New face.
9222         (package--print-help-section): New function.
9223         (describe-package-1): Refactor section printing.
9224         (package-make-button): Use face instead of font-lock-face, which
9225         doesn't work on buttons.
9227         * lisp/emacs-lisp/package.el: Define custom faces
9228         (package-name-face, package-description-face)
9229         (package-status-built-in-face, package-status-external-face)
9230         (package-status-available-face, package-status-new-face)
9231         (package-status-held-face, package-status-disabled-face)
9232         (package-status-installed-face, package-status-dependency-face)
9233         (package-status-unsigned-face, package-status-incompat-face)
9234         (package-status-avail-obso-face): New faces.
9235         (package-menu--print-info-simple): Use them.
9237 2015-08-05  Paul Eggert  <eggert@cs.ucla.edu>
9239         Fix some confusion with ‘format’
9240         * lisp/allout-widgets.el (allout-widgets-before-change-handler)
9241         (allout-graphics-modification-handler):
9242         Protect arbitrary string in a format context with "%s" format.
9243         * lisp/avoid.el:
9244         * lisp/cedet/semantic/bovine/scm.el: Fix comment.
9245         * lisp/calendar/icalendar.el (icalendar--convert-sexp-to-ical):
9246         * lisp/erc/erc-button.el (erc-button-beats-to-time):
9247         * lisp/gnus/message.el (message-send-form-letter):
9248         * lisp/org/ob-core.el (org-babel-check-evaluate)
9249         (org-babel-confirm-evaluate):
9250         * lisp/org/ob-fortran.el (org-babel-fortran-var-to-fortran):
9251         * lisp/org/ox-latex.el (org-latex-compile):
9252         * lisp/org/ox-man.el (org-man-compile):
9253         * lisp/org/ox-odt.el (org-odt-template):
9254         * lisp/org/ox-texinfo.el (org-texinfo-compile):
9255         * lisp/progmodes/prolog.el (prolog-help-info)
9256         (prolog-view-predspec):
9257         * lisp/progmodes/ruby-mode.el (ruby-parse-partial):
9258         * lisp/progmodes/verilog-mode.el (verilog-showscopes):
9259         * lisp/textmodes/rst.el (rst-replace-lines):
9260         Change (message (format ...)) to (message ...), and likewise
9261         for ‘error’.  This lessens the probability of confusion when the
9262         output of ‘format’ contains ‘%’.
9264 2015-08-05  Artur Malabarba  <bruce.connor.am@gmail.com>
9266         * lisp/replace.el (replace-character-fold): Default to nil.
9268         * lisp/character-fold.el: Fix lax whitespace.
9269         (character-fold-table): Don't make space match other whitespace chars.
9270         (character-fold-to-regexp): Simplify lax behavior.
9272 2015-08-05  Dmitry Gutov  <dgutov@yandex.ru>
9274         Preserve window point in xref-find-definitions-other-window
9275         Fix the problem reported by Ingo Logmar in
9276         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00152.html
9277         * lisp/progmodes/xref.el (xref--goto-char): Extract from
9278         xref--goto-location.
9279         (xref--pop-to-location): Use it.  Replace xref--goto-location with
9280         a direct xref-location-marker call.
9281         (xref--show-location): Likewise.
9282         (xref--display-position): Use xref--goto-char.
9284         * lisp/progmodes/project.el: Add a paragraph to the front matter.
9286 2015-08-04  David Kastrup  <dak@gnu.org>
9288         * lisp/vc/emerge.el (emerge-show-file-name):
9289         * lisp/progmodes/vhdl-mode.el (vhdl-electric-dash)
9290         (vhdl-comment-insert, vhdl-hooked-abbrev):
9291         * lisp/progmodes/octave.el (inferior-octave-dynamic-list-input-ring):
9292         * lisp/progmodes/fortran.el (fortran-window-create-momentarily):
9293         * lisp/progmodes/ebrowse.el (ebrowse-hack-electric-buffer-menu):
9294         * lisp/progmodes/cperl-mode.el (cperl-putback-char):
9295         * lisp/obsolete/vip.el (vip-escape-to-emacs)
9296         (vip-prefix-arg-value, vip-prefix-arg-com):
9297         * lisp/obsolete/terminal.el (te-escape-extended-command-unread):
9298         * lisp/leim/quail/tibetan.el (quail-tibetan-update-translation)
9299         (quail-tibkey-update-translation):
9300         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
9301         * lisp/leim/quail/lao.el (quail-lao-update-translation):
9302         * lisp/leim/quail/japanese.el (quail-japanese-update-translation)
9303         (quail-japanese-self-insert-and-switch-to-alpha):
9304         * lisp/leim/quail/hangul.el (hangul2-input-method)
9305         (hangul3-input-method, hangul390-input-method):
9306         * lisp/language/hanja-util.el (hangul-to-hanja-char):
9307         * lisp/international/robin.el (robin-input-method):
9308         * lisp/international/quail.el (quail-start-translation)
9309         (quail-start-conversion):
9310         * lisp/gnus/gnus-art.el (gnus-article-describe-key)
9311         (gnus-article-describe-key-briefly):
9312         * lisp/eshell/em-hist.el (eshell-list-history):
9313         * lisp/term.el (term-dynamic-list-input-ring)
9314         (term-dynamic-list-completions):
9315         * lisp/subr.el (momentary-string-display):
9316         * lisp/simple.el (read-quoted-char):
9317         * lisp/pcomplete.el (pcomplete-show-completions):
9318         * lisp/kmacro.el (kmacro-repeat-on-last-key):
9319         * lisp/info.el (Info-summary):
9320         * lisp/ehelp.el (electric-help-command-loop):
9321         * lisp/ebuff-menu.el (electric-buffer-list)
9322         (Electric-buffer-menu-exit):
9323         * lisp/double.el (double-translate-key):
9324         * lisp/comint.el (comint-dynamic-list-input-ring)
9325         (comint-dynamic-list-completions): Do not overwrite preexisting
9326         contents of `unread-command-events' when putting new events into it.
9328 2015-08-04  Daniel Colascione  <dancol@dancol.org>
9330         Improve ansi-color filtering of unrecognized escape sequences
9331         * lisp/ansi-color.el (ansi-color-drop-regexp): Recognize mode-setting
9332         escape sequences.
9333         (ansi-color-filter-apply, ansi-color-apply): Filter out
9334         unrecognized escape sequences.
9336 2015-08-04  Artur Malabarba  <bruce.connor.am@gmail.com>
9338         * lisp/emacs-lisp/package.el (package-menu-mode-map): Convert menu
9339         definitions to `easy-menu-define', improve a couple to account for
9340         async, and add a couple of new commands.
9342 2015-08-03  Jürgen Hötzel  <juergen@archlinux.org>
9344         * lisp/net/tramp-cache.el (tramp-set-file-property): Fix code typo.
9346 2015-08-03  Ingo Lohmar  <i.lohmar@gmail.com>
9348         Add new 'calendar-weekend-days' option
9349         Make the days receiving the 'calendar-weekend-header' face freely
9350         customizable, as they differ by region/culture.
9351         * doc/emacs/calendar.texi (Move to Beginning or End): Document the
9352         new variable.
9353         * lisp/calendar/calendar.el (calendar-generate-month): New variable
9354         calendar-weekend-days to customize day header fontification.
9356 2015-08-03  Paul Eggert  <eggert@cs.ucla.edu>
9358         Redo text-quoting-style variable
9359         Rename help-quote-translation to text-quoting-style,
9360         and use symbols rather than characters as values.
9361         This follows suggestions along these lines by Alan Mackenzie in:
9362         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00343.html
9363         and by Drew Adams in:
9364         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00048.html
9365         * doc/lispref/help.texi (Keys in Documentation)
9366         * etc/NEWS:
9367         * lisp/cus-start.el (standard):
9368         * src/doc.c (Fsubstitute_command_keys, syms_of_doc):
9369         Document and/or implement the new behavior instead of the old.
9370         (syms_of_doc): New symbols 'grave' and 'straight'.
9372 2015-08-03  Nikolaus Rath  <Nikolaus@rath.org>
9374         nnimap.el: Use IMAP MOVE extension if available
9375         * lisp/gnus/nnimap.el (nnimap-request-move-article)
9376         (nnimap-process-expiry-targets, nnimap-split-incoming-mail):
9377         Use MOVE extension if available.
9379         nnimap.el: Explicitly ask for server capabilities
9380         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Don't assume full
9381         capabilities will be returned in the login-result.
9383 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
9385         Treat help strings like other doc strings
9386         * doc/lispref/text.texi (Special Properties), etc/NEWS: Document this.
9387         * lisp/epa.el (epa--select-keys): Remove no-longer-needed calls to
9388         substitute-command-keys.
9389         * src/keyboard.c (show_help_echo, parse_menu_item): Call
9390         substitute-command-keys on the help string before displaying it.
9392         Also mention "curly quotes"
9393         See Drew Adams's email in:
9394         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00040.html
9395         * doc/lispref/help.texi (Keys in Documentation):
9396         Add index entry "curly quotes".
9397         * etc/NEWS: Use the phrase "curly quotes" too.
9399         ede-proj-target-makefile docstring tweaks
9400         * lisp/cedet/ede/proj.el (ede-proj-target-makefile):
9401         Consistently use "all:" to describe the all: target,
9402         replacing three different and confusingly-quoted usages.
9404 2015-08-02  Evgeny Fraimovitch  <johnlen7@gmail.com>  (tiny change)
9406         Don't abort emacsclientw when -a was specified
9407         * lib-src/emacsclient.c (set_tcp_socket) [WINDOWSNT]: Don't error
9408         out if we are in emacsclientw and -a was specified.
9410 2015-08-02  Eli Zaretskii  <eliz@gnu.org>
9412         Fix handling of 1st keystroke on MS-Windows
9413         * src/w32fns.c (globals_of_w32fns): Initialize after_deadkey to -1.
9414         This is needed to correctly handle the session's first keystroke,
9415         if it has any modifiers.  (Bug#19994)
9417 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
9419         Substitute some customization etc. doc strings
9420         These changes apply substitute-command-keys to some
9421         doc strings that were going through untranslated
9422         when creating customization or other widgets.
9423         * lisp/cus-edit.el (custom-group-value-create):
9424         * lisp/wid-edit.el (widget-default-create):
9425         (widget-push-button-value-create):
9426         Treat the widget tag as a doc string.
9427         * lisp/emacs-lisp/cl-extra.el (cl--describe-class-slot):
9428         Treat the :documentation value as a doc string.
9429         * lisp/wid-edit.el (widget-choose):
9430         Treat the choice names as doc strings.
9431         (widget-default-create): Treat the :doc value as a doc string.
9432         (widget-toggle-value-create): Treat the :on and :off values
9433         as doc strings.
9434         (widget-documentation-string-value-create):
9435         Substitute the doc string.
9437 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
9439         Add a second argument to project-ignores
9440         * lisp/progmodes/project.el (project-ignores): Add a second
9441         argument DIR.
9442         * lisp/progmodes/project.el (project-ignores): Only include the VC
9443         ignores if DIR is the VC root.
9444         * lisp/progmodes/xref.el (xref-find-regexp): Update accordingly.
9446 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
9448         Prevent incorrect display when 'line-spacing' variable is set
9449         * src/xdisp.c (try_window_id): Give up this optimization if the
9450         buffer has its 'line-spacing' variable set non-nil.
9452 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
9454         Don't pass NOVISIT to find-file
9455         * lisp/progmodes/etags.el (next-file):
9456         Don't pass NOVISIT to find-file (bug#21175).
9458         Ignore buffer restriction for tags-loop-eval
9459         * lisp/progmodes/etags.el (tags-loop-continue): Ignore buffer
9460         restriction (bug#21167).
9462 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
9464         Fix a thinko in 'ffap-gopher-at-point'
9465         * lisp/ffap.el (ffap-gopher-at-point): Fix last change.  (Bug#21168)
9467         Honor 'line-spacing' for empty lines
9468         * src/xdisp.c (append_space_for_newline): Honor 'line-height'
9469         property and 'line-spacing' frame parameter or variable or
9470         property for empty lines, by doing the same processing as in
9471         x_produce_glyph for newline characters.  (Bug#21165)
9473 2015-08-01  Paul Eggert  <eggert@cs.ucla.edu>
9475         Simplify by assuming C99 integer division
9476         * src/floatfns.c (ceiling2, floor2, truncate2):
9477         Assume C99 (i.e., Fortran) semantics for integer division.
9478         This simplifies the code.
9480 2015-07-31  Paul Eggert  <eggert@cs.ucla.edu>
9482         Don't overflow if computing approximate percentage
9483         * lisp/align.el (align-region):
9484         * lisp/cedet/semantic.el (semantic-repeat-parse-whole-stream):
9485         * lisp/cedet/semantic/wisent.el (wisent-parse-region):
9486         * lisp/cus-edit.el (custom-buffer-create-internal):
9487         * lisp/emacs-lisp/checkdoc.el (checkdoc-interactive-ispell-loop)
9488         (checkdoc-message-interactive-ispell-loop, checkdoc-next-error)
9489         (checkdoc-next-message-error):
9490         * lisp/emacs-lisp/eieio-opt.el (eieio-display-method-list):
9491         * lisp/epa.el (epa-progress-callback-function):
9492         * lisp/erc/erc-dcc.el (erc-dcc-do-LIST-command):
9493         * lisp/ffap.el (ffap-menu-rescan):
9494         * lisp/gnus/nnbabyl.el (nnbabyl-retrieve-headers):
9495         * lisp/gnus/nndiary.el (nndiary-retrieve-headers):
9496         * lisp/gnus/nneething.el (nneething-retrieve-headers):
9497         * lisp/gnus/nnmbox.el (nnmbox-retrieve-headers):
9498         * lisp/gnus/nnmh.el (nnmh-retrieve-headers):
9499         * lisp/gnus/nnml.el (nnml-retrieve-headers):
9500         * lisp/gnus/nnspool.el (nnspool-retrieve-headers):
9501         * lisp/gnus/nntp.el (nntp-retrieve-headers)
9502         (nntp-retrieve-articles):
9503         * lisp/imenu.el (imenu--relative-position):
9504         * lisp/international/ja-dic-cnv.el (skkdic-collect-okuri-nasi)
9505         (skkdic-convert-okuri-nasi):
9506         * lisp/net/ange-ftp.el (ange-ftp-process-handle-hash):
9507         * lisp/nxml/rng-valid.el (rng-compute-mode-line-string):
9508         * lisp/org/org-list.el (org-update-checkbox-count):
9509         * lisp/org/org.el (org-table-map-tables)
9510         (org-update-parent-todo-statistics):
9511         * lisp/play/decipher.el (decipher-insert-frequency-counts)
9512         (decipher-analyze-buffer):
9513         * lisp/profiler.el (profiler-format-percent):
9514         * lisp/progmodes/cc-cmds.el (c-progress-update):
9515         * lisp/progmodes/cpp.el (cpp-highlight-buffer):
9516         * lisp/progmodes/idlwave.el (idlwave-convert-xml-system-routine-info)
9517         (idlwave-list-load-path-shadows):
9518         * lisp/progmodes/opascal.el (opascal-step-progress):
9519         * lisp/progmodes/vhdl-mode.el (vhdl-update-progress-info)
9520         (vhdl-scan-directory-contents):
9521         * lisp/textmodes/bibtex.el (bibtex-progress-message):
9522         * lisp/textmodes/flyspell.el (flyspell-small-region)
9523         (flyspell-external-point-words):
9524         * lisp/textmodes/table.el (table-recognize):
9525         Prefer (floor (* 100.0 NUMERATOR) DENOMINATOR) when calculating
9526         progress-report percentages and the like.  This avoids problems
9527         if (* 100 NUMERATOR) would overflow.
9528         * lisp/gnus/gnus-registry.el (gnus-registry-import-eld):
9529         * lisp/gnus/registry.el (registry-reindex):
9530         Use (* 100.0 ...) rather than (* 100 ...) to avoid int overflow issues.
9531         * lisp/descr-text.el (describe-char):
9532         * lisp/org/org-colview.el (org-nofm-to-completion):
9533         * lisp/ps-print.el (ps-plot):
9534         * lisp/simple.el (what-cursor-position):
9535         Prefer (round (* 100.0 NUMERATOR) DENOMINATOR) to a
9536         more-complicated and less-accurate approximation.
9538         Fix some int overflows in profiler.c
9539         * src/profiler.c (make_log): Make args EMACS_INT, not int,
9540         to avoid unwanted behavior on 'int' overflow.
9541         (make_log, evict_lower_half, record_backtrace):
9542         Use ptrdiff_t, not int, for object indexes.
9544         Port to pedantic memcpy
9545         * src/keyboard.c (menu_bar_items, tool_bar_items):
9546         * src/xrdb.c (magic_db):
9547         Port to pedantic memcpy implementations that reject memcpy (0, 0, 0).
9549         Merge from gnulib
9550         This incorporates:
9551         2015-07-29 time_rz: port to pedantic memcpy
9552         * lib/time_rz.c: Copy from gnulib.
9554 2015-07-31  Artur Malabarba  <bruce.connor.am@gmail.com>
9556         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
9557         When updating the very last entry, tabulated-list-print would
9558         erase it and then try to look at the next one (which obviously
9559         isn't there).
9561 2015-07-31  Eli Zaretskii  <eliz@gnu.org>
9563         Allow to use the old key processing code on MS-Windows
9564         * src/w32fns.c (syms_of_w32fns) <w32-use-fallback-wm-chars-method>:
9565         New variable.
9566         (w32_wnd_proc): Use it to invoke the old code that processed
9567         character keys, as fallback, when this variable is non-nil.
9568         Fix typos in comments.  (Bug#19994)
9570 2015-07-31  Ilya Zakharevich  <ilya@math.berkeley.edu>
9572         Improve handling of Unicode keyboard input on MS-Windows
9573         * src/w32fns.c (get_wm_chars, deliver_wm_chars): New functions.
9574         (FPRINTF_WM_CHARS) [DEBUG_WM_CHARS]: New macro for debugging.
9575         (w32_wnd_proc): Call deliver_wm_chars to process non-special keys
9576         upon receiving WM_KEYDOWN or WM_SYSKEYDOWN messages.  If that is
9577         successful, don't call TranslateMessage.  (Bug#19994)
9579 2015-07-30  Dmitry Gutov  <dgutov@yandex.ru>
9581         Fix default-directory in changeset diffs after vc-print-log
9582         * lisp/vc/log-view.el (log-view-diff-common): Move the
9583         revision-granularity check back into log-view-diff-changeset.
9584         (log-view-diff-changeset): Bind default-directory to the current
9585         VC root.
9587         Rename project-directories to project-roots
9588         * lisp/progmodes/project.el (project-search-path-function)
9589         (project-search-path): Update the docstring.
9590         (project-directories): Rename to `project-roots', update all
9591         callers and implementations accordingly.
9592         (project-root): Remove.
9593         * lisp/progmodes/xref.el (xref-find-regexp): Use * instead of *.*
9594         as the default file mask.
9596 2015-07-30  Eli Zaretskii  <eliz@gnu.org>
9598         Support long URLs in w32-shell-execute
9599         * src/w32fns.c (Fw32_shell_execute): Don't use filename_to_utf16
9600         and filename_to_ansi to convert the DOCUMENT argument, as it could
9601         be a URL that is not limited to MAX_PATH characters.  Instead, use
9602         MultiByteToWideChar directly, and allocate heap storage as
9603         required to accommodate the converted string.  Likewise with
9604         non-Unicode operation.  Ensure OPERATION is null-terminated, even
9605         if it is longer than 32K bytes.  (Bug#21158)
9607 2015-07-30  Stephen Leake  <stephen_leake@stephe-leake.org>
9609         * lisp/vc/vc-mtn.el (vc-mtn-find-revision): Handle null rev.
9611 2015-07-29  Stephen Leake  <stephen_leake@stephe-leake.org>
9613         Add docs for display-buffer action display-buffer-use-some-frame
9614         * lisp/window.el (display-buffer-use-some-frame): Improve doc string.
9615         * doc/lispref/windows.texi (Display Action Functions):
9616         Add display-buffer-use-some-frame.
9617         * etc/NEWS: Mention display-buffer-use-some-frame.
9619         Add display-buffer action display-buffer-use-some-frame
9620         * lisp/window.el (display-buffer-use-some-frame): New.
9622         Handle vc-mtn error more gently
9623         * lisp/vc/vc-mtn.el (vc-mtn-mode-line-string): Return "" when
9624         branch is nil.
9626 2015-07-29  Michael Albinus  <michael.albinus@gmx.de>
9628         Fix Tramp problems with multihops, and nc
9629         * lisp/net/tramp-cache.el (tramp-get-file-property)
9630         (tramp-set-file-property, tramp-flush-file-property)
9631         (tramp-get-connection-property, tramp-set-connection-property)
9632         (tramp-flush-connection-property): Remove hop from vector.
9633         * lisp/net/tramp-gw.el (tramp-gw-process-filter): Ignore errors.
9634         * lisp/net/tramp-sh.el (tramp-methods) <nc>: Separate STDERR.
9635         (tramp-do-copy-or-rename-file-out-of-band): Increase timeout of
9636         netstat to 60".
9637         (tramp-sh-handle-start-file-process): Do not show hops in prompt.
9638         * lisp/net/tramp.el (tramp-handle-file-name-as-directory)
9639         (tramp-handle-file-name-directory, tramp-handle-file-remote-p):
9640         Keep hop in result.
9641         * test/automated/tramp-tests.el (tramp-test02-file-name-dissect):
9642         Add hop tests.
9644 2015-07-29  Eli Zaretskii  <eliz@gnu.org>
9646         Resurrect highlighting of repeated words by Flyspell Mode
9647         * lisp/textmodes/flyspell.el (flyspell-word): Leave some non-word
9648         characters between point and the doublon candidate, so that
9649         flyspell-word-search-backward finds it.  (Bug#21157)
9651         Fix redisplay of large images on expose events
9652         * src/xdisp.c (expose_window, expose_area): Avoid comparisons
9653         between signed negative values and unsigned values.  This
9654         prevented redisplay on expose events when the window showed a very
9655         large image.
9657 2015-07-29  Paul Eggert  <eggert@cs.ucla.edu>
9659         Remove unnecessary stack overflow dependency
9660         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING):
9661         Don't worry about $ac_cv_header_sys_resource_h and
9662         $ac_cv_func_getrlimit, as they're no longer needed for this.
9663         Problem reported by Eli Zaretskii in:
9664         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00443.html
9666 2015-07-28  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
9668         Pacify compilation -Wincompatible-pointer-types warnings
9669         * src/w32proc.c (Fw32_get_codepage_charset): Avoid compilation
9670         warning.
9671         (CompareStringW_Proc): New typedef.
9672         (w32_compare_strings): Use it, to pacify compiler warnings under
9673         "-Wincompatible-pointer-types".
9674         * src/w32fns.c (GetDiskFreeSpaceExW_Proc)
9675         (GetDiskFreeSpaceExA_Proc): New typedefs.
9676         (Ffile_system_info): Use them, to pacify compiler warnings under
9677         "-Wincompatible-pointer-types".
9679 2015-07-28  Paul Eggert  <eggert@cs.ucla.edu>
9681         Fix subscript error in calculate_direct_scrolling
9682         Use slightly-longer cost vectors.  Without this change,
9683         calculate_direct_scrolling can have a subscript violation when
9684         FRAME_LINES (frame) <= delta.
9685         * src/scroll.c (calculate_scrolling, calculate_direct_scrolling)
9686         (line_ins_del, do_line_insertion_deletion_costs):
9687         Allocate and use slightly-larger cost vectors, ones based on
9688         FRAME_TOTAL_LINES instead of FRAME_LINES.
9690         Fix uninitalized value in encode_coding_object
9691         * src/coding.c (encode_coding_object): Also initialize
9692         coding->src_pos and coding->src_pos_byte when NILP (src_object).
9693         This avoids later use of uninitialized storage.
9695 2015-07-27  Xue Fuqiao  <xfq.free@gmail.com>
9697         * doc/lispref/variables.texi (Variable Aliases): Typo fix.
9698         (Bug#21141)
9700 2015-07-27  Paul Eggert  <eggert@cs.ucla.edu>
9702         Merge from gnulib
9703         This incorporates:
9704         2015-07-27 time_rz: port better to MinGW
9705         2015-07-27 time: port __need_time_t to MinGW
9706         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
9707         * lib/strftime.c, lib/time.in.h, lib/time_rz.c: Copy from gnulib.
9708         * lib/time-internal.h: New file, from gnulib.
9710 2015-07-27  Eli Zaretskii  <eliz@gnu.org>
9712         Handle NULL pointers in w32heap.c allocation routines
9713         * src/w32heap.c (FREEABLE_P): Consider a NULL pointer "not
9714         freeable".
9715         (realloc_after_dump, realloc_before_dump, free_before_dump):
9716         Handle NULL pointers gracefully, as Emacs now seems to expect that.
9718         Fix Cairo build without PNG
9719         * src/image.c: Define PNG function when USE_CAIRO is defined, even
9720         if HAVE_PNG is not.  (Bug#21133)
9722         MS-Windows follow-up for recent TZ-related changes
9723         * nt/mingw-cfg.site (ac_cv_header_pthread_h)
9724         (gl_cv_sys_struct_timespec_in_pthread_h): Force to "no", to avoid
9725         picking up 'struct timespec' from pthread.h, if it is installed on
9726         the user's system.  We want either the definitions from MinGW
9727         system headers, if available, or the Gnulib replacements if not.
9728         * nt/inc/ms-w32.h <struct timespec>: Don't define, as we now use
9729         lib/time.h.
9730         * lib/time.in.h: Don't let __need_* symbols affect what happens on
9731         MinGW.  These symbols are defined by MinGW system headers, but we
9732         don't want that to affect whether Gnulib portions of the header
9733         are or aren't used.
9735 2015-07-26  Paul Eggert  <eggert@cs.ucla.edu>
9737         * src/ftfont.c (ftfont_close): Add comment re Bug#20890.
9739         New optional ZONE arg for format-time-string etc.
9740         This simplifies time conversions in other time zones.
9741         It also prevents display-time-world tampering with TZ (Bug#21020).
9742         * admin/admin.el (add-release-logs):
9743         Use improved add-log-time-format API.
9744         * admin/merge-gnulib (GNULIB_MODULES): Add time_rz, timegm.
9745         (GNULIB_TOOL_FLAGS): Avoid flexmember, setenv, unsetenv.
9746         * configure.ac (tzalloc): Remove test for this, since
9747         Emacs no longer uses HAVE_TZALLOC directly.
9748         * doc/lispref/os.texi (Time of Day, Time Conversion)
9749         (Time Parsing):
9750         * etc/NEWS: Document the new behavior.
9751         Merge from gnulib, incorporating:
9752         2015-07-25 strftime: fix newly-introduced bug on Solaris
9753         2015-07-23 fprintftime, strftime: use timezone_t args
9754         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
9755         * lib/strftime.c, lib/strftime.h, lib/time.in.h, m4/sys_time_h.m4:
9756         * m4/time_h.m4:
9757         Update from gnulib.
9758         * lib/time_rz.c, lib/timegm.c, m4/time_rz.m4, m4/timegm.m4:
9759         New files from gnulib.
9760         * lisp/time-stamp.el (time-stamp-string):
9761         * lisp/time.el (display-time-world-list)
9762         (display-time-world-display):
9763         Use new API, with time zone arg.
9764         * lisp/time.el (display-time-world-display):
9765         Fix race when current-time advances while we're running.
9766         * lisp/vc/add-log.el (add-log-iso8601-time-zone)
9767         (add-log-iso8601-time-string): Accept optional time zone arg.
9768         * lisp/vc/add-log.el (add-change-log-entry):
9769         * lisp/vc/log-edit.el (log-edit-changelog-ours-p): Use new arg.
9770         * nt/gnulib.mk: Propagate lib/gnulib.mk changes here.
9771         Add rules for the time module, since they're now needed
9772         for tzalloc etc.
9773         * src/conf_post.h (getenv_TZ, setenv_TZ): New macros.
9774         (emacs_getenv_TZ, emacs_setenv_TZ): New decls.
9775         * src/editfns.c: Include errno.h.
9776         (set_time_zone_rule): Omit unnecessary forward decl.
9777         (initial_tz): Remove, replacing with ...
9778         (local_tz, wall_clock_tz, utc_tz): New static vars and constants.
9779         (tzeqlen): New constant; prefer it to (sizeof "TZ=" - 1).
9780         (emacs_localtime_rz, emacs_mktime_z, xtzalloc, xtzfree)
9781         (tzlookup): New static functions.
9782         (init_editfns): New arg DUMPING.  All uses changed.
9783         (init_editfns): Omit most initialization if dumping, not if
9784         !initialized.  Initialize wall_clock_tz and local_tz.
9785         (emacs_nmemftime, format_time_string): Time zone argument can now
9786         be any time zone, not just a boolean for UTC or local time.  All
9787         callers changed.
9788         (Fformat_time_string, Fencode_time, Fcurrent_time_string)
9789         (Fcurrent_time_zone): New optional arg ZONE.
9790         (Fdecode_time, Fset_time_zone_rule): ZONE arg can now also take
9791         the same form as with the other new additions.
9792         (decode_time_zone): Remove; no longer needed.
9793         (tzvalbuf): Now file-scope.
9794         (emacs_getenv_TZ, emacs_setenv_TZ): New functions.
9795         (syms_of_editfns): Define Qwall.
9796         * src/editfns.c (mktime_z) [!HAVE_TZALLOC]:
9797         * src/systime.h (mktime_z, timezone_t, tzalloc, tzfree)
9798         [!HAVE_TZALLOC]:
9799         Remove; now supplied by gnulib.
9800         * src/emacs.c (main):
9801         * src/lisp.h (init_editfns): Adjust to init_editfns API change.
9803 2015-07-26  Shigeru Fukaya  <shigeru.fukaya@gmail.com>
9805         Fix infinite loop in delete-consecutive-dups
9806         * lisp/subr.el (delete-consecutive-dups): Work even if the last
9807         element is nil (Bug#20588).  Avoid rescan of a circular list in
9808         deletion of last element.
9810 2015-07-26  Martin Rudalics  <rudalics@gmx.at>
9812         Have `x-frame-geometry' return nil for terminal and initial
9813         frames (Bug#21132)
9814         * src/nsfns.m (Fx_frame_geometry):
9815         * src/xfns.c (Fx_frame_geometry): Return nil for initial and
9816         terminal frames.
9817         * src/w32fns.c (Fw32_frame_menu_bar_size, Fw32_frame_rect)
9818         (Fx_frame_geometry): Return nil for terminal frames
9820 2015-07-26  HOSOYA Kei  <hosoyakei.free@gmail.com>  (tiny change)
9822         * etc/tutorials/TUTORIAL.ja: Improve translation.
9824 2015-07-25  Eli Zaretskii  <eliz@gnu.org>
9826         Avoid crashes when w32 GUI functions are called in -batch
9827         * src/w32fns.c (Fx_frame_geometry, Fw32_frame_rect)
9828         (Fw32_frame_menu_bar_size, Fw32_send_sys_command): Don't call
9829         FRAME_W32_WINDOW for initial frame.  (Bug#21132)
9831         Fix flyspell-check-previous-highlighted-word
9832         * lisp/textmodes/flyspell.el
9833         (flyspell-check-previous-highlighted-word): Really accept a
9834         numeric argument, as the doc string describes.  Fix an off-by-one
9835         error in looking up overlays, so invocation with point immediately
9836         after a word would check that word.  Clarify the doc string as
9837         Suggested by N. Jackson <nljlistbox2@gmail.com>.  (Bug#21129)
9839 2015-07-24  Michael Albinus  <michael.albinus@gmx.de>
9841         Minor cleanup in tramp-tests.el
9842         * test/automated/tramp-tests.el (tramp-test31-*, tramp-test32-*):
9843         Implement using the documented interface
9844         `tramp-connection-properties', rather than with internal functions.
9846 2015-07-24  Harald Hanche-Olsen  <hanche@math.ntnu.no>  (tiny change)
9848         Pass lambdas to `skeleton-read'
9849         * lisp/skeleton.el (skeleton-read): Allow PROMPT to be a function.
9850         * lisp/textmodes/sgml-mode.el (sgml-attributes, sgml-value): Pass
9851         lambdas to `skeleton-read' (bug#20386).
9853 2015-07-24  Eli Zaretskii  <eliz@gnu.org>
9855         * INSTALL (DETAILED BUILDING AND INSTALLATION):
9856         Mention --without-imagemagick.
9858         Don't require GUI frames and mouse for Flyspell menus
9859         * lisp/textmodes/flyspell.el (flyspell-correct-word-before-point)
9860         (flyspell-emacs-popup): Require neither a GUI frame nor mouse
9861         support, since pop-up menus work with text terminals and can be
9862         controlled via the keyboard.
9864         Improve documentation of Flyspell commands
9865         * doc/emacs/fixit.texi (Spelling): Mention Flyspell commands that
9866         can be invoked via the keyboard.  Mention those commands by name
9867         and add them to the fn index.  (Bug#21125)
9869 2015-07-23  Michael Albinus  <michael.albinus@gmx.de>
9871         Fix some Tramp problems with HP-UX
9872         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
9873         Add "tab0" to stty call.
9874         * test/automated/tramp-tests.el (tramp-persistency-file-name):
9875         Set to nil.
9876         (tramp--test-hpux-p): New defun.
9877         (tramp--test-utf8): Use it.
9879 2015-07-22  Glenn Morris  <rgm@gnu.org>
9881         * build-aux/update-subdirs: Put "no-update-autoloads: t" in output.
9883 2015-07-22  Eli Zaretskii  <eliz@gnu.org>
9885         Fix point positioning in ffap-next-guess
9886         * lisp/ffap.el (ffap-url-at-point): Set ffap-string-at-point-region,
9887         as our callers expect.  This was clobbered as part of fixing
9888         bug#5673.  (Bug#21107)
9889         (ffap-gopher-at-point): Set ffap-string-at-point-region.
9891 2015-07-22  Martin Rudalics  <rudalics@gmx.at>
9893         * lisp/window.el (even-window-sizes): Fix customization type.
9895         Optionally even widths of `display-buffer' windows.  (Bug#21100)
9896         * lisp/window.el (quit-restore-window): Restore width if
9897         requested.
9898         (display-buffer-record-window): Record width when window is
9899         reused and horizontally combined.
9900         (even-window-sizes): New option to allow evening window widths.
9901         (even-window-heights): Defalias to `even-window-sizes'.
9902         (window--even-window-heights): Rename to
9903         `window--even-window-sizes'.  Handle side-by-side windows.
9904         (display-buffer-use-some-window): Call `window--even-window-sizes'
9905         instead of `window--even-window-heights'.
9906         * lisp/help.el (resize-temp-buffer-window): Fix indentation.
9907         * doc/lispref/windows.texi (Choosing Window Options): Describe
9908         `even-window-sizes'.
9909         (Coordinates and Windows): Fix typo.
9911 2015-07-22  Stephen Leake  <stephen_leake@stephe-leake.org>
9913         Add file name to autoload error messages
9914         * lisp/emacs-lisp/autoload.el (autoload-save-buffers):
9915         Add condition-case to add file name to error message.
9917 2015-07-22  Michael Albinus  <michael.albinus@gmx.de>
9919         * lisp/net/tramp-sh.el (tramp-ssh-controlmaster-options):
9920         Use 0.0.0.1 as test host.
9922 2015-07-21  Stefan Monnier  <monnier@iro.umontreal.ca>
9924         (advice--called-interactively-skip): Fix inf-loop (bug#21083)
9925         * lisp/emacs-lisp/nadvice.el (advice--called-interactively-skip):
9926         Fix inf-loop (bug#21083).
9928 2015-07-21  Glenn Morris  <rgm@gnu.org>
9930         * test/automated/package-test.el (package-test-signed):
9931         Update for recent changes.
9933         * test/automated/elisp-mode-tests.el
9934         (elisp-xref-finds-both-function-and-variable)
9935         (elisp-xref-finds-only-function-for-minor-mode):
9936         Update for recent xref name changes.
9938 2015-07-21  Dmitry Gutov  <dgutov@yandex.ru>
9940         Make eldoc timer non-repeatable
9941         * lisp/emacs-lisp/eldoc.el (eldoc-schedule-timer): Make the timer
9942         non-repeatable.  Since it's on post-command hook, that just wasted
9943         CPU cycles.
9945 2015-07-21  Michael Albinus  <michael.albinus@gmx.de>
9947         Mention `tramp-connection-properties' in NEWS
9949         Sync with Tramp repository
9950         * doc/misc/tramp.texi (Configuration): Note, that Tramp must be
9951         required prior changing its configuration.
9952         (Connection caching, Predefined connection information)
9953         (Remote shell setup): Fix typos.
9954         (Predefined connection information): Describe, how to overwrite
9955         parameters of `tramp-methods'.
9956         (Remote programs, Remote processes, Traces and Profiles):
9957         Simplify example.
9958         (Remote programs): Remove superfluous comment.
9959         * doc/misc/trampver.texi: Update release number.
9960         * lisp/net/tramp-cache.el (tramp-connection-properties):
9961         Adapt docstring.
9962         * lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file): New defun.
9963         (tramp-gvfs-handle-copy-file, tramp-gvfs-handle-rename-file): Use it.
9964         (tramp-gvfs-handle-make-directory): Reimplement PARENTS handling,
9965         "gvfs-mkdir -p ..." does not work robust.
9966         (tramp-gvfs-maybe-open-connection):
9967         Adapt `tramp-get-method-parameter' call.
9968         * lisp/net/tramp-sh.el (tramp-methods):
9969         Add `tramp-remote-shell-login' parameter where it fits.
9970         (tramp-get-remote-path): Use it.
9971         (tramp-make-copy-program-file-name): Fix quoting for "psftp" method.
9972         (all): Adapt `tramp-get-method-parameter' calls.
9973         * lisp/net/tramp.el (tramp-methods): Adapt docstring.
9974         (tramp-get-method-parameter): Replace argument METHOD by VEC.
9975         Check also for hits in `tramp-connection-properties'.  Adapt docstring.
9976         (tramp-get-remote-tmpdir): Cache only the local name of tmpdir.
9977         (all): Adapt `tramp-get-method-parameter' calls.
9978         * lisp/net/trampver.el Update release number.
9979         * test/automated/tramp-tests.el (tramp--instrument-test-case):
9980         Add "^make-symbolic-link not supported$" to `debug-ignored-errors'.
9981         (tramp-test13-make-directory, tramp--test-adb-p)
9982         (tramp--test-smb-or-windows-nt-p): Simplify.
9983         (tramp--test-ftp-p, tramp--test-gvfs-p): New defuns.
9984         (tramp--test-special-characters): Fix docstring.  Add gvfs and
9985         ftp tests.
9986         (tramp--test-utf8): Fix docstring.
9988 2015-07-20  Dmitry Gutov  <dgutov@yandex.ru>
9990         Add new xref-query-replace command
9991         * lisp/progmodes/xref.el (xref--match-buffer-bounds):
9992         New function, extracted from xref-pulse-momentarily.
9993         (xref-query-replace): New command.
9994         (xref--query-replace-1): New helper function.
9995         (xref--xref-buffer-mode-map): Add `r' binding.
9997 2015-07-20  Paul Eggert  <eggert@cs.ucla.edu>
9999         Simplify icalendar decoding of Z dates
10000         * lisp/calendar/icalendar.el (icalendar--decode-isodatetime):
10001         Simplify calculation of time strings with trailing "Z".
10003 2015-07-19  Dmitry Gutov  <dgutov@yandex.ru>
10005         Do not corrupt grep-find-ignored-files
10006         * lisp/progmodes/project.el (project-ignores): Change the order of
10007         the arguments to nconc, in order not to corrupt grep-find-ignored-files.
10009         Add xref-match-item, and use it
10010         * lisp/progmodes/xref.el (xref-match-bounds): New generic function.
10011         (xref-file-location): Add reader for the column slot.
10012         (xref-match-item): New class.
10013         (xref-match-bounds): A method implementation for it.
10014         (xref-make-match): New constructor function.
10015         (xref--current-item): New private variable.
10016         (xref-pulse-momentarily): Use it.
10017         (xref--pop-to-location): Change the first argument to an xref
10018         item, instead of location, bind xref--current-item.
10019         Update all callers.
10020         (xref-next-line, xref-prev-line, xref--next-error-function)
10021         (xref--mouse-2): Look for the property `xref-item',
10022         instead of `xref-location'.
10023         (xref--item-at-point): Likewise.  This function replaces
10024         `xref-location-at-point'.  Update all callers.
10025         (xref--insert-xrefs): Add the `xref-item' text property, instead
10026         of `xref-location'.
10027         (xref--collect-match): Use xref-make-match.
10029         * lisp/progmodes/xref.el (xref-item): Rename from `xref--xref'.
10030         Update all references.
10032         * lisp/progmodes/xref.el (xref--xref): Rename the `description'
10033         slot to `summary'.
10035         vc-hg: Perform the print-log call asynchronously
10036         * lisp/vc/vc-hg.el (vc-hg-print-log): Perform the call
10037         asynchronously (bug#21067).
10039         Add xref-after-jump-hook and xref-after-return-hook
10040         * lisp/progmodes/xref.el (xref-after-jump-hook)
10041         (xref-after-return-hook): New hooks.
10042         (xref-pulse-on-jump): Remove, in favor of the above.
10043         (xref-pulse-momentarily): Rename from xref--maybe-pulse.
10044         (xref--pop-to-location, xref--display-position)
10045         (xref-pop-marker-stack): Use the new hooks, as requested in
10046         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00213.html
10048 2015-07-19  Bozhidar Batsov  <bozhidar@batsov.com>
10050         * lisp/progmodes/js.el (js-mode): Correct the lighter.
10052 2015-07-19  Leo Liu  <sdl.web@gmail.com>
10054         Fix a bug in cfengine3-mode
10055         * lisp/progmodes/cfengine.el (cfengine3-mode): Handle nil
10056         eldoc-documentation-function.
10058 2015-07-18  Julien Danjou  <julien@danjou.info>
10060         sieve-mode: support "body" test command
10061         * lisp/gnus/sieve-mode.el (sieve-font-lock-keywords):
10062         Add missing "body" test command.
10064 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
10066         Fix info-apropos when the default encoding is Latin-N
10067         * lisp/info.el (Info-find-node-2): Reset the buffer's encoding to
10068         'undecided', so that it is set to the encoding of the Info file we
10069         are about to insert.  Otherwise, 'info-apropos' will fail to find
10070         some index nodes in some UTF-8 encoded files, if the buffer's
10071         previous encoding is Latin-N or some such.
10073 2015-07-18  Ivan Andrus  <darthandrus@gmail.com>
10075         * lisp/epg.el (epg--start): Check that gpgconf can be found
10076         before calling it.
10078         Expose more file types to OS X that Emacs understands
10079         * nextstep/Cocoa/Emacs.base/Contents/Info.plist: Add editor role for
10080         sty, dtx, json, and org files.  Export UTIs for el, elc, and org files.
10082 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
10084         Fix visual-order cursor movement when lines are truncated
10085         * src/xdisp.c (Fmove_point_visually): When lines are truncated,
10086         simulate display in a window of infinite width, to allow move_it_*
10087         functions reach positions outside of normal window dimensions.
10088         Remove code that tried to handle a subset of these situations by
10089         manual iteration of buffer text.  (Bug#17777)
10091         Fix following Info cross-references to anchors
10092         * lisp/info.el (Info-read-subfile): Add to the returned value the
10093         length of subfile preamble, after converting it to file's byte
10094         offset, as expected by the caller.  Use bufferpos-to-filepos.
10095         (Info-find-node-2): If searching for a node with a
10096         1000-character slop fails, try again with a 10000-character slop,
10097         to account for known bugs in Texinfo 5.0 and 5.1.  (Bug#21055)
10098         * lisp/international/mule-util.el (bufferpos-to-filepos): New
10099         function.
10100         * etc/NEWS: Mention bufferpos-to-filepos.
10102         Fix scrolling backwards on TTY frames under scroll-conservatively
10103         * src/xdisp.c (move_it_vertically_backward): Fix off-by-one error
10104         in moving backwards on TTY frames.  (Bug#21080)
10106 2015-07-17  Dmitry Gutov  <dgutov@yandex.ru>
10108         Consider a jsdoc tag to be a beginning of a paragraph as well
10109         * lisp/progmodes/js.el (js-mode): Change c-paragraph-start to
10110         consider a jsdoc tag to be a beginning of a paragraph as well.
10112 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
10114         * lisp/emacs-lisp/package.el: Fix warnings.
10116         * lisp/emacs-lisp/package.el (package-buffer-info):
10117         Add author and maintainers to `package-buffer-info'.
10119         * lisp/emacs-lisp/package.el: Many small changes.
10120         Replace all instances of 'face with 'font-lock-face.
10121         (describe-package-1): Improve some strings and move the summary
10122         up the list.
10123         (package-install-file): Update docstring.
10124         (package-menu-hide-package): Bind to `H'.
10126         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
10127         Fix error handling.
10129 2015-07-17  Paul Eggert  <eggert@cs.ucla.edu>
10131         Fix hang with large yanks This should fix the bug fixed by Mike
10132         Crowe's patch in:
10133         https://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00106.html
10134         A problem in this area has been reported by several users; see
10135         Bug#16737, Bug#17101, Bug#17026, Bug#17172, Bug#19320, Bug#20283.
10136         This fix differs from Mike Crowe's patch in that it should avoid a
10137         race condition that could lose SIGIO signals.  ignore_sigio dates
10138         back to the 1980s when some platforms couldn't block signals, and
10139         could only ignore them, which led to races when signals arrived
10140         while being ignored.  We shouldn't have to worry about those old
10141         platforms now.
10142         * src/dispextern.h, src/sysdep.c (ignore_sigio): Remove.
10143         * src/emacs.c (shut_down_emacs):
10144         Don't call ignore_sigio; unrequest_sigio should suffice.
10145         * src/keyboard.c (kbd_buffer_store_buffered_event):
10146         Use unrequest_sigio, not ignore_sigio.
10147         (kbd_buffer_get_event):
10148         Call request_sigio when getting the ball rolling again.
10150 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
10152         * lisp/obsolete/longlines.el (longlines-search-function):
10153         Fallback on `isearch-search-fun-default'.
10155 2015-07-17  Tassilo Horn  <tsdh@gnu.org>
10157         Support @-mentions
10158         * lisp/net/rcirc.el (rcirc-completion-at-point): Support completion
10159         of mentions/messages with @nick instead of just nick.
10161 2015-07-16  Michael Albinus  <michael.albinus@gmx.de>
10163         Fix bug#20943
10164         * lisp/autorevert.el (auto-revert-handler): Do not check for
10165         `buffer-modified-p'.
10166         * lisp/files.el (buffer-stale--default-function): Check for
10167         `buffer-modified-p'.
10168         * test/automated/auto-revert-tests.el
10169         (auto-revert-test02-auto-revert-mode-dired): Adapt test.
10171 2015-07-16  Ari Roponen  <ari.roponen@gmail.com>
10173         Fix delete-dups bug on long lists
10174         * lisp/subr.el (delete-dups):
10175         Don't mistakenly keep some dups when applied to long lists.
10177 2015-07-16  Paul Eggert  <eggert@cs.ucla.edu>
10179         Better heuristic for C stack overflow
10180         Improve the heuristic for distinguishing stack overflows from
10181         other SIGSEGV causes (Bug#21004).  Corinna Vinschen explained that
10182         the getrlimit method wasn't portable to Cygwin; see:
10183         https://www.cygwin.com/ml/cygwin/2015-07/msg00092.html
10184         Corinna suggested pthread_getattr_np but this also has problems.
10185         Instead, replace the low-level system stuff with a simple
10186         heuristic based on known good stack addresses.
10187         * src/eval.c, src/lisp.h (near_C_stack_top): New function.
10188         * src/sysdep.c: Don't include <sys/resource.h>.
10189         (stack_direction): Remove.  All uses removed.
10190         (stack_overflow): New function.
10191         (handle_sigsegv): Use it instead of incorrect getrlimit heuristic.
10192         Make SEGV fatal in non-main threads.
10194 2015-07-16  Daiki Ueno  <ueno@gnu.org>
10196         epg: Automatically start pinentry server
10197         * lisp/epg-config.el (epg-gpgconf-program): New variable.
10198         * lisp/epg.el (epg--start): Call `pinentry-start' if
10199         allow-emacs-pinentry is set in ~/.gnupg/gpg-agent.conf.
10201 2015-07-15  Katsumi Yamaoka  <yamaoka@jpl.org>
10203         * lisp/gnus/nnimap.el: Fix my last bogus change.
10204         Reinstall Stefan Monnier's change that was made in
10205         <83d824bc4041332f338ad7e5e830f443535aa300>.
10207 2015-07-15  Paul Eggert  <eggert@cs.ucla.edu>
10209         Merge from gnulib
10210         This incorporates:
10211         2015-07-05 acl-permissions: Document FreeBSD ACL_TYPE_NFS4 acls
10212         2015-07-05 acl-permissions: Fix on FreeBSD
10213         2015-07-05 file-has-acl, acl-permissions: fix some more HP-UX typos
10214         * lib/acl-internal.c, lib/acl-internal.h, lib/get-permissions.c:
10215         * lib/set-permissions.c: Copy from gnulib.
10217         Port to stricter C99
10218         * src/keyboard.h (kbd_buffer_store_event_hold):
10219         Don't return a void expression.
10221 2015-07-15  Xue Fuqiao  <xfq.free@gmail.com>
10223         * doc/emacs/frames.texi (Creating Frames):
10224         Fix the command `C-x 5 m' runs.
10226 2015-07-14  Michael Albinus  <michael.albinus@gmx.de>
10228         New autorevert tests
10229         * test/automated/auto-revert-tests.el: New file.
10231 2015-07-14  Paul Eggert  <eggert@cs.ucla.edu>
10233         Clear gcprolist etc. after stack overflow
10234         After stack overflow, command_loop calls init_eval, and this needs to
10235         clear gcprolist and byte_stack_list (Bug#20996).
10236         * src/alloc.c (init_alloc):
10237         Move gcprolist and byte_stack_list initialization from here ...
10238         * src/eval.c (init_eval): ... to here.
10240 2015-07-13  Xue Fuqiao  <xfq.free@gmail.com>
10242         * doc/emacs/windows.texi (Pop Up Window): Fix the description
10243         of `C-x 4 m'.
10245 2015-07-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
10247         Avoid deprecated enums in mac-ct font backend driver
10248         * src/macfont.m (mac_font_copy_default_descriptors_for_language)
10249         (mac_ctfont_get_advance_width_for_glyph)
10250         (mac_ctfont_get_bounding_rect_for_glyph): Avoid deprecated enums.
10252         Cache font family in mac-ct font backend driver
10253         * src/macfont.m (macfont_family_cache): New variable.
10254         (syms_of_macfont): Initialize it.
10255         (macfont_available_families_cache): New variable.
10256         (macfont_invalidate_family_cache, macfont_get_family_cache_if_present)
10257         (macfont_set_family_cache, macfont_invalidate_available_families_cache)
10258         (macfont_handle_font_change_notification)
10259         (macfont_init_font_change_handler)
10260         (macfont_copy_available_families_cache): New functions.
10261         (macfont_create_family_with_symbol): Use font family caches.
10262         (macfont_list, macfont_list_family):
10263         Use macfont_copy_available_families_cache instead of
10264         mac_font_create_available_families.
10266 2015-07-12  Dmitry Gutov  <dgutov@yandex.ru>
10268         Show the default value in the prompt
10269         * lisp/progmodes/xref.el: Add `M-?' binding for
10270         xref-find-references.  Declare functions `grep-read-files' and
10271         `grep-expand-template'.
10272         (xref--read-identifier): Show the default value in the prompt.
10274         * lisp/progmodes/xref.el (xref-find-regexp): When called with
10275         prefix argument, ask for file patterns to search as well.  When
10276         prompting for the directory, require an existing one.
10277         (xref-collect-matches): Add a new argument, FILES.  Use it in the
10278         above function.
10280         Add `project-ignores'
10281         * lisp/progmodes/project.el (project-ignores): New generic
10282         function, and an implementation for the VC project type.
10283         * lisp/progmodes/xref.el (xref--rgrep-command): Split, as a
10284         variant of rgrep-default-command that handles a generic list of
10285         ignores.
10286         (xref-collect-matches): Use it, and pass through to it the value
10287         of the newly added argument.
10288         (xref-find-regexp): Handle ignored paths within the project.
10289         Remove outdated comment.
10290         * lisp/vc/vc.el (vc-default-ignore-completion-table):
10291         Skip the comments and the empty lines.
10293 2015-07-12  Xue Fuqiao  <xfq.free@gmail.com>
10295         * doc/emacs/buffers.texi (Misc Buffer): Add a cross reference.
10297 2015-07-11  Eric Abrahamsen  <eric@ericabrahamsen.net>
10299         gnus-registry.el: Correct function argument order
10300         * lisp/gnus/gnus-registry.el (gnus-registry--set/remove-mark):
10301         Reverse the order of function arguments.
10303 2015-07-11  Dmitry Gutov  <dgutov@yandex.ru>
10305         Bind grep-highlight-matches to nil
10306         * lisp/progmodes/xref.el (xref-collect-matches):
10307         Bind grep-highlight-matches to nil (bug#20728).
10309 2015-07-11  Nikolaus Rath  <Nikolaus@rath.org>
10311         nnimap.el: Fix IMAP message size parsing
10312         * lisp/gnus/nnimap.el (nnimap-transform-headers):
10313         Don't assume that UID comes before RFC822.SIZE.
10315 2015-07-10  Stefan Monnier  <monnier@iro.umontreal.ca>
10317         * lisp/gnus/nnimap.el: Clean up "unused var" warnings
10318         (auth-source-creation-prompts): Declare.
10319         (nnimap-retrieve-headers, nnimap-status-message)
10320         (nnimap-request-create-group, nnimap-request-delete-group)
10321         (nnimap-close-group, nnimap-request-move-article)
10322         (nnimap-request-accept-article, nnimap-request-newgroups)
10323         (nnimap-request-post, nnimap-dummy-active-number)
10324         (nnimap-save-mail-spec, nnimap-get-groups): Add _ to unused vars.
10325         (nnimap-parse-flags): Remove unused var `p'.
10326         (nnimap-retrieve-group-data-early): Remove unused var `groups'.
10327         (nnimap-flags-to-marks): Remove unused var `totalp'.
10329 2015-07-10  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
10331         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 20MB.
10333 2015-07-10  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
10335         * src/macfont.m (macfont_list): Ignore font families lacking
10336         font descriptors.
10338 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
10340         Don't check the exit status, it can be misleading
10341         * lisp/progmodes/xref.el (xref-collect-matches): Don't check the
10342         exit status, it can be misleading.
10344         Introduce a Project API
10345         * lisp/progmodes/project.el: New file.
10346         * lisp/cedet/ede.el (project-try-ede): New function.
10347         (project-root): New implementation.
10348         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
10349         Set project-search-path-function.
10350         (elisp--xref-find-references): Delegate some logic to
10351         project-search-path.
10352         (elisp-search-path): New function.
10353         (elisp-xref-find): Don't implement `matches' anymore.
10354         * lisp/progmodes/etags.el: Don't implement `matches'.
10355         Delegate some logic to project-search-path.
10356         (etags-search-path): New function.
10357         * lisp/progmodes/xref.el (xref-find-function):
10358         Remove `matches' from the API.
10359         (xref-find-regexp): Move whatever common logic was in elisp and
10360         etags implementations, and search the directories returned by
10361         project-directories and project-search-path.
10363 2015-07-09  Nicolas Petton  <nicolas@petton.fr>
10365         * test/automated/map-tests.el (test-map-delete-return-value):
10366         Uncomment test.
10368         Add support for gv.el in map.el
10369         * lisp/emacs-lisp/map.el (map-elt, map-delete): Declare a gv-expander.
10370         * lisp/emacs-lisp/map.el (map-put): Refactor using `setf' and `map-elt'.
10371         * test/automated/map-tests.el: Update tests to work with the new
10372         implementations of map-elt and map-put.
10374 2015-07-09  Glenn Morris  <rgm@gnu.org>
10376         * lisp/emacs-lisp/debug.el (debug-help-follow): Use describe-symbol.
10378 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
10380         Syntax-propertize until the end of the line first
10381         * lisp/progmodes/xref.el (xref--collect-match): Syntax-propertize
10382         until the end of the line first.
10384 2015-07-09  Xue Fuqiao  <xfq.free@gmail.com>
10386         * doc/emacs/files.texi (File Archives): Add a cross reference.
10388 2015-07-08  Nikolaus Rath  <Nikolaus@rath.org>
10390         nnimap.el: Handle plain value for nnimap-stream
10391         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Always query
10392         capabilities, so that a 'plain value for the `nnimap-stream' server
10393         variable is handled correctly.
10394         * doc/misc/gnus.texi (Customizing the IMAP Connection):
10395         Document the 'plain option.
10397 2015-07-08  Leo Liu  <sdl.web@gmail.com>
10399         Fix bug in thing-at-point--bounds-of-well-formed-url
10400         * lisp/thingatpt.el (thing-at-point--bounds-of-well-formed-url): Make
10401         sure boundary contains current point.
10403 2015-07-08  Dmitry Gutov  <dgutov@yandex.ru>
10405         * lisp/progmodes/xref.el (xref-collect-matches): Use `nreverse'
10406         in the end.
10408         Declare whitespace-line-column a safe file-local
10409         * lisp/whitespace.el (whitespace-line-column): Declare to be a
10410         safe file-local when the value is an integer.
10412 2015-07-08  Eric Abrahamsen  <eric@ericabrahamsen.net>
10414         gnus-group.el: Check if group names are already strings
10415         * lisp/gnus/gnus-group.el (gnus-group-group-name):
10416         The group name may already be a string.
10417         Specifically, in the group list reached from the *Server* buffer,
10418         the 'gnus-group text property returns a string.  Everywhere else
10419         it returns a symbol.
10421         nnimap.el: Remove unused let variables
10422         * lisp/gnus/nnimap.el (nnimap-request-group): Variables are not used.
10424 2015-07-08  Eli Zaretskii  <eliz@gnu.org>
10426         Support "maximized" property of runemacs's shortcut
10427         * nt/runemacs.c (WinMain): If runemacs is invoked "maximized", pass
10428         the '--maximized' switch to Emacs.
10430         Support "minimized" property of runemacs's shortcut
10431         * nt/runemacs.c (WinMain): If runemacs is invoked "minimized",
10432         pass the '--iconic' switch to Emacs.  (Bug#20991)
10434 2015-07-08  Xue Fuqiao  <xfq.free@gmail.com>
10436         Doc fixes
10437         * doc/emacs/files.texi (Diff Mode): Fix the description of `C-c
10438         C-w' in Diff mode.
10439         * doc/emacs/arevert-xtra.texi (Auto Reverting the Buffer Menu):
10440         Add a cross reference.
10442 2015-07-08  Nicolas Richard  <youngfrog@members.fsf.org>
10444         * lisp/obsolete/landmark.el: Add Obsolete-since header.
10446 2015-07-07  Glenn Morris  <rgm@gnu.org>
10448         * test/automated/ert-tests.el (ert-test-deftest):
10449         Update for recent changes.
10451 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
10453         (gv-setter, gv-synthetic-place, gv-delay-error): New funs/macros
10454         * lisp/emacs-lisp/gv.el (gv-setter): New function.
10455         (gv-invalid-place): New error.
10456         (gv-get): Use them.
10457         (gv-synthetic-place, gv-delay-error): New places.
10458         * lisp/emacs-lisp/cl-generic.el (cl--generic-setf-rewrite): Remove.
10459         (cl-defgeneric, cl-defmethod): Use gv-setter.
10461 2015-07-07  Fabrice Popineau  <fabrice.popineau@gmail.com>
10463         Make vc-tests work with MSYS svn program
10464         * lisp/vc/vc-svn.el (vc-svn-create-repo): Fix the file:// URL when
10465         svn is an MSYS program.
10467 2015-07-07  Ken Brown  <kbrown@cornell.edu>
10469         Improve recent change to emacsclient on Cygwin
10470         * lisp/server.el (server-process-filter): Remove redundant check
10471         that 'cygwin-convert-file-name-from-windows' is defined as a
10472         function on Cygwin.  Don't call that function unless its argument
10473         starts with a drive letter.
10475 2015-07-07  Artur Malabarba  <bruce.connor.am@gmail.com>
10477         * lisp/emacs-lisp/package.el (package-compute-transaction):
10478         Fix void variable due to `found-something' being in the wrong `let'.
10480 2015-07-07  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
10482         * lisp/play/landmark.el: Move to lisp/obsolete/.
10484 2015-07-07  Martin Rudalics  <rudalics@gmx.at>
10486         Have `x-show-tip' handle `right' and `bottom' frame parameters
10487         * src/nsfns.m (compute_tip_xy, Fx_show_tip)
10488         * src/w32fns.c (compute_tip_xy, Fx_show_tip)
10489         * src/xfns.c (compute_tip_xy, Fx_show_tip): Allow aligning
10490         tooltips also via `right' and `bottom' frame parameters.
10492 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
10494         Add online-help support to describe types
10495         * lisp/help-fns.el (describe-symbol-backends): Move to help-mode.el.
10496         (describe-symbol): Improve the selection of default.
10497         * lisp/help-mode.el: Require cl-lib.
10498         (describe-symbol-backends): Move from help-fns.el.
10499         (help-make-xrefs): Use it.
10500         * lisp/emacs-lisp/cl-extra.el (describe-symbol-backends): Add entry
10501         for types.
10502         (cl--typedef-regexp): New const.
10503         (find-function-regexp-alist): Add entry for types.
10504         (cl-help-type, cl-type-definition): New buttons.
10505         (cl-find-class): New function.
10506         (cl-describe-type): New command.
10507         (cl--describe-class, cl--describe-class-slot)
10508         (cl--describe-class-slots): New functions, moved from eieio-opt.el.
10509         * lisp/emacs-lisp/cl-generic.el (cl--generic-method-documentation)
10510         (cl--generic-all-functions, cl--generic-specializers-apply-to-type-p):
10511         New functions.  Moved from eieio-opt.el.
10512         (cl--generic-class-parents): New function, extracted from
10513         cl--generic-struct-specializers.
10514         (cl--generic-struct-specializers): Use it.
10515         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Use pcase-dolist.
10516         Improve constructor's docstrings.
10517         (cl-struct-unknown-slot): New error.
10518         (cl-struct-slot-offset): Use it.
10519         * lisp/emacs-lisp/cl-preloaded.el (cl-struct-define): Record the type
10520         definition in current-load-list.
10521         * lisp/emacs-lisp/eieio-core.el (eieio--known-slot-names): New var.
10522         (eieio--add-new-slot): Set it.
10523         (eieio-defclass-internal): Use new name for current-load-list.
10524         (eieio-oref): Add compiler-macro to warn about unknown slots.
10525         * lisp/emacs-lisp/eieio.el (defclass): Update eieio--known-slot-names
10526         as compile-time as well.  Improve constructor docstrings.
10527         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
10528         (eieio--help-print-slot, eieio-help-class-slots): Move to cl-extra.el.
10529         (eieio-class-def): Remove button.
10530         (eieio-help-constructor): Use new name for load-history element.
10531         (eieio--specializers-apply-to-class-p, eieio-all-generic-functions)
10532         (eieio-method-documentation): Move to cl-generic.el.
10533         (eieio-display-method-list): Use new names.
10534         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression):
10535         Add "define-linline".
10536         (lisp-fdefs): Remove "defsubst".
10537         (el-fdefs): Add "defsubst", "cl-defsubst", and "define-linline".
10538         * lisp/emacs-lisp/macroexp.el (macroexp--warned): New var.
10539         (macroexp--warn-and-return): Use it to avoid inf-loops.
10540         Add `compile-only' argument.
10542 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
10544         python.el: Fix local/remote shell environment setup
10545         * lisp/progmodes/python.el (python-shell-with-environment):
10546         Fix remote/local environment setup.
10547         * test/automated/python-tests.el (python-shell-with-environment-1)
10548         (python-shell-with-environment-2): New tests.
10550 2015-07-06  Glenn Morris  <rgm@gnu.org>
10552         * lisp/simple.el (set-variable): Tweak recent doc fix.
10554 2015-07-06  Ken Brown  <kbrown@cornell.edu>
10556         * src/sysdep.c (handle_sigsegv) [CYGWIN]: Increase STACK_DANGER_ZONE.
10558 2015-07-06  Glenn Morris  <rgm@gnu.org>
10560         * lisp/simple.el (set-variable): Use user-error for type mismatch.
10562 2015-07-06  Ken Brown  <kbrown@cornell.edu>
10564         * src/emacs.c (main): Don't increase the stack size on Cygwin.
10566 2015-07-06  Stefan Monnier  <monnier@iro.umontreal.ca>
10568         (describe-symbol): Rewrite describe-function-or-variable
10569         * lisp/help-fns.el (describe-symbol-backends): New var.
10570         (help-xref-stack-item): Declare.
10571         (describe-symbol): Rename from describe-function-or-variable.
10572         Rewrite using describe-symbol-backends instead of help-xref-interned.
10573         * lisp/help.el (help-map): Use it.
10574         * lisp/help-mode.el (help-symbol, help-follow-symbol): Use it.
10575         (help-xref-interned): Make it into an obsolete alias.
10577         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-save): Don't ignore
10578         `file' arg (bug#20972).  Always use utf-8-emacs.  Use with-temp-buffer
10579         and cl-letf.
10581 2015-07-06  Wolfgang Jenkner  <wjenkner@inode.at>
10583         Fix parsing glitches in dired-mark-sexp (bug#13575)
10584         * lisp/dired-x.el (dired-x--string-to-number): New function.
10585         (dired-mark-sexp): Use it.  Tweak dired-re-inode-size.  Fix usage
10586         of directory-listing-before-filename-regexp.  Consider
10587         forward-word harmful and replace it.  Add more verbiage in
10588         comments and doc string.
10590 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
10592         python.el: Respect process environment for remote shells
10593         * lisp/progmodes/python.el
10594         (python-shell-calculate-process-environment): Calculate
10595         process-environment or tramp-remote-process-environment depending
10596         whether current file is remote.
10597         (python-shell-calculate-exec-path): Calculate exec-path or
10598         tramp-remote-path depending whether current file is remote.
10599         (python-shell-with-environment): New macro.
10600         (python-shell-prompt-detect, python-shell-calculate-command)
10601         (python-shell-make-comint, python-check): Use it.
10603         python.el: Avoid making let-bound defvars buffer local  (Bug#18244)
10604         * lisp/progmodes/python.el (python-shell--interpreter)
10605         (python-shell--interpreter-args): New vars.
10606         (inferior-python-mode, python-shell-make-comint): Use them.
10608         python.el: Fixes for IPython 3.x  (Bug#20580)
10609         * lisp/progmodes/python.el:
10610         (python-shell-completion-native-setup): Fix IPython 3.x setup.
10611         (python-shell-completion-native-get-completions): Fix timeout
10612         logic.
10614         python.el: Fix mark-defun behavior  (Bug#19665)
10615         * lisp/progmodes/python.el (python-mark-defun): New function.
10616         * test/automated/python-tests.el (python-mark-defun-1)
10617         (python-mark-defun-2, python-mark-defun-3): New tests.
10619 2015-07-05  Glenn Morris  <rgm@gnu.org>
10621         * lisp/progmodes/f90.el (f90-type-def-re): Handle attribute lists
10622         such as "extends(parent), private".  (Bug#20969)
10623         * test/automated/f90.el (f90-test-bug20969, f90-test-bug20969b):
10624         New tests.
10626 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
10628         Avoid duplicate calls to current_timespec
10629         * src/process.c (wait_reading_process_output):
10630         Cache current_timespec results as long as we're not waiting.
10632 2015-07-05  Ian Kelling  <ian@iankelling.org>
10634         Avoid returning early reading process output due to SIGIO
10635         * src/process.c (wait_reading_process_output): Extend the behavior of
10636         not breaking due to not finding output when a timer has lowered the
10637         timeout to include when SIGIO lowers the timeout.
10639         Don't return as fast reading any process output
10640         * src/process.c (wait_reading_process_output):
10641         The patch for Bug#17647 returns too fast sometimes when reading
10642         from any processes.  Revert part of it, and limit the timeout more
10643         sensibly (Bug#20978).
10645         Refactor timeouts in wait_reading_process_output
10646         * src/process.c (wait_reading_process_output):
10647         Simplify timeouts with an enum.  Remove a redundant condition.
10648         (Bug#20978)
10650         Remove ADAPTIVE_READ_BUFFERING ifdef
10651         * src/process.c (make-process, make-pipe-process, deactivate_process)
10652         (wait_reading_process_output, read_process_output, send_process)
10653         (init_process_emacs): ifdef ADAPTIVE_READ_BUFFERING was originally
10654         added in case there was an operating system in which it was not
10655         useful.  That was 11 years ago and it hasn't happened.  Make
10656         development easier by not considering the effect of changes on a
10657         theoretical OS where this is disabled (Bug#20978).
10659 2015-07-05  Glenn Morris  <rgm@gnu.org>
10661         * lisp/simple.el (set-variable): Doc fix.
10663         * lisp/progmodes/fortran.el (fortran-line-length): Doc fix.
10665 2015-07-05  Ian Kelling  <ian@iankelling.org>
10667         accept-process-output fix
10668         This is a followon to the fix for bug#17647 (Bug#20976).
10669         * src/process.c (status_notify): Fix too high return in some cases.
10671 2015-07-05  Artur Malabarba  <bruce.connor.am@gmail.com>
10673         * lisp/character-fold.el (character-fold-table):
10674         Only fold decompositions if at least one character is non-spacing.
10675         (Bug#20975)
10677 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
10679         Merge from gnulib
10680         This incorporates:
10681         2015-07-04 file-has-acl, acl-permissions: fix HP-UX typos
10682         2015-07-03 set-permissions.c: adjust acl_from_mode's cpp guard
10683         2015-07-02 update-copyright: fix test failure with perl >= 5.22
10684         2015-07-01 gnulib-common.m4: change the ARFLAGS default to 'cr'
10685         2015-07-01 acl: fix definition of acl_from_mode on FreeBSD
10686         * build-aux/update-copyright, doc/misc/texinfo.tex, lib/acl-internal.h:
10687         * lib/set-permissions.c, m4/gnulib-common.m4: Copy from gnulib.
10689 2015-07-05  Christoph Wedler  <christoph.wedler@sap.com>
10691         Respect `prog-indentation-context' in python.el
10692         * lisp/progmodes/python.el (python-indent-guess-indent-offset)
10693         (python-indent-context, python-indent--calculate-indentation)
10694         (python-info-current-defun)
10695         (python-info-dedenter-opening-block-message)
10696         (python-info-line-ends-backslash-p)
10697         (python-info-beginning-of-backslash)
10698         (python-info-continuation-line-p): Use `prog-widen'.
10699         (python-indent--calculate-indentation)
10700         (python-indent--calculate-levels)
10701         (python-indent-calculate-indentation): Use `prog-first-column'.
10702         (python-indent--calculate-levels): Simplify.
10703         Ignore also initial empty lines for syntax calculation.
10704         * lisp/progmodes/python.el (python-indent-context): Return
10705         :no-indent for first non-empty line, not just in line 1.
10706         * test/automated/python-tests.el (python-indent-base-case)
10707         (python-indent-inside-paren-1, python-indent-inside-paren-2)
10708         (python-indent-inside-paren-3, python-indent-inside-paren-4)
10709         (python-indent-inside-paren-5, python-indent-inside-paren-6)
10710         (python-indent-after-backslash-1)
10711         (python-indent-after-backslash-2)
10712         (python-indent-after-backslash-3)
10713         (python-indent-after-backslash-4, python-indent-inside-string-1):
10714         Expect :no-indent for first non-empty line.
10716 2015-07-04  Daniel Colascione  <dancol@dancol.org>
10718         Factor isearch word description into new function
10719         * lisp/isearch.el (isearch--describe-word-mode): New function.
10720         (isearch-message-prefix, isearch-query-replace): Use it.
10722 2015-07-04  Eli Zaretskii  <eliz@gnu.org>
10724         Fix mouse pointer on w32 when a menu is active
10725         * src/w32fns.c (w32_wnd_proc): Don't change the mouse pointer
10726         shape while a menu is in use.  This started happening since we now
10727         send WM_EMACS_SHOWCURSOR messages when the mouse moves.
10729 2015-07-04  Martin Rudalics  <rudalics@gmx.at>
10731         Fix processing of alpha parameter for Windows tip frames  (Bug#17344)
10732         * src/w32fns.c (x_create_tip_frame): Fix processing alpha
10733         parameter.  (Bug#17344)
10735         Have `compilation-set-window' use right window for getting fringes
10736         (Bug#20829)
10737         * lisp/progmodes/compile.el (compilation-set-window):
10738         Take `window-fringes' from argument window.
10740 2015-07-03  Glenn Morris  <rgm@gnu.org>
10742         Update eieio tests for recent eieio-core change.
10743         * test/automated/eieio-test-persist.el (persist-test-save-and-compare):
10744         * test/automated/eieio-tests.el
10745         (eieio-test-32-slot-attribute-override-2):
10746         Replace the deleted eieio--class-v with cl--find-class.
10748 2015-07-03  Martin Rudalics  <rudalics@gmx.at>
10750         Fix some issues with `window-divider-mode'
10751         * lisp/frame.el (window-divider-default-places): New option.
10752         (window-divider-mode): Remove option.
10753         (window-divider-mode): Make it a "regular" minor mode.
10754         (window-divider-width-valid-p): Drop frame- prefix.
10755         (window-divider-mode-apply): New argument ENABLE.  Drop frame-
10756         prefix.  Handle `window-divider-default-places'.
10757         (frame--window-divider-mode-set-and-apply): Remove.
10758         (window-divider-default-bottom-width)
10759         (window-divider-default-right-width): Drop :group entries.
10760         * lisp/menu-bar.el (menu-bar-bottom-and-right-window-divider)
10761         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
10762         (menu-bar-no-window-divider): Set `window-divider-default-places'
10763         and call `window-divider-mode'.
10764         * doc/emacs/frames.texi (Window Dividers): Document
10765         `window-divider-default-places'.
10767 2015-07-02  Xue Fuqiao  <xfq.free@gmail.com>
10769         * doc/emacs/display.texi (Displaying Boundaries):
10770         * doc/emacs/search.texi (Word Search): Add cross references.
10772 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
10774         -batch should not affect ‘’ -> `' display
10775         * lisp/startup.el (command-line): Do the ‘’ -> `' check even if
10776         -batch (Bug#20926).
10778 2015-07-02  Stefan Monnier  <monnier@iro.umontreal.ca>
10780         * lisp/emacs-lisp/eieio-core.el (eieio--class-v): Remove
10781         * lisp/emacs-lisp/eieio-core.el, lisp/emacs-lisp/eieio.el:
10782         * lisp/emacs-lisp/eieio-opt.el, lisp/emacs-lisp/eieio-compat.el:
10783         Use cl--find-class instead.
10785         * lisp/term/xterm.el (xterm--query): Fix paren typo (bug#20951).
10787 2015-07-02  Martin Rudalics  <rudalics@gmx.at>
10789         Some further fixes in Change Window node (Bug#20183)
10790         * doc/emacs/windows.texi (Change Window): Replace "rearranging"
10791         by "resizing" in section title.  Add some concept indices.
10792         Suggested by N. Jackson (Bug#20183).
10794         * doc/emacs/windows.texi (Change Window): Reference window
10795         dividers.
10797         Document new `window-divider-mode'.
10798         * lisp/frame.el (window-divider-mode): Fix doc-string.
10799         * doc/emacs/frames.texi (Window Dividers): New section.
10801         Improve accessibility of window dividers (Bug#20183)
10802         * lisp/faces.el (window-divider)
10803         (window-divider-first-pixel, window-divider-last-pixel): Change
10804         membership from `frames' to `window-divider' customization group.
10805         * lisp/frame.el (window-divider): New customization group.
10806         (window-divider-mode): New minor mode.
10807         (window-divider-default-bottom-width)
10808         (window-divider-default-right-width): New options.
10809         (frame--window-divider-previous-mode): New variable.
10810         (frame-window-divider-width-valid-p)
10811         (frame--window-divider-mode-apply)
10812         (frame--window-divider-mode-set-and-apply): New functions.
10813         * lisp/menu-bar.el (menu-bar-options-save): Save
10814         window-divider-mode settings.
10815         (menu-bar-window-divider-customize)
10816         (menu-bar-bottom-and-right-window-divider)
10817         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
10818         (menu-bar-no-window-divider): New functions.
10819         (menu-bar-showhide-window-divider-menu): New variable.
10820         (menu-bar-showhide-menu): Show/hide window divider menu.
10821         * lisp/mouse.el (mouse-split-window-vertically)
10822         (mouse-split-window-horizontally): Replace `error' by
10823         `user-error'.  Bind `window-combination-resize' to nil.
10824         (top-level): Add/reorder mouse key bindings on mode- and
10825         vertical-line.
10827 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
10829         Don't display ‘’ as `' under X in en_GB
10830         The curved quote setup code invokes (char-displayable-p ?‘),
10831         but this isn’t reliable until after the X frame replaces the
10832         terminal frame (Bug#20926).
10833         * lisp/international/mule-cmds.el (set-locale-environment):
10834         Move curved quote setup code from here ...
10835         * lisp/startup.el (command-line): ... to here, after creating
10836         the X frame.
10838 2015-07-01  Nicolas Richard  <youngfrog@members.fsf.org>
10840         * lisp/emacs-lisp/seq.el (seq-difference): Fix typo in docstring.
10842         * lisp/ido.el (ido-restrict-to-matches): Add an optional argument
10843         to reverse the meaning (Bug#15631).
10845 2015-07-01  Eli Zaretskii  <eliz@gnu.org>
10847         Be more tolerant to fonts named "Foobar-12"
10848         * src/frame.c (x_set_font): If font_spec_from_name returns nil,
10849         don't barf; instead, request a new fontset to be generated.  This
10850         avoids unnecessarily rejecting fonts named against XLFD rules.  See
10851         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html,
10852         for the description of the original problem.
10853         * lisp/faces.el (set-face-attribute): Don't be fooled too easily
10854         by a hyphen in a font's name.
10856         Fix value of posn-at-pont in R2L lines
10857         * src/keyboard.c (Fposn_at_x_y, Fposn_at_point): Allow X pixel
10858         coordinate of -1, for a newline in a right-to-left line that
10859         overflowed into the left fringe.
10861 2015-07-01  Stefan Monnier  <monnier@iro.umontreal.ca>
10863         (cl--copy-slot-descriptor): Copy the `props' alist as well
10864         * lisp/emacs-lisp/cl-preloaded.el (cl--copy-slot-descriptor-1):
10865         Rename from cl--copy-slot-descriptor.
10866         (cl--copy-slot-descriptor): New function.  Copy the alist (bug#20914).
10868 2015-06-30  Stefan Monnier  <monnier@iro.umontreal.ca>
10870         * lisp/term/xterm.el (xterm--query): Avoid generating garbage
10871         (xterm-query-timeout): New var.
10872         (xterm--query): Use it.  Fallback on async method if we timeout before
10873         getting the first byte of the reply (bug#12354).
10875 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
10877         Spelling fixes
10878         * lisp/character-fold.el (character-fold-search):
10879         * lisp/emacs-lisp/package.el (package-hidden-regexps):
10880         Fix typos.
10882 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
10884         * doc/emacs/frames.texi (Frame Commands): Typo fix.  (Bug#20946)
10886 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
10888         In strings, prefer plain ` and ' to \` and \'
10889         * lisp/allout.el (allout-insert-listified):
10890         * lisp/emacs-lisp/easy-mmode.el (define-globalized-minor-mode):
10891         * lisp/ls-lisp.el (ls-lisp-UCA-like-collation)
10892         (ls-lisp-string-lessp):
10893         * lisp/menu-bar.el (menu-bar-open):
10894         * lisp/obsolete/otodo-mode.el (todo-top-priorities):
10895         * lisp/progmodes/compile.el (compile):
10896         * lisp/progmodes/etags.el (tags-loop-scan):
10897         * lisp/progmodes/make-mode.el (makefile-browser-insert-continuation):
10898         * lisp/subr.el (posn-actual-col-row):
10899         * lisp/term/pc-win.el (x-list-fonts):
10900         * lisp/textmodes/texinfmt.el (texinfmt-version):
10901         * lisp/textmodes/texnfo-upd.el (texinfo-master-menu):
10902         * lisp/time.el (display-time-world-list):
10903         * lisp/tmm.el (tmm-menubar):
10904         * src/buffer.c (syms_of_buffer):
10905         * src/fileio.c (syms_of_fileio):
10906         Omit unnecessary and confusing backslash before quote.
10907         * lisp/erc/erc.el (erc-cmd-LASTLOG):
10908         * lisp/progmodes/flymake.el (flymake-fix-file-name):
10909         * lisp/progmodes/vhdl-mode.el (vhdl-in-extended-identifier-p):
10910         Fix string that was intended to escape a backslash and not a quote.
10912 2015-06-30  Glenn Morris  <rgm@gnu.org>
10914         * leim/Makefile.in, lisp/Makefile.in: Add missing EXEEXT definition.
10916         * lisp/Makefile.in (MH_E_SRC, TRAMP_SRC, CAL_SRC):
10917         Replace hard-coded lists with wildcard + filter-out.
10919         * configure.ac (system-configuration-features): Add X11, NS.
10921         Improve reproducibility of generated loaddefs file
10922         * lisp/emacs-lisp/autoload.el (autoload-generate-file-autoloads):
10923         Make the return value the modtime of the input file (if no autoloads).
10924         (update-directory-autoloads): In the "no autoloads" section,
10925         use "most recent modtime" rather than "current time".
10927 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
10929         * lisp/emacs-lisp/package.el (package--remove-hidden): Fix logic.
10930         (Bug#20930)
10932 2015-06-30  Nicolas Petton  <nicolas@petton.fr>
10934         * doc/lispref/sequences.texi: Add documentation for seq-min and seq-max.
10936         Add seq-min and seq-max
10937         Bump version number.
10938         * lisp/emacs-lisp/seq.el (seq-min, seq-max): New functions.
10939         * test/automated/seq-tests.el: Add tests for seq-min and seq-max.
10941 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
10943         Make sure sleep-for always delays for as long as it's told
10944         * src/dispnew.c (Fsleep_for): Call wait_reading_process_output in
10945         a loop, to ensure we always wait exactly the required amount of
10946         time.  (Bug#15990)
10948 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
10950         Fix pointer signedness glitch
10951         * src/font.c (font_load_for_lface): Use SSDATA, not SDATA.
10953 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
10955         Don't block changes in mouse pointer inside 'track-mouse'
10956         * etc/NEWS:
10957         * doc/lispref/frames.texi (Mouse Tracking): Document the special
10958         effect of setting 'track-mouse' to 'dragging'.
10959         * lisp/textmodes/artist.el (artist-mouse-draw-continously):
10960         * lisp/ruler-mode.el (ruler-mode-mouse-drag-any-column-iteration):
10961         * lisp/mouse-drag.el (mouse-drag-throw):
10962         * lisp/mouse.el (mouse-drag-line): Set 'track-mouse' to 'dragging'
10963         to avoid changes in the shape of the mouse pointer.
10964         * src/xdisp.c (define_frame_cursor1): Don't change the mouse
10965         pointer shape when do_mouse_tracking has the value of 'dragging',
10966         not just any non-nil value.  (Bug#20934)
10967         (syms_of_xdisp): DEFSYM 'dragging'.
10969 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
10971         * lisp/isearch.el (isearch-toggle-word): Fix toggle.
10973         * lisp/emacs-lisp/package.el (package-compute-transaction):
10974         Don't assume version sorting.
10976         * lisp/emacs-lisp/package.el (package--save-selected-packages):
10977         Don't save before init time, to avoid overwriting configurations.
10978         (Bug#20855)
10980 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
10982         * doc/emacs/display.texi (Standard Faces, Fringes): Add cross
10983         references.
10985 2015-06-29  Ted Zlatanov  <tzz@lifelogs.com>
10987         Update for the upcoming CFEngine 3.7 release: support macros and
10988         quoted context strings; reformat JSON; indent promise attributes 2
10989         units by default; give function parameter descriptions in the eldoc
10990         glue.
10991         * lisp/progmodes/cfengine.el: Update version and docs and fix name.
10992         Autoload `json-pretty-print'.  Support new features in 3.7.
10993         (cfengine-parameters-indent): Set default promise attribute indent to
10994         2 more than the promise itself.
10995         (cfengine3-macro-regex): New variable to match the new macro syntax.
10996         (cfengine3-font-lock-keywords): Use it to highlight macros.
10997         (cfengine3-indent-line): Use it to indent macros to column 0.
10998         (cfengine3-class-selector-regex): Update for the new quoted strings
10999         format.
11000         (cfengine3-reformat-json-string): New function to reformat a JSON
11001         string using `json-pretty-print'.
11002         (cfengine3-format-function-docstring): Use function parameter
11003         description if it's provided by the cf-promises syntax dump.
11005 2015-06-29  Michael R. Mauger  <michael@mauger.com>
11007         Cygwin emacsclient handles w32 file names
11008         * lisp/server.el (server-process-filter): Allow Cygwin's
11009         emacsclient to be used as a file handler on MS-Windows.
11011 2015-06-29  Katsumi Yamaoka  <yamaoka@jpl.org>
11013         * lisp/isearch.el (isearch-exit): Don't call isearch-done twice
11014         (bug#20925).
11016 2015-06-29  Eli Zaretskii  <eliz@gnu.org>
11018         * doc/lispref/text.texi (Sticky Properties): Improve wording.
11019         (Bug#20924)
11021         Allow font names that end in "-NN", where NN is a number
11022         * src/font.c (font_load_for_lface): If the font-spec didn't match
11023         any available fonts, try again without interpreting trailing "-NN"
11024         as the font size.  For the description of the original problem, see
11025         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html
11027         .gdbinit followup to changes in !USE_LSB_TAG
11028         * src/.gdbinit (xgetsym): Don't left-shift $ptr even under
11029         !USE_LSB_TAG, as Emacs no longer does.
11031 2015-06-29  Wolfgang Jenkner  <wjenkner@inode.at>
11033         * lisp/calc-store.el (calc-insert-permanent-variable): Heed case.
11034         Otherwise `s p' of f and F will stomp on each other's value.
11035         (Bug#20916)
11037 2015-06-29  Artur Malabarba  <bruce.connor.am@gmail.com>
11039         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
11040         Don't block remember-pos if buffer isn't displayed.  (Bug#20921)
11042 2015-06-29  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
11044         * lisp/emacs-lisp/package.el (describe-package): Use symbol-at-point
11045         as additional guess.
11047         * lisp/emacs-lisp/package.el (describe-package): Convert the guess
11048         to a string.
11050 2015-06-28  Paul Eggert  <eggert@cs.ucla.edu>
11052         apropos-library quoting fix
11053         * lisp/apropos.el (apropos-library): Quote library consistently
11054         with the rest of the quoting used by apropos.
11056         Clarify interpreter-mode-alist doc
11057         * lisp/files.el (interpreter-mode-alist):
11058         Reword to avoid confusing quoting that wasn't working anyway.
11060 2015-06-28  Michael Albinus  <michael.albinus@gmx.de>
11062         Sync with Tramp 2.2.12
11063         * doc/misc/trampver.texi:
11064         * lisp/net/trampver.el: Update release number.
11065         * test/automated/tramp-tests.el (tramp-test13-make-directory):
11066         Fix cleanup.
11068 2015-06-28  Artur Malabarba  <bruce.connor.am@gmail.com>
11070         * lisp/isearch.el (isearch-mode): Don't char-fold regexps (bug#20913).
11072 2015-06-27  Dmitry Gutov  <dgutov@yandex.ru>
11074         Bind grep-highlight-matches around the rgrep call
11075         * lisp/progmodes/grep.el (zrgrep): Bind grep-highlight-matches
11076         around the rgrep call (bug#20728).
11078         Put "--color" before the other options in grep-command
11079         * lisp/progmodes/grep.el (grep-compute-defaults): Put "--color"
11080         before the other options in grep-command (bug#20912).
11082         Add --color Grep option to the command dynamically
11083         * lisp/progmodes/grep.el (grep-template, grep-find-template):
11084         Update the description for <C>.  (Bug#20728)
11085         (grep-compute-defaults): Don't add the --color option to
11086         grep-options.  Only add it to grep-command.
11087         (grep-expand-keywords): Expand the env value opts into <C>.
11088         (grep-expand-template): Replace cf in the env with the opts list,
11089         that can include -i and --color.
11090         * lisp/progmodes/xref.el (xref-collect-matches): Do not remove
11091         "--color=always" from the template, because we don't have to.
11093 2015-06-27  Paul Eggert  <eggert@cs.ucla.edu>
11095         cl-extra fixes for most-negative-fixnum
11096         * lisp/emacs-lisp/cl-extra.el (cl-gcd, cl-lcm, cl-random):
11097         Don't mishandle an argument equal to most-negative-fixnum,
11098         whose absolute value equals itself.
11099         (cl-gcd, cl-lcm): Use dolist rather than doing it by hand.
11101         Initialize cl--gensym-counter to 0
11102         Previously it was initialized to a random value, which made it
11103         harder to reproduce earlier Emacs runs.  The need for a random
11104         value went away when Emacs introduced and used the #: syntax for
11105         uninterned symbols (Bug#20862).
11106         * doc/misc/cl.texi (Creating Symbols, Common Lisp Compatibility):
11107         Document that cl--gensym-counter now starts with 0.
11108         * lisp/emacs-lisp/cl-lib.el (cl--gensym-counter): Remove.
11109         (cl--random-time): Move to near only remaining use.
11110         * lisp/emacs-lisp/cl-macs.el (cl--gensym-counter): Initialize to 0.
11112         Improve docstring for macroexp-let2
11113         * lisp/emacs-lisp/macroexp.el (macroexp-let2):
11114         Improve as per suggestion by RMS in:
11115         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00621.html
11116         Also, rename args to match new doc string.
11118 2015-06-27  Eli Zaretskii  <eliz@gnu.org>
11120         Fix VC test suite on MS-Windows
11121         * lisp/vc/vc-svn.el (vc-svn-create-repo): Make sure the file: URL
11122         always starts with 3 slashes after the colon.
11123         * test/automated/vc-tests.el (vc-test--create-repo-function): Use
11124         'w32-application-type' to invoke CVS on MS-Windows with properly
11125         formatted CVSROOT directory name.
11127         Add a new function w32-application-type
11128         * src/w32proc.c (Fw32_application_type): New function.
11130         Avoid error in TLS connections due to incorrect format
11131         * src/gnutls.c (Fgnutls_boot): Use the %x conversion specifier in
11132         the call to 'error', instead of the unsupported %u.  Reported by
11133         lo2net <fangtao0901@gmail.com>.  (Bug#20908)
11135 2015-06-26  Artur Malabarba  <bruce.connor.am@gmail.com>
11137         * lisp/replace.el (replace-search): Fix regexp case (bug#20901).
11139 2015-06-26  Leo Liu  <sdl.web@gmail.com>
11141         * lisp/emacs-lisp/cl-indent.el: Fix indentation for
11142         `with-output-to-string' in elisp.
11144         Revert "lisp/emacs-lisp/cl-indent.el: Fix indent of
11145         with-output-to-string".
11146         This reverts commit 659199f2ca5f283fb246faa78a244e5ca25f53dd.
11148 2015-06-26  Eli Zaretskii  <eliz@gnu.org>
11150         Minor corrections in ELisp manual
11151         * doc/lispref/nonascii.texi (Character Properties): Correct
11152         inaccuracies in description of values of the Unicode properties.
11154         Fix invisible mouse pointers on Windows.
11155         * src/w32fns.c: Include windowsx.h.
11156         (w32_wnd_proc): If the mouse moved and the mouse pointer is
11157         invisible, make it visible again even when the main (Lisp)
11158         thread is busy.
11159         * src/w32term.c (w32_toggle_invisible_pointer): Rather then
11160         garbaging the frame have the input thread call SetCursor.
11162 2015-06-26  Martin Rudalics  <rudalics@gmx.at>
11164         Provide invisible mouse pointers on Windows (Bug#6105) (Bug#12922)
11165         * src/w32fns.c (w32_wnd_proc): Handle f->pointer_invisible
11166         for WM_SETCURSOR and WM_EMACS_SETCURSOR cases.
11167         * src/w32term.c (w32_hide_hourglass): Handle f->pointer_invisible.
11168         (w32_toggle_invisible_pointer): New function.
11169         (w32_create_terminal): Add w32_toggle_invisible_pointer as
11170         toggle_invisible_pointer_hook for this terminal.
11172 2015-06-25  Xue Fuqiao  <xfq.free@gmail.com>
11174         Doc fix for deletion commands
11175         'delete-char' does not respect the value of 'delete-active-region'.
11176         * doc/emacs/killing.texi (Deletion):
11177         Fix documentation for some single-char deletion commands.
11179         * doc/emacs/help.texi (Apropos):
11180         Improve documentation of 'apropos-do-all'.
11182         * doc/emacs/help.texi (Help Summary):
11183         Improve documentation of 'describe-mode'.
11185 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
11187         Fix submake dependency bug with .h files
11188         * src/Makefile.in ($(libsrc)/make-docfile$(EXEEXT)):
11189         Depend on $(lib)/libgnu.a, so that we build $(lib)/*/*.h
11190         before the submake in $(libsrc) would spin off a subsubmake
11191         for $(lib) in parallel with our submake for $(lib) (Bug#20894).
11193 2015-06-25  Artur Malabarba  <bruce.connor.am@gmail.com>
11195         * lisp/character-fold.el (character-fold-table): Reuse `table'.
11197 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
11199         Translate undisplayable ‘ to `
11200         * doc/lispref/help.texi (Keys in Documentation):
11201         * lisp/international/mule-cmds.el (set-locale-environment):
11202         * lisp/term/w32console.el (terminal-init-w32console):
11203         * src/doc.c (Fsubstitute_command_keys, Vhelp_quote_translation):
11204         If ‘ is not displayable, transliterate it to `, not to '.  See:
11205         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00542.html
11207         Fix C99 incompatibilities in Cairo code
11208         * src/image.c (xpm_load) [USE_CAIRO]:
11209         * src/xterm.c (x_cr_accumulate_data) [USE_CAIRO]:
11210         Fix pointer signedness problem.
11212 2015-06-25  Oleh Krehel  <ohwoeowho@gmail.com>
11214         lisp/emacs-lisp/cl-indent.el: Fix indent of with-output-to-string
11215         * lisp/emacs-lisp/cl-indent.el (common-lisp-indent-function):
11216         `with-output-to-string' should have the same indent as `progn'.
11217         This is in line with the declaration of `with-output-to-string'.
11219 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
11221         Get ‘./configure; make -C src emacs’ to work
11222         Without this fix, lib/fcntl.h isn't built in time (Bug#20894).
11223         * lib-src/Makefile.in (../lib/libgnu.a):
11224         * src/Makefile.in ($(lib)/libgnu.a): Build all, not libgnu.a.
11226 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
11228         Fix GC bugs --with-wide-int and Qnil == 0
11229         Use the same alignment for the !USE_LSB_TAG case as for the
11230         more-typical USE_LSB_TAG case.  The attempt to support arbitrary
11231         alignments with !USE_LSB_TAG had subtle bugs in garbage collection
11232         once we changed the representation of symbols so that Qnil == 0.
11233         Problem reported by Eli Zaretskii (Bug#20862).
11234         * src/alloc.c (XMALLOC_HEADER_ALIGNMENT) [XMALLOC_OVERRUN_CHECK]:
11235         * src/alloc.c (vector_alignment, union aligned_Lisp_Symbol)
11236         (union aligned_Lisp_Misc, maybe_lisp_pointer, pure_alloc):
11237         Use same alignment for !USE_LSB_TAG as for USE_LSB_TAG.
11238         * src/alloc.c (POINTERS_MIGHT_HIDE_IN_OBJECTS): Remove.
11239         This optimization in the !USE_LSB_TAG case is no longer valid when
11240         symbols are represented via offsets.  Change the only use to
11241         assume that pointers might hide in objects.
11242         * src/lisp.h (alignas) [!USE_LSB_TAG]:
11243         Require support in this case, too.
11244         (TAG_SYMOFFSET, XSYMBOL) [!USE_LSB_TAG]: Do not shift the offset.
11245         This is OK, because the !USE_LSB_TAG case now applies only when
11246         Lisp_Object is wider than void *, so there's no longer any need
11247         to shift the offset.  Not shifting the offset means that
11248         symbol representations have the same alignment as pointers,
11249         which the GC assumes.
11251 2015-06-24  Xue Fuqiao  <xfq.free@gmail.com>
11253         * doc/lispintro/emacs-lisp-intro.texi (Data types):
11254         Improve documentation of 'substring'.
11256 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
11258         * lisp/character-fold.el (character-fold-table): Fix table generation.
11260 2015-06-24  Glenn Morris  <rgm@gnu.org>
11262         * nextstep/Makefile.in (all): Make it the first target.
11263         (../src/emacs${EXEEXT}): Add rule for making it.
11265 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
11267         * etc/NEWS: Fix mention to old function name.
11269         * lisp/character-fold.el: New file (Bug#20887)
11270         (character-fold-to-regexp): New function.
11271         * lisp/replace.el (replace-search): Check value of
11272         `character-fold-search'.
11273         * lisp/isearch.el: Move character-folding code to
11274         character-fold.el
11275         (isearch-toggle-character-fold): New command.
11276         (isearch-mode-map): Bind it to "\M-sf".
11277         (isearch-mode): Check value of `character-fold-search'.
11279 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
11281         lisp/subr.el (remove-from-invisibility-spec): Handle the t case
11282         * lisp/subr.el (remove-from-invisibility-spec): Make sure `element'
11283         is visible even if it's not yet in buffer-invisibility-spec (bug#20468).
11285         * lisp/progmodes/xref.el (xref-location-group, xref-location-marker)
11286         (xref--insert-xrefs, xref-collect-references): Avoid init-args in oref.
11288 2015-06-24  Glenn Morris  <rgm@gnu.org>
11290         * Makefile.in (install-arch-dep): Don't set sticky bit on the binary.
11292 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
11294         lisp/gnus/nnmaildir.el: Silence lexical warnings
11295         * lisp/gnus/nnmaildir.el (nnmaildir--prepare): Use a more
11296         functional style.
11297         (nnmaildir--update-nov): Remove unused var `numdir'.
11298         (nnmaildir-request-type, nnmaildir--scan, nnmaildir-request-newgroups)
11299         (nnmaildir-request-group, nnmaildir-request-create-group)
11300         (nnmaildir-request-post, nnmaildir-request-move-article)
11301         (nnmaildir-request-accept-article, nnmaildir-active-number):
11302         Mark unused args.
11303         (nnmaildir-get-new-mail, nnmaildir-group-alist)
11304         (nnmaildir-active-file): Declare.
11305         (nnmaildir-request-scan): Remove unused vars `group' and `grp-dir'.
11306         (nnmaildir-request-update-info): Remove unused vars `dotfile', `num',
11307         `mark', `end', `new-mark', and `mark-sym'.
11308         (nnmaildir-retrieve-headers): Remove unused args `srv-dir', `dir',
11309         `nlist2'.
11310         (nnmaildir-request-expire-articles):
11311         Remove unused vars `article', `stop' and `nlist2'.
11312         (nnmaildir-request-set-mark): Remove unused vars `begin', `article' and
11313         `end'.  Use nnmaildir--article when dyn-binding is needed.
11314         Give the value directly in the `let' for `del-mark', `del-action',
11315         `add-action', and `set-action'.  Don't use `add-to-list' on a local var.
11316         (nnmaildir-close-server): Declare those local vars that need to be
11317         dyn-bound.
11319 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
11321         * src/keyboard.h (kbd_buffer_store_event_hold): Remove unused local.
11323         Port selection info fix to clang
11324         * src/keyboard.h (kbd_buffer_store_event_hold):
11325         Don't assume C11 semantics for alignof (Bug#20756).
11327         Fix bug that munged selection info
11328         On some optimizing C compilers, copying a structure did not
11329         copy the padding bytes between elements, and the type punning
11330         between struct input_data and struct selection_input_data did
11331         not work.  Change the C code to use a proper union type instead.
11332         Problem reported by YAMAMOTO Mitsuharu (Bug#20756).
11333         * src/keyboard.c (kbd_buffer, kbd_fetch_ptr, kbd_store_ptr)
11334         (readable_events, discard_mouse_events, kbd_buffer_events_waiting)
11335         (kbd_buffer_get_event, process_special_events, stuff_buffered_input)
11336         (mark_kboards):
11337         Use union buffered_input_event, not struct input_event.
11338         (clear_event, deliver_input_available_signal, process_special_events):
11339         Remove unnecessary forward decls.
11340         (kbd_buffer_store_buffered_event): New function, mostly just the
11341         old kbd_buffer_store_event_hold, except its argument is of type
11342         union buffered_input_event, not struct input_event.
11343         (kbd_buffer_unget_event): Define only if HAVE_X11, since it's
11344         not needed otherwise.  Argument is now of type
11345         struct selection_input_event *, not struct input_event *.
11346         All callers changed.
11347         (clear_event): Arg is now of type union buffered_input_event *,
11348         not struct input_event *.  All callers changed.
11349         * src/keyboard.h [HAVE_X11]: Include "xterm.h".
11350         (union buffered_input_event): New type.
11351         (kbd_buffer_store_event_hold): Now an inline function,
11352         defined here.
11353         * src/termhooks.h (EVENT_KIND_WIDTH): New constant.
11354         (struct input_event): Use it.
11355         * src/xselect.c (struct selection_event_queue):
11356         Make elements be of type struct selection_input_event,
11357         not struct input_event.
11358         (selection_input_event_equal): New static function.
11359         (x_queue_event): Use it.
11360         (x_queue_event, x_decline_selection_request)
11361         (x_selection_current_request, x_reply_selection_request)
11362         (x_handle_selection_request, x_handle_selection_clear)
11363         (x_handle_selection_event): Use struct selection_input_event,
11364         not struct input_event.  All callers changed.
11365         (x_convert_selection): Omit unused first arg.  All callers changed.
11366         (Fx_disown_selection_internal): Omit unnecessary union.
11367         * src/xterm.c (handle_one_xevent): Use new union buffered_input_event
11368         rather than rolling our own equivalent.  Prefer sie.kind when
11369         setting up that kind of structure.
11370         Call kbd_buffer_store_buffered_event, not kbd_buffer_store_event_hold.
11371         * src/xterm.h (struct selection_input_event: Use EVENT_KIND_WIDTH.
11372         (SELECTION_EVENT_DISPLAY, SELECTION_EVENT_DPYINFO)
11373         (SELECTION_EVENT_REQUESTOR, SELECTION_EVENT_SELECTION)
11374         (SELECTION_EVENT_TARGET, SELECTION_EVENT_PROPERTY)
11375         (SELECTION_EVENT_TIME, x_handle_selection_event):
11376         Arg is now of type struct selection_input_event *)
11377         not struct input_event *.  All callers changed.
11379 2015-06-23  Glenn Morris  <rgm@gnu.org>
11381         * Makefile.in (install-arch-dep): Simplify with Make conditionals.
11383 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
11385         * lisp/isearch.el: Fold many unicode characters to ASCII.
11386         (isearch-character-fold-search, isearch--character-fold-extras)
11387         (isearch--character-fold-table): New variable.
11388         (isearch--character-folded-regexp): New function.
11389         (isearch-search-fun-default): Use them.
11390         * lisp/replace.el (replace-character-fold): New variable.
11391         (replace-search): Use it.
11392         * etc/NEWS: Document it.
11394 2015-06-23  Glenn Morris  <rgm@gnu.org>
11396         Check for an input event before showing a dialog box.  (Bug#20813)
11397         * lisp/subr.el (y-or-n-p):
11398         * src/fns.c (Fyes_or_no_p): Check last-input-event as well
11399         as last-nonmenu-event.
11401 2015-06-23  Jürgen Hartmann  <juergen_hartman_@hotmail.com>  (tiny change)
11403         Respect ‘switch-to-visible-buffer’ more rigidly.  (Bug#20861)
11404         * lisp/window.el (switch-to-visible-buffer): Doc adjustment.
11405         (switch-to-prev-buffer, switch-to-next-buffer): Respect
11406         switch-to-visible-buffer independent of the windows history.
11408 2015-06-23  Paul Eggert  <eggert@cs.ucla.edu>
11410         * src/keyboard.c (last_timer_event): Remove unused var.
11412 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
11414         * test/automated/package-test.el (package-test-update-listing):
11415         Fix test.
11417 2015-06-23  Glenn Morris  <rgm@gnu.org>
11419         Revert 2014-06-25 nextstep/Makefile change.
11420         * nextstep/Makefile.in (${ns_appbindir}): Remove rule.
11421         (${ns_appbindir}/Emacs, links): Create ns_appbindir in the rule,
11422         not as an order-only prerequisite.
11424         * configure.ac (--with-ns): Enable by default on OS X.
11426 2015-06-23  Leo Liu  <sdl.web@gmail.com>
11428         Fix shell-for/backward-command to exclude spaces
11429         * lisp/shell.el (shell-forward-command, shell-backward-command):
11430           Handle the 'move case from re-search-forward/backward.
11431           fixes debbugs:20873
11433 2015-06-22  Juri Linkov  <juri@linkov.net>
11435         * lisp/replace.el (query-replace-read-from): Add separator to
11436         the local binding of text-property-default-nonsticky.  (Bug#20690)
11438         * lisp/simple.el (shell-command-on-region): Replace 'error' with 'user-error'.
11439         (Bug#20785)
11441 2015-06-22  Ken Brown  <kbrown@cornell.edu>
11443         Enable CPU profiling on Cygwin
11444         * src/syssignal.h [CYGWIN] (PROFILER_CPU_SUPPORT): Revert previous
11445         change that undefined this.
11446         (SIGEV_SIGNAL): Ensure that this is defined as a macro.
11447         * src/profiler.c [CYGWIN] (timer_getoverrun): Define as a macro on
11448           Cygwin.
11450         Improve diagnostics of profiler-cpu-start
11451         * src/profiler.c (setup_cpu_timer): Change return type to 'int';
11452         return -1 if the sampling interval is invalid.
11453         (Fprofiler_cpu_start): Improve error message if 'setup_cpu_timer'
11454         fails.  (Bug#20843)
11456 2015-06-22  Artur Malabarba  <bruce.connor.am@gmail.com>
11458         * lisp/emacs-lisp/package.el: Exclude packages by name.
11459         (package-hidden-regexps): New variable.
11460         (package-menu--refresh): Use it.
11461         (package-menu-hide-package): New command.
11463         * lisp/emacs-lisp/package.el: Rename hide-obsolete to toggle-hiding.
11465 2015-06-22  Eli Zaretskii  <eliz@gnu.org>
11467         Fix debug-timer-check on systems without HAVE_TIMERFD
11468         * src/atimer.c (Fdebug_timer_check) [!HAVE_TIMERFD]: Actively run
11469         the expired timers, since wait_reading_process_output doesn't.
11470         (debug_timer_callback): Enlarge the tolerance to 20 msec.
11472         Fix RCS crashes in vc-test
11473         * lisp/vc/vc-rcs.el (vc-rcs-register): Avoid crashes with some old
11474         ports of 'ci' on MS-Windows by always passing the -t- switch.
11476 2015-06-22  Glenn Morris  <rgm@gnu.org>
11478         * doc/emacs/package.texi (Packages):
11479         * doc/emacs/trouble.texi (Known Problems): Remove faq cross-references.
11481         * doc/misc/efaq-w32.texi (Downloading): Copyedits.  (Bug#20851)
11483 2015-06-22  Paul Eggert  <eggert@cs.ucla.edu>
11485         Port tests to help-quote-translation
11486         * test/automated/ert-x-tests.el (ert-test-describe-test):
11487         * test/automated/package-test.el (package-test-describe-package)
11488         (package-test-signed): Allow straight quotes, too.
11490 2015-06-22  Dmitry Gutov  <dgutov@yandex.ru>
11492         Make find-function-on-key use the current window
11493         * lisp/emacs-lisp/find-func.el (find-function-on-key-do-it):
11494         Extract from `find-function-on-key', add a second argument.
11495         (find-function-on-key): Use it (bug#19679).
11496         (find-function-on-key-other-window)
11497         (find-function-on-key-other-frame): New commands.
11499 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
11501         Revert "Define `map-elt' as a generalized variable"
11502         This reverts commit 8b6d82d3ca86f76ed964063b3941a7c6ab0bf1c6.
11504 2015-06-21  Ken Brown  <kbrown@cornell.edu>
11506         Drop support for CPU profiling on Cygwin
11507         * src/syssignal.h (PROFILER_CPU_SUPPORT): Don't define on Cygwin.
11508         (Bug#20843)
11510 2015-06-21  Paul Eggert  <eggert@cs.ucla.edu>
11512         Fix some “nested” quoting confusion in doc strings
11513         * lisp/emacs-lisp/advice.el (ad-map-arglists):
11514         * lisp/kermit.el (kermit-clean-on):
11515         * lisp/mh-e/mh-comp.el (mh-repl-group-formfile):
11516         * src/keyboard.c (Frecursive_edit):
11517         Use curved quotes when quoting text containing apostrophe,
11518         so that the apostrophe isn't curved in the output.
11520 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
11522         Define `map-elt' as a generalized variable
11523         * lisp/emacs-lisp/map.el (map-elt): Define a gv-expander.
11524         * lisp/emacs-lisp/map.el (map--dispatch): Tighten the code.
11525         * lisp/emacs-lisp/map.el (map-put): Redefine it as a function using a
11526         `setf' with `map-elt'.
11527         * test/automated/map-tests.el: Comment out `test-map-put-literal'.
11529 2015-06-21  Michael Albinus  <michael.albinus@gmx.de>
11531         Improve error handling in tramp-adb.el
11532         * lisp/net/tramp-adb.el (tramp-adb-handle-file-local-copy):
11533         Improve error handling.
11535 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
11537         Reuse `alist-get' in map.el
11538         * lisp/emacs-lisp/map.el (map-elt): Use `alist-get' to retrieve alist
11539         elements.
11541 2015-06-21  Eli Zaretskii  <eliz@gnu.org>
11543         Fix bytecomp-tests--warnings when $TMPDIR has a long name
11544         * test/automated/bytecomp-tests.el (bytecomp-tests--warnings):
11545         Allow the warning to begin on the 3rd, not only 2nd line, which
11546         happens if temporary-file-directory has a very long name.
11548         Expect 2 icalendar tests to fail on MS-Windows
11549         * test/automated/icalendar-tests.el (icalendar-import-with-timezone)
11550         (icalendar-real-world): Make them expected failures on MS-Windows.
11552 2015-06-20  Paul Eggert  <eggert@cs.ucla.edu>
11554         Improve port of settings UI to older displays
11555         * lisp/cus-start.el (standard): Don't assume curved quotes are
11556         easily distinguishable when users are tinkering with a setting
11557         that affects how curved quotes are generated.
11559         Fix quoting in electric-quote-mode doc string
11560         * lisp/electric.el (electric-quote-mode): Fix quoting.
11561         This is a fallout from the recent change introducing
11562         ‘help-quote-translation’.
11564         Spelling fix
11566         * doc/misc/texinfo.tex, lib/set-permissions.c: Merge from gnulib.
11568         * src/doc.c (syms_of_doc): Remove unused symbols.
11570 2015-06-20  Martin Rudalics  <rudalics@gmx.at>
11572         * lisp/window.el (window-state-put): Undedicate target window
11573         before putting STATE into it.  (Bug#20848)
11575 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
11577         Merge from origin/emacs-24
11578         a5e6f33 Fixes: debbugs:20832
11579         b9f02cf Fixes: debbugs:20832
11581 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
11583         Fix file-in-directory-p when the directory is UNC
11584         * lisp/files.el (file-in-directory-p): Support files and
11585         directories that begin with "//".  (Bug#20844)
11587 2015-06-19  Stephen Berman  <stephen.berman@gmx.net>
11589         * lisp/calendar/todo-mode.el (todo-show): Don't visit todo file
11590         in the minibuffer.  (Bug#20832)
11592 2015-06-19  Nicolas Richard  <youngfrog@members.fsf.org>
11594         * lisp/calendar/todo-mode.el (todo-show): Signal an error if buffer
11595         for adding new todo file is empty but modified.  (Bug#20832)
11597 2015-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
11599         (filepos-to-bufferpos): Further tweaks to the utf-16 code
11600         * lisp/international/mule-util.el (filepos-to-bufferpos):
11601         Fix typo.  Move non-exact check to the utf-16 branch (the only one
11602         affected).  Don't use byte-to-position for the utf-16 case.
11604 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
11606         Minor fixes in filepos-to-bufferpos
11607         * lisp/international/mule-util.el (filepos-to-bufferpos): Remove
11608         test for utf-8-emacs.  Exempt single-byte encodings from the
11609         'use-exact' path when QUALITY is 'exact'.  Test UTF-16 encodings
11610         for BOM before subtracting 2 bytes.  Use 'identity' when adjusting
11611         UTF-16 encoded files for CR-LF EOLs.
11613 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
11615         Improve the optional translation of quotes
11616         Fix several problems with the recently-added custom variable
11617         help-quote-translation where the code would quote inconsistently
11618         in help buffers.  Add support for quoting 'like this', which
11619         is common in other GNU programs in ASCII environments.  Change
11620         help-quote-translation to use more mnemonic values: values are now the
11621         initial quoting char, e.g., (setq help-quote-translation ?`) gets the
11622         traditional Emacs help-buffer quoting style `like this'.  Change the
11623         default behavior of substitute-command-keys to match what's done in
11624         set-locale-environment, i.e., quote ‘like this’ if displayable,
11625         'like this' otherwise.
11626         * doc/lispref/help.texi (Keys in Documentation): Document
11627         new behavior of substitute-command-keys, and document
11628         help-quote-translation.
11629         * doc/lispref/tips.texi (Documentation Tips):
11630         Mention the effect of help-quote-translation.
11631         * etc/NEWS: Mention new behavior of substitute-command-keys,
11632         and merge help-quote-translation news into it.
11633         When talking about doc strings, mention new ways to type quotes.
11634         * lisp/cedet/mode-local.el (overload-docstring-extension):
11635         Revert my recent change to this function, which shouldn't be
11636         needed as the result is a doc string.
11637         * lisp/cedet/mode-local.el (mode-local-print-binding)
11638         (mode-local-describe-bindings-2):
11639         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
11640         * lisp/cus-theme.el (describe-theme-1):
11641         * lisp/descr-text.el (describe-text-properties-1, describe-char):
11642         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
11643         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
11644         (eieio-help-constructor):
11645         * lisp/emacs-lisp/package.el (describe-package-1):
11646         * lisp/faces.el (describe-face):
11647         * lisp/help-fns.el (help-fns--key-bindings)
11648         (help-fns--compiler-macro, help-fns--parent-mode)
11649         (help-fns--obsolete, help-fns--interactive-only)
11650         (describe-function-1, describe-variable):
11651         * lisp/help.el (describe-mode):
11652         Use substitute-command-keys to ensure a more-consistent quoting
11653         style in help buffers.
11654         * lisp/cus-start.el (standard):
11655         Document new help-quote-translation behavior.
11656         * lisp/emacs-lisp/lisp-mode.el (lisp-fdefs):
11657         * lisp/help-mode.el (help-xref-symbol-regexp, help-xref-info-regexp)
11658         (help-xref-url-regexp):
11659         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
11660         * lisp/wid-edit.el (widget-documentation-link-regexp):
11661         Also match 'foo', in case we're in a help buffer generated when
11662         help-quote-translation is ?'.
11663         * src/doc.c: Include disptab.h, for DISP_CHAR_VECTOR.
11664         (LEFT_SINGLE_QUOTATION_MARK, uLSQM0, uLSQM1, uLSQM2, uRSQM0)
11665         (uRSQM1, uRSQM2, LSQM, RSQM): New constants.
11666         (Fsubstitute_command_keys): Document and implement new behavior.
11667         (Vhelp_quote_translation): Document new behavior.
11669 2015-06-18  Glenn Morris  <rgm@gnu.org>
11671         * lisp/cus-start.el (help-quote-translation): Add :version.
11673         * src/doc.c (Fsubstitute_command_keys): Make previous change compile.
11675 2015-06-18  Alan Mackenzie  <acm@muc.de>
11677         Make translation of quotes to curly in doc strings optional.
11678         * src/doc.c (traditional, prefer-unicode): New symbols.
11679         (help-quote-translation): New variable.
11680         (Fsubstitute_command_keys): Make translation of quotes dependent on
11681         `help-quote-translation'; also translate curly quotes back to ASCII
11682         ones.
11683         * lisp/cus-start.el (top-level): Add a customization entry for
11684         `help-quote-translation'.
11686 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
11688         * lisp/emacs-lisp/package.el: Don't always propagate async errors
11689         (package--with-work-buffer-async): Only propagate the error if the
11690         callback returns non-nil.
11691         (package--download-one-archive): Return nil on the signature
11692         checking callback if we accept unsigned.
11693         (package--download-and-read-archives): Return non-nil on the
11694         archive download callback.
11696 2015-06-18  Martin Rudalics  <rudalics@gmx.at>
11698         Set image_cache_refcount before x_default_parameter calls.  (Bug#20802)
11699         * src/nsfns.m (Fx_create_frame):
11700         * src/xfns.c (Fx_create_frame, x_create_tip_frame): Move setting
11701         image_cache_refcount before first x_default_parameter call.
11703 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
11705         Improve and extend filepos-to-bufferpos
11706         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
11707         Don't barf if F returns nil for some argument.
11708         (filepos-to-bufferpos): Expand to support UTF-16 and not assume
11709         that every encoding of type 'charset' is single-byte.
11711 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
11713         * lisp/emacs-lisp/package.el (package-menu--perform-transaction):
11714         Properly delete packages.  (Bug#20836)
11716 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
11718         Update data files from just-released Unicode 8.0
11719         * etc/NEWS: Update wording since Unicode 8.0 is no longer in draft
11720         status.
11721         * test/BidiCharacterTest.txt: Update from Unicode 8.0.
11722         * admin/unidata/BidiMirroring.txt:
11723         * admin/unidata/BidiBrackets.txt:
11724         * admin/unidata/UnicodeData.txt: Update from Unicode 8.0.
11726 2015-06-18  Paul Eggert  <eggert@cs.ucla.edu>
11728         Document curved quotes a bit better
11729         * doc/emacs/basic.texi (Inserting Text):
11730         Mention C-x 8.  Change example to use curved quote rather
11731         than infinity, as this lets us give more ways to do it.
11732         * doc/emacs/mule.texi (International Chars): Mention C-x 8 shortcuts
11733         and quotation marks.
11734         * doc/emacs/text.texi (Quotation Marks):
11735         * doc/lispref/tips.texi (Documentation Tips):
11736         Add "curly quotes" and "curved quotes" to the index.
11737         * doc/emacs/text.texi (Quotation Marks):
11738         Give the C-x 8 shorthands for curved quotes.
11739         Cross-reference to "Quotation Marks".
11741 2015-06-17  Daiki Ueno  <ueno@gnu.org>
11743         Add pinentry.el for better GnuPG integration
11744         * lisp/pinentry.el: New file.
11745         * etc/NEWS: Add entry about pinentry.el.
11746         * lisp/epg.el (epg--start): Set INSIDE_EMACS envvar.
11747         (Bug#20550)
11749 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
11751         * lisp/emacs-lisp/package.el: Slightly better error reporting.
11753 2015-06-17  Stefan Monnier  <monnier@iro.umontreal.ca>
11755         (define-minor-mode): Use setq-default for :global minor modes
11756         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
11757         Use setq-default for :global minor modes (bug#20712).
11759 2015-06-17  Eli Zaretskii  <eliz@gnu.org>
11761         Avoid infloop in redisplay with tall images
11762         * src/xdisp.c (try_scrolling): Prevent an infloop when scrolling
11763         down near ZV.  (Bug#20808)
11764         Call bidi_unshelve_cache to avoid memory leaks.  Use IT_CHARPOS
11765         instead of CHARPOS.
11767 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
11769         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
11770         Fix error reporting.
11772         * lisp/let-alist.el: Move to lisp/emacs-lisp/let-alist.el
11774         * lisp/emacs-lisp/package.el: Revert buffer after any operation
11775         Call `package-menu--post-refresh' after any operation that changes
11776         the package database (`package-install' and `package-delete').  To
11777         avoid performance issues in large transactions, these functions
11778         add `post-refresh' to `post-command-hook' instead of calling it
11779         immediately.
11780         (package-menu--mark-or-notify-upgrades): New function.
11781         (list-packages): Add it to `package--post-download-archives-hook'.
11782         (package-menu--post-refresh): Lose the upgrade-checking code, add
11783         code to remove itself from `post-command-hook'.
11784         (package-install, package-delete): Add it to `post-command-hook'.
11785         (package-menu-execute): Don't call `package-menu--post-refresh'.
11787 2015-06-17  Stephen Leake  <stephen_leake@stephe-leake.org>
11789         Add missing function xref-location-group for elisp-mode.
11790         * lisp/progmodes/elisp-mode.el: Add missing function xref-location-group.
11792 2015-06-17  Wolfgang Jenkner  <wjenkner@inode.at>
11794         * src/editfns.c (Fbyte_to_position): Fix bytepos not at char boundary.
11795         The behavior now matches the description in the manual.  (Bug#20783)
11797 2015-06-17  Xue Fuqiao  <xfq.free@gmail.com>
11799         * etc/tutorials/TUTORIAL.cn: Update; synchronize with TUTORIAL.
11801 2015-06-17  Glenn Morris  <rgm@gnu.org>
11803         Generate char-script-table from Unicode source.  (Bug#20789)
11804         * admin/unidata/Makefile.in (AWK): New, set by configure.
11805         (all): Add charscript.el.
11806         (blocks): New variable.
11807         (charscript.el, ${unidir}/charscript.el): New targets.
11808         (extraclean): Also remove generated charscript.el.
11809         * admin/unidata/blocks.awk: New script.
11810         * admin/unidata/Blocks.txt: New data file, from unicode.org.
11811         * lisp/international/characters.el: Load charscript.
11812         * src/Makefile.in (charscript): New variable.
11813         (${charscript}): New target.
11814         (${lispintdir}/characters.elc): Depend on charscript.elc.
11815         (temacs$(EXEEXT)): Depend on charscript.
11817         * lisp/international/characters.el (char-script-table): Tweak
11818         some ranges to better match the source.  (Bug#20789#17)
11820         Remove "no-byte-compile: t" from a few files.
11821         * lisp/obsolete/bruce.el, lisp/obsolete/keyswap.el:
11822         * lisp/obsolete/patcomp.el: No reason not to compile these.
11824 2015-06-16  Glenn Morris  <rgm@gnu.org>
11826         Fix some typos in copied Unicode data.  (Bug#20789)
11827         * lisp/international/characters.el (char-script-table):
11828         * lisp/international/fontset.el (script-representative-chars)
11829         (setup-default-fontset): Fix typos.
11831         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
11832         Don't print filename twice (it's in the prefix now).
11834         * lisp/emacs-lisp/pcase.el (pcase--u1): Revert earlier workaround.
11835         No longer needed.
11837         Address a compilation warning.
11838         * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-defalias):
11839         Replace 't' with '_' in pcase.
11841         Address some check-declare warnings.
11842         * lisp/simple.el (tabulated-list-print):
11843         * lisp/progmodes/elisp-mode.el (xref-collect-matches):
11844         * lisp/term/ns-win.el (ns-selection-owner-p, ns-selection-exists-p)
11845         (ns-get-selection): Update declarations.
11847         Address some compilation warnings.
11848         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
11849         * lisp/vc/vc-git.el (vc-git-file-type-as-string):
11850         Replace 't' with '_' in pcase.
11852         Address some compilation warnings.
11853         * lisp/face-remap.el (text-scale-adjust):
11854         * lisp/menu-bar.el (popup-menu-normalize-position):
11855         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand):
11856         * lisp/emacs-lisp/bytecomp.el (byte-compile-arglist-warn):
11857         * lisp/emacs-lisp/generator.el (cps--transform-1):
11858         * lisp/emacs-lisp/macroexp.el (macroexp--expand-all):
11859         * lisp/obsolete/vc-arch.el (vc-arch-mode-line-string):
11860         * lisp/progmodes/octave.el (octave-goto-function-definition)
11861         (octave-find-definition-default-filename):
11862         Replace 't' with '_' in pcase.
11864         * lisp/emacs-lisp/pcase.el (pcase--u1):
11865         Paper-over today's bootstrap failure.
11867 2015-06-16  Nicolas Petton  <nicolas@petton.fr>
11869         * lisp/emacs-lisp/seq.el: Fix a byte-compiler warnings related to pcase.
11871         * lisp/emacs-lisp/map.el (map-into): Fix a byte-compiler warning.
11873         Better confirmation message in `find-alternate-file' (Bug#20830)
11874         * lisp/files.el (find-alternate-file'): Improve the confirmation
11875         message to show the buffer name.
11877         Better docstring for null.  (Bug#20815)
11878         * src/data.c (null): Improves the docstring, saying what null returns
11879         when OBJECT is non-nil.
11881 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
11883         * lisp/net/newst-treeview.el: Use lexical-binding.
11885         (filepos-to-bufferpos): Add missing cases.  Make sure it terminates.
11886         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
11887         New auxiliary function, extracted from filepos-to-bufferpos.
11888         Make sure it terminates.
11889         (filepos-to-bufferpos): Use it to fix the latin-1-dos case.
11890         Add support for the `exact' quality.
11892 2015-06-16  Cédric Chépied  <cedric.chepied@gmail.com>
11894         Identify feeds in newsticker treeview with :nt-feed property
11895         * lisp/net/newst-treeview.el:
11896         (newsticker--treeview-nodes-eq): Use property :nt-feed instead of :tag.
11898 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
11900         * lisp/emacs-lisp/pcase.el: Improve docs and error handling.
11901         (pcase--self-quoting-p): Floats aren't self-quoting.
11902         (pcase): Tweak docstring.
11903         (pcase--u1): Deprecate the t pattern.  Improve error detection for
11904         the nil pattern.
11905         (\`): Tweak docstring.  Signal an error for unrecognized cases.
11906         (bug#20784)
11908 2015-06-16  Eli Zaretskii  <eliz@gnu.org>
11910         Fix infloop in filepos-to-bufferpos
11911         * lisp/international/mule-util.el (filepos-to-bufferpos): Fix EOL
11912         offset calculation, and make it conditional on the eol-type of the
11913         file's encoding.  (Bug#20825)
11915 2015-06-16  Martin Rudalics  <rudalics@gmx.at>
11917         Fix handling of image cache refcounts.  (Bug#20802)
11918         This backports Eli Zaretskii's solution of this problem for W32
11919         to X and NS.
11920         * src/nsfns.m (image_cache_refcount): Define unconditionally.
11921         (unwind_create_frame): If the image cache's reference count
11922         hasn't been updated yet, do that now.
11923         (Fx_create_frame): Set image_cache_refcount unconditionally.
11924         * src/xfns.c (image_cache_refcount): Define unconditionally.
11925         (unwind_create_frame): If the image cache's reference count
11926         hasn't been updated yet, do that now.
11927         (Fx_create_frame, x_create_tip_frame): Set image_cache_refcount
11928         unconditionally.
11929         * src/w32fns.c (image_cache_refcount): Make it a ptrdiff_t as on
11930         X and NS.
11932 2015-06-16  Nils Ackermann  <nils@ackermath.info>
11934         Improve reftex-label-regexps default value
11935         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Make
11936         keyvals label regexp more strict to better cope with unbalanced
11937         brackets common in math documents.
11939 2015-06-16  Glenn Morris  <rgm@gnu.org>
11941         * doc/emacs/calendar.texi (Format of Diary File):
11942         Move "nonmarking" from here...
11943         (Displaying the Diary): ... to here.
11945         * doc/emacs/calendar.texi (Format of Diary File, Displaying the Diary):
11946         Swap the order of these nodes.
11947         * doc/emacs/emacs.texi: Update detailed menu for the above change.
11949         * doc/emacs/calendar.texi (Specified Dates, Special Diary Entries):
11950         Update date of examples.
11951         (Diary, Format of Diary File): Move example from former to latter.
11952         Reduce duplication.
11954         No need for cp51932.el, eucjp-ms.el to not be compiled any more.
11955         * admin/charsets/cp51932.awk, admin/charsets/eucjp-ms.awk:
11956         Don't set no-byte-compile in the outputs.
11957         * lisp/loadup.el: Don't specify uncompiled cp51932, eucjp-ms.
11959 2015-06-15  Glenn Morris  <rgm@gnu.org>
11961         * lisp/calendar/calendar.el (diary-file): Use locate-user-emacs-file.
11962         * doc/emacs/calendar.texi (Diary, Format of Diary File):
11963         Update for above diary-file change.
11965         * lisp/macros.el (name-last-kbd-macro, kbd-macro-query)
11966         (apply-macro-to-region-lines): Use user-error.
11968         * lisp/textmodes/page-ext.el (add-new-page, pages-directory)
11969         (pages-directory-for-addresses): Doc fixes.
11971 2015-06-15  Stefan Monnier  <monnier@iro.umontreal.ca>
11973         * lisp/info.el: Cleanup bytepos/charpos issues
11974         * lisp/international/mule-util.el: Use lexical-binding.
11975         (filepos-to-bufferpos): New function.
11976         * lisp/info.el (Info-find-in-tag-table-1): Use 0-based file positions.
11977         (Info-find-node-2): Use filepos-to-bufferpos (bug#20704).
11978         (Info-read-subfile, Info-search): Use 0-based file positions.
11980         * lisp/progmodes/perl-mode.el: Refine handling of /re/ and y/abc/def/
11981         (perl--syntax-exp-intro-keywords): New var.
11982         (perl--syntax-exp-intro-regexp, perl-syntax-propertize-function): Use it.
11983         (bug#20800).
11985 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
11987         Fix quoting when making derived mode docstring
11988         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
11989         Nest regexp-quote inside format, not the reverse.
11990         Problem reported by Artur Malabarba in:
11991         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00206.html
11993 2015-06-15  Eli Zaretskii  <eliz@gnu.org>
11995         Fix current-iso639-language on MS-Windows
11996         * lisp/international/mule-cmds.el (set-locale-environment):
11997         Downcase the locale name before interning it.  This is so the
11998         'current-iso639-language' on MS-Windows matches the ':lang'
11999         property of font-spec objects.
12001         Limit Symbola usage some more
12002         * lisp/international/fontset.el (setup-default-fontset): Limit
12003         Symbol coverage of Currency Symbols to u+20B6..u+20CF.
12004         (Bug#20727)
12006 2015-06-15  Nicolas Petton  <nicolas@petton.fr>
12008         * lisp/emacs-lisp/map.el (map-let): Better docstring.
12010 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
12012         * test/automated/help-fns.el (abc\\\[universal-argument\]b\`c\'d\\e\"f):
12013         (help-fns-test-funny-names): Spelling fixes.
12015 2015-06-14  Glenn Morris  <rgm@gnu.org>
12017         * lisp/version.el (emacs-repository-version-git): Demote errors.
12018         Check result is a hash.
12020 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
12022         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
12023         Catch errors that happen before going async.  (Bug#20809)
12025 2015-06-14  Eli Zaretskii  <eliz@gnu.org>
12027         Another improvement of documentation of set-fontset-font
12028         * doc/lispref/display.texi (Fontsets): Say explicitly that
12029         CHARACTER can be a single codepoint.
12030         * src/fontset.c (Fset_fontset_font): Doc fix.
12032         Another improvement for symbol and punctuation characters
12033         * lisp/international/fontset.el (setup-default-fontset): Exclude
12034         from Symbola character ranges for symbols and punctuation covered
12035         well by popular Unicode fonts.  Prefer fixed-misc Unicode font, if
12036         installed and where its coverage of symbols and punctuation is
12037         known to be good.  (Bug#20727)
12039 2015-06-14  Christoph Wedler  <christoph.wedler@sap.com>
12041         Some generic support for multi-mode indentation.
12042         * lisp/progmodes/prog-mode.el (prog-indentation-context):
12043         New variable.
12044         (prog-first-column, prog-widen): New convenience functions.
12046 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
12048         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
12049         Don't assume that `tabulated-list-printer' will leave point at the
12050         end of the buffer.  (Bug#20810)
12052 2015-06-13  Glenn Morris  <rgm@gnu.org>
12054         Tweaks for getting repository version; a bit more like it was for bzr
12055         * lisp/version.el (emacs-repository-version-git)
12056         (emacs-repository--version-git-1): New functions,
12057         split from emacs-repository-get-version.
12058         (emacs-repository-get-version): Make the second argument meaningful.
12060         * lisp/startup.el (command-line-1): Inform if skipping relative
12061         file names due to deleted PWD.
12063         * src/xsmfns.c (x_session_initialize): Avoid libSM crash
12064         when starup directory is missing.  (Bug#18851)
12065         (errno.h): Include it.
12067 2015-06-13  Paul Eggert  <eggert@cs.ucla.edu>
12069         Better fix for documenting `X as "`X"
12070         Fix suggested by Stefan Monnier.
12071         * lisp/help-fns.el (help-fns--signature):
12072         Insert "`X", not "(\` X)", when documenting `X (Bug#20759).
12073         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
12074         Don't treat `X specially, as help-fns--signature now handles this.
12076 2015-06-13  Eli Zaretskii  <eliz@gnu.org>
12078         Improve the default fontset when Symbola is not installed
12079         * lisp/international/fontset.el (setup-default-fontset): Only
12080         prepend Symbola and FreeMono font specs for symbols and
12081         punctuation; do not replace the default spec for them.  This
12082         should have better results when Symbola/FreeMono are not
12083         installed.  (Bug#20727)
12085         Improve documentation of ':lang' in font specs
12086         * src/font.c (Ffont_spec): Doc fix: elaborate on the values and
12087         use of the ':lang' property of the font spec.
12088         * doc/emacs/frames.texi (Fonts): Document the language names that
12089         can be in the STYLE part of XLFD.
12090         * doc/lispref/display.texi (Low-Level Font): Document the ':lang'
12091         property.
12093         * nt/README: Don't advertise the (obsolescent) w32 FAQ.
12095         * nt/README.W32: Don't advertise the (obsolescent) w32 FAQ.
12097         Revert last change in fontset.el
12098         * lisp/international/fontset.el (setup-default-fontset): Revert
12099         the change "Configure Symbola font only if installed", since font
12100         search is evidently not yet set up when this function is called.
12101         (Bug#20727)
12103 2015-06-12  Glenn Morris  <rgm@gnu.org>
12105         Ensure early startup warnings are visible at the end.  (Bug#20792)
12106         * lisp/emacs-lisp/warnings.el (display-warning):
12107         If startup isn't complete, delay the warning.
12108         * lisp/startup.el (normal-top-level, command-line):
12109         Let display-warning automatically handle the needed delays.
12110         Run delayed-warnings-hook.
12112         * lisp/version.el (emacs-repository-get-version):
12113         Avoid calling external executable if possible.  (Bug#20799)
12115 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
12117         Document `X as "`X", not as "(` X)"
12118         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
12119         Document (backquote FOO) as "`FOO", not as "(` FOO)" (Bug#20759).
12121         * src/print.c (print_object): Minor simplification.
12123 2015-06-12  Glenn Morris  <rgm@gnu.org>
12125         * src/buffer.c (init_buffer): Add final newline to message.
12127 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
12129         Configure Symbola font only if installed
12130         * lisp/international/fontset.el (setup-default-fontset):
12131         Don't specify the Symbola font if it's not installed.
12132         Likewise for FreeMono.  (Bug#20727)
12134 2015-06-12  Eli Zaretskii  <eliz@gnu.org>
12136         Configure Symbola font only for symbols and punctuation
12137         * lisp/international/fontset.el (setup-default-fontset): Leave
12138         only symbols and punctuation in the fontset setup for Symbola
12139         font; remove "Greek and Coptic" and "Cyrillic Supplement".
12140         (Bug#20798)
12142 2015-06-12  Andreas Schwab  <schwab@linux-m68k.org>
12144         Fix crash in fontset-info
12145         * src/fontset.c (Ffontset_info): Check that the RFONT-DEF elt is
12146         non-nil.
12148 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
12150         Port to Solaris 10 sparc + Sun C 5.13
12151         * configure.ac (SETUP_SLAVE_PTY) [sol2* | unixware]:
12152         Adjust to process.c change.
12153         * src/process.c (create_process): Declare volatile variables at
12154         top level of this function, so that they're less likely to be
12155         reused later in the function in the code executed by the vforked
12156         child.  Do not declare locals used only in the vforked child, as
12157         they might share memory with locals still live in the parent.
12158         Instead, use the same variables in the child as in the parent.
12159         This works around a subtle bug that causes a garbage collector
12160         crash when Emacs is built with Sun C 5.13 sparc on Solaris 10.
12162 2015-06-12  Glenn Morris  <rgm@gnu.org>
12164         * lisp/startup.el (normal-top-level): Don't let *Messages* get
12165         a nil default-directory.
12167 2015-06-11  Glenn Morris  <rgm@gnu.org>
12169         * lisp/startup.el (normal-top-level): Use delay-warning.  (Bug#20792)
12171         Some progress towards starting with PWD deleted.  (Bug#18851)
12172         * src/buffer.c (init_buffer): Handle get_current_dir_name failures.
12173         * lisp/startup.el (normal-top-level, command-line-1):
12174         * lisp/minibuffer.el (read-file-name-default):
12175         Handle default-directory being nil.
12177 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
12179         Fix "not a tty" bug on Solaris 10
12180         * configure.ac (PTY_OPEN): Define to plain 'open'
12181         on SVR4-derived hosts, so that the O_CLOEXEC flag isn't set.
12182         * src/process.c (allocate_pty): Set the O_CLOEXEC flag after
12183         calling PTY_TTY_NAME_SPRINTF, for the benefit of SVR4-derived
12184         hosts that call grantpt which does its work via a setuid subcommand
12185         (Bug#19191, Bug#19927, Bug#20555, Bug#20686).
12186         Also, set O_CLOEXEC even if PTY_OPEN is not defined, since it
12187         seems relevant in that case too.
12189 2015-06-11  Juri Linkov  <juri@linkov.net>
12191         * lisp/bindings.el (debug-ignored-errors): Add mark-inactive.
12192         * lisp/simple.el (kill-region): Replace 'error' with 'user-error'.
12193         (Bug#20785)
12195 2015-06-11  Glenn Morris  <rgm@gnu.org>
12197         * lisp/international/characters.el (char-script-table): Fix typo.
12199 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
12201         Fix quoting of help for functions with odd names
12202         While investigating Bug#20759, I discovered other quoting problems:
12203         C-h f mishandled characters like backslash and quote in function names.
12204         This fix changes the behavior so that 'C-h f pcase RET' now
12205         generates "... (\` QPAT) ..." instead of "... (` QPAT) ...",
12206         because '(format "%S" '(` FOO))' returns "(\\` FOO)".  A comment
12207         in src/lread.c's read1 function says that the backslash will be
12208         needed starting in Emacs 25, which implies that 'format' is
12209         correct and the old pcase documention was wrong to omit the backslash.
12210         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
12211         * lisp/help-fns.el (help-fns--signature):
12212         * lisp/help.el (help-add-fundoc-usage):
12213         * lisp/progmodes/elisp-mode.el (elisp-function-argstring):
12214         Use help--make-usage-docstring rather than formatting
12215         help-make-usage.
12216         * lisp/emacs-lisp/pcase.el (pcase--make-docstring):
12217         Return raw docstring.
12218         * lisp/help-fns.el (help-fns--signature): New arg RAW, to return
12219         raw docstring.  Take more care to distinguish raw from cooked dstrings.
12220         (describe-function-1): Let help-fns--signature substitute
12221         command keys.
12222         * lisp/help.el (help--docstring-quote): New function.
12223         (help-split-fundoc): Use it, to quote funny characters more
12224         systematically.
12225         (help--make-usage): Rename from help-make-usage, since this
12226         should be private.  Leave an obsolete alias for the old name.
12227         (help--make-usage-docstring): New function.
12228         * test/automated/help-fns.el (help-fns-test-funny-names): New test.
12230 2015-06-11  Stefan Monnier  <monnier@iro.umontreal.ca>
12232         * lisp/thingatpt.el (in-string-p): Revert last change,
12233         since in-string-p is not used in thingatpt.el but only from outside.
12234         Also, use lexical binding.
12236 2015-06-11  Artur Malabarba  <bruce.connor.am@gmail.com>
12238         * lisp/let-alist.el (let-alist--deep-dot-search): Fix cons.
12239         * test/automated/let-alist.el (let-alist-cons): Test it.
12241 2015-06-11  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
12243         * src/syntax.c (Fbackward_prefix_chars): Reword docstring.
12245 2015-06-10  Glenn Morris  <rgm@gnu.org>
12247         * build-aux/gitlog-to-emacslog: Also ignore pointless merge commits.
12249         Improve generated ChangeLog for gitmerge.el commits.  (Bug#20717)
12250         * build-aux/gitlog-to-changelog: Handle gitmerge.el skipped commits.
12251         * admin/gitmerge.el (gitmerge-commit-message):
12252         Exclude "skipped" messages from ChangeLog once again.
12254         Slight namespace cleanup for thingatpt.el.
12255         * lisp/thingatpt.el (thing-at-point--in-string-p)
12256         (thing-at-point--end-of-sexp, thing-at-point--beginning-of-sexp)
12257         (thing-at-point--read-from-whole-string): Rename from
12258         old versions without "thing-at-point--" prefix.
12259         Keep old versions as obsolete aliases.  Update all uses.
12261         * lisp/emacs-lisp/checkdoc.el (checkdoc-get-keywords):
12262         Move requiring of finder from here...
12263         (checkdoc-package-keywords): ... to here.
12265         Use 'user-error' in a few calendar files.
12266         * lisp/calendar/appt.el (appt-add):
12267         * lisp/calendar/calendar.el (calendar-absolute-from-gregorian)
12268         (calendar-generate):
12269         * lisp/calendar/diary-lib.el (diary-mail-entries, diary-cyclic):
12270         Replace 'error' with 'user-error'.
12272         * lisp/progmodes/f90.el (f90-backslash-not-special): Use user-error.
12274         * lisp/files-x.el (add-file-local-variable):
12275         Special-case 'lexical-binding'.  (Bug#20641)
12277         * lisp/progmodes/executable.el (executable-self-display): Obsolete.
12278         No longer autoload.
12279         * doc/misc/autotype.texi (Executables):
12280         Undocument executable-self-display.
12282         * lisp/progmodes/executable.el (executable-self-display):
12283         Use non-obsolete tail syntax.  (Bug#20779)
12284         (executable-self-display): Doc update.
12286 2015-06-10  Stefan Monnier  <monnier@iro.umontreal.ca>
12288         * lisp/emacs-lisp/checkdoc.el: Use lexical-binding
12289         (finder-known-keywords): Silence byte-compiler.
12291 2015-06-09  Stefan Monnier  <monnier@iro.umontreal.ca>
12293         * lisp/simple.el (eval-expression): Macroexpand before evaluating
12294         (bug#20730).
12296         * lisp/progmodes/sh-script.el: Better handle nested quotes.
12297         (sh-here-doc-open-re): Don't mis-match the <<< operator (bug#20683).
12298         (sh-font-lock-quoted-subshell): Make sure double quotes within single
12299         quotes don't mistakenly end prematurely the surrounding string.
12301         * lisp/progmodes/elisp-mode.el: Require cl-lib for cl-defstruct.
12303 2015-06-09  Glenn Morris  <rgm@gnu.org>
12305         * test/automated/Makefile.in (ELFILES): Sort.
12307         * Makefile.in (SUBDIR_MAKEFILES):
12308         * lwlib/Makefile.in (WARN_CFLAGS):
12309         Use built-in Make functions rather than echo+sed.
12311 2015-06-09  Eli Zaretskii  <eliz@gnu.org>
12313         Update char-script-table
12314         * lisp/international/characters.el (char-script-table): Update
12315         from Unicode 8.0 Draft.
12317         Improve font selection for punctuation and other symbols
12318         * src/fontset.c (face_for_char): If the character's script is
12319         'symbol', and the font used for ASCII face has a glyph for it, use
12320         the font for the ASCII face instead of searching the fontsets.
12321         This comes instead of NS-specific code that used the current
12322         face's font instead, which is now disabled due to undesirable
12323         consequences.  (Bug#20727)
12325 2015-06-08  Dmitry Gutov  <dgutov@yandex.ru>
12327         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
12328         Skip past `#' to find BEG (bug#20771).
12329         * test/automated/elisp-mode-tests.el
12330         (elisp-completes-functions-after-hash-quote): New test.
12332 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
12334         Fix compilation warning/error in --without-x builds
12335         * src/xdisp.c (append_space_for_newline): Condition GUI-specific
12336         code on HAVE_WINDOW_SYSTEM.
12338         Improve the default fontset wrt symbols
12339         * lisp/international/fontset.el (setup-default-fontset): Better
12340         setup of fontset-default for symbols: use Symbola and FreeMono.
12341         (Bug#20727)
12343 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
12345         Add new command checkdoc-package-keywords
12346         * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag):
12347         New defcustom.
12348         (checkdoc-list-of-strings-p): Add doc.
12349         (checkdoc-current-buffer): When `checkdoc-package-keywords-flag' is
12350         non-nil, call `checkdoc-package-keywords'.
12351         (checkdoc-get-keywords): New defun.
12352         (checkdoc-package-keywords): New command.  Warns if the current file
12353         has package.el-style keywords that aren't in `finder-known-keywords'.
12354         * etc/NEWS: Add entry.
12356 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
12358         Avoid crashes when key-binding is called from a timer
12359         * src/keymap.c (Fkey_binding): Don't segfault if called with an
12360         empty vector as KEY.  (Bug#20705)
12362         Fix a thinko in arc-mode.el
12363         * lisp/arc-mode.el (archive-zip-summarize): Fix last change in the
12364         non-Zip64 case.  (Bug#20769)
12366 2015-06-08  Artur Malabarba  <bruce.connor.am@gmail.com>
12368         * lisp/emacs-lisp/package.el (package-delete): Make interactive.
12370 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
12372         * lisp/emacs-lisp/checkdoc.el (checkdoc-file): New function.
12373         (checkdoc-error): When `checkdoc-diagnostic-buffer' is set to
12374         "*warn*", print the warning to the standard output.  (bug#20754)
12376 2015-06-07  Glenn Morris  <rgm@gnu.org>
12378         * admin/update_autogen (changelog_files): Remove gitlog-to-emacslog.
12380         * src/font.c (syms_of_font) <font-log>: Doc fix.
12382         Remove the obsolete leading "*" from some C doc strings.
12383         * src/coding.c (syms_of_coding):
12384         * src/font.c (syms_of_font): Remove leading "*" from docs.
12385         * lisp/cus-start.el (enable-character-translation): Add it.
12387 2015-06-07  Paul Eggert  <eggert@cs.ucla.edu>
12389         Move gen_origin from program to data
12390         That way, 'make change-history' needs to change only ChangeLog.2,
12391         instead of having to change two files.
12392         * ChangeLog.2: Add commit info for range that this file covers.
12393         * Makefile.in (new_commit_regexp): New macro.
12394         (change-history-nocommit): Simplify, by putting what used to be
12395         the gen_origin value into the data (ChangeLog.2) rather than
12396         into the program (gitlog-to-emacslog).
12397         * build-aux/gitlog-to-emacslog (gen_origin): Calculate from
12398         the input file (e.g., ChangeLog.2) rather than by having a
12399         constant in the program.  Substitute it into the output.
12401 2015-06-07  Dmitry Gutov  <dgutov@yandex.ru>
12403         * lisp/help-fns.el (help-fns--signature): Quote any quotes in the
12404         function name (bug#20759).
12406 2015-06-07  Eli Zaretskii  <eliz@gnu.org>
12408         Adapt 'struct timespec' to next release of MinGW runtime
12409         * nt/inc/ms-w32.h (struct timespec): Don't declare if
12410         __struct_timespec_defined is defined.
12412 2015-06-06  Paul Eggert  <eggert@cs.ucla.edu>
12414         Merge from gnulib
12415         This incorporates:
12416         2015-06-06 acl-permissions: pacify -Wsuggest-attribute=const
12417         2015-06-05 stdio: Don't redefine gets when using C++
12418         2015-06-05 acl-permissions: port to AIX, C89 HP-UX
12419         2015-06-02 file-has-acl: fix build on Mac OS X 10
12420         2015-06-01 gnulib-tool: concatenate lib_SOURCES to a single line
12421         2015-06-01 pthread_sigmask: discount system version if a simple macro
12422         2015-05-31 readlinkat: avoid OS X 10.10 trailing slash bug
12423         * doc/misc/texinfo.tex, lib/acl-internal.h, lib/get-permissions.c:
12424         * lib/readlinkat.c, lib/set-permissions.c, lib/stdio.in.h:
12425         * m4/acl.m4, m4/pthread_sigmask.m4, m4/readlinkat.m4: Copy from gnulib.
12426         * lib/gnulib.mk: Regenerate.
12428 2015-06-06  Juri Linkov  <juri@linkov.net>
12430         * lisp/progmodes/grep.el (zrgrep): Let-bind grep-highlight-matches
12431         before calling grep-compute-defaults because now it affects the
12432         command lines computed in grep-compute-defaults.  (Bug#20728)
12434 2015-06-06  Glenn Morris  <rgm@gnu.org>
12436         Address some compilation warnings.
12437         * lisp/international/mule-cmds.el (w32-get-console-codepage)
12438         (w32-get-console-output-codepage):
12439         * lisp/progmodes/elisp-mode.el (xref-collect-references):
12440         * lisp/version.el (cairo-version-string): Declare.
12441         * lisp/erc/erc.el (erc-nickname-in-use): Fix typo.
12443 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
12445         Fix display when a font claims large values of ascent and descent
12446         This fixes bug#20628.
12447         * src/xdisp.c (get_phys_cursor_geometry): Correct the Y
12448         coordinate of a hollow cursor glyph when the original glyph's
12449         ascent is too small.
12450         (get_font_ascent_descent, normal_char_ascent_descent)
12451         (normal_char_height): New functions.
12452         (handle_single_display_spec, append_space_for_newline)
12453         (calc_pixel_width_or_height, produce_stretch_glyph)
12454         (calc_line_height_property): Use normal_char_ascent_descent and
12455         normal_char_height.
12456         (x_produce_glyphs): When font-global values of ascent and descent
12457         are too large, use per-character glyph metrics instead, if
12458         possible.  But don't allow the glyph row's ascent and descent
12459         values become smaller than the values from the metrics of the
12460         font's "normal" character.
12461         * src/xftfont.c (xftfont_draw):
12462         * src/w32font.c (w32font_draw): Correct the values of ascent and
12463         descent used to draw glyphless characters' hex code in a box.
12464         * src/xterm.c (x_draw_glyph_string_background):
12465         * src/xdisp.c (x_produce_glyphs):
12466         * src/w32term.c (x_draw_glyph_string_background):
12467         * src/nsterm.m (ns_maybe_dumpglyphs_background): Use FONT_TOO_HIGH
12468         to detect fonts whose global ascent and descent values are too
12469         large to be used in layout decision, and redraw the background
12470         when that happens.
12471         * src/dispextern.h (FONT_TOO_HIGH): New macro.
12472         (get_font_ascent_descent): Add prototype.
12473         * src/xterm.c (x_new_font):
12474         * src/w32term.c (x_new_font):
12475         * src/nsterm.m (x_new_font):
12476         * src/font.c (font_open_entity):
12477         * src/composite.c (composition_gstring_width):
12478         Use get_font_ascent_descent to obtain reasonable values for ascent
12479         and descent of a font.
12481 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
12483         Add assertion in adjust_point_for_property
12484         * src/keyboard.c (adjust_point_for_property): Add eassert for
12485         current buffer being shown in selected window.
12487 2015-06-06  Dmitry Gutov  <dgutov@yandex.ru>
12489         Replace uses of in-string-p; make it obsolete
12490         * lisp/thingatpt.el (in-string-p): Declare obsolete (bug#20732).
12491         (end-of-sexp, beginning-of-sexp): Use syntax-ppss instead.
12493 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
12495         Fix Dired display of an explicit list of files by ls-lisp.el
12496         * lisp/ls-lisp.el (ls-lisp-uid-d-fmt, ls-lisp-uid-s-fmt)
12497         (ls-lisp-gid-d-fmt, ls-lisp-gid-s-fmt): Make the initial values be
12498         correct for when displaying individual files separately, not as
12499         part of listing a directory, in which case these values are not
12500         recomputed by 'ls-lisp-insert-directory', but used verbatim.
12502         * lisp/dired.el (dired): Doc fix.  (Bug#20739)
12504 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
12506         Do not adjust point in a non-selected window
12507         * src/keyboard.c (command_loop_1): Do not adjust point when
12508         current buffer is not shown in selected window (Bug#20590).
12510         * etc/DEBUG: Mention 'maybe_call_debugger'
12512 2015-06-05  Nicolas Petton  <nicolas@petton.fr>
12514         Fix a unit test for map.el
12515         * test/automated/map-tests.el (test-map-let): Fix the test to work
12516         with the new syntax of `map-let'.
12518         * lisp/emacs-lisp/map.el (map-let): Better docstring.
12520         Better syntax for the map pcase pattern
12521         * lisp/emacs-lisp/map.el: Improves the map pcase pattern to take
12522         bindings of the form (KEY PAT) or SYMBOL.  KEY is not quoted.
12524         * lisp/emacs-lisp/map.el (map--dispatch): Better docstring.
12526         Fix a byte-compiler error in map-put and map-delete
12527         * lisp/emacs-lisp/map.el (map-put, map-delete): Ensure that `setq' is
12528         called with a symbol.
12530 2015-06-05  Glenn Morris  <rgm@gnu.org>
12532         * admin/gitmerge.el (gitmerge-commit-message):
12533         Revert to including "skipped" messages in ChangeLog once again.
12535 2015-06-05  Tassilo Horn  <tsdh@gnu.org>
12537         Use string> instead of equiv lambda with string<
12538         * lisp/help.el (view-emacs-news): Use string> instead of equivalent
12539         lambda with string<.
12541 2015-06-05  Glenn Morris  <rgm@gnu.org>
12543         * lisp/emacs-lisp/map.el (map--dispatch): Move before use.
12544         (map--delete-array): Fix typo.
12546         * test/automated/map-tests.el: Replace "assert" with "should".
12548         * lisp/Makefile.in (SUBDIRS): Rename from SUBDIRS_ABS.
12549         (SUBDIRS_REL): Derive from SUBDIRS.
12551         Tweak some build messages.
12552         * lisp/Makefile.in ($(lisp)/loaddefs.el):
12553         * lisp/cus-dep.el (custom-make-dependencies):
12554         * lisp/finder.el (finder-compile-keywords): Say what we are doing.
12555         * lisp/international/titdic-cnv.el (batch-titdic-convert):
12556         Don't say how to compile.
12558 2015-06-05  Paul Eggert  <eggert@cs.ucla.edu>
12560         Omit U+0332 COMBINING LOW LINE in previous change
12561         It turns out that it does not work on Ubuntu 15.04.
12563         Fix transliteration of Bahá'í months
12564         * lisp/calendar/cal-bahai.el (calendar-bahai-month-name-array):
12565         Improve quality of Latin transliteration of Bahá'í month names.
12567         Fix curved quotes in a few places
12568         * lisp/calc/calc-misc.el (calc-help): Fix quoting.
12569         The strings in question are not doc strings, so this partially
12570         undoes the recent change that assumed they were doc strings.
12571         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
12572         * lisp/info.el (Info-finder-find-node):
12573         Use curved quotes.
12574         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
12575         Also allow curved quotes in doc strings.
12577 2015-06-04  Glenn Morris  <rgm@gnu.org>
12579         * lisp/Makefile.in (AM_V_at): Add missing definition.
12581         * lisp/Makefile.in: Quieten output a bit.
12582         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el):
12583         Don't echo directories, since the commands we invoke print them.
12585         * lisp/Makefile.in: Replace shell fragments in variables with $(shell).
12586         (SUBDIRS_REL, SUBDIRS_ABS, SUBDIRS_ALMOST, SUBDIRS_FINDER)
12587         (SUBDIRS_SUBDIRS): New variables.
12588         (setwins, setwins_almost, setwins_finder, setwins_for_subdirs):
12589         Remove.
12590         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el, $(lisp)/loaddefs.el)
12591         (update-subdirs, compile-main, compile-clean):
12592         Replace "setwins" usage with new "SUBDIRS" variables.
12594         * lisp/vc/compare-w.el (compare-windows-get-window-function):
12595         Fix :version tag.
12597 2015-06-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12599         * src/ftfont.c (ftfont_open2): Round divisions by upEM.
12601         Undo removal of x_clear_area call on expose for GTK3 or cairo
12602         * src/xterm.c (handle_one_xevent) [HAVE_GTK3 || USE_CAIRO]:
12603         Clear exposed area.  (Bug#20677)
12605 2015-06-04  Glenn Morris  <rgm@gnu.org>
12607         * doc/lispref/hash.texi (Creating Hash): Remove obsolete makehash.
12609         * lisp/Makefile.in (check-defun-dups): Also skip ldefs-boot.
12611         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
12612         Rename from quail-lao-update-translation, since lao.el defines that.
12614 2015-06-04  Dmitry Gutov  <dgutov@yandex.ru>
12616         Handle new-style advice in find-funct
12617         * lisp/emacs-lisp/find-func.el (find-function-advised-original):
12618         Handle new-style advice.  Return the symbol's function definition.
12619         (Bug#20718)
12620         (find-function-library): Update accordingly.
12622 2015-06-04  Nicolas Petton  <nicolas@petton.fr>
12624         Merge branch 'map'
12626         * lisp/emacs-lisp/map.el: Better docstring for the map pcase macro.
12628         Add new function string-greaterp
12629         * lisp/subr.el (string-greaterp): New function.  Also aliased to
12630         `string>'.
12631         * test/automated/subr-tests.el (string-comparison-test): Add unit
12632         tests for `string>'and `string<'.
12633         * src/fns.c (string-lessp): Better docstring.
12635 2015-06-04  Eli Zaretskii  <eliz@gnu.org>
12637         Fix timezone-related functions on MS-Windows
12638         * src/editfns.c (set_time_zone_rule) [WINDOWSNT]: Always call
12639         'xputenv', even if no reallocation of tzvalbuf was necessary.
12640         This fixes a bug in timezone-related functions on MS-Windows.
12641         Reported by Fabrice Popineau <fabrice.popineau@gmail.com>.
12643 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
12645         Don't pass raw directory name to 'error'
12646         * lisp/files.el (basic-save-buffer-2): Avoid format error if
12647         a directory name contains a string like "%s".
12649 2015-06-03  Dmitry Gutov  <dgutov@yandex.ru>
12651         Override 'grep --color=always'
12652         * lisp/progmodes/xref.el (xref-collect-matches):
12653         Override --color=always in grep-find-template.
12655 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
12657         Fix error introduced recently in file-notify-tests.el
12658         * test/automated/file-notify-tests.el
12659         (file-notify--test-remote-enabled): Do not use `file-notify--test-desc'.
12660         (file-notify--deftest-remote): Revert previous patch, not
12661         necessary anymore.
12663 2015-06-03  Wolfgang Jenkner  <wjenkner@inode.at>
12665         * src/indent.c (Fvertical_motion): Amend motion by 0 lines.
12666         Starting from a display string after a newline, point went to the
12667         previous line.  Also, fix an inadvertent use of a buffer position
12668         with FETCH_BYTE.  (Bug#20701)
12670 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
12672         Instrument file-notify-test.el in order to catch hydra error
12673         * test/automated/file-notify-tests.el (file-notify--deftest-remote):
12674         Wrap body by `ignore-case', in order to trap non-local errors.
12676 2015-06-03  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12678         Undo previous changes in non-toolkit scroll bar drawing
12679         * src/xterm.c (x_scroll_bar_set_handle, x_scroll_bar_expose)
12680         [!USE_TOOLKIT_SCROLL_BARS]: Draw into scroll bar window.  (Bug#20668)
12682 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
12684         * .gitignore: Also ignore doc/*/*/*.html and .ps.
12686         Support quotes 'like this' in info files
12687         This is possible when 'makeinfo --disable-encoding' is used
12688         in Texinfo 5.
12689         * lisp/calc/calc-help.el (calc-describe-thing):
12690         * lisp/gnus/gnus-art.el (gnus-button-alist):
12691         * lisp/info.el (Info-find-index-name):
12692         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
12693         Also support quotes 'like this'.
12694         * lisp/calc/calc-help.el (calc-describe-thing): Simplify.
12695         * lisp/finder.el (finder-font-lock-keywords): Remove var that
12696         hasn't been used in years, instead of bothering to fix its quoting.
12698 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
12700         * .gitignore: Remove !test/etags/html-src/*.html.
12701         It's no longer needed, since *.html was removed.  Sort.
12703 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
12705         Restore <D> instead of '.' in grep-find-template
12706         * lisp/cedet/semantic/symref/grep.el
12707         (semantic-symref-grep-use-template): Update a comment.
12708         * lisp/progmodes/grep.el (grep-compute-defaults): Restore <D>
12709         instead of '.' in grep-find-template (bug#20719).
12710         (rgrep): Pass nil as the directory to rgrep-default-command.
12711         * lisp/progmodes/grep.el (grep-expand-keywords): Use '.' as the
12712         default value for DIR.
12713         * lisp/progmodes/xref.el (xref-collect-matches): Drop the
12714         workaround.
12716 2015-06-02  Glenn Morris  <rgm@gnu.org>
12718         * configure.ac (emacs_config_features): Add X toolkit and scroll-bars.
12720         * configure.ac (emacs_config_features): Add Cairo.
12722         * configure.ac [HAVE_GTK3]: Remove USE_CAIRO that gets reset later.
12724 2015-06-02  Michael Albinus  <michael.albinus@gmx.de>
12726         Ensure that autorevert works for remote files in file-notify-tests.el
12727         * test/automated/file-notify-tests.el (file-notify--test-desc):
12728         New defvar.
12729         (file-notify--test-remote-enabled)
12730         (file-notify-test00-availability, file-notify-test01-add-watch)
12731         (file-notify-test02-events): Use it.
12732         (file-notify--test-event-test): Check proper descriptor.
12733         (file-notify-test03-autorevert): Ensure that
12734         `visited-file-modtime' has changed.  (Bug#20392)
12736 2015-06-02  Nicolas Petton  <nicolas@petton.fr>
12738         Add a pcase pattern for maps and `map-let' based on it
12739         * lisp/emacs-lisp/map.el (map-let): New macro.
12740         (map--make-pcase-bindings, map--make-pcase-patterns): New functions.
12741         * test/automated/map-tests.el: New test for `map-let'.
12743 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
12745         Reuse rgrep mechanics in xref-find-regexp
12746         * lisp/progmodes/grep.el (rgrep-default-command):
12747         Extract from `rgrep'.
12748         * lisp/progmodes/xref.el (xref-collect-references): Split from
12749         `xref-collect-matches'.  Only handle the case of symbol search.
12750         (xref-collect-matches): Instead of Semantic Symref, use
12751         `rgrep-default-command', to take advantage of its directory and
12752         file ignore settings.
12753         (xref--collect-match): Remove the last argument, leaving the
12754         regexp construction up to the caller.
12755         * lisp/progmodes/elisp-mode.el (elisp--xref-find-matches):
12756         Change to take the xref-collect- function to use as an argument.
12757         (elisp-xref-find): Update accordingly.
12758         * lisp/progmodes/etags.el (etags--xref-find-matches)
12759         (etags-xref-find): Same.
12761         Move xref-elisp-location to elisp-mode.el
12762         * lisp/progmodes/xref.el (xref-elisp-location)
12763         (xref-make-elisp-location, xref-location-marker): Remove here.
12764         (xref--xref): Don't limit the type of the location slot.
12765         * lisp/progmodes/elisp-mode.el (xref-elisp-location):
12766         Define as a cl-struct here.
12767         (xref-location-marker): Move here.
12769 2015-06-02  Eli Zaretskii  <eliz@gnu.org>
12771         Minor tweaks for .gitignore
12772         * .gitignore: Don't ignore versioned *.html and *.ps files.
12773         Don't ignore admin/notes/tags that might be ignored as TAGS
12774         on case-insensitive filesystems.  (Bug#20710)
12776 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
12778         Generate curved quotes in ert doc
12779         * lisp/emacs-lisp/ert.el (ert--print-test-for-ewoc)
12780         (ert-results-mode-menu)
12781         (ert-results-pop-to-backtrace-for-test-at-point)
12782         (ert-results-pop-to-messages-for-test-at-point)
12783         (ert-results-pop-to-should-forms-for-test-at-point)
12784         (ert-describe-test):
12785         Quote ‘like this’, not `like this', when generating doc strings
12786         and the like.
12787         * test/automated/ert-x-tests.el (ert-test-describe-test):
12788         Allow quoting ‘like this’.
12790 2015-06-02  Nicolas Richard  <youngfrog@members.fsf.org>
12792         Add test for previous commit
12793         * test/automated/replace-tests.el: New file.
12794         (query-replace--split-string-tests): Add test for previous commit.
12796         Avoid confusion in query-replace history when replacing NUL chars
12797         * lisp/replace.el (query-replace--split-string): New function.
12798         (query-replace-read-from): Rely on the 'separator' property
12799         instead of searching for the NUL character (Bug#20690).
12801 2015-06-02  Glenn Morris  <rgm@gnu.org>
12803         Merge from origin/emacs-24
12804         8b5f2f4 * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
12806         * admin/gitmerge.el (gitmerge-commit-message):
12807         Exclude "skipped" messages from ChangeLog.
12809 2015-06-01  Michael Albinus  <michael.albinus@gmx.de>
12811         Sync with Tramp repository
12812         * lisp/net/tramp.el (tramp-message): Dump connection buffer error
12813         messages.
12814         (tramp-handle-make-auto-save-file-name): When calling
12815         `make-auto-save-file-name' internally, make sure it uses Unix-like
12816         behavior, not Windows-like behavior.
12817         * lisp/net/tramp-sh.el (tramp-set-file-uid-gid): Add a timeout for
12818         the local case, because "chown" might fail on w32.
12819         * lisp/net/trampver.el (tramp-repository-get-version): Don't run
12820         for XEmacs.
12822 2015-06-01  Eli Zaretskii  <eliz@gnu.org>
12824         MS-Windows followup for batch stdout/stderr output changes
12825         * lisp/international/mule-cmds.el (set-locale-environment):
12826         In batch mode, use console codepages for keyboard and terminal
12827         encoding.  (Bug#20545)
12829         Update .gitattributes for DOS EOL files
12830         * .gitattributes: Use "whitespace=cr-at-eol" for files with DOS
12831         CRLF end-of-line format.
12833         NS equivalents of xterm.c and w32term.c changes
12834         * src/nsterm.m (ns_maybe_dumpglyphs_background): Force redraw of
12835         glyph string background also when the font in use claims
12836         preposterously large global height value.  Helps to remove
12837         artifacts left from previous displays when glyphless characters
12838         are displayed as hex code in a box.
12839         (x_new_font): Call get_font_ascent_descent to obtain a reasonable
12840         value for FRAME_LINE_HEIGHT, even when a font claims very large
12841         value for its height.
12843 2015-06-01  Paul Eggert  <eggert@cs.ucla.edu>
12845         Avoid grave accent quoting in stderr diagnostics
12846         A few Emacs diagnostics go directly to stderr, and so can't easily
12847         contain curved quotes (as non-UTF-8 locales might mishandle them).
12848         Instead of bothering to add support for this rarity, reword the
12849         diagnostics so that they don't use grave accent to quote.
12850         * src/alloc.c (mark_memory): Fix comment.
12851         * src/buffer.c (init_buffer):
12852         * src/dispnew.c (init_display):
12853         * src/emacs.c (main, sort_args):
12854         * src/lread.c (dir_warning):
12855         * src/term.c (init_tty):
12856         * src/unexmacosx.c (unexec):
12857         * src/xfns.c (select_visual):
12858         * src/xterm.c (cvt_string_to_pixel, x_io_error_quitter):
12859         Reword stderr diagnostics to avoid quoting `like this'.
12860         * src/unexmacosx.c: Include errno.h.
12861         * src/xfns.c (select_visual): Encode value for locale.
12863 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
12865         Treat batch stdout/stderr like standard display
12866         Calls like (print FOO) could generate improperly encoded or
12867         hard-to-read output if FOO contains characters outside the system
12868         locale.  Fix this by treating batch stdout and stderr like
12869         interactive standard display, when it comes to transliterating and
12870         encoding characters (Bug#20545).
12871         * doc/emacs/mule.texi (Communication Coding):
12872         * doc/lispref/display.texi (Active Display Table):
12873         * doc/lispref/nonascii.texi (Locales):
12874         * etc/NEWS:
12875         * src/coding.c (syms_of_coding):
12876         * src/dispnew.c (syms_of_display):
12877         Document this.
12878         * src/print.c: Include disptab.h.
12879         (printchar_to_stream): New function, with much of the guts of the
12880         old Fexternal_debugging_output, except this one also uses the
12881         standard display table.
12882         (printchar, strout, Fexternal_debugging_output): Use it.
12884 2015-05-31  Glenn Morris  <rgm@gnu.org>
12886         * src/emacs.c (syms_of_emacs) <system-configuration-features>: Doc fix.
12888 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
12890         Remove DEFSYMs that aren't used at the C level.  Also:
12891         * src/decompress.c (Qzlib_dll):
12892         * src/font.c (Qunicode_sip):
12893         * src/frame.c (Qtip_frame):
12894         * src/ftfont.c (Qserif):
12895         * src/gnutls.c (Qgnutls_dll):
12896         * src/xml.c (Qlibxml2_dll):
12897         Move from here ...
12898         * src/w32fns.c (syms_of_w32fns): ... to here,
12899         as these are used only on MS-Windows.
12901 2015-05-31  Michael Albinus  <michael.albinus@gmx.de>
12903         Use another default value for tramp-histfile-override
12904         * lisp/net/tramp-sh.el (tramp-histfile-override):
12905         Use ".tramp_history" as default.
12906         Fixes bug#20446
12908 2015-05-29  Nicolas Petton  <nicolas@petton.fr>
12910         * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
12912 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
12914         * etc/NEWS: Add an entry about map.el.
12916         Improve the docstring of functions in map.el
12917         Since a map is not a data structure but a concept, adding information
12918         about the possible types of maps can be useful information.
12919         * lisp/emacs-lisp/map.el: Add documentation about the type of MAP to
12920         each public function.
12922 2015-04-29  Nicolas Petton  <nicolas@petton.fr>
12924         * lisp/emacs-lisp/map.el (map-empty-p): Faster implementation using
12925         specific tests depending on the type of the map.
12927         * lisp/emacs-lisp/map.el: Better docstrings.
12929 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
12931         * lisp/emacs-lisp/map.el (map-pairs): Dump redundant lambda.
12933 2015-04-25  Nicolas Petton  <nicolas@petton.fr>
12935         * lisp/emacs-lisp/map.el (map--elt-list): Better docstring.
12937         * lisp/emacs-lisp/map.el (map--elt-list): Minor refactoring.
12939         Fix a false negative in `map-elt' with alists and values being nil
12940         * lisp/emacs-lisp/map.el (map-elt): If map is an alist and key is
12941         found but its associated value is nil, do not return the default
12942         value.
12943         * test/automated/map-tests.el: Add a regression test.
12945 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
12947         * lisp/emacs-lisp/map.el (map--dispatch): Improve the docstring.
12949         Do not signal an error when trying to delete a key from an array
12950         * lisp/emacs-lisp/map.el (map-delete): When map is an array, check if
12951         the key is present to avoid signaling an error.
12952         * test/automated/map-tests.el: Add a test for deleting non-existing
12953         keys from maps.
12955         * lisp/emacs-lisp/map.el: Better docstring.
12957         Minor improvement in map-elt
12958         * lisp/emacs-lisp/map.el (map-elt): Do not use `ignore-errors' when
12959         doing a lookup in arrays, but check the boundaries of the array
12960         instead.
12961         * test/automated/map-tests.el: Adds a test for `map-elt' with arrays
12962         and a negative integer as key.
12964 2015-04-21  Nicolas Petton  <nicolas@petton.fr>
12966         * test/automated/map-tests.el: Refactoring of test methods.
12968         * test/automated/map-tests.el: Renamed from map-test.el.
12970 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
12972         * lisp/emacs-lisp/map.el (map-into): Better error message.
12974         * lisp/emacs-lisp/map.el: Remove byte-compilation warnings.
12976         Throw an error when converting a map into an unknown map type
12977         * lisp/emacs-lisp/map.el (map-into): Throw an error if type is
12978         not valid.
12979         * test/automated/map-test.el: Add a regression test.
12981         New library map.el similar to seq.el but for mapping data structures.
12982         * test/automated/map-test.el: New file.
12983         * lisp/emacs-lisp/map.el: New file.
12985 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
12987         * lisp/progmodes/etags.el (tag-implicit-name-match-p): Make sure
12988         there's no explicit tag name (bug#20629).
12990 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
12992         Remove format2
12993         * src/editfns.c, src/lisp.h (format2): Remove.
12994         It is more trouble than it's worth, now that we have CALLN.
12995         This is just a minor refactoring.
12996         * src/buffer.c (Fkill_buffer):
12997         * src/dbusbind.c (XD_OBJECT_TO_STRING):
12998         * src/fileio.c (barf_or_query_if_file_exists):
12999         Adjust to format2 going away.
13001         Don't misencode C-generated messages
13002         Also, be more consistent about calls to 'Fmessage' vs 'message'.
13003         * src/alloc.c (Fgc_status):
13004         Prefer AUTO_STRING to build_string for Fmessage call.
13005         * src/data.c (Fmake_variable_buffer_local)
13006         (Fmake_local_variable, Fmake_variable_frame_local):
13007         * src/doc.c (store_function_docstring):
13008         Use Fmessage, not message, since the argument can contain
13009         non-ASCII characters, and this can cause the resulting message
13010         to be incorrectly encoded for the current environment.
13011         * src/fns.c (maybe_resize_hash_table):
13012         * src/xselect.c (x_clipboard_manager_save_all):
13013         Use message, not Fmessage, since Fmessage's power isn't needed here.
13014         * src/process.c (Fmake_network_process): Reword message to avoid %s.
13015         * src/xdisp.c (vmessage): Document restrictions on message contents.
13016         (message_nolog) [false]: Remove unused code.
13018         Use \r rather than ^M in string literals
13019         This is less likely to cause problems on platforms that
13020         use CRLF (or CR!) termination for lines.
13022         Update .gitattributes to match current sources
13023         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00879.html
13024         * .gitattributes: Accommodate tests that insist on DOS format.
13025         Remove test/automated/data/decompress/foo-gzipped.
13026         Add etc/e/eterm-color.
13028 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
13030         * doc/emacs/mule.texi (Modifying Fontsets):
13031         Document face-ignored-fonts.  (Bug#20628)
13033         Add etags test for the new -Q option
13034         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
13035         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
13036         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
13037         test-case changes below.
13038         * test/etags/ETAGS.good_6: New file.
13039         * test/etags/cp-src/x.cc: New file.
13040         * test/etags/Makefile (CPSRC): Add x.cc.
13041         (check): Add one more test, for -Q.
13043 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
13045         Use list for the tags completion table, not obarray
13046         * lisp/progmodes/etags.el (etags-tags-completion-table): Return a
13047         list instead of an obarray
13048         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00876.html).
13049         (tags-completion-table): Combine those lists.
13050         (tags-completion-table): Update the docstring.
13052 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
13054         Restore EOL format testing in etags
13055         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
13056         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
13057         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
13058         test-case changes below.
13059         * test/etags/html-src/algrthms.html: Convert back to DOS EOL format.
13060         * test/etags/cp-src/c.C (B): Add back stray CR character.
13061         * test/etags/c-src/dostorture.c: Add back.
13062         * test/etags/Makefile (CSRC): Add back c-src/dostorture.c.
13064 2015-05-30  Vitaly Takmazov  <vitalyster@gmail.com>  (tiny change)
13066         Declare Emacs on MS-Windows to be DPI-aware
13067         * nt/emacs-x86.manifest (asmv3:windowsSettings): Add dpiAware.
13068         * nt/emacs-x64.manifest (asmv3:windowsSettings): Add dpiAware.
13069         This avoids Windows entering compatibility mode for Emacs,
13070         which causes fonts to look less nice.
13072 2015-05-30  Michael Albinus  <michael.albinus@gmx.de>
13074         Improve Tramp traces
13075         * lisp/net/trampver.el (tramp-repository-get-version): New defun.
13076         * lisp/net/tramp.el (tramp-debug-message): Use it.
13078 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
13080         backup-buffer minor reworking of internals
13081         * lisp/files.el (backup-buffer): Rework to avoid a couple of
13082         unused locals inadvertently introduced in the previous change.
13084         backup-buffer now reports .emacs.d/%backup% ills
13085         * lisp/files.el (backup-buffer): If the write to .emacs.d/%backup%
13086         fails due to disk space exhaustion or whatever, do not pretend
13087         that it succeeded.  More generally, do a better job of checking
13088         for I/O failures, and limit the scope of the condition-case to
13089         just the operations where file errors should be caught and ignored
13090         (Bug#20595).  Also, don't bother trying to delete later backups if
13091         an earlier deletion fails, as this is a sign of trouble and it's
13092         better to stop when there's trouble.
13094         copy-file now truncates output after writing
13095         * src/fileio.c (Fcopy_file): Truncate output after writing rather
13096         than before.  This is more likely to work than truncation before
13097         writing, if the file system is out of space or the user is over
13098         disk quota (Bug#20595).  Also, check for read errors.
13100 2015-05-29  Artur Malabarba  <bruce.connor.am@gmail.com>
13102         * lisp/emacs-lisp/package.el (package-load-all-descriptors):
13103         Don't load descriptors from directories above the package directories.
13105 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
13107         Merge from gnulib
13108         This incorporates the following (Bug#20681):
13109         2015-05-29 acl-permissions: Fix build on Mac OS X and older AIX
13110         2015-05-29 acl-permissions: Fix build on Solaris and Cygwin
13111         * lib/set-permissions.c: Copy from gnulib.
13113 2015-05-29  Michael Albinus  <michael.albinus@gmx.de>
13115         Improve Tramp traces
13116         * lisp/net/tramp.el (tramp-call-process-region): New defun.
13117         * lisp/net/tramp-sh.el (tramp-get-inline-coding): Use it.
13119 2015-05-29  Glenn Morris  <rgm@gnu.org>
13121         * test/automated/vc-tests.el: Try enabling tests on hydra.nixos.org.
13123 2015-05-29  Wolfgang Jenkner  <wjenkner@inode.at>
13125         * src/xfns.c (x_set_menu_bar_lines): Fix calls to x_clear_area.
13126         The signature was changed in the cairo branch, merged on 2015-05-23.
13127         This oversight broke compiling only the non-toolkit X version.
13129 2015-05-29  Samer Masterson  <samer@samertm.com>
13131         * doc/lispref/os.texi: Update initial-buffer-choice docs.
13133 2015-05-29  Glenn Morris  <rgm@gnu.org>
13135         * test/automated/vc-tests.el (vc-test-rcs04-checkout-model):
13136         Mark as an expected failure.
13138 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
13140         Change package test to look for curved quotes
13141         * test/automated/package-test.el (package-test-describe-package)
13142         (package-test-signed): Search for curved single quotes as well as
13143         for grave accent and apostrophe.
13145 2015-05-28  Katsumi Yamaoka  <yamaoka@jpl.org>
13147         * lisp/gnus/gnus-art.el (gnus-button-alist): Re-revert last change.
13148         cf. <http://news.gmane.org/group/gmane.emacs.devel/thread=186896>
13150 2015-05-28  Samer Masterson  <samer@samertm.com>
13152         Show files when `initial-buffer-choice' is non-nil
13153         * lisp/startup.el (command-line-1): When Emacs is given a file as an
13154         argument and `initial-buffer-choice' is non-nil, display both the file
13155         and `initial-buffer-choice'.  For more than one file, show
13156         `initial-buffer-choice' and *Buffer List*.  Refactor display-changing
13157         commands out of the command line arg parser.
13158         (initial-buffer-choice): Clarify docstring.
13160 2015-05-28  Eli Zaretskii  <eliz@gnu.org>
13162         Fix last commit
13163         * nt/gnulib.mk (libgnu_a_SOURCES): Add get-permissions.c back.
13164         (gnulib module qcopy-acl): Add back, as it is harmless.  This
13165         minimizes differences wrt lib/gnulib.mk.
13167         Fix the MS-Windows build as followup to gnulib update
13168         * nt/gnulib.mk (libgnu_a_SOURCES): Remove get-permissions.c and
13169         set-permissions.c, as they don't compile on MinGW.
13170         (gnulib module qcopy-acl): Remove, as it needs set-permissions.c.
13172 2015-05-28  Paul Eggert  <eggert@cs.ucla.edu>
13174         Revert my change to gnus-art.el
13175         * lisp/gnus/gnus-art.el (gnus-button-alist): Revert last change.
13176         It wasn't that important, and it caused a Gnus build to fail.  See:
13177         http://www.randomsample.de:4456/builders/emacs-devel/builds/734
13179         New minor mode Electric Quote
13180         This lets you easily insert quotes ‘like this’ by typing
13181         quotes `like this', and similarly you can easily insert
13182         quotes “like this” by typing quotes ``like this'' (Bug#20545).
13183         * doc/emacs/basic.texi (Inserting Text):
13184         * doc/emacs/modes.texi (Minor Modes):
13185         * etc/NEWS: Document it.
13186         * doc/emacs/text.texi (Quotation Marks): New section.
13187         * lisp/electric.el (electric-quote-comment)
13188         (electric-quote-string, electric-quote-paragraph):
13189         New custom vars.
13190         (electric--insertable-p)
13191         (electric-quote-post-self-insert-function): New functions.
13192         (electric-quote-mode, electric-quote-local-mode): New minor modes.
13193         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
13194         Add curved single quotes to electric-pair-text-pairs.
13195         Set electric-quote-string in this buffer.
13197         A few more doc string fixes (Bug#20385)
13199         Accept curved quotes in doc strings
13200         * lisp/info-look.el (info-lookup-guess-custom-symbol):
13201         (info-lookup-alist): Treat ‘’ like `' when parsing help buffers etc.
13203         Generate curved quotes in pseudo-info nodes
13204         * lisp/info.el (Info-virtual-index-find-node)
13205         (Info-virtual-index, Info-apropos-find-node, info-apropos):
13206         Quote ‘like this’, not `like this', when generating pseudo-info nodes.
13208         Fix minor quoting problems in doc strings
13209         Most of these fixes involve escaping grave accents that are
13210         actually intended to be grave accents, not left quotes.
13211         (Bug#20385)
13213         Support curved quotes in doc strings
13214         Emacs's traditional doc string style has been to quote symbols
13215         `like this'.  This worked well on now-obsolete terminals where
13216         ` and ' were symmetric quotes, but nowadays curved quotes
13217         ‘like this’ look better.  Support quoting the new way too.
13218         (Bug#20385)
13219         * doc/lispref/tips.texi (Documentation Tips): Symbols can be quoted
13220         ‘like-this’ as well as `like-this'.
13221         * etc/NEWS: Mention this.
13222         * lisp/cedet/mode-local.el (overload-docstring-extension)
13223         (mode-local-print-binding, mode-local-describe-bindings-2):
13224         * lisp/cus-theme.el (describe-theme-1):
13225         * lisp/descr-text.el (describe-text-properties-1, describe-char):
13226         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
13227         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
13228         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
13229         (eieio-help-constructor):
13230         * lisp/emacs-lisp/package.el (describe-package-1):
13231         * lisp/faces.el (describe-face):
13232         * lisp/help-fns.el (help-fns--key-bindings)
13233         (help-fns--compiler-macro, help-fns--parent-mode, help-fns--obsolete):
13234         (help-fns--interactive-only, describe-function-1):
13235         (describe-variable):
13236         * lisp/help.el (describe-mode):
13237         * lisp/international/mule-cmds.el (describe-input-method)
13238         (describe-language-environment):
13239         * lisp/international/mule-diag.el (describe-character-set)
13240         (print-coding-system-briefly, list-input-methods)
13241         (list-input-methods-1):
13242         Insert curved quotes rather than grave accent and apostrophe.
13243         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
13244         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
13245         (checkdoc-proper-noun-region-engine):
13246         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2)
13247         (lisp-cl-font-lock-keywords-2):
13248         * lisp/finder.el (finder-font-lock-keywords):
13249         * lisp/gnus/gnus-art.el (gnus-button-alist):
13250         * lisp/help-fns.el (help-do-arg-highlight)
13251         (describe-function-1, describe-variable):
13252         * lisp/help-mode.el (help-xref-symbol-regexp)
13253         (help-xref-info-regexp, help-xref-url-regexp):
13254         * lisp/help.el (describe-mode):
13255         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
13256         * lisp/wid-edit.el (widget-documentation-link-regexp):
13257         Parse symbols quoted ‘like-this’ as well as `like-this'.
13258         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
13259         Add "‘" and "’" to electric-pair-text-pairs.
13260         (elisp--form-quoted-p): Also allow "‘" as a quoting char.
13261         (elisp-completion-at-point, elisp--preceding-sexp):
13262         Also treat "‘" and "’" as quoting chars.
13264         substitute-command-keys now curves quotes
13265         So, for example, it turns "`abc'" into "‘abc’" (Bug#20385).
13266         * doc/lispref/help.texi (Keys in Documentation):
13267         * etc/NEWS: Document this.
13268         * src/doc.c (Fsubstitute_command_keys): Implement it.
13270 2015-05-28  Glenn Morris  <rgm@gnu.org>
13272         * lisp/mail/rmailsum.el (rmail-summary-by-recipients)
13273         (rmail-summary-by-topic, rmail-summary-by-senders):
13274         No longer strip leading/trailing whitespace.
13276         * lisp/progmodes/f90.el (f90-type-def-re): Add "type, extends".
13277         (f90-no-block-limit): Add "enum".  (Bug#20680)
13278         * test/automated/f90.el (f90-test-bug20680, f90-test-bug20680b):
13279         New tests.
13281 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
13283         * lisp/isearch.el (isearch--current-buffer): Give a default value.
13284         Un-revert changes mistakenly dropped by f9fabb2b.
13286 2015-05-27  Paul Eggert  <eggert@cs.ucla.edu>
13288         Merge from gnulib
13289         This incorporates:
13290         2015-05-27 qacl: Reimplement qset_acl and qcopy_acl (Bug#20666)
13291         2015-05-27 file-has-acl: Split feature tests again (Bug#20667)
13292         2015-05-27 string: fix build failure on BSD/OSX with FORTIFY_SOURCE
13293         2015-05-26 stdio: limit __gnu_printf__ witness to gcc 4.4+
13294         2015-05-26 inttypes: force correct mingw PRIdMAX even without <stdio.h>
13295         2015-05-26 stdio: fix probe on mingw under gcc 5.1
13296         * admin/merge-gnulib (GNULIB_MODULES):
13297         Replace qacl with qcopy-acl, since we don't need the rest of qacl.
13298         * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
13299         * lib/inttypes.in.h, lib/qcopy-acl.c, lib/qset-acl.c:
13300         * lib/string.in.h, m4/acl.m4, m4/stdio_h.m4:
13301         Get latest versions from gnulib.
13302         * lib/get-permissions.c, lib/set-permissions.c: New files.
13303         * lib/gnulib.mk, m4/gnulib-comp.m4:
13304         Regenerate.
13305         * nt/gnulib.mk: Merge lib/gnulib.mk changes by hand.
13307 2015-05-27  Dmitry Gutov  <dgutov@yandex.ru>
13309         * lisp/vc/vc-dispatcher.el (vc-setup-buffer): Delete the old
13310         process here.
13311         (vc-do-command): Rather than here (bug#20608).
13313 2015-05-27  Ivan Shmakov  <ivan@siamics.net>
13315         Avoid gratuitous delete-dups in face-at-point
13316         * lisp/faces.el (face-at-point): Do not compute the properly
13317         ordered, duplicate-free list if only a single value is
13318         requested anyway.  (Bug#20519)
13320         Show the exact C-x 8 RET invocation in describe-char
13321         * lisp/descr-text.el (describe-char): Show the exact C-x 8 RET
13322         invocation instead of a template.  (Bug#20522)
13324 2015-05-27  Artur Malabarba  <bruce.connor.am@gmail.com>
13326         * lisp/emacs-lisp/package.el: Don't erase tags on refresh.
13327         (package-menu--post-refresh): Call `tabulated-list-print' with the
13328         UPDATE argument.  This only affects the refresh action, the revert
13329         action still erases tags.
13330         (package-menu-get-status): Change `assq' to `assoc'.
13331         (package-menu--mark-upgrades-1): New function.
13332         (package-menu--mark-upgrades-pending): New variable.
13333         (package-menu-mark-upgrades): Use them to delay marking until
13334         after refresh is done.
13335         (package-menu--post-refresh): Call mark-upgrades-1 if
13336         mark-upgrades-pending is non-nil.
13338 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
13340         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
13341         Fix typo in "Improve tramp-handle-make-auto-save-file-name"
13342         (commit 3953c4be2816537be95520605d45b866dc731f4b).
13344 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
13346         * lisp/isearch.el (isearch--current-buffer): New var.
13347         (isearch-update): Set cursor-sensor-inhibit here.
13348         (isearch-done): Unset cursor-sensor-inhibit in the right buffer
13349         (bug#20532).
13351         Change inhibit-point-motion-hooks to t
13352         * src/textprop.c (syms_of_textprop): Default Vinhibit_point_motion_hooks
13353         to t and document it as obsolete.
13355 2015-05-27  Eli Zaretskii  <eliz@gnu.org>
13357         Support ZIP files that use Zip64 extensions
13358         * lisp/arc-mode.el (archive-zip-summarize): Handle the new ZIP
13359         format of central directory offsets used by Zip64 extensions.
13360         (Bug#20665)
13362 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
13364         New test tramp-test30-make-auto-save-file-name
13365         * test/automated/tramp-tests.el
13366         (tramp-test30-make-auto-save-file-name): New test.
13367         (tramp-test31-special-characters)
13368         (tramp-test31-special-characters-with-stat)
13369         (tramp-test31-special-characters-with-perl)
13370         (tramp-test31-special-characters-with-ls, tramp-test32-utf8)
13371         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
13372         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
13373         (tramp-test34-recursive-load, tramp-test35-unload): Rename.
13375         Improve tramp-handle-make-auto-save-file-name
13376         * lisp/net/tramp.el (tramp-auto-save-directory): Add :tags.
13377         (tramp-handle-make-auto-save-file-name): Let native
13378         `make-auto-save-file-name' use `auto-save-file-name-transforms',
13379         if `tramp-auto-save-directory' is not set.
13381 2015-05-27  Glenn Morris  <rgm@gnu.org>
13383         No longer set dired-directory in eshell.  (Bug#16477)
13384         * lisp/eshell/esh-mode.el (eshell-mode):
13385         * lisp/eshell/em-dirs.el (eshell/cd): No longer set dired-directory.
13387         * lisp/mail/sendmail.el (mail-position-on-field): Doc fix.
13389         Make c-submit-bug-report file reports at debbugs.gnu.org.  (Bug#15784)
13390         * lisp/progmodes/cc-mode.el (c-mode-help-address):
13391         Change to submit@debbugs.
13392         (c-mode-bug-package): New constant.
13393         (mail-position-on-field): Declare.
13394         (c-submit-bug-report): Insert X-Debbugs-Package header.
13395         * doc/misc/cc-mode.texi (Mailing Lists and Bug Reports):
13396         Mention debbugs.gnu.org.
13398 2015-05-26  Glenn Morris  <rgm@gnu.org>
13400         * lisp/mail/rmailsum.el: Commas no longer separate regexps.  (Bug#19026)
13401         (rmail-summary-by-recipients, rmail-summary-by-topic)
13402         (rmail-summary-by-senders): No longer use mail-comma-list-regexp.
13403         * doc/emacs/rmail.texi (Rmail Make Summary): Update for this change.
13405 2015-05-26  Paul Eggert  <eggert@cs.ucla.edu>
13407         Handle curved quotes in info files
13408         * lisp/calc/calc-help.el (calc-describe-thing):
13409         * lisp/info.el (Info-find-index-name)
13410         (Info-try-follow-nearest-node, Info-fontify-node):
13411         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
13412         In info files, process quotes ‘like this’ the same way we process
13413         quotes `like this'.  This catches a few places we missed earlier.
13415 2015-05-26  Dmitry Gutov  <dgutov@yandex.ru>
13417         xref-prompt-for-identifier: Use a list value
13418         * lisp/progmodes/xref.el (xref-prompt-for-identifier): Allow list
13419         value, to be interpreted as a list of commands.
13420         (xref--prompt-p): New function.
13421         (xref--read-identifier): Use it.
13423 2015-05-26  Eli Zaretskii  <eliz@gnu.org>
13425         Teach MS-Windows font back-end return per-glyph ascent/descent
13426         * src/w32font.h (struct w32_metric_cache): Add ascent and descent
13427         values.
13428         * src/w32font.c (w32font_text_extents): Compute, cache, and
13429         accumulate per-glyph ascent and descent values, instead of copying
13430         global values from the font.  If the values are not available from
13431         the font data, i.e., non-TTF fonts, fall back on font-global values.
13432         (compute_metrics): Compute and return per-glyph ascent and descent
13433         values, if returned by GetGlyphOutlineW, falling back on
13434         font-global values.  (Bug#20628)
13435         * src/w32term.c (w32_draw_rectangle): Add 1 pixel to width and
13436         height of rectangle to be drawn, to be compatible with
13437         XDrawRectangle.  Fixes glyphless-char display as hex codes in a
13438         box, when per-glyph ascent/descent values are used.
13440 2015-05-26  Artur Malabarba  <bruce.connor.am@gmail.com>
13442         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
13443         Don't sort if sorter is nil.
13445 2015-05-26  Michael Albinus  <michael.albinus@gmx.de>
13447         Fix Bug#20621
13448         * lisp/net/tramp-sh.el (tramp-set-auto-save): Remove it.  There
13449         are major modes which set `auto-save-mode' on their own rules;
13450         Tramp shall not overwrite such settings.
13452 2015-05-26  Glenn Morris  <rgm@gnu.org>
13454         * lisp/desktop.el: If modes aren't autoloaded, try simple guesswork.
13455         (desktop-load-file): Guess that "foobar" defines "foobar-mode".
13456         (desktop-buffer-mode-handlers, desktop-minor-mode-handlers):
13457         Doc updates.
13458         (vc-dir-mode): Remove unnecessary autoload.
13460 2015-05-25  Philipp Stephani  <phst@google.com>
13462         * lisp/term/xterm.el: Add gui-get-selection support via OSC-52.
13463         (xterm--extra-capabilities-type): Add `getSelection'.
13464         (xterm--query): Add `no-async' argument.
13465         (xterm--init-activate-get-selection): New function.
13466         (terminal-init-xterm): Use it.
13467         (xterm--init-modify-other-keys): Rename from
13468         terminal-init-xterm-modify-other-keys.
13469         (xterm--init-bracketed-paste-mode): Rename from
13470         terminal-init-xterm-bracketed-paste-mode.
13471         (xterm--init-activate-set-selection): Rename from
13472         terminal-init-xterm-activate-set-selection.
13473         (xterm--selection-char): New function.
13474         (gui-backend-set-selection): Use it.  Use the &context to only apply
13475         this method in terminals where we enabled the feature.
13476         (gui-backend-get-selection): New method.
13478 2015-05-25  Daniel Colascione  <dancol@dancol.org>
13480         * lisp/progmodes/cc-langs.el (c-constant-kwds): Add C-language
13481         keyword constants to C++.
13483 2015-05-25  Paul Eggert  <eggert@cs.ucla.edu>
13485         Make TAGS files more portable to MS-Windows
13486         * etc/NEWS: Document this.
13487         * lib-src/etags.c (readline_internal) [DOS_NT]:
13488         Don't treat CRs differently from GNUish hosts.
13489         * lisp/progmodes/etags.el (etags-goto-tag-location):
13490         Adjust STARTPOS to account for the skipped CRs in dos-style files.
13492 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
13494         Improve fix of bug#20634 in tramp-sh.el
13496 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
13498         Fix a typo in last commit
13499         * lib-src/etags.c (C_entries): Fix a typo.
13500         * test/etags/ETAGS.good_1:
13501         * test/etags/ETAGS.good_2:
13502         * test/etags/ETAGS.good_3:
13503         * test/etags/ETAGS.good_4:
13504         * test/etags/ETAGS.good_5:
13505         * test/etags/CTAGS.good: Update due to the change in etags.c.
13507         Fix tagging of class members in C-like OO languages
13508         * lib-src/etags.c (longopts): Add new option --class-qualify and
13509         its shorthand -Q.
13510         (print_help): Add help text for --class-qualify.
13511         (main): Add handling of -Q.
13512         (consider_token, C_entries) <omethodparm>: Append argument types
13513         to Objective C methods only if --class-qualify was specified.
13514         Qualify C++, Objective C, and Java class members with their class
13515         names only if --class-qualify was specified.
13516         (C_entries): If --class-qualify was not specified, remove the
13517         namespace and class qualifiers from tag names of C++ methods.
13518         This allows to use etags.el as xref back-end without the
13519         tag-symbol-match-p method, which greatly increases the number of
13520         potentially false positives.  (Bug#20629)
13521         * doc/man/etags.1: Update to document the new --class-qualify
13522         option.
13523         * test/etags/ETAGS.good_1:
13524         * test/etags/ETAGS.good_2:
13525         * test/etags/ETAGS.good_3:
13526         * test/etags/ETAGS.good_4:
13527         * test/etags/ETAGS.good_5:
13528         * test/etags/CTAGS.good: Update due to changes in etags.c.
13530 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
13532         (cl-generic-define-method): Side effects are evil (bug#20644)
13533         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method): Don't reuse
13534         cons-cells that might be used as keys in an `equal' hash-table.
13536 2015-05-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
13538         Make erc timestamps visible again
13539         * lisp/erc/erc-stamp.el (erc-munge-invisibility-spec):
13540         Make timestamps visible again (if requested).
13542 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
13544         Fix last change in etags.c that broke tagging compresed files
13545         * lib-src/etags.c (process_file_name) [MSDOS || DOS_NT]: Fix
13546         quoting of decompression shell command for MS-Windows/MS-DOS.
13548 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
13550         * lisp/emacs-lisp/cl-macs.el (cl-tagbody): Scope cl--tagbody-alist.
13551         (Bug#20639)
13553 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
13555         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer):
13556         Fix typo in "Inhibit `epa-file-handler' in Tramp"
13557         (commit 89035e247591c8d688fce922b7079881aa110f33).
13559 2015-05-25  Orivej Desh  <orivej@gmx.fr>  (tiny change)
13561         Fix IPv6 addresses in Tramp
13562         * lisp/net/tramp-sh.el (tramp-make-copy-program-file-name):
13563         Add square brackets around host name.
13565 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
13567         Inhibit `epa-file-handler' in Tramp (Bug#20634)
13568         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer)
13569         (tramp-sh-handle-insert-file-contents-literally): Inhibit also
13570         `epa-file-handler'.
13572 2015-05-24  Stefan Monnier  <monnier@iro.umontreal.ca>
13574         * lisp/emacs-lisp/pcase.el: Use PAT rather than UPAT in docstring.
13575         (pcase-let): Document the behavior in case the pattern doesn't match.
13577 2015-05-24  Artur Malabarba  <bruce.connor.am@gmail.com>
13579         * lisp/emacs-lisp/tabulated-list.el: New optional print method.
13580         (tabulated-list-print): New optional argument, UPDATE.  If
13581         non-nil, the list is printed by only adding and deleting the
13582         changed entries, instead of erasing the whole buffer.  This method
13583         is much faster when few or no entries have changed.
13584         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
13585         * etc/NEWS: Document it.
13587         * lisp/emacs-lisp/tabulated-list.el: Improve printing.
13588         (tabulated-list--get-sorter): New function.
13589         (tabulated-list-print): Restore window-line when remember-pos is
13590         passed and optimize away the `nreverse'.
13592 2015-05-24  Paul Eggert  <eggert@cs.ucla.edu>
13594         Simpilify etags TEX mode scanning
13595         * lib-src/etags.c (TEX_mode, TEX_esc, TEX_opgrp, TEX_clgrp):
13596         Remove static vars.
13597         (TeX_commands): Deduce escapes here instead.
13598         (TEX_LESC, TEX_SESC, TEX_mode): Remove; all uses removed.
13599         This removes the need for a reset_input call.
13601         Improve etags I/O error reporting
13602         * lib-src/etags.c:
13603         Don't include sys/types.h and sys/stat.h; no longer needed.
13604         (infilename): New static var.
13605         (process_file_name): Don't call 'stat'.  Instead, just open the
13606         file for reading and report any errors.  Don't bother making
13607         a copy of the file argument; it's not needed.  Be more careful to
13608         use the failing errno when reporting an error.
13609         Quote the real name better (though no perfectly)
13610         when passing it to the shell.
13611         (reset_input): New function, which reports I/O errors.
13612         All uses of 'rewind' changed to use this function.
13613         (perhaps_more_input): New function, which also checks for
13614         I/O errors.  All uses of 'feof' changed to use this function.
13615         (analyze_regex): Report an error if fclose fails.
13616         (readline_internal): Report an error if getc fails.
13617         (etags_mktmp): Return an error if close fails.
13619         etags.c: avoid side effects in 'if'
13620         * lib-src/etags.c (process_file_name, Perl_functions)
13621         (TEX_decode_env): Hoist side effects into previous statement.
13623         .gitignore tweaks
13624         * .gitignore: Ignore all *.stamp files.  Sort.
13625         Ignore [0-9]*.txt (commonly used name for git patches)
13626         and /vc-dwim-log-* (vc-dwim temporary).
13628 2015-05-24  Eli Zaretskii  <eliz@gnu.org>
13630         Fix last change in etags.c, which failed the test suite
13631         * lib-src/etags.c (intoken): Add '$' to the set, as it was there
13632         before the last change.
13634 2015-05-23  Glenn Morris  <rgm@gnu.org>
13636         Remove charset map files from repository, generate in first bootstrap
13637         * admin/charsets/Makefile.in (${srcdir}/charsets.stamp): New.
13638         (all): Create the stamp file.
13639         (extraclean): Delete the stamp file.
13640         * src/Makefile.in (lispintdir, charsets): New variables.
13641         (${lispintdir}/cp51932.el, ${lispintdir}/eucjp-ms.el, ${charsets}):
13642         New rules.
13643         (emacs$(EXEEXT), temacs$(EXEEXT)): Depend on $charsets.
13644         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
13645         * etc/charsets/*.map: Remove from repository.
13647 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
13649         Cleanup etags.c to use locale-independent code
13650         Although this doesn't alter behavior (as etags doesn't use
13651         setlocale), the new version is more clearly locale-independent and
13652         the executable is a bit smaller on my platform.
13653         * lib-src/etags.c: Include <limits.h>, for UCHAR_MAX.
13654         Include <c-ctype.h> instead of <ctype.h>.
13655         (CHARS, CHAR, init, _wht, _nin, _itk, _btk, _etk, white, nonam, endtk)
13656         (begtk, midtk):
13657         Remove; no longer needed.
13658         (iswhite, ISALNUM, ISALPHA, ISDIGIT, ISLOWER, lowcase): Remove.
13659         All callers changed to use c_isspace, c_isalnum, c_isalpha, c_isdigit,
13660         c_islower, c_tolower, respectively.
13661         (notinname, begtoken, intoken, endtoken): Rewrite as functions
13662         instead of macros, and initialize the tables at compile-time
13663         rather than at run-time.
13665         Put default action first in src/Makefile
13666         * src/Makefile.in (all): Put this rule before lisp.mk.
13667         That way, plain 'make' works in the src directory again.
13669 2015-05-23  Glenn Morris  <rgm@gnu.org>
13671         * Makefile.in: Fix extraclean rule.
13672         (extraclean_dirs): New.
13673         (extraclean): Use it.
13675 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
13677         Avoid compiler warning in image.c on MS-Windows
13678         * src/w32term.h (x_query_color): Add prototype, to avoid compiler
13679         warning in image.c.
13681 2015-05-23  Glenn Morris  <rgm@gnu.org>
13683         Fix --without-toolkit-scroll-bars builds.
13684         * src/xterm.c (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]:
13685         Add new argument to x_clear_area1.
13686         (XTset_horizontal_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
13687         Update x_clear_area arguments.
13689         * admin/charsets/glibc/: New directory, imported from glibc 2.21.
13690         * admin/charsets/Makefile.in (GLIBC_CHARMAPS):
13691         Change to included version.
13692         (LOCAL, local, totalclean): Remove.
13693         (extraclean): Delete all generated files.
13695 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
13697         * lisp/pcmpl-cvs.el (pcmpl-cvs-entries): Don't assume
13698         CVS/Entries exists.
13700         * lisp/progmodes/xref.el (xref-find-apropos): Use read-string.
13702         * lisp/progmodes/etags.el (tags-completion-at-point-function):
13703         Don't trust the find-tag function.
13705 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
13707         Pacify --enable-gcc-warnings
13708         * src/frame.h (x_query_color): Remove redundant extern decl.
13709         * src/ftcrfont.c (ftcrfont_glyph_extents, ftcrfont_list)
13710         (ftcrfont_match, ftcrfont_open, ftcrfont_close)
13711         (ftcrfont_text_extents, ftcrfont_draw):
13712         * src/xterm.c (x_set_window_size_1, *x_color_cells, x_update_end)
13713         (XTframe_up_to_date, x_clear_area1, x_clear_frame)
13714         (x_ins_del_lines, frame_highlight, frame_unhighlight)
13715         (x_new_focus_frame, x_focus_changed, XTframe_rehighlight)
13716         (x_draw_hollow_cursor, x_draw_bar_cursor, x_flush, x_update_begin)
13717         (x_update_window_begin, x_connection_closed)
13718         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
13719         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
13720         (*x_gc_get_ext_data, x_extension_initialize)
13721         (x_cr_accumulate_data):
13722         Remove redundant static decl.  Many of these GCC doesn't complain
13723         about, but we might as well clean out the duplication while we're
13724         in the neighborhood.
13725         * src/xterm.c (x_fill_trapezoid_for_relief):
13726         Remove decl of nonexistent function.
13728 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
13730         Replace gui-method macros with cl-generic with &context
13731         * lisp/frame.el (gui-method--name, gui-method, gui-method-define)
13732         (gui-method-declare, gui-call): Remove.
13733         (frame-creation-function): Use cl-defgeneric.
13734         (make-frame): Adjust callers.
13735         * lisp/menu-bar.el (menu-bar-edit-menu):
13736         Use gui-backend-selection-exists-p.
13737         * lisp/select.el (x-get-clipboard): Use gui-backend-get-selection.
13738         (gui-backend-get-selection): New cl-generic to replace
13739         gui-get-selection method.
13740         (gui-backend-set-selection): New cl-generic to replace
13741         gui-set-selection method.
13742         (gui-selection-owner-p): New cl-generic to replace
13743         gui-selection-owner-p method.
13744         (gui-backend-selection-exists-p): New cl-generic to replace
13745         gui-selection-exists-p method.  Adjust all callers.
13746         * lisp/server.el (server-create-window-system-frame): Don't ignore
13747         window-system spec even when unsupported.
13748         * lisp/simple.el (deactivate-mark): Use new gui-backend-* functions.
13749         * lisp/startup.el (handle-args-function, window-system-initialization):
13750         Use cl-defgeneric.
13751         (command-line): Adjust calls accordingly.
13752         * lisp/term/ns-win.el (ns-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/pc-win.el (w16-get-selection-value): Turn into
13758         a gui-backend-get-selection method.
13759         (gui-selection-exists-p, gui-selection-owner-p, gui-set-selection):
13760         Use cl-defmethod on the new functions instead.
13761         (msdos-window-system-initialization): Turn into
13762         a window-system-initialization method.
13763         (frame-creation-function, handle-args-function): Use cl-defmethod.
13764         * lisp/term/w32-win.el (w32-window-system-initialization): Turn into
13765         a window-system-initialization method.
13766         (handle-args-function, frame-creation-function): Use cl-defmethod.
13767         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
13768         (gui-get-selection): Use cl-defmethod on the new functions instead.
13769         * lisp/term/x-win.el (x-window-system-initialization): Turn into
13770         a window-system-initialization method.
13771         (handle-args-function, frame-creation-function): Use cl-defmethod.
13772         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
13773         (gui-get-selection): Use cl-defmethod on the new functions instead.
13774         * lisp/term/xterm.el (xterm--set-selection): Turn into
13775         a gui-backend-set-selection method.
13776         * src/nsselect.m (Fns_selection_exists_p): Remove unused arg `terminal'.
13777         (Fns_selection_owner_p): Remove unused arg `terminal'.
13778         (Fns_get_selection): Remove unused args `time_stamp' and `terminal'.
13780 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
13782         Revert "Fix etags Bug#20629 that broke C++ support"
13783         This reverts commit 13dd9d4f7e75d2c78aa5537cef09de03663e9748.
13785 2015-05-23  Jan D  <jan.h.d@swipnet.se>
13787         Fix etags Bug#20629 that broke C++ support
13788         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
13789         Revert commit from Sun May 10 (Bug#20629).
13791         Merge branch 'cairo'.
13792         Main work done by YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>.
13793         Small fixes and image work by Jan D. <jan.h.d@swipnet.se>.
13795         Merge branch 'master' into cairo
13797         Fixes to compile cairo branch without cairo
13798         * src/gtkutil.c (xg_update_scrollbar_pos): x_clear_area takes frame as
13799         first argument.
13800         * src/xterm.c (handle_one_xevent): Surround x_cr_destroy_surface with
13801         USE_CAIRO.
13803 2015-05-23  Artur Malabarba  <bruce.connor.am@gmail.com>
13805         * lisp/emacs-lisp/package.el: Always update selected-packages.
13806         (package--update-selected-packages): New function.
13807         (package-menu-execute): Use it before starting the transaction,
13808         this way the list of selected packages is updated even when the
13809         transaction fails.
13810         (package-menu--perform-transaction): Don't edit selected-packages.
13812 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
13814         Fix etags reading of compressed files
13815         * lib-src/etags.c (O_CLOEXEC) [WINDOWSNT]: Define.
13816         Include fcntl.h, for O_CLOEXEC.
13817         (process_file_name): Don't use 'popen', whose streams cannot be
13818         rewound.  Instead, uncompress the file to a temporary file,
13819         created by 'etags_mktmp', and read from that as usual.
13820         (etags_mktmp): New function.
13821         * test/etags/ETAGS.good_1:
13822         * test/etags/ETAGS.good_2:
13823         * test/etags/ETAGS.good_3:
13824         * test/etags/ETAGS.good_4:
13825         * test/etags/ETAGS.good_5: Update to be consistent with latest
13826         changes in etags.c regarding reading compressed files.
13828         Improve documentation of 'set-fontset-font'
13829         * doc/lispref/display.texi (Fontsets): Document the value of nil
13830         for the 3rd argument of 'set-fontset-font'.
13832         Fix documentation of forward-line
13833         * src/cmds.c (Fforward_line): Clarify the return value if the line
13834         at end of accessible portion of the buffer has no newline.
13835         * doc/lispref/positions.texi (Text Lines): Document what happens
13836         if the line at end of accessible portion of buffer has no newline.
13837         (Bug#20587)
13839 2015-05-22  Glenn Morris  <rgm@gnu.org>
13841         * admin/charsets/Makefile.in (TRANS_TABLE): Add short aliases.
13843         * admin/charsets/mapconv (LC_ALL): Set to C.
13845         * Makefile.in: Add admin/charsets into top-level clean rules.
13846         (clean): Add admin/charsets.
13847         (maybeclean_dirs): New variable.
13848         (distclean, bootstrap-clean, maintainer-clean): Use $maybeclean_dirs.
13850         * admin/charsets/Makefile.in (LOCAL, local): Fix members.
13852 2015-05-22  Artur Malabarba  <bruce.connor.am@gmail.com>
13854         * lisp/emacs-lisp/package.el (package-selected-packages): Fix doc.
13856 2015-05-22  Glenn Morris  <rgm@gnu.org>
13858         Generate admin/charsets Makefile via configure, and make more portable
13859         * configure.ac (SUBDIR_MAKEFILES): Add admin/charsets/Makefile.
13860         (admin/charsets/Makefile): Generate it.
13861         * admin/charsets/Makefile.in: Rename from Makefile.
13862         (AWK, srcdir, top_srcdir, AM_DEFAULT_VERBOSITY):
13863         New variables, set by configure.
13864         (charsetdir, lispintdir, mapfiledir, AM_V_GEN, am__v_GEN_)
13865         (am__v_GEN_0, am__v_GEN_1, AM_V_at, am__v_at_, am__v_at_0)
13866         (am__v_at_1, LOCAL, mapconv, run_mapconv, big5, compact, cp51932)
13867         (cp932, eucjp_ms, gb180302, gb180304, kuten): New variables.
13868         (TRANS_TABLE, CHARSETS): Add directory prefix to value.
13869         (all): Declare PHONY.
13870         (local): New PHONY target.
13871         (map_template): New template.  Use to define short PHONY aliases.
13872         (*.map): Add directory prefixes to targets and prerequisites.
13873         Respect make verbosity.
13874         (JISC6226.map): Replace non-portable sed append without newline.
13875         (install): Remove rule.
13876         (clean): Only delete temporary sedscript.
13877         (bootstrap-clean, distclean, maintainer-clean, extraclean)
13878         (totalclean): New PHONY rules.
13879         * admin/charsets/mapconv (BASE): Replace basename with expr.
13880         (FILE): Add "mapfiles" subdirectory.
13881         (AWK): New variable.  Use throughout in place of "awk".
13882         (main): Use "gunzip -c" in place of "zcat".
13883         Don't leave whitespace before "p", for older sed.
13884         * admin/charsets/mapfiles/PTCP154: Add final newline,
13885         to make older sed versions happy.
13887 2015-05-22  Stefan Monnier  <monnier@iro.umontreal.ca>
13889         * lisp/autorevert.el: Use lexical-binding.  Fix hook usage.
13890         (global-auto-revert-ignore-buffer, auto-revert-notify-modified-p)
13891         (auto-revert-notify-watch-descriptor): Use defvar-local.
13892         (find-file-hook, auto-revert-tail-mode)
13893         (auto-revert-notify-add-watch): Use setq-local.
13894         (auto-revert-notify-add-watch): Don't call make-local-variable on
13895         kill-buffer-hook (bug#20601).
13897 2015-05-21  Stefan Monnier  <monnier@iro.umontreal.ca>
13899         Change defgeneric so it doesn't completely redefine the function
13900         * lisp/emacs-lisp/cl-generic.el (cl-generic-define): Don't throw away
13901         previously defined methods.
13902         (cl-generic-define-method): Let-bind purify-flag instead of
13903         using `fset'.
13904         (cl--generic-prefill-dispatchers): Only define during compilation.
13905         (cl-method-qualifiers): Remove redundant alias.
13906         (help-fns-short-filename): Silence byte-compiler.
13907         * test/automated/cl-generic-tests.el:
13908         Adjust to new defgeneric semantics.
13910 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
13912         * lisp/emacs-lisp/package.el (package-menu-execute):
13913         Remove reference to remove-dups.
13915 2015-05-21  kwhite  <kwhite@gnu.org>
13917         * lisp/erc/erc.el: Hide network/channel messages.
13918         (erc-network-hide-list, etc-channel-hide-list): New lists to define
13919         message types per network/channel.
13920         (erc-add-targets): New function to parse list of targets.
13921         (erc-hide-current-message-p): Modified to check for new targets.
13923 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
13925         Don't quote nil and t in doc strings
13926         This is as per "Tips for Documentation Strings" in the elisp manual.
13927         For consistency, do the same in diagnostics and comments.
13929 2015-05-21  Eli Zaretskii  <eliz@gnu.org>
13931         Fix a minor problem with mouse-face on mode line
13932         * src/xdisp.c (note_mode_line_or_margin_highlight): Reset the
13933         mouse face also if the mouse pointer hovers above mode-line glyphs
13934         that don't come from any Lisp string.  (Bug#20620)
13936 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
13938         * lisp/emacs-lisp/package.el: Fix selected-package logic.
13939         (package-menu-execute): Mark as selected all non-upgrade packages
13940         being installed.
13941         (package-menu--perform-transaction): Don't mark anything.
13943         * lisp/emacs-lisp/package.el: Mode-line progress report.
13944         (package-menu--transaction-status): New variable.
13945         (package-menu-mode, package-menu--perform-transaction): Use it.
13947         * lisp/emacs-lisp/package.el: Better transaction messages.
13948         (package-menu--partition-transaction): New function.
13949         (package-menu--prompt-transaction-p, package-menu-execute):
13950         Use it.
13951         (package-menu--perform-transaction): Don't do any messaging.
13953         * lisp/emacs-lisp/package.el: Revert async package transactions.
13954         (package-menu-async): Update doc.
13955         (package-install-from-archive, package-download-transaction)
13956         (package-install, package-menu--perform-transaction)
13957         (package-menu-execute): Remove asynchronous functionality.
13959 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
13961         Revert doc string changes to f90.el
13962         Problem reported by Glenn Morris in:
13963         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00596.html
13964         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
13965         Revert recent changes to doc strings, as it's intended that they
13966         use grave accent, not quote.
13968 2015-05-20  Bozhidar Batsov  <bozhidar@batsov.com>
13970         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p):
13971         Improve parameter name.
13973         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p): New inline function.
13975 2015-05-20  Paul Eggert  <eggert@cs.ucla.edu>
13977         Don't require help-fns when not needed
13978         * lisp/emacs-lisp/autoload.el, lisp/emacs-lisp/advice.el:
13979         * lisp/emacs-lisp/elint.el:
13980         Don't require help-fns at the top level
13981         * lisp/emacs-lisp/advice.el (ad-arglist):
13982         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
13983         Don't require help-fns.  (Bug#17001)
13985 2015-05-20  Eli Zaretskii  <eliz@gnu.org>
13987         Fix slash collapsing in etags on MS-Windows
13988         * lib-src/etags.c (canonicalize_filename) [DOS_NT]: Separate the
13989         MS-Windows code from the Posix code, and support collapsing both
13990         forward- and back-slashes on MS-Windows.  Fixes a regression found
13991         by the test suite.
13993         Improve documentation of glyphless-char-display
13994         * doc/lispref/display.texi (Glyphless Chars): Improve
13995         documentation of glyphless character display.
13997         Fix "acronym" display of glyphless characters on w32
13998         * src/w32term.c (x_draw_glyphless_glyph_string_foreground): Don't
13999         ignore "acronym" substitutes of 1 character for glyphless characters.
14001 2015-05-20  Oleh Krehel  <ohwoeowho@gmail.com>
14003         Add an automated test for let-when-compile
14004         * test/automated/subr-tests.el (let-when-compile): New test.
14006         Add let-when-compile macro instead of using pcase-let
14007         * lisp/subr.el (let-when-compile): New let-like macro that makes its
14008         bindings known to macros like `eval-when-compile' in the body.
14009         * lisp/emacs-lisp/lisp-mode.el: Change the top-level `pcase-let' to
14010         a `let-when-compile'.  Also comment out the unused lexical var
14011         `el-kws-re'.
14012         The change greatly improves readability, while providing almost the
14013         same (even shorter) byte code: instead of pre-evaluating 10 variables,
14014         tossing them into a list, and destructuring that list a full screen
14015         page later, the variables are simply bound as they are evaluated,
14016         wrapped individually in `eval-when-compile'.
14018 2015-05-20  Artur Malabarba  <bruce.connor.am@gmail.com>
14020         * lisp/emacs-lisp/package.el: "Delete" button in Help buffer.
14021         (package-delete-button-action): New function.
14022         (describe-package-1): Add Delete button.
14024         * lisp/emacs-lisp/package.el: Better dependency description.
14025         (package--used-elsewhere-p): New optional arg, ALL, and return
14026         package-desc objects instead of names.
14027         (package-delete): Update accordingly.
14028         (describe-package-1): Describe which packages require the package.
14030 2015-05-20  Martin Rudalics  <rudalics@gmx.at>
14032         Fix handling and doc-string of FRAME arg of `other-buffer' (Bug#20533)
14033         * src/buffer.c (Fother_buffer): Argument FRAME must denote a live frame.
14034         Fix doc-string.
14036         Improve `switch-to-buffer' in strongly dedicated windows (Bug#20472)
14037         * lisp/window.el (switch-to-buffer-in-dedicated-window): New option.
14038         (switch-to-buffer): If the selected window is strongly dedicated
14039         to its buffer, signal error before prompting for buffer name.
14040         Handle `switch-to-buffer-in-dedicated-window'.
14041         * doc/lispref/windows.texi (Switching Buffers):
14042         Document `switch-to-buffer-in-dedicated-window'.
14044 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
14046         Prefer "this" to “this” in doc strings
14047         This mostly just straightens quotes introduced in my previous patch.
14048         Suggested by Dmitry Gutov in:
14049         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00565.html
14050         * lisp/faces.el, lisp/gnus/gnus-group.el, lisp/ldefs-boot.el:
14051         * lisp/mail/supercite.el, lisp/net/tramp.el, lisp/recentf.el:
14052         * lisp/textmodes/artist.el, lisp/textmodes/rst.el:
14053         * lisp/textmodes/tildify.el, lisp/vc/ediff-util.el:
14054         * lisp/vc/log-edit.el, lisp/xt-mouse.el:
14055         Prefer straight double quotes to curved double quotes in doc strings.
14057         Fix minor quoting problems in doc strings
14058         These were glitches regardless of how or whether we tackle the
14059         problem of grave accent in doc strings.
14060         * lisp/calc/calc-aent.el (math-restore-placeholders):
14061         * lisp/ido.el (ido-ignore-buffers, ido-ignore-files):
14062         * lisp/leim/quail/cyrillic.el ("bulgarian-alt-phonetic"):
14063         * lisp/leim/quail/hebrew.el ("hebrew-new")
14064         ("hebrew-biblical-sil"):
14065         * lisp/leim/quail/thai.el ("thai-kesmanee"):
14066         * lisp/progmodes/idlw-shell.el (idlwave-shell-file-name-chars):
14067         Used curved quotes to avoid ambiguities like ‘`''’ in doc strings.
14068         * lisp/calendar/calendar.el (calendar-month-abbrev-array):
14069         * lisp/cedet/semantic/mru-bookmark.el (semantic-mrub-cache-flush-fcn):
14070         * lisp/cedet/semantic/symref.el (semantic-symref-tool-baseclass):
14071         * lisp/cedet/semantic/tag.el (semantic-tag-copy)
14072         (semantic-tag-components):
14073         * lisp/cedet/srecode/cpp.el (srecode-semantic-handle-:cpp):
14074         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
14075         * lisp/emacs-lisp/byte-opt.el (byte-optimize-all-constp):
14076         * lisp/emacs-lisp/checkdoc.el (checkdoc-message-text-engine):
14077         * lisp/emacs-lisp/generator.el (iter-next):
14078         * lisp/gnus/gnus-art.el (gnus-treat-strip-list-identifiers)
14079         (gnus-article-mode-syntax-table):
14080         * lisp/net/rlogin.el (rlogin-directory-tracking-mode):
14081         * lisp/net/soap-client.el (soap-wsdl-get):
14082         * lisp/net/telnet.el (telnet-mode):
14083         * lisp/org/org-compat.el (org-number-sequence):
14084         * lisp/org/org.el (org-remove-highlights-with-change)
14085         (org-structure-template-alist):
14086         * lisp/org/ox-html.el (org-html-link-org-files-as-html):
14087         * lisp/play/handwrite.el (handwrite-10pt, handwrite-11pt)
14088         (handwrite-12pt, handwrite-13pt):
14089         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
14090         * lisp/progmodes/idlwave.el (idlwave-mode, idlwave-check-abbrev):
14091         * lisp/progmodes/verilog-mode.el (verilog-tool)
14092         (verilog-string-replace-matches, verilog-preprocess)
14093         (verilog-auto-insert-lisp, verilog-auto-insert-last):
14094         * lisp/textmodes/makeinfo.el (makeinfo-options):
14095         * src/font.c (Ffont_spec):
14096         Fix minor quoting problems in doc strings, e.g., missing quote,
14097         ``x'' where `x' was meant, etc.
14098         * lisp/erc/erc-backend.el (erc-process-sentinel-2):
14099         Fix minor quoting problem in other string.
14100         * lisp/leim/quail/ethiopic.el ("ethiopic"):
14101         * lisp/term/tvi970.el (tvi970-set-keypad-mode):
14102         Omit unnecessary quotes.
14103         * lisp/faces.el (set-face-attribute, set-face-underline)
14104         (set-face-inverse-video, x-create-frame-with-faces):
14105         * lisp/gnus/gnus-group.el (gnus-group-nnimap-edit-acl):
14106         * lisp/mail/supercite.el (sc-attribs-%@-addresses)
14107         (sc-attribs-!-addresses, sc-attribs-<>-addresses):
14108         * lisp/net/tramp.el (tramp-methods):
14109         * lisp/recentf.el (recentf-show-file-shortcuts-flag):
14110         * lisp/textmodes/artist.el (artist-ellipse-right-char)
14111         (artist-ellipse-left-char, artist-vaporize-fuzziness)
14112         (artist-spray-chars, artist-mode, artist-replace-string)
14113         (artist-put-pixel, artist-text-see-thru):
14114         * lisp/vc/ediff-util.el (ediff-submit-report):
14115         * lisp/vc/log-edit.el (log-edit-changelog-full-paragraphs):
14116         Use double-quotes rather than TeX markup in doc strings.
14117         * lisp/skeleton.el (skeleton-pair-insert-maybe):
14118         Reword to avoid the need for grave accent and apostrophe.
14119         * lisp/xt-mouse.el (xterm-mouse-tracking-enable-sequence):
14120         Don't use grave and acute accents to quote.
14122 2015-05-19  Stefan Monnier  <monnier@iro.umontreal.ca>
14124         * lisp/emacs-lisp/generator.el (cps--gensym, cps--transform-1):
14125         Silence compiler.
14127 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
14129         Try to port new etags tests to MS-Windows
14130         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
14131         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
14132         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
14133         Adjust to test-case changes below.
14134         * test/etags/Makefile (CSRC): Remove dostorture.c.
14135         Whatever it was trying to test, wasn't working portably.
14136         (LC_ALL): Remove.  Apparently there wasn't an encoding problem,
14137         just a line-ending problem.
14138         * test/etags/c-src/dostorture.c: Remove.
14139         * test/etags/cp-src/c.C: Remove stray CR.
14140         * test/etags/html-src/algrthms.html: Remove trailing CRs.
14141         State UTF-8 as the encoding.  The file is ASCII so it doesn't matter,
14142         but if someone edits it later it should stay UTF-8-compatible.
14144 2015-05-19  Eli Zaretskii  <eliz@gnu.org>
14146         Fix display of overlapping window-specific overlays
14147         * src/keyboard.c (adjust_point_for_property): When adjusting point
14148         due to display strings, ignore overlays that are specific to
14149         windows other than the currently selected one.
14150         * src/xdisp.c (handle_single_display_spec): If the display
14151         property comes from an overlay, arrange for buffer iteration to
14152         resume only after the end of that overlay.  (Bug#20607)
14154 2015-05-19  Dmitry Gutov  <dgutov@yandex.ru>
14156         New command icomplete-force-complete-and-exit
14157         * lisp/icomplete.el (icomplete-force-complete-and-exit):
14158         New command
14159         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00461.html)
14160         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00516.html).
14161         (icomplete-minibuffer-map): Bind C-j to it.
14162         (icomplete-forward-completions, icomplete-backward-completions):
14163         Mention the new command in the docstring.
14164         * lisp/minibuffer.el (minibuffer-force-complete-and-exit):
14165         Revert the previous fix for bug#17545.
14167 2015-05-19  Martin Rudalics  <rudalics@gmx.at>
14169         Fix last commit
14171         In Elisp manual explain how to override window manager positioning
14172         (Bug#20552)
14173         * doc/lispref/frames.texi (Position Parameters): Give example of
14174         how to override a window manager positioning decision.
14176         Clarify concept of "surrogate minibuffer frames" (Bug#20538)
14177         * src/frame.c (Fdelete_frame): In doc-string mention that frame
14178         can't be deleted if it has a surrogate minibuffer.
14179         * doc/lispref/frames.texi (Minibuffers and Frames)
14180         (Deleting Frames): Explain "surrogate minibuffer frames".
14182         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 19/12 MB.
14184 2015-05-18  Glenn Morris  <rgm@gnu.org>
14186         Add option to ignore commit lines matching a pattern in ChangeLog
14187         * build-aux/gitlog-to-changelog: Add --ignore-line option.
14188         * build-aux/gitlog-to-emacslog: Ignore lines matching '^; '.
14190 2015-05-18  Paul Eggert  <eggert@cs.ucla.edu>
14192         Don't skip new etags tests on non-UTF-8 hosts
14193         Problem reported by Eli Zaretskii for MS-Windows.
14194         * test/etags/Makefile (UTF8_LOCALE, UTF8_ENCODING): Remove.
14195         (LC_ALL): Set to C if the current locale isn't UTF-8.
14196         (.PHONY): Remove ediff_1 thru ediff_5.
14197         (check): Always run.
14199 2015-05-18  Glenn Morris  <rgm@gnu.org>
14201         * lisp/calculator.el (calculator-funcall):
14202         * lisp/textmodes/artist.el (artist-spray-random-points):
14203         Use standard degree/radian conversion utilities.
14205         Further lisp-complete-symbol related cleanup.
14206         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol):
14207         Unadvertise non-functional argument.  Replace obsolete alias.
14209 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
14211         Add a test case for Maven warning ouput
14212         * test/automated/compile-tests.el
14213         (compile-tests--test-regexps-data): Add a case for Maven warning
14214         ouput.
14215         (compile--test-error-line): Check the compilation message type, if
14216         it's specified in the test data.
14218 2015-05-18  Paul Pogonyshev  <pogonyshev@gmail.com>
14220         Update Maven compilation-mode entry to distinguish warnings
14221         * lisp/progmodes/compile.el
14222         (compilation-error-regexp-alist-alist): Update Maven entry to
14223         distinguish warnings (bug#20556).
14225 2015-05-18  Przemysław Wojnowski  <esperanto@cumego.com>
14227         * test/automated/sgml-mode-tests.el: New file.
14229 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
14231         Improve handling of the first Git revision
14232         * lisp/vc/log-view.el (log-view-toggle-entry-display): When
14233         there's no next entry, delete until the end of the buffer.
14234         (log-view-end-of-defun-1): Stop at eob.
14235         * lisp/vc/vc-annotate.el
14236         (vc-annotate-show-diff-revision-at-line-internal): Don't give up
14237         when previous-revision is nil.
14238         * lisp/vc/vc-git.el (vc-git-expanded-log-entry): End the arguments
14239         with `--' to avoid ambiguity.
14240         (vc-git-annotate-extract-revision-at-line): Exclude `^' from the
14241         returned revision string.
14242         (vc-git-annotate-time): Expect `^' before the first revision.
14243         * lisp/vc/vc-git.el (vc-git-diff): Diff against an empty tree if
14244         REV1 is nil, and REV2 is not.
14245         * lisp/vc/vc.el: Update the description of the `diff' function.
14247 2015-05-18  Oleh Krehel  <ohwoeowho@gmail.com>
14249         Allow checkdoc to be called in batch
14250         * lisp/emacs-lisp/checkdoc.el (checkdoc-error): When `noninteractive'
14251         is non-nil, echo the error with `warn'.
14252         How it can be used in -batch:
14253         (with-current-buffer (find-file "checkdoc.el")
14254           (checkdoc-current-buffer t))
14256 2015-05-18  Glenn Morris  <rgm@gnu.org>
14258         * lisp/calendar/solar.el (solar-ecliptic-coordinates): Use float-pi.
14260 2015-05-17  Paul Eggert  <eggert@cs.ucla.edu>
14262         * admin/notes/unicode: New section "binary files".
14264         Change new etags test to use UTF-8 encoding
14265         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
14266         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
14267         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
14268         * test/etags/html-src/index.shtml, test/etags/html-src/software.html:
14269         * test/etags/html-src/softwarelibero.html:
14270         Switch to UTF-8 encoding.
14271         * test/etags/Makefile (SRCS): Adjust to switch to UTF-8.
14272         Remove Makefile, as it's too incestuous to have the test input
14273         include the build procedure.
14274         (UTF8_LOCALE, UTF_ENCODING): New macros.
14275         (LC_ALL): If possible, set to a UTF-8 encoding if not already UTF-8.
14276         (check): Skip if not UTF-8.
14277         (.PHONY): New rule.
14278         (FRC): Remove, as superseded by .PHONY.  All uses removed.
14279         (regexfile): Prefer printf to echo when outputting oddball chars.
14280         (.PRECIOUS): Remove, as these files are not built.
14282         Rename 'foo-gzipped' to 'foo.gz'
14283         * test/automated/data/decompress/foo.gz:
14284         Rename from test/automated/data/decompress/foo-gzipped,
14285         to make it easier for other tools to tell that it's compressed.
14286         * test/automated/zlib-tests.el (zlib--decompress):
14287         Adjust to renamed file.
14289 2015-05-17  Dmitry Gutov  <dgutov@yandex.ru>
14291         Set up default-directory
14292         * lisp/vc/vc-annotate.el (vc-annotate-mode-map): Remove duplicate
14293         binding for `v'.
14294         (vc-annotate-show-changeset-diff-revision-at-line): Set up an
14295         appropriate value for default-directory.
14297 2015-05-17  Samer Masterson  <samer@samertm.com>
14299         * lisp/eshell/em-term.el (eshell-term-sentinel):
14300         No-op by default, only kills term buffer if
14301         `eshell-destroy-buffer-when-process-dies' is non-nil.  (Bug#18108)
14302         (eshell-destroy-buffer-when-process-dies): New custom to preserve
14303         previous behavior.
14305         eshell: Introduce new buffer syntax
14306         The new buffer syntax '#<buffer-name>' is equivalent to '#<buffer
14307         buffer-name>'.  Remove `eshell-buffer-shorthand', as it is no longer
14308         needed (Bug#19319).
14309         * lisp/eshell/esh-io.el (eshell-buffer-shorthand): Remove.
14310         (eshell-get-target): Remove shorthand-specific code.
14311         * lisp/eshell/esh-arg.el (eshell-parse-special-reference): Parse
14312         '#<buffer-name>'.
14314 2015-05-17  Jan D  <jan.h.d@swipnet.se>
14316         Merge branch 'master' into cairo
14318 2015-04-26  Jan D  <jan.h.d@swipnet.se>
14320         Merge branch 'master' into cairo
14322         Add PBM support for cairo
14323         * src/image.c (xcolor_to_argb32): New function.
14324         (get_spec_bg_or_alpha_as_argb): Call xcolor_to_argb32.
14325         (pbm_load, png_load_body, jpeg_load_body, gif_load): Only use
14326         XImagePtr if ! USE_CAIRO.
14327         (pbm_load): Add cairo support.
14329 2015-04-12  Jan D  <jan.h.d@swipnet.se>
14331         * src/xterm.c (x_free_cr_resources): Rename from x_prepare_for_xlibdraw.
14332         (x_cr_draw_frame, x_cr_export_frames, x_shift_glyphs_for_insert)
14333         (x_free_frame_resources): Rename x_prepare_for_xlibdraw to
14334         x_free_cr_resources.
14336         Handle specified bg in images.  Use generic libpng code for PNGs.
14337         * src/image.c (get_spec_bg_or_alpha_as_argb)
14338         (create_cairo_image_surface): New functions when USE_CAIRO.
14339         (xpm_load): Call the above functions.  Handle XPM without mask
14340         when USE_CAIRO.
14341         (png_load_body): Handle USE_CAIRO case.
14342         (png_load): Remove USE_CAIRO specific fuction, modify png_load_body
14343         instead.
14344         (jpeg_load_body): Call create_cairo_image_surface.
14345         (gif_load, svg_load_image): Handle specified background, call
14346         create_cairo_image_surface.
14347         * src/xterm.c (x_draw_image_glyph_string): Add missing USE_CAIRO.
14349 2015-04-11  Jan D  <jan.h.d@swipnet.se>
14351         Support GIF and TIFF with cairo
14352         * configure.ac: Allow jpeg with cairo.
14353         Allow tiff and gif with cairo.
14354         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
14355         (tiff_load): Create cairo image surface if USE_CAIRO.
14356         (gif_load): Ditto.
14358         Support JPEG with USE_CAIRO
14359         * configure.ac: Allow jpeg with cairo.
14360         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
14362 2015-04-05  Jan D  <jan.h.d@swipnet.se>
14364         Support RSVG and cairo
14365         * configure.ac: Allow rsvg with cairo.  Move back HAVE_RSVG.
14366         * src/dispextern.h (struct image): Add cr_data2 if cairo.
14367         * src/image.c: #undef COLOR_TABLE_SUPPORT when USE_CAIRO.
14368         (x_clear_image): Free cr_data and cr_data2 if set.
14369         (xpm_load): Assign data to cr_data2.
14370         (svg_load_image): Convert from GdkPixbuf to CAIRO_FORMAT_ARGB32.
14372 2015-04-03  Jan D  <jan.h.d@swipnet.se>
14374         Introduce limited Xpm support (32 bit ZPixmap) for Cairo
14375         * configure.ac (HAVE_RSVG): Move after cairo.
14376         (USE_CAIRO): Disable rsvg, don't disable Xpm.
14377         * src/image.c (prepare_image_for_display): Don't load if USE_CAIRO.
14378         (x_clear_image): If USE_CAIRO, also free possible img->ximg->obdata and
14379         don't return early.
14380         (ALLOC_XPM_COLORS): Don't define when USE_CAIRO.
14381         (xpm_load): Convert simple Xpms (32 bit ZPixmap) to CAIRO_FORMAT_ARGB32
14382         and create a surface.
14384         Tool tips for menus did not show any text.
14385         * src/xterm.c (x_update_begin): Don't create any surface for non-visible
14386         tip frames, the geometry may be wrong.
14388         Merge branch 'master' into cairo, fixes tooltips not shown.
14390         Merge branch 'master' into cairo
14392         Add CAIRO_CFLAGS to lwlib/Makefile.in
14393         * Makefile.in (CAIRO_CFLAGS): Add.
14395 2015-02-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
14397         * src/ftcrfont.c (ftcrfont_draw): Don't flush when drawing to screen.
14399 2015-02-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
14401         Draw outermost line using black relief and erase corners also for cairo.
14402         * src/xterm.c [USE_CAIRO]: Include math.h.
14403         (enum corners) [USE_CAIRO]: New enum.
14404         (x_erase_corners_for_relief) [USE_CAIRO]: New function.
14405         (x_draw_relief_rect) [USE_CAIRO]: Use it.  If box width is larger
14406         than 1, draw the outermost line using the black relief.
14408         * src/xterm.c (x_fill_trapezoid_for_relief):
14409         Remove unnecessary cairo_close_path.
14411 2015-02-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
14413         * src/xterm.c (x_draw_relief_rect) [USE_CAIRO]: Reset clipping.
14415         * src/xterm.c (x_draw_stretch_glyph_string):
14416         Call x_reset_clip_rectangles instead of XSetClipMask.
14418         Use int instead of unsigned int for width and height args.
14419         * src/xterm.c (x_cr_draw_image, x_fill_rectangle, x_draw_rectangle)
14420         (x_fill_trapezoid_for_relief): Use int instead of unsigned int for
14421         width and height args.
14423         Modernize k&r cairo-related function declarations.
14424         * src/gtkutil.c (xg_page_setup_dialog, xg_get_page_setup, draw_page)
14425         (xg_print_frames_dialog): Modernize k&r declarations.
14426         * src/xfns.c (Fx_export_frames, Fx_page_setup_dialog, Fx_get_page_setup)
14427         (Fx_print_frames_dialog): Modernize k&r declarations.
14428         * src/xterm.c (x_gc_get_ext_data, x_extension_initialize)
14429         (x_begin_cr_clip, x_end_cr_clip, x_set_cr_source_with_gc_foreground)
14430         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
14431         (x_cr_destroy_fringe_bitmap, x_cr_draw_frame, x_cr_accumulate_data)
14432         (x_cr_destroy, x_cr_export_frames, x_prepare_for_xlibdraw)
14433         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
14434         (x_draw_rectangle, x_clear_window, x_fill_trapezoid_for_relief)
14435         (x_clear_area): Modernize k&r declarations.
14437         Implement wave-style variant of underlining for cairo.
14438         * src/xterm.c (x_draw_horizontal_wave) [USE_CAIRO]: New function.
14439         (x_draw_underwave) [USE_CAIRO]: Use it.
14441         * src/xterm.c (x_draw_window_divider): Use x_fill_rectangle
14442         instead of XFillRectangle.
14444 2015-02-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
14446         Fix fringe bitmap initialization for cairo
14447         * src/fringe.c (init_fringe_bitmap) [USE_CAIRO]: Adjust bitmap
14448         data for cairo image surface.
14449         * src/xterm.c (x_cr_define_fringe_bitmap):
14450         Call cairo_surface_mark_dirty.
14452 2015-02-11  Jan D  <jan.h.d@swipnet.se>
14454         Add cairo drawing
14455         * configure.ac (with-cairo): New option.
14456         (USE_CAIRO): Default to yes for Gtk+ 3.  Add code to test for cairo,
14457         set CAIRO_CFLAGS, CAIRO_LIBS.  Add ftcrfonto to FONT_OBJ if cairo.
14458         Output "Does Emacs use cairo?".
14459         * lisp/version.el (emacs-version): Add cairo version.
14460         * src/Makefile.in (CAIRO_CFLAGS, CAIRO_LIBS): New variables.
14461         (FONT_OBJ): Add comment about ftcrfont.
14462         (ALL_CFLAGS): Add CAIRO_CFLAGS.
14463         (LIBES): Add CAIRO_LIBS.
14464         * src/dispextern.h (struct image): Add cr_data for cairo.
14465         (x_cr_init_fringe): Declare.
14466         * src/font.c (syms_of_font): Call syms_of_ftcrfont for cairo.
14467         * src/font.h (ftcrfont_driver, syms_of_ftcrfont): Declare
14468         * src/fringe.c (x_cr_init_fringe): New function name that shares code
14469         with w32_init_fringe.
14470         * src/ftcrfont.c: New font driver for cairo, based on the ftfont driver.
14471         * src/ftfont.c (ftfont_info_size); New global variable.
14472         (ftfont_open2): New extern function almost the same as old ftfont_open,
14473         but takes the font_object as argument.
14474         (ftfont_open): Build font object and call ftfont_open2.
14475         * src/ftfont.h (ftfont_open2, ftfont_info_size): Declare.
14476         * src/gtkutil.c (xg_clear_under_internal_border)
14477         (xg_update_scrollbar_pos, xg_update_horizontal_scrollbar_pos):
14478         Only queue_draw if not cairo.  Change args to x_clear_area.
14479         (xg_get_font): Use Qftcr when using cairo, Qxft otherwise.
14480         (xg_page_setup_dialog, xg_get_page_setup, draw_page)
14481         (xg_print_frames_dialog): New functions for printing.
14482         * src/gtkutil.h (xg_page_setup_dialog, xg_get_page_setup)
14483         (xg_print_frames_dialog): Declare.
14484         * src/image.c: Add defined (USE_CAIRO) for PNG.
14485         Add !defined USE_CAIRO for W32 PNG code.
14486         (x_clear_image): If cairo, destroy the surface in cr_data.
14487         (png_load): Add new cairo compatible implementation.
14488         (lookup_image_type): Add defined (USE_CAIRO) for define png_type.
14489         * src/xfns.c: New section Printing.
14490         (x-export-frames, x-page-setup-dialog, x-get-page-setup)
14491         (x-print-frames-dialog): New printing functions.
14492         (Fx_create_frame, x_create_tip_frame): Register ftcrfont if cairo.
14493         (syms_of_xfns): Defsym Qorientation, Qtop_margin, Qbottom_margin,
14494         Qportrait, Qlandscape, Qreverse_portrait, Qreverse_landscape).
14495         (syms_of_xfns): Provide cairo and defvar cairo-version-string.
14496         defsubr Sx_page_setup_dialog, Sx_get_page_setup, Sx_print_frames_dialog.
14497         * src/xterm.c (x_clear_area1, x_prepare_for_xlibdraw)
14498         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
14499         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
14500         (x_gc_get_ext_data, x_extension_initialize, x_cr_accumulate_data):
14501         Declare.
14502         (FRAME_CR_CONTEXT, FRAME_CR_SURFACE): New macros.
14503         (max_fringe_bmp, fringe_bmp): New variables.
14504         (x_gc_get_ext_data, x_extension_initialize)
14505         (x_cr_destroy_surface, x_begin_cr_clip, x_end_cr_clip)
14506         (x_set_cr_source_with_gc_foreground)
14507         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
14508         (x_cr_destroy_fringe_bitmap, x_cr_draw_image, x_cr_draw_frame)
14509         (x_cr_accumulate_data, x_cr_destroy, x_cr_export_frames)
14510         (x_prepare_for_xlibdraw, x_set_clip_rectangles)
14511         (x_reset_clip_rectangles, x_fill_rectangle, x_draw_rectangle)
14512         (x_clear_window, x_fill_trapezoid_for_relief): New functions.
14513         (x_update_begin): Create cairo surface if needed.
14514         (x_draw_vertical_window_border): Call x_fill_rectangle for cairo.
14515         (x_update_end): Paint cairo drawing surface to xlib surface.
14516         (x_clear_under_internal_border, x_after_update_window_line): Adjust
14517         arguments to x_clear_area.
14518         (x_draw_fringe_bitmap): Call x_fill_rectangle.  Get GC values and
14519         call x_cr_draw_image for cairo.  Call x_reset_clip_rectangles instead
14520         of XSetClipMask.
14521         (x_set_glyph_string_clipping)
14522         (x_set_glyph_string_clipping_exactly): Use x_set_clip_rectangles
14523         instead of XSetClipRectangles.
14524         (x_clear_glyph_string_rect, x_draw_glyph_string_background):
14525         Use x_fill_rectangle instead of XFillRectangle.
14526         (x_draw_glyph_string_foreground)
14527         (x_draw_composite_glyph_string_foreground)
14528         (x_draw_glyphless_glyph_string_foreground): Use x_draw_rectangle
14529         instead of XDrawRectangle.
14530         (x_draw_relief_rect): Add code for USE_CAIRO.
14531         Call x_reset_clip_rectangles instead of XSetClipMask.
14532         (x_draw_box_rect): x_set_clip_rectangles instead of XSetClipRectangles,
14533         x_fill_rectangle instead of XFillRectangle, x_reset_clip_rectangles
14534         instead of XSetClipMask.
14535         (x_draw_image_foreground, x_draw_image_foreground_1):
14536         x_draw_rectangle instead of XDrawRectangle.
14537         (x_draw_glyph_string_bg_rect): x_fill_rectangle instead of
14538         XFillRectangle.
14539         (x_draw_image_glyph_string): If img has cr_data, use it as
14540         a cairo surface.
14541         (x_draw_stretch_glyph_string): x_set_clip_rectangles instead of
14542         XSetClipRectangles, x_fill_rectangle instead of XFillRectangle.
14543         (x_draw_glyph_string): x_fill_rectangle instead of XFillRectangle.,
14544         x_reset_clip_rectangles instead of XSetClipMask.
14545         (x_shift_glyphs_for_insert): Call x_prepare_for_xlibdraw.
14546         (x_clear_area1): New function that calls XClearArea.
14547         (x_clear_area): Takes frame as parameter, calls x_clear_area1 for
14548         non-cairo.
14549         (x_clear_frame): x_clear_window instead of XClearWindow.
14550         (x_scroll_run): Set frame garbaged if cairo.
14551         (XTmouse_position): Initialize *part to 0.
14552         (x_scroll_bar_create): Adjust arguments to x_clear_area.
14553         (x_scroll_bar_set_handle): x_clear_area1 instead of x_clear_area,
14554         x_fill_rectangle instead of XFillRectangle.
14555         (XTset_vertical_scroll_bar, XTset_horizontal_scroll_bar): Adjust
14556         arguments to x_clear_area.
14557         (x_scroll_bar_expose): x_draw_rectangle instead of XDrawRectangle.
14558         (handle_one_xevent): Adjust arguments to x_clear_area.
14559         Destroy cairo surface for frame if ConfigureNotify.
14560         (x_clip_to_row): x_set_clip_rectangles instead of XSetClipRectangles.
14561         (x_draw_hollow_cursor): x_draw_rectangle instead of XDrawRectangle,
14562         x_reset_clip_rectangles instead of XSetClipMask.
14563         (x_draw_bar_cursor): x_fill_rectangle instead of XFillRectangle,
14564         x_reset_clip_rectangles instead of XSetClipMask.
14565         (x_clear_frame_area): Adjust arguments to x_clear_area.
14566         (x_free_frame_resources): Call x_prepare_for_xlibdraw.
14567         (x_term_init): Call x_extension_initialize if cairo.
14568         (x_redisplay_interface): Add x_cr_define_fringe_bitmap,
14569         x_cr_destroy_fringe_bitmap for cairo.
14570         (x_initialize): Call x_cr_init_fringe for cairo.
14571         * src/xterm.h: Add include of cairo header files.
14572         (x_bitmap_record): Add img if cairo.
14573         (x_gc_ext_data): New struct for cairo.
14574         (x_display_info): Add ext_codes for cairo.
14575         (x_output): Add cr_context and cr_surface for cairo.
14576         (x_clear_area): Change arguments from Display*/Window to frame pointer.
14577         (x_query_color, x_begin_cr_clip, x_end_cr_clip)
14578         (x_set_cr_source_with_gc_foreground, x_set_cr_source_with_gc_background)
14579         (x_cr_draw_frame, x_cr_export_frames): Declare.
14581 2015-05-17  Johan Bockgård  <bojohan@gnu.org>
14583         Fix integer-valued `mouse-highlight' (Bug#20590)
14584         * src/xterm.c (handle_one_xevent) [USE_GTK]: Fix ifdef scope.
14586 2015-05-17  Eli Zaretskii  <eliz@gnu.org>
14588         MS-Windows followup for ASCIIfication of curved quotes
14589         * lisp/term/w32console.el (terminal-init-w32console): Repeat the
14590         test for curved quotes being displayable, after switching the
14591         terminal encoding.  (Bug#20545)
14593 2015-05-17  Jan D  <jan.h.d@swipnet.se>
14595         Add comment that x_shift_glyphs_for_insert is never called
14596         * src/xterm.c (x_shift_glyphs_for_insert, x_redisplay_interface):
14597         Add comment that this function is never called.
14599 2015-05-16  Glenn Morris  <rgm@gnu.org>
14601         * src/lisp.mk: Remove from repository and generate at build-time.
14602         * src/Makefile.in (lisp.mk): New rule to generate from loadup.el.
14603         (shortlisp_filter): New variable.
14604         (emacs$(EXEEXT), $(etc)/DOC): Depend on lisp.mk.
14605         (distclean): Remove lisp.mk.
14606         * Makefile.in ($(MAKEFILE_NAME)): No longer depend on src/lisp.mk.
14607         * lisp/loadup.el: Tweak layout to make it easier to parse.
14608         * make-dist: Do not distribute src/lisp.mk.
14610 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
14612         Display shorter dates in Git annotate output
14613         * lisp/vc/vc-git.el (vc-git-annotate-command): Use the short date
14614         format (when not overridden with vc-git-annotate-switches).
14615         (vc-git-annotate-time): Support the short format, as well as ISO
14616         8601 that has been used until now (bug#5428).
14618 2015-05-16  Paul Eggert  <eggert@cs.ucla.edu>
14620         ASCIIfy curved quotes on displays lacking them
14621         * lisp/international/mule-cmds.el (set-locale-environment):
14622         If curved quotes don't work, display straight ASCII approximations
14623         (Bug#20545).
14625 2015-05-16  Glenn Morris  <rgm@gnu.org>
14627         Small src/Makefile simplification
14628         * src/lisp.mk (shortlisp): Rename from lisp, remove $lispsource prefix.
14629         * src/Makefile.in (lisp): Derive from shortlisp.
14630         ($(etc)/DOC): Use $shortlisp rather than parsing lisp.mk.
14632 2015-05-16  Eli Zaretskii  <eliz@gnu.org>
14634         * lisp/help-mode.el (help-go-forward): Doc fix.
14635         (Bug#20577)
14637         * doc/lispref/debugging.texi (Profiling): Improve indexing.
14638         (Bug#20576)
14640 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
14642         * lisp/vc/vc-git.el (vc-git-resolve-when-done): Use `unless' to
14643         have one fewer `not'.
14645         * lisp/vc/vc-git.el (vc-git-diff-switches)
14646         (vc-git-annotate-switches, vc-git-resolve-conflicts)
14647         (vc-git-program, vc-git-root-log-format): Remove the redundant
14648         :group declarations.
14650 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
14652         Removes the predicate from lisp-complete-symbol (Bug#20456)
14653         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol): Do not use predicate
14654         and remove it from the docstring.
14656 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
14658         Add new option vc-git-resolve-conflicts
14659         * lisp/vc/vc-git.el (vc-git-resolve-conflicts): New variable.
14660         (vc-git-find-file-hook): Add to after-save-hook only when the
14661         above is non-nil.
14662         (vc-git-resolve-when-done): Update to honor the new variable.
14663         (Bug#20292)
14665 2015-05-16  Artur Malabarba  <bruce.connor.am@gmail.com>
14667         * lisp/emacs-lisp/tabulated-list.el: Don't error on null header-string.
14668         (tabulated-list-init-header): Document new behavior.
14669         (tabulated-list-print-fake-header): Do nothing if
14670         `tabulated-list--header-string' is nil.
14671         (tabulated-list--header-string): Add a docstring.
14672         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
14673         * etc/NEWS: Document it.
14675 2015-05-15  Leo Liu  <sdl.web@gmail.com>
14677         Revert "Fix cps--gensym"
14678         * lisp/emacs-lisp/generator.el (cps--gensym): Revert commit
14679         fbda511ab8069d0115eafca411a43353b85431b1 on 2015-05-14.
14681 2015-05-15  Glenn Morris  <rgm@gnu.org>
14683         Replace AC_SUBST_FILE in configure with include in Makefiles
14684         * configure.ac (DEPDIR, MKDEPDIR, deps_frag, lwlib_deps_frag)
14685         (oldxmenu_deps_frag, lisp_frag): Remove output variables/files.
14686         (AUTO_DEPEND): New output variable.
14687         * lwlib/Makefile.in (AUTO_DEPEND): New, set by configure.
14688         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
14689         (lwlib_deps_frag): Replace by conditional include.
14690         * lwlib/autodeps.mk: Remove file.
14691         * oldXMenu/Makefile.in (AUTO_DEPEND): New, set by configure.
14692         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
14693         (oldxmenu_deps_frag): Replace by conditional include.
14694         * oldXMenu/autodeps.mk: Remove file.
14695         * src/Makefile.in (AUTO_DEPEND): New, set by configure.
14696         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
14697         (lisp_frag): Replace by an include.
14698         (deps_frag): Replace by conditional include.
14699         * src/autodeps.mk: Remove file.
14701         Tweak japanese.el's loading of dependencies
14702         * lisp/loadup.el: Explicitly load cp51932 and eucjp-ms.
14703         * lisp/language/japanese.el: Use require rather than load.
14704         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
14705         Provide a feature.
14706         * admin/charsets/eucjp-ms.awk, admin/charsets/cp51932.awk:
14707         Provide a feature in the generated file.
14709 2015-05-15  Jan D  <jan.h.d@swipnet.se>
14711         Fix NS warnings
14712         * src/nsmenu.m (ns_popup_dialog)
14713         * src/nsimage.m (initFromXBM:width:height:fg:bg:)
14714         * src/nsfns.m (Fx_create_frame): Remove unused variables.
14715         (Fns_read_file_name): Initialize fname, remove ret.
14716         * src/nsterm.m (ns_draw_window_cursor): Handle DEFAULT_CURSOR in switch.
14717         (ns_get_color, ns_set_horizontal_scroll_bar, keyDown):
14718         Remove unused variable.
14719         (init): Add parantesis in if.
14720         (ns_create_terminal): Assign set_horizontal_scroll_bar_hook.
14722 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
14724         Fix a enum conversion warning in macfont.m
14725         * src/macfont.h (CharacterCollection): Typedef to NSCharacterCollection.
14726         (MAC_CHARACTER_COLLECTION_*): Use the NS variants.
14728 2015-05-15  Eli Zaretskii  <eliz@gnu.org>
14730         * lisp/textmodes/ispell.el (ispell-aspell-find-dictionary):
14731         Support Aspell dictionaries with names like "de-alt".  (Bug#20581)
14733 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
14735         * lisp/cus-start.el: Add ns-confirm-quit.
14737         Fix warnings on OSX 10.10
14738         * src/nsfns.m (MODAL_OK_RESPONSE): New define for different
14739         OSX versions.
14740         (Fns_read_file_name): Check against MODAL_OK_RESPONSE.
14741         (compute_tip_xy): Use convertRectToScreen for OSX >= 10.7
14742         * src/nsmenu.m (initWithContentRect:styleMask:backing:defer:)
14743         * src/nsimage.m (allocInitFromFile, setPixmapData): Only call
14744         setScalesWhenResized for OSX < 10.6.
14745         * src/nsterm.h (EmacsScroller): Declare scrollerWidth.
14746         * src/nsterm.m (ns_copy_bits): New function that does not use
14747         deprecated NSCopyBits.
14748         (ns_scroll_run, ns_shift_glyphs_for_insert): Call ns_copy_bits.
14749         (runAlertPanel): New function.
14750         (applicationShouldTerminate:): Call runAlertPanel.
14751         (initFrameFromEmacs, toggleFullScreen:): Only call
14752         useOptimizedDrawing for OSX < 10.10.
14753         (initFrameFromEmacs:): Only call allocateGState for OSX < 10.10.
14754         (windowWillUseStandardFrame:defaultFrame:): Cast arg to abs to int.
14755         (draggingEntered:): Returns NSDragOperation.
14756         (scrollerWidth): Use scrollerWidthForControlSize for OSX >= 10.7.
14758 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
14760         * lisp/emacs-lisp/package.el: Don't ensure-init during startup.
14761         (package--init-file-ensured): New variable.
14762         (package-initialize, package--ensure-init-file): Use it.
14764 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
14766         Honor :fore/background for XBM on NS (Bug#14969)
14767         * src/nsterm.h (EmacsImage): Add xbm_fg, remove initFromSkipXBM,
14768         initFromXBM takes bg, fg args, remove flip arg.
14769         (ns_image_from_XBM): Add bg, fg args.
14770         * src/image.c (x_create_bitmap_from_data)
14771         (Create_Pixmap_From_Bitmap_Data): ns_image_from_XBM takes bg, fg args.
14772         * src/nsimage.m (ns_image_from_XBM): Add fg, bg args, pass to
14773         initFromXBM.  Remove flip arg.
14774         (initFromSkipXBM): Move code to initFromXBM.
14775         (initFromXBM): Actually set fg and bg, instead of playing alpha games.
14776         Use fg, bg from args (Bug#14969).  Remove if (length) section, was
14777         always false.
14778         Remove bit flipping (bitPat, swt), generated incorrect images when
14779         width/height wasn't a multiple of 8.
14780         (setXBMColor:): Modify planes by comparing to saved xbm_fg.
14781         * src/nsterm.m (ns_draw_fringe_bitmap): initFromXBM takes fg, bg args,
14782         remove flip arg.
14784 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
14786         * lisp/emacs-lisp/package.el: Be more careful with the init file.
14787         (package--ensure-init-file): Check that user-init-file is set,
14788         exists, is readable, and is writable.  (Bug#20584)
14789         Also expand the docstring.
14791 2015-05-14  Wilson Snyder  <wsnyder@wsnyder.org>
14793         Sync with upstream verilog-mode revision 6232468
14794         * lisp/progmodes/verilog-mode.el
14795         (verilog-font-lock-grouping-keywords-face)
14796         (verilog-highlight-grouping-keywords): Fix use of face when
14797         `verilog-highlight-grouping-keywords' set.  Reported by Jeff Pompa.
14798         (verilog-auto-reset): Fix AUTORESET to ignore member resets if
14799         parent is reset, bug906.  Reported by Ken Schmidt.
14800         (verilog-auto-inout-module): Add fourth regexp argument to
14801         AUTOINOUTMODULE and AUTOINOUTCOMP for signals to not match, bug856.
14802         Reported by John Tillema.
14803         (verilog-auto-inst-port): Fix AUTOINST interfaces to not show
14804         modport if signal attachment is itself a modport.  Reported by
14805         Matthew Lovell.
14806         (verilog-auto-reset, verilog-auto-sense-sigs): Fix AUTORESET with
14807         always_comb and always_latch, bug844.  Reported by Greg Hilton.
14808         (verilog-at-constraint-p, verilog-beg-of-statement-1): Fix hanging
14809         with many curly-bracket pairs, bug663.
14810         (verilog-set-auto-endcomments): Fix end comments for functions of
14811         type void, etc.  Reported by Alex Reed.
14812         (verilog-do-indent): Fix electric tab deleting form-feeds.  Note
14813         caused by indent-line-to deleting tabls pre 24.5.
14814         (verilog-nameable-item-re): Fix nameable items that can have an
14815         end-identifier to include endchecker, endgroup, endprogram,
14816         endproperty, and endsequence.  Reported by Alex Reed.
14817         (verilog-label-be): When auto-commenting a buffer, consider
14818         auto-comments on all known keywords (not just a subset thereof).
14819         Reported by Alex Reed.
14820         (verilog-auto-end-comment-lines-re)
14821         (verilog-end-block-ordered-re, verilog-set-auto-endcomments):
14822         Automatically comment property/endproperty blocks to match other
14823         similar blocks like sequence/endsequence, function/endfunction, etc.
14824         Reported by Alex Reed.
14825         (verilog-set-auto-endcomments): Detect the function- or task-name
14826         when auto-commenting blocks that lack an explicit portlist.
14827         Reported by Alex Reed.
14828         (verilog-auto, verilog-auto-insert-last): Add AUTOINSERTLAST to
14829         allow post-AUTO user fixups, bug826.  Reported by Dennis Muhlestein.
14830         (verilog-no-indent-begin-re): When `verilog-indent-begin-after-if'
14831         is nil, fix indenting initial/final to match always statements,
14832         bug825.  Reported by Tim Clapp.
14833         (verilog-extended-complete-re): Fix indentation of DPI-C imports
14834         with c_identifiers, and DPI-C imports, bug557.  Reported by ZeDong
14835         Mao and Jason Forkey.
14836         (verilog-read-decls): Fix parsing typed interfaces.  Fix
14837         AUTOINOUTMODPORT missing types.  Reported by Stephan Bourduas.
14838         Fix localparam not being ignored in AUTOINSTPARAM,
14839         bug889.  Reported by Shannon Hill.
14840         (verilog-auto-output-every): Add regexp to AUTOOUTPUTEVERY,
14841         bug793.  Reported by Pierre-David Pfister.
14842         (verilog-auto-arg-format, verilog-auto-arg-ports):
14843         Add verilog-auto-arg-format to support newlines in AUTOARG.
14844         Reported by Jie Xiao.
14845         (verilog-batch-execute-func): Do not batch re-auto files loaded by
14846         Local Variables.  Fix printing "no changes to be saved" with
14847         verilog-batch.  Reported by Dan Dever.
14848         (verilog-auto-inout-module): Fix AUTOINOUTMODULE not inserting
14849         interface-only modules, bug721.  Reported by Dean Hoyt.
14850         Author: Alex Reed <acreed4@gmail.com>
14851         * lisp/progmodes/verilog-mode.el (verilog-beg-of-statement):
14852         Don't treat '<keyword>:<identifier>' as the start of a labeled
14853         statement, bug905.  Reported by Enzo Chi.
14854         (verilog-directive-re, verilog-compiler-directives)
14855         (verilog-keywords): Match full set of IEEE 2012-1800 compiler
14856         directives (plus some extras) when determining indentation, bug
14857         901.  Reported by Bernd Beuster.
14858         (verilog-at-constraint-p): Fix indentation of coverpoint bins if
14859         iff expression doesn't start with word-character, bug900.
14860         (verilog-optional-signed-range-re, verilog-optional-signed-re):
14861         Fix incorrect indentation/alignment of unsigned declarations,
14862         bug897.
14863         (verilog-looking-back, verilog-in-attribute-p): Fix labeling of
14864         always constructs, bug895.
14865         (verilog-calc-1): Fix verilog-mode constraint indentation, bug324.
14866         Reported by Eric Mastromarchi.
14867         (verilog-beg-of-statement): Fix indenting for some forms of
14868         constraintsm bug433.  Reported by Brad Parker.  Fix indentation of
14869         continued assignment incorrect if first line ends with ']', bug437.
14870         Reported by Dan Dever.  Fix indention of cover inside an
14871         ifdef, bug 862.  Reported by Bernd Beuster.  Fix labeling do-while
14872         blocks, bug842.
14873         (verilog-preprocessor-re): Fix fork/end UNMATCHED warning, bug859.
14874         Reported by Kaushal Modi.
14875         (verilog-set-auto-endcomments): Fix endlabel end comments, bug888.
14876         (verilog-backward-token): Fix indenting sensitivity lists with
14877         named events, bug840.  Reed.
14878         (verilog-no-indent-begin-re): Fix `verilog-indent-begin-after-if'
14879         nil not honoring 'forever', 'foreach', and 'do' keywords.
14881 2015-05-14  Paul Eggert  <eggert@cs.ucla.edu>
14883         Check for invalid GTK+ monitor scales
14884         * src/gtkutil.c (xg_get_gdk_scale): Return 1 for invalid scales,
14885         INT_MAX for too-large scales.  All callers changed to assume the
14886         result is valid (Bug#20432).
14887         (xg_frame_set_char_size, xg_update_scrollbar_pos):
14888         Calculate scale only if needed.
14889         Show ASCII approximations instead.
14891 2015-05-14  Eli Zaretskii  <eliz@gnu.org>
14893         Fix daemon crashes when linum-mode is turned on early on
14894         * src/window.c (Fwindow_end): Don't try calling display engine
14895         functions on initial-frame frame.  (Bug#20565)
14897         Fix selective diff browsing in Ediff
14898         * lisp/vc/ediff-util.el (ediff-focus-on-regexp-matches):
14899         Go to the beginning of the region before searching for the
14900         ediff-regexp-focus-* regexps.  (Bug#20568)
14902 2015-05-14  Jan D  <jan.h.d@swipnet.se>
14904         Fixes bug#20142
14905         * src/gtkutil.c (delete_cb): Don't send delete event here, it does
14906         arrive in the main loop, even for Gtk 3 (Bug#20142).
14908         Don't access display after i/o error (Bug#19147).
14909         * src/xterm.c (x_connection_closed): Add third arg ioerror.
14910         If ioerror, set display to 0 (Bug#19147).
14911         (x_error_quitter): Call x_connection_closed with third arg false.
14912         (x_io_error_quitter): Call x_connection_closed with third arg true.
14914         Handle GTK_SCALE, fixes Bug#20432.
14915         * src/gtkutil.c (xg_get_gdk_scale): New function.
14916         (xg_frame_set_char_size)
14917         (x_wm_set_size_hint, xg_get_default_scrollbar_width)
14918         (xg_get_default_scrollbar_height)
14919         (xg_update_horizontal_scrollbar_pos): Take GTK_SCALE in to account
14920         when setting sizes (Bug#20432).
14922 2015-05-13  Leo Liu  <sdl.web@gmail.com>
14924         * lisp/emacs-lisp/generator.el (cps--gensym): Fix.
14926 2015-05-13  Glenn Morris  <rgm@gnu.org>
14928         Fix bootstrap (void function cl-member).
14929         * lisp/emacs-lisp/cl-lib.el: Load cl-seq if no cl-loaddefs file.
14930         * lisp/emacs-lisp/cl-seq.el: Provide a feature.
14932 2015-05-13  Stefan Monnier  <monnier@iro.umontreal.ca>
14934         * lisp/loadup.el ("emacs-lisp/cl-generic"): Preload
14935         * src/lisp.mk (lisp): Add emacs-lisp/cl-generic.elc.
14936         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method):
14937         Avoid defalias for closures which are not immutable.
14938         (cl--generic-prefill-dispatchers): New macro.  Use it to prefill
14939         the dispatchers table with various entries.
14940         * lisp/emacs-lisp/ert.el (emacs-lisp-mode-hook):
14941         * lisp/emacs-lisp/seq.el (emacs-lisp-mode-hook): Use add-hook.
14943 2015-05-13  Eli Zaretskii  <eliz@gnu.org>
14945         Improve tagging of C bindings in DEFVAR_*
14946         * src/Makefile.in (TAGS): Add --regex options to tag the C binding
14947         from DEFVAR_*.
14949 2015-05-13  Paul Eggert  <eggert@cs.ucla.edu>
14951         * src/editfns.c (Fformat): Fix use-after-free bug (Bug#20548).
14953 2015-05-12  Glenn Morris  <rgm@gnu.org>
14955         * lisp/progmodes/tcl.el (tcl-filter):
14956         Handle comint-prompt-read-only like gud.el does.  (Bug#20549)
14958         Add basic VC push support
14959         * lisp/vc/vc.el (vc-push): New autoloaded command.
14960         * lisp/vc/vc-hooks.el (vc-prefix-map, vc-menu-map): Add vc-push.
14961         * lisp/vc/vc-bzr.el (vc-bzr--pushpull): New, factored from vc-bzr-pull.
14962         (vc-bzr-pull): Reimplement using vc-bzr--pushpull.
14963         (vc-bzr-push): New.
14964         * lisp/vc/vc-git.el (vc-git--pushpull): New, factored from vc-git-pull.
14965         (vc-git-pull): Reimplement using vc-git--pushpull.
14966         (vc-git-push): New.
14967         * lisp/vc/vc-hg.el (vc-hg--pushpull): New, factored from vc-hg-pull.
14968         (vc-hg-pull, vc-hg-push): Reimplement using vc-hg--pushpull.
14969         * doc/emacs/maintaining.texi (Pulling / Pushing):
14970         Rename from "VC Pull".  Mention pushing.
14971         (VC With A Merging VCS, VC Change Log): Update xrefs.
14972         (Branches): Update menu.
14973         * doc/emacs/emacs.texi: Update menu.
14974         * etc/NEWS: Mention this.
14976 2015-05-12  Nicolas Petton  <nicolas@petton.fr>
14978         Improve the seq pcase pattern and the `seq-let' macro
14979         * lisp/emacs-lisp/seq.el: The pcase pattern now matches only if the
14980         object is a sequence, and binds each element of ARGS to the
14981         corresponding element of the sequence.
14983 2015-05-12  Eli Zaretskii  <eliz@gnu.org>
14985         Fix tags created from DEFVAR_* declarations in C
14986         * src/Makefile.in (TAGS): Improve the --regex argument to etags,
14987         to make tags extracted from DEFVAR_* declarations more accurate.
14989         Add a test suite for etags
14990         * test/etags/: New test suite, adapted from
14991         http://fly.isti.cnr.it/pub/software/unix/etags-regression-test.tar.bz2,
14992         whose original author is Francesco Potortì <pot@gnu.org>.
14994         Fix tagging of symbols in C enumerations
14995         * lib-src/etags.c (consider_token): Don't tag symbols in
14996         expressions that assign values to enum constants.  See
14997         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00291.html
14998         for details.
14999         (C_entries): Reset fvdef to fvnone after processing a preprocessor
15000         conditional and after a comma outside of parentheses.
15002 2015-05-12  Glenn Morris  <rgm@gnu.org>
15004         * lisp/url/url-handlers.el (url-file-name-completion)
15005         (url-file-name-all-completions): Silence compiler.
15007         * lisp/emacs-lisp/chart.el (chart-axis-draw): Replace obsolete alias.
15009         * lisp/play/dunnet.el (dun-dos-boot-msg): Fix time.  (Bug#20554)
15011 2015-05-12  Stefan Monnier  <monnier@iro.umontreal.ca>
15013         * lisp/emacs-lisp/cl-generic.el: Add dispatch on &context arguments
15014         (cl--generic-mandatory-args): Remove.
15015         (cl--generic-split-args): New function.
15016         (cl-generic-define, cl--generic-lambda): Use it.
15017         (cl-generic-define-method): Use it as well, and add support for
15018         context args.
15019         (cl--generic-get-dispatcher): Handle &context dispatch.
15020         (cl--generic-cache-miss): `dispatch-arg' can now be a
15021         context expression.
15022         (cl--generic-dispatchers): Pre-fill.
15023         * test/automated/cl-generic-tests.el (sm-generic-test-12-context):
15024         New test.
15026 2015-05-11  Glenn Morris  <rgm@gnu.org>
15028         * make-dist: Abort if "make ChangeLog" fails.  Add "--no-changelog".
15030 2015-05-11  Stefan Monnier  <monnier@iro.umontreal.ca>
15032         * lisp/term/xterm.el: Fix xterm-paste handling for rxvt
15033         * lisp/term/rxvt.el: Require term/xterm.
15034         (rxvt-function-map): Use xterm-rxvt-function-map.
15035         (rxvt-standard-colors): Move before first use.
15036         (terminal-init-rxvt): Use xterm--push-map and
15037         xterm-register-default-colors.
15038         (rxvt-rgb-convert-to-16bit, rxvt-register-default-colors): Remove.
15039         * lisp/term/xterm.el (xterm-rxvt-function-map): New var.
15040         Move shared bindings between rxvt and xterm to it.
15041         (xterm-function-map): Use it.  Move the xterm-paste binding to
15042         xterm-rxvt-function-map (bug#20444).
15043         (xterm-standard-colors): Move before first use.
15044         (xterm--push-map): New function.
15045         (xterm-register-default-colors): Take standard colors as argument.
15046         (terminal-init-xterm): Use it.  Adjust call to
15047         xterm-register-default-colors.
15049 2015-05-11  Glenn Morris  <rgm@gnu.org>
15051         * lisp/term/x-win.el: Quieten --without-x compilation.
15052         (x-own-selection-internal, x-disown-selection-internal)
15053         (x-selection-owner-p, x-selection-exists-p, x-get-selection-internal):
15054         Declare.
15056         * Makefile.in (emacslog): Remove srcdir.
15057         (ChangeLog): Update for the above.
15059 2015-05-10  Fabián Ezequiel Gallina  <fgallina@gnu.org>
15061         python.el: better limit for looking-back calls
15062         * lisp/progmodes/python.el (python-shell-accept-process-output):
15063         Use last comint prompt start as limit for looking-back.
15065 2015-05-10  Stefan Monnier  <monnier@iro.umontreal.ca>
15067         CEDET (srecode-insert-fcn): Fix use of oref on a class
15068         * lisp/cedet/srecode/insert.el (srecode-insert-fcn): Fix use of oref
15069         on a class.  Reported by Pierre Lorenzon.
15070         (srecode-template-inserter-point): Remove declaration.
15072         CEDET (srecode-create-dictionary): Avoid obsolete object name
15073         * lisp/cedet/srecode/dictionary.el (srecode-create-dictionary):
15074         Don't use a symbol as an object name.  Reported by Pierre Lorenzon.
15076 2015-05-10  Paul Eggert  <eggert@cs.ucla.edu>
15078         C-x 8 shorthands for curved quotes, Euro, etc.
15079         Although C-x 8 lets you insert arbitrary Unicode characters,
15080         it's awkward to use this to insert commonly used symbols such as curved
15081         quotes, the Euro symbol, etc.  This patch adds simpler sequences for
15082         characters commonly found in English text and in basic math.
15083         For example, assuming the Alt key works on your keyboard and iso-transl
15084         is loaded, one can now type "A-[" instead of "A-RET LEFT SIN TAB RET"
15085         to get the character "‘" (U+2018 LEFT SINGLE QUOTATION MARK).
15086         (Bug#20499)
15087         * doc/emacs/mule.texi (Unibyte Mode):
15088         A few other printing characters now work too.
15089         * etc/NEWS: Document this.
15090         * lisp/international/iso-transl.el (iso-transl-char-map):
15091         Also support the following characters:
15092         ‐ ‑ ‒ – — ― ‘ ’ “ ” † ‡ • ′ ″ € № ← → ↔ − ≈ ≠ ≤ ≥
15094 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
15096         Add xref-find-regexp
15097         * lisp/progmodes/xref.el (xref-find-function): Describe the
15098         `matches' action.
15099         (xref-find-regexp): New command, using it.
15100         (xref-collect-references): Rename to xref-collect-matches.
15101         (xref--collect-reference): Rename to xref--collect-match.
15102         (xref-collect-matches, xref--collect-match): Accept new argument,
15103         KIND.  Update accordingly.
15104         (xref--regexp-to-extended): New function.
15105         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Support the
15106         `matches' action.
15107         (elisp--xref-find-matches): Accept new argument.  Resolve a FIXME.
15108         * lisp/progmodes/etags.el (etags-xref-find):
15109         Support the `matches' action.
15110         (etags--xref-find-matches): New function.
15112 2015-05-10  Glenn Morris  <rgm@gnu.org>
15114         * Makefile.in: Fixes for recent change-history changes.
15115         (change-history-nocommit): Update footer regexp.
15116         Ensure output script stays executable.
15118 2015-05-10  Nicolas Petton  <nicolas@petton.fr>
15120         New version of `seq-let' based on a pcase pattern
15121         * lisp/emacs-lisp/seq.el (seq-let): Define the macro in terms of a
15122         pcase pattern if `pcase-defmacro' is defined (Emacs>=25.1).
15124 2015-05-10  Przemysław Wojnowski  <esperanto@cumego.com>
15126         Add basic HTML5 tags and a template
15127         * lisp/textmodes/sgml-mode.el: Basic HTML5 support.
15128         (html-tag-alist): Add HTML5 tags.
15129         (html-tag-help): Add new tags descriptions.
15130         (html-navigational-links): Template for nav links.
15131         (html-html5-template): Template for a HTML5 page.
15133 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
15135         semantic/symref/grep: Don't use word boundaries
15136         * lisp/cedet/semantic/symref/grep.el
15137         (semantic-symref-perform-search): Instead of wrapping input in
15138         word boundaries, check that the characters before and after are
15139         not word constituents.
15141         semantic/symref/grep: Support regexp search
15142         * lisp/cedet/semantic/symref.el
15143         (semantic-symref-hit-to-tag-via-buffer): Don't regexp-quote when
15144         the search type is regexp.
15145         * lisp/cedet/semantic/symref/grep.el
15146         (semantic-symref-perform-search): Support the regexp search type.
15147         Pass -E to Grep when it's used.
15149         semantic-symref-regexp: Allow to input an arbitrary string
15150         * lisp/cedet/semantic/symref/list.el (semantic-symref-regexp):
15151         Allow to input an arbitrary string interactively.
15153         Remove tag-symbol-match-p from etags-xref-find-definitions-tag-order
15154         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
15155         Remove tag-symbol-match-p from the default value
15156         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00292.html).
15158         Declare find-tag obsolete
15159         * lisp/progmodes/etags.el (find-tag): Declare obsolete in favor of
15160         xref-find-definitions.
15162 2015-05-10  Jan D  <jan.h.d@swipnet.se>
15164         Draw composite string correctly (Bug#20537)
15165         * src/nsterm.m (ns_draw_composite_glyph_string_foreground):
15166         New function.
15167         (ns_draw_glyph_string): Call it.
15169 2015-05-09  Eli Zaretskii  <eliz@gnu.org>
15171         Avoid infloop in ERC
15172         * lisp/simple.el (line-move-to-column): Ignore field boundaries
15173         while computing line beginning position.  (Bug#20498)
15175 2015-05-08  Glenn Morris  <rgm@gnu.org>
15177         * Makefile.in (ChangeLog): No longer pass "srcprefix"; cd instead.
15178         * build-aux/gitlog-to-emacslog: Check called from right directory.
15179         (srcprefix): Remove.
15181         * build-aux/gitlog-to-emacslog: Get rid of "distprefix".
15182         * Makefile.in (ChangeLog): No longer pass "distprefix".
15183         * make-dist: Update "make ChangeLog" syntax for the above change.
15185         * build-aux/gitlog-to-emacslog: Don't hard-code "ChangeLog.2".
15186         * Makefile.in (ChangeLog): Pass -n to gitlog-to-emacslog.
15188         * build-aux/gitlog-to-emacslog: Add "for earlier changes" to footer.
15190         Add command-line option-parsing to gitlog-to-emacslog
15191         * build-aux/gitlog-to-emacslog: Add command-line options.
15192         By default, refuse to remove an existing output file.
15193         * Makefile.in (CHANGELOG): Update default.
15194         (ChangeLog): Do not test for existing file.
15195         (change-history-nocommit): Ensure temp file does not exist.
15197         Quieten --without-x compilation
15198         * lisp/term/common-win.el: Provide a feature.
15199         * lisp/term/x-win.el (term/common-win): Require it.
15201         * lisp/dired-aux.el (dired-do-print): Require lpr.
15203         Quieten compilation, eg in --without-x builds
15204         * lisp/dired-aux.el (lpr-printer-switch):
15205         * lisp/frame.el (tool-bar-height):
15206         * lisp/linum.el (font-info):
15207         * lisp/window.el (font-info, overflow-newline-into-fringe)
15208         (tool-bar-height):
15209         * lisp/emacs-lisp/package-x.el (tar-data-buffer):
15210         * lisp/gnus/gnus-util.el (iswitchb-mode):
15211         * lisp/mail/rmailmm.el (libxml-parse-html-region):
15212         * lisp/net/nsm.el (gnutls-peer-status)
15213         (gnutls-peer-status-warning-describe):
15214         * lisp/net/shr.el (libxml-parse-xml-region):
15215         * lisp/url/url-http.el (gnutls-peer-status): Declare.
15217 2015-05-08  Stefan Monnier  <monnier@iro.umontreal.ca>
15219         CEDET (srecode-pop, srecode-peek): Don't use `subclass'
15220         * lisp/cedet/srecode/insert.el (srecode-pop, srecode-peek): Don't use
15221         `subclass' since they're never called with a class.
15222         (srecode-insert-method, srecode-insert-subtemplate): Avoid obsolete
15223         srecode-dictionary-child-p.
15225 2015-05-08  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
15227         * lisp/help.el (help--binding-locus): Document argument POSITION.
15228         (Bug#20530)
15230 2015-05-08  Paul Eggert  <eggert@cs.ucla.edu>
15232         Merge from gnulib
15233         * doc/misc/texinfo.tex: Get latest version.
15235 2015-05-08  Oleh Krehel  <ohwoeowho@gmail.com>
15237         ffap.el (ffap-read-file-or-url): Fix completing-read call
15238         * lisp/ffap.el (ffap-read-file-or-url): The HIST argument of
15239         `completing-read' should be a symbol.
15241 2015-05-08  Eli Zaretskii  <eliz@gnu.org>
15243         Verify file modifications by other programs
15244         * src/filelock.c (lock_file): Check whether the file was modified
15245         since it was visited even if 'create-lockfiles' is nil.  (Bug#18828)
15247         Fix keyboard macros that include function keys
15248         * src/keyboard.c (read_char_minibuf_menu_prompt): Record function
15249         keys in the macro before returning.  (Bug#20454)
15251 2015-05-08  Glenn Morris  <rgm@gnu.org>
15253         * build-aux/gitlog-to-changelog: Treat "Tiny-change" like
15254         "Copyright-paperwork-exempt".  (Bug#20324)
15256         * lisp/vc/log-edit.el: Handle "(tiny change)".  (Bug#20324)
15257         (log-edit-rewrite-tiny-change): New variable.
15258         (log-edit-insert-changelog): Maybe add "Copyright-paperwork-exempt".
15259         (log-edit-changelog-ours-p): Set log-edit-author to a cons.
15260         * etc/NEWS: Mention this.
15262         * lisp/calc/calc.el (math-zerop): Declare.
15264         * lisp/emacs-lisp/eieio-opt.el (help-fns-short-filename): Declare.
15266 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
15268         * lisp/emacs-lisp/subr-x.el (if-let): Fix debug spec.
15269         Support the case when BINDINGS is a single tuple.  (Bug#20525)
15271         * etc/NEWS: Fix typo in previous commit
15272         (14bb519f1034ddb38ce375cbad7095d9b07f8b26).
15274 2015-05-07  Jan D  <jan.h.d@swipnet.se>
15276         * configure.ac: Warn for multiple display crash for all Gtk+ versions.
15277         Output URL to Gtk+ bug (Bug#20452).
15279         * lisp/term/ns-win.el (ns-paste-secondary): Use gui-get-selection.
15281 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
15283         * lisp/emacs-lisp/package.el: New "external" package status.
15284         An external package is any installed package that's not built-in
15285         and not from `package-user-dir', which usually means it's from an
15286         entry in `package-directory-list'.  They are treated much like
15287         built-in packages, in that they cannot be through the Package Menu
15288         deleted and are not considered for upgrades.
15289         (package-desc-status): Identify if a package is installed outside
15290         `package-user-dir'.
15291         (package-menu--print-info-simple)
15292         (package-menu--status-predicate): Add support for it.
15293         * etc/NEWS: Document it.
15295 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
15297         * lisp/mail/rmail.el: Use lexical-binding.
15298         (rmail-bury): Remove unused var `buffer-to-bury'.
15299         (rmail-get-new-mail): Remove unused vars `opoint' and `success'.
15300         (rmail-parse-url): Remove unused var `proto', `user', and `host'.
15301         (rmail-unrmail-new-mail-maybe): Remove unused var `new-file'.
15302         (rmail-insert-inbox-text): Remove unused var `movemail'.
15303         (rmail-add-mbox-headers): Remove unused var `limit'.
15304         (rmail-undelete-previous-message): Remove unused var `value'.
15305         (rmail-reply): Remove unused vars `resent-to', `resent-cc',
15306         `resent-reply-to'.
15307         (rmail-mime-mbox-buffer, rmail-mime-view-buffer): Declare.
15308         (rmail-restore-desktop-buffer): Rename arguments.
15310 2015-05-06  Glenn Morris  <rgm@gnu.org>
15312         * Makefile.in (change-history-commit): Add missing piece of previous.
15314         Avoid unnecessary bumping of Makefile.in's timestamp
15315         * Makefile.in (gen_origin): Move to gitlog-to-emacslog.
15316         (emacslog): New variable.
15317         (ChangeLog): Use $emacslog.  Don't pass $gen_origin.
15318         (unchanged-history-files): Use $emacslog rather than Makefile.in.
15319         (change-history-nocommit): Store hash in $emacslog.
15320         * build-aux/gitlog-to-emacslog (gen_origin): Move default here.
15321         * admin/update_autogen (changelog_files): Update for the above.
15323         * Makefile.in: Don't always insist on removing existing "ChangeLog".
15324         (CHANGELOG): New variable.
15325         (no-ChangeLog): Remove.
15326         (ChangeLog): Replace "no-ChangeLog"; pass output file to script.
15327         (change-history-nocommit): Use a temp file rather than insisting
15328         on deletion of any existing "ChangeLog".
15330         * build-aux/gitlog-to-emacslog: Allow specification of output.
15332         * admin/update_autogen: Add option to update ChangeLog.
15333         (usage): Mention -H.
15334         (changelog_flag, changelog_n, changelog_files): New variables.
15335         (main): Check for -H, and maybe run change-history-nocommit.
15337 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
15339         * lisp/subr.el (delete-dups): Pre-size the hashtable.
15341         * lisp/emacs-lisp/cl.el (define-modify-macro): Make sure
15342         cl--arglist-args is defined (bug#20517).
15344 2015-05-06  Glenn Morris  <rgm@gnu.org>
15346         * Makefile.in (change-history-nocommit): New.
15348 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
15350         * lisp/cedet/pulse.el (pulse-momentary-unhighlight): Only cancel
15351         timer when it is non-nil
15352         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00223.html).
15354 2015-05-06  Glenn Morris  <rgm@gnu.org>
15356         Quieten CEDET compilation
15357         * lisp/cedet/semantic/db-el.el (semanticdb-elisp-sym->tag):
15358         Invert fboundp test to quieten on current Emacs.
15359         * lisp/cedet/ede/config.el (ede-shell-run-something)
15360         (semanticdb-file-table-object, semanticdb-needs-refresh-p)
15361         (semanticdb-refresh-table): Declare.
15362         (ede-preprocessor-map): Require semantic/db.
15364         Quieten cc-mode compilation
15365         * lisp/progmodes/cc-awk.el (c-forward-sws):
15366         * lisp/progmodes/cc-cmds.el (c-forward-subword, c-backward-subword):
15367         Declare.
15369 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
15371         * lisp/subr.el (delete-dups): Avoid nreverse.
15373 2015-05-06  Artur Malabarba  <bruce.connor.am@gmail.com>
15375         * lisp/subr.el (delete-dups): Make it destructive again.
15377 2015-05-06  Paul Eggert  <eggert@cs.ucla.edu>
15379         * doc/lispref/sequences.texi (Sequence Functions): Fix quoting.
15381 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
15383         * lisp/emacs-lisp/testcover.el: Don't use edebug--read (bug#20487).
15384         * lisp/emacs-lisp/testcover.el: Use lexical-binding.
15385         (testcover--read): Rename from testcover-read.  Change calling
15386         convention.  Use edebug-read-and-maybe-wrap-form now that edebug-read
15387         is gone.
15388         (testcover-start): Use add-function.  Move edebug-all-defs binding to
15389         testcover--read.
15390         (testcover-this-defun): Tighten scope of edebug-all-defs binding.
15391         (testcover-mark): Remove unused var `item'.
15392         * src/lread.c (syms_of_lread): Default load-read-function to `read'.
15394 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
15396         * lisp/subr.el (delete-dups): When there are more than 100 candidates,
15397           use a hash table.  This can result in ~500 times speed-up for typical
15398           collections of size 5000, like that of `load-library'.
15400 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
15402         CEDET: Avoid `oref' on classes in a few more cases
15403         * lisp/cedet/ede/generic.el (ede-find-target):
15404         * lisp/cedet/ede.el (ede-project-forms-menu): Avoid `oref' on classes.
15405         * lisp/cedet/semantic/bovine/gcc.el (semantic-gcc-setup): Remove unused
15406         var `prefix'.
15408         * lisp/cedet/semantic/symref/grep.el: Fix unused var warnings.
15409         (grepflags, greppattern): Declare.
15410         (semantic-symref-perform-search): Remove unused var `pat'.
15412         CEDET (srecode-compile-inserter): Avoid `oref' on classes
15413         * lisp/cedet/srecode/compile.el (srecode-compile-inserter):
15414         Avoid `oref' on classes (bug#20491).
15415         (srecode-compile-split-code): Remove unused var `key'.
15417 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
15419         Clean up pulse.el a little
15420         * lisp/cedet/pulse.el (pulse): Remove.
15421         (pulse-momentary-timer): Save instead of the stop time.
15422         (pulse-momentary-highlight-overlay):
15423         Call pulse-momentary-unhighlight first thing.
15424         Treat pulse-momentary-overlay as a single value, not a list.
15425         Save the created timer.  Only pass the stop time to the timer.
15426         (pulse-tick): Update accordingly.
15427         (pulse-momentary-unhighlight): Treat pulse-momentary-overlay as a
15428         single value.  Cancel the timer.
15430 2015-05-06  Tassilo Horn  <tsdh@gnu.org>
15432         * lisp/textmodes/reftex-cite.el (reftex-format-bib-entry):
15433         Support the biblatex journaltitle field.
15435 2015-05-05  Glenn Morris  <rgm@gnu.org>
15437         Minor declare-function improvement
15438         * lisp/emacs-lisp/bytecomp.el
15439         (byte-compile-macroexpand-declare-function):
15440         Handle declarations after calls.  (Bug#20509)
15442         * lisp/progmodes/js.el (js--optimize-arglist): Remove declaration.
15444         * lisp/w32-fns.el (w32-shell-name): Silence compiler.
15446 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
15448         Pulse using a timer
15449         * lisp/cedet/pulse.el (pulse-momentary-stop-time): New variable.
15450         (pulse-momentary-highlight-overlay): Set up the timer instead of
15451         calling `pulse'
15452         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/).
15453         (pulse-tick): New function.
15454         (pulse-momentary-unhighlight): Cut off the stop time.
15455         (pulse-delay): Update the docstring WRT to not using sit-for.
15457         Add semantic/symref/grep file patterns for ruby-mode
15458         * lisp/cedet/semantic/symref/grep.el
15459         (semantic-symref-filepattern-alist): Add patterns for ruby-mode.
15460         Clarify the docstring.
15462         Don't require match
15463         * lisp/progmodes/xref.el (xref--read-identifier): Don't require
15464         match.  That doesn't work for every command, and some identifier
15465         completion tables are bound to be imperfect anyway.
15467 2015-05-05  Stefan Monnier  <monnier@iro.umontreal.ca>
15469         * lisp/cedet/semantic/grammar.el: Fix compiler warnings (bug#20505).
15470         (semantic-grammar--template-expand): New function.
15471         (semantic-grammar-header, semantic-grammar-footer): Use it.
15472         (semantic-grammar--lex-block-specs): Remove unused var `block-spec'.
15473         (semantic-grammar-file-regexp): Refine regexp.
15474         (semantic-grammar-eldoc-get-macro-docstring):
15475         Use elisp-get-fnsym-args-string when available.
15476         (semantic-idle-summary-current-symbol-info): Use new elisp-* names
15477         instead of the old eldoc-* names.
15478         * lisp/emacs-lisp/eldoc.el (eldoc-docstring-format-sym-doc): Move back
15479         from elisp-mode.el.  Tweak calling convention.
15480         * lisp/progmodes/elisp-mode.el (package-user-dir): Declare.
15481         (elisp-get-fnsym-args-string): Add `prefix' argument.  Rename from
15482         elisp--get-fnsym-args-string.
15483         (elisp--highlight-function-argument): Add `prefix' arg.
15484         (elisp-get-var-docstring): Rename from elisp--get-var-docstring.
15485         (elisp--docstring-format-sym-doc): Move back to eldoc.el.
15487 2015-05-05  Glenn Morris  <rgm@gnu.org>
15489         * lisp/help-fns.el (describe-function-1):
15490         Handle builtins with advertised calling conventions.  (Bug#20479)
15492 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
15494         Merge branch 'seq-let'
15496         Update `seq-let' documentation
15497         * doc/lispref/sequences.texi: Update the documentation of `seq-let'
15498         with the support of  `&rest'.
15500         Add support for &rest in `seq-let'
15501         * lisp/emacs-lisp/seq.el (seq--make-bindings): Add support for `&rest'
15502         in the argument list.
15503         * test/automated/seq-tests.el: Add a test for parsing and binding
15504         `&rest' in `seq-let'.
15506 2015-05-05  Pierre Lorenzon  <devel@pollock-nageoire.net>  (tiny change)
15508         * lisp/emacs-lisp/eieio-custom.el (eieio-object-value-get):
15509         Add missing increment (Bug#20467).
15510         (eieio-object-value-create): Adjust to new slots representation
15511         (Bug#20467).
15512         (eieio-object-value-create): Fix missed adjustment to new
15513         representation of slots metadata.
15515 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
15517         * lisp/emacs-lisp/seq.el (seq--make-bindings): Improve the docstring.
15519 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
15521         Work around "Attempt to modify read-only object"
15522         * lisp/progmodes/elisp-mode.el (elisp--xref-format): Extract from
15523         elisp--xref-find-definitions, to work around "Attempt to modify
15524         read-only object" error.
15526         Only skip some variables that have function counterparts
15527         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
15528         Only skip minor-mode-named variable if it's defined in a Lisp
15529         file, and it's in minor-mode-list (bug#20506).
15530         * test/automated/elisp-mode-tests.el
15531         (elisp-xref-finds-both-function-and-variable)
15532         (elisp-xref-finds-only-function-for-minor-mode): New tests.
15534 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
15536         * lisp/progmodes/xref.el (xref--location-at-point): Revert the
15537         previous change.
15538         (xref--insert-xrefs): Buttonize the whole line, including the
15539         number at the beginning.
15541         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
15542         Make sure we're inside the let bindings.
15543         * test/automated/elisp-mode-tests.el
15544         (elisp-completes-functions-after-let-bindings): New test.
15546 2015-05-04  Glenn Morris  <rgm@gnu.org>
15548         * lisp/cedet/semantic/grammar.el (eldoc-function-argstring)
15549         (eldoc-docstring-format-sym-doc, eldoc-last-data-store)
15550         (eldoc-get-fnsym-args-string, eldoc-get-var-docstring):
15551         Remove outdated declarations.
15553         Replace instances of "(eval-when-compile (autoload ...))"
15554         * lisp/gnus/gnus-art.el (nneething-get-file-name):
15555         Declare rather than autoload.
15556         * lisp/gnus/gnus-async.el (gnus-html-prefetch-images):
15557         Remove pointless autoload.
15558         * lisp/gnus/gnus-sync.el (gnus-group-topic): Autoload at run-time.
15559         (gnus-topic-create-topic, gnus-topic-enter-dribble):
15560         Declare rather than autoload.
15561         * lisp/gnus/mm-archive.el (gnus-recursive-directory-files)
15562         (mailcap-extension-to-mime): Autoload at run-time.
15563         * lisp/gnus/mm-util.el (latin-unity-massage-name)
15564         (latin-unity-maybe-remap, latin-unity-representations-feasible-region)
15565         (latin-unity-representations-present-region):
15566         Declare rather than autoload.
15567         * lisp/gnus/mml-smime.el (epg-make-context)
15568         (epg-passphrase-callback-function): Autoload at run-time.
15569         (epg-context-set-signers, epg-context-result-for)
15570         (epg-new-signature-digest-algorithm)
15571         (epg-verify-result-to-string, epg-list-keys, epg-verify-string)
15572         (epg-sign-string, epg-encrypt-string)
15573         (epg-context-set-passphrase-callback, epg-sub-key-fingerprint)
15574         (epg-configuration, epg-expand-group, epa-select-keys):
15575         Declare rather than autoload.
15576         * lisp/gnus/nnir.el (nnimap-change-group, nnimap-make-thread-query):
15577         Autoload at run-time.
15578         (gnus-group-topic-name, nnimap-buffer, nnimap-command)
15579         (gnus-registry-get-id-key, gnus-registry-action):
15580         Declare rather than autoload.
15581         * lisp/gnus/nnmail.el (mail-send-and-exit): Autoload at run-time.
15582         * lisp/gnus/spam.el (spam-stat-buffer-change-to-non-spam)
15583         (spam-stat-buffer-change-to-spam, spam-stat-buffer-is-non-spam)
15584         (spam-stat-buffer-is-spam, spam-stat-load, spam-stat-save)
15585         (spam-stat-split-fancy): Remove pointless autoloads.
15586         * lisp/net/mairix.el: Load gnus-util when compiling.
15587         (gnus-group-read-ephemeral-group, gnus-summary-toggle-header)
15588         (message-field-value): Declare rather than autoload.
15589         (mairix-gnus-ephemeral-nndoc, mairix-gnus-fetch-field):
15590         Check gnus-alive-p is fbound.
15591         (vm-quit, vm-visit-folder, vm-select-folder-buffer)
15592         (vm-check-for-killed-summary, vm-error-if-folder-empty)
15593         (vm-get-header-contents, vm-select-marked-or-prefixed-messages):
15594         Declare rather than autoload.
15596         * lisp/gnus/mm-view.el (epg-decrypt-string): Autoload.
15598         * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
15599         (epg-sub-key-capability, epg-sub-key-validity): Fix declarations.
15601         * lisp/progmodes/elisp-mode.el (xref-collect-references): Declare.
15603         * lisp/emacs-lisp/debug.el (help-xref-interned): Update declaration.
15605         * lisp/allout.el (epg-user-id-string, epg-key-user-id-list):
15606         * lisp/emacs-lisp/package.el (epg-signature-status):
15607         Fix declarations.
15609         * lisp/play/gametree.el (gametree-show-children-and-entry)
15610         (gametree-apply-layout, gametree-mouse-show-subtree)
15611         (gametree-mouse-hide-subtree): Replace obsolete outline aliases.
15613         * lisp/emacs-lisp/check-declare.el (check-declare-verify):
15614         Handle cl-defgeneric, cl-defmethod.
15616 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
15618         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions):
15619         Highlight both type and symbol name.
15621         Insert, highlight and align line numbers in xref output
15622         * lisp/progmodes/etags.el (xref-location-line): Specialize for
15623         xref-etags-location.
15624         * lisp/progmodes/xref.el (xref-location-line): New generic method.
15625         (xref-file-location): Add reader for the line slot.
15626         (xref--location-at-point): Skip to the `xref-location' property.
15627         (xref--collect-reference): Drop the line number from description.
15628         (xref--insert-xrefs): Insert, highlight and align line numbers.
15630 2015-05-04  Daniel Colascione  <dancol@dancol.org>
15632         * lisp/simple.el (save-mark-and-excursion--save)
15633         (save-mark-and-excursion--restore): Fix previous commit
15634         (255a011f0ecf004b31c59945b10154b10fac3af1).
15636 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
15638         Don't pulse the indentation, or the newline
15639         * lisp/cedet/pulse.el (pulse-lighten-highlight)
15640         (pulse-reset-face): Fall back to the inherited background
15641         attribute in FACE.
15642         (pulse-momentary-highlight-region): Add autoload cookie.
15643         * lisp/progmodes/xref.el (xref--maybe-pulse): Don't highlight the
15644         indentation, or the newline, if the line's non-empty
15645         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00118.html).
15647 2015-05-04  Daniel Colascione  <dancol@dancol.org>
15649         Add `save-mark-and-excursion', which has the old
15650         `save-excursion' behavior
15651         * doc/lispref/positions.texi (Excursions):
15652         Document `save-mark-and-excursion'.
15653         * lisp/font-lock.el (font-lock-fontify-block):
15654         Use `save-mark-and-excursion' instead of `save-excursion',
15655         restoring Emacs 24 behavior.
15656         * lisp/simple.el (save-mark-and-excursion--save)
15657         (save-mark-and-excursion--restore): New functions.
15658         (save-mark-and-excursion): New user macro.
15659         * src/editfns.c (Fsave_excursion): Mention `save-mark-and-excursion'
15660         in `save-excursion' documentation.
15662 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
15664         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
15665         Classify lone symbol inside let varlist as variable.
15666         * test/automated/elisp-mode-tests.el
15667         (completest-variables-in-let-bindings): New test.
15669         Add xref-pulse-on-jump
15670         * lisp/cedet/pulse.el (pulse-momentary-highlight-one-line):
15671         Add autoload cookie.
15672         * lisp/progmodes/xref.el (xref-pulse-on-jump): New option.
15673         (xref--maybe-pulse): New function.
15674         (xref-pop-marker-stack, xref--pop-to-location)
15675         (xref--display-position): Use it.
15676         (xref--location-at-point): Use back-to-indentation.
15678 2015-05-04  Stefan Monnier  <monnier@iro.umontreal.ca>
15680         lisp/org/org-{macs,list}.el: Fix lexical warnings
15681         * lisp/org/org-list.el (org-list-struct): Remove unused var `ind'.
15682         (org-list-get-next-item, org-list-get-prev-item)
15683         (org-list-get-children): Mark unused arg `struct'.
15684         (org-list-use-alpha-bul-p): Remove unused var `bul'.
15685         (org-toggle-checkbox): Mark unused var.
15686         (org-update-checkbox-count): Remove unused var `box-num'.
15687         (org-adapt-indentation): Declare.
15688         (org-list-parse-list): Declare var instead of adding a dummy duplicate.
15689         (org-list-send-list): Remove unused var `txt'.
15690         (org-list-to-latex, org-list-to-texinfo): Mark unused arg `params'.
15691         (org-list-to-subtree): Add prefix to dyn-bind var, and declare them.
15692         * lisp/org/org-macs.el: Use `declare'.
15693         (org-with-limited-levels): Declare dyn-bound vars.
15695 2015-05-04  Eli Zaretskii  <eliz@gnu.org>
15697         Fix minor issues with CEDET on MS-Windows
15698         * lisp/cedet/semantic/symref/idutils.el
15699         (semantic-symref-parse-tool-output-one-line): Fix the search
15700         regexp to match MS-Windows file names with drive letters.
15701         (Bug#19468)
15702         * lisp/cedet/semantic/symref/grep.el
15703         (semantic-symref-grep-use-template): Remove "--color=always" from
15704         Grep switches on MS-Windows.
15705         (semantic-symref-grep-shell): Use shell-file-name as the default
15706         value, so this works not only on Posix platforms.
15707         (semantic-symref-perform-search): Use shell-quote-argument instead
15708         of literal '..' for portable quoting of Grep command-line
15709         argument.  Use shell-command-switch instead of a literal "-c".
15710         * lisp/cedet/semantic/bovine/gcc.el
15711         (semantic-gcc-get-include-paths): Use file-name-absolute-p to test
15712         for an absolute file name in a portable way.
15714 2015-05-04  Artur Malabarba  <bruce.connor.am@gmail.com>
15716         * lisp/emacs-lisp/package.el: Remove `package--silence' variable.
15717         (package-import-keyring, package-refresh-contents)
15718         (package-compute-transaction, package--save-selected-packages)
15719         (package-install-from-archive, package-delete)
15720         (package-menu--perform-transaction): Use `inhibit-message' instead.
15721         (package--compile): Set `warning-minimum-level' to :error.
15723 2015-05-03  Stefan Monnier  <monnier@iro.umontreal.ca>
15725         * lisp/term/screen.el (xterm-screen-extra-capabilities): New custom.
15726         (terminal-init-screen): Use it (bug#20356).
15727         * lisp/term/xterm.el: Provide `term/xterm' instead of `xterm'.
15728         (xterm--extra-capabilities-type): New const.
15729         (xterm-extra-capabilities): Use it.
15730         (xterm--version-handler): Lower the pseudo-version for `screen'.
15732 2015-05-03  Dmitry Gutov  <dgutov@yandex.ru>
15734         * lisp/progmodes/xref.el (xref--insert-xrefs): Tweak the faces.
15735         Always insert a newline at the end (to avoid mouse-face background
15736         tail at the last line).
15738         elisp-completion-at-point: Prioritize being quoted over funpos
15739         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
15740         Only consider function position when not inside quoted form
15741         (bug#20425).
15742         * test/automated/elisp-mode-tests.el: New file.
15744         Stop vc-print-log from jumping to the top
15745         * lisp/vc/vc.el (vc-print-log-internal): Pass nil
15746         GOTO-LOCATION-FUNC to vc-log-internal-common when WORKING-REVISION
15747         is not specified.
15748         (vc-incoming-outgoing-internal): Always pass nil.
15749         (vc-log-internal-common): When GOTO-LOCATION-FUNC is nil, don't
15750         call it, and don't set vc-sentinel-movepoint (bug#15322).
15751         (vc-print-root-log): Don't fetch the root working revision, nor
15752         pass it to vc-print-log-internal.
15754 2015-05-02  Michael Vehrs  <Michael.Burschik@gmx.de>
15756         Fix display of keyboard layouts for right-to-left scripts
15757         * lisp/international/quail.el (quail-insert-kbd-layout):
15758         Force left-to-right paragraph direction.
15760 2015-05-02  K. Handa  <handa@gnu.org>
15762         * src/cmds.c (internal_self_insert): When we insert spaces for
15763         padding, set point before the padding spaces, not after them.
15765 2015-05-02  Nicolas Petton  <nicolas@petton.fr>
15767         * lisp/emacs-lisp/seq.el (seq-p): New alias to `sequencep'.
15769 2015-05-02  Dmitry Gutov  <dgutov@yandex.ru>
15771         Fix etags-xref-find for references
15772         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
15773         Use `cl-mapcan'.
15774         * lisp/progmodes/etags.el (etags-xref-find): Ditto.  Prompt for
15775         directory if no tags tables are loaded (bug#19468).
15777 2015-05-02  Philipp Stephani  <phst@google.com>
15779         Update the options in whitespace-style defcustom
15780         * lisp/whitespace.el (whitespace-style): Use `set' instead of a
15781         `repeat' because the option is really set-like.  Add missing
15782         options.  Reorder options to match the order in the
15783         documentation.  (Bug#20346)
15785 2015-05-02  Eli Zaretskii  <eliz@gnu.org>
15787         Fix error diagnostics of c-macro-expand
15788         * lisp/progmodes/cmacexp.el (c-macro-expansion): Don't bail out
15789         too early if no start-marker string was found -- that generally
15790         means cpp exited abnormally, and we still want to show its error
15791         messages to the user.
15793         Don't require Texinfo 5.0 for Emacs documentation
15794         * doc/emacs/docstyle.texi: Use "@set txicodequoteundirected" and
15795         "@set txicodequotebacktick" instead of "@codequotebacktick on" and
15796         "@codequoteundirected on", respectively, to avoid requiring
15797         Texinfo 5.x for Emacs documentation.
15799 2015-05-01  Simen Heggestøyl  <simenheg@gmail.com>
15801         * lisp/files.el (pwd):
15802         When called with a prefix argument, insert the current default
15803         directory at point.
15805 2015-05-01  Stefan Monnier  <monnier@iro.umontreal.ca>
15807         * lisp/isearch.el (isearch-mode-map): Allow backspace remapping
15808         * lisp/isearch.el (isearch-mode-map): Don't inhibit
15809         function-key-map remapping for backspace (bug#20466).
15811 2015-05-01  Dmitry Gutov  <dgutov@yandex.ru>
15813         Implement xref-find-references in etags and elisp-mode
15814         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references): New function.
15815         (elisp-xref-find): Use it.
15816         * lisp/progmodes/etags.el (etags-xref-find): Use `xref-collect-references'.
15817         * lisp/progmodes/xref.el (xref-collect-references):
15818         (xref--collect-reference): New functions.
15820 2015-05-01  Paul Eggert  <eggert@cs.ucla.edu>
15822         Prefer plain characters to Texinfo circumlocutions
15823         For example, prefer 'François' to 'Fran\c{c}ois', 'Fran\c cois',
15824         'Fran@,{c}ois' or 'Francois' (all of which were used!) in Texinfo sources.
15826         Fix single-quoting style in PDF manuals
15827         The PDF versions of the GNU manuals used curved single quotes to
15828         represent grave accent and apostrophe, which made it a pain to cut
15829         and paste code examples from them.  Fix the PDF versions to use
15830         grave accent and apostrophe for Lisp source code, keystrokes, etc.
15831         This change does not affect the info files, nor does it affect
15832         ordinary uses of curved single quotes in PDF.
15833         * doc/emacs/docstyle.texi: New file, which specifies treatment for
15834         grave accent and apostrophe, as well as the document encoding.
15835         * doc/emacs/emacs-xtra.texi, doc/emacs/emacs.texi:
15836         * doc/lispintro/emacs-lisp-intro.texi:
15837         * doc/lispref/back.texi, doc/lispref/book-spine.texi:
15838         * doc/lispref/elisp.texi, doc/lispref/lay-flat.texi:
15839         * doc/misc/ada-mode.texi, doc/misc/auth.texi:
15840         * doc/misc/autotype.texi, doc/misc/bovine.texi, doc/misc/calc.texi:
15841         * doc/misc/cc-mode.texi, doc/misc/cl.texi, doc/misc/dbus.texi:
15842         * doc/misc/dired-x.texi, doc/misc/ebrowse.texi, doc/misc/ede.texi:
15843         * doc/misc/ediff.texi, doc/misc/edt.texi, doc/misc/efaq-w32.texi:
15844         * doc/misc/efaq.texi, doc/misc/eieio.texi, doc/misc/emacs-gnutls.texi:
15845         * doc/misc/emacs-mime.texi, doc/misc/epa.texi, doc/misc/erc.texi:
15846         * doc/misc/ert.texi, doc/misc/eshell.texi, doc/misc/eudc.texi:
15847         * doc/misc/eww.texi, doc/misc/flymake.texi, doc/misc/forms.texi:
15848         * doc/misc/gnus-coding.texi, doc/misc/gnus-faq.texi:
15849         * doc/misc/gnus.texi, doc/misc/htmlfontify.texi:
15850         * doc/misc/idlwave.texi, doc/misc/ido.texi, doc/misc/info.texi:
15851         * doc/misc/mairix-el.texi, doc/misc/message.texi, doc/misc/mh-e.texi:
15852         * doc/misc/newsticker.texi, doc/misc/nxml-mode.texi:
15853         * doc/misc/octave-mode.texi, doc/misc/org.texi, doc/misc/pcl-cvs.texi:
15854         * doc/misc/pgg.texi, doc/misc/rcirc.texi, doc/misc/reftex.texi:
15855         * doc/misc/remember.texi, doc/misc/sasl.texi, doc/misc/sc.texi:
15856         * doc/misc/semantic.texi, doc/misc/ses.texi, doc/misc/sieve.texi:
15857         * doc/misc/smtpmail.texi, doc/misc/speedbar.texi:
15858         * doc/misc/srecode.texi, doc/misc/todo-mode.texi, doc/misc/tramp.texi:
15859         * doc/misc/url.texi, doc/misc/vhdl-mode.texi, doc/misc/vip.texi:
15860         * doc/misc/viper.texi, doc/misc/widget.texi, doc/misc/wisent.texi:
15861         * doc/misc/woman.texi:
15862         Use it instead of '@documentencoding UTF-8', to lessen the need for
15863         global changes like this in the future.
15864         * doc/emacs/Makefile.in (EMACS_XTRA):
15865         * doc/lispintro/Makefile.in (srcs):
15866         * doc/lispref/Makefile.in (srcs):
15867         Add dependency on docstyle.texi.
15868         * doc/misc/Makefile.in (style): New macro.
15869         (${buildinfodir}/%.info, %.dvi, %.pdf, %.html)
15870         (${buildinfodir}/ccmode.info, ${buildinfodir}/efaq%.info, gnus_deps):
15871         Use it.
15873 2015-05-01  Glenn Morris  <rgm@gnu.org>
15875         * test/automated/cl-lib-tests.el (cl-lib-adjoin-test): Fix it.
15877         * lisp/emacs-lisp/pcase.el (get-edebug-spec, edebug-match)
15878         (help-fns--signature): Declare.
15880         * lisp/emacs-lisp/pcase.el (pcase--make-docstring): Require help-fns.
15882 2015-05-01  Nicolas Petton  <nicolas@petton.fr>
15884         New macro seq-let, providing destructuring support to seq.el
15885         * lisp/emacs-lisp/seq.el (seq-let): New macro.  `seq-let' is similar
15886         to `cl-destructuring-bind' but works on all sequence types supported
15887         by `seq.el'.  Bump version number to 1.6.
15888         * test/automated/seq-tests.el: Add tests for seq-let.
15889         * doc/lispref/sequences.texi: Add documentation for seq-let.
15891 2015-05-01  Pontus Michael  <m.pontus@gmail.com>
15893         * lisp/simple.el (blink-matching-open): Better behavior in minibuffer.
15895 2015-05-01  Glenn Morris  <rgm@gnu.org>
15897         * lisp/emacs-lisp/ert.el (ert--special-operator-p): Fix previous.
15899 2015-05-01  Artur Malabarba  <bruce.connor.am@gmail.com>
15901         * lisp/emacs-lisp/bytecomp.el: Revert "Silence noninteractive compilations"
15902         This reverts commit 9a7ddde977378cb5276a81476ae458889c403267.
15903         This reverts commit 3c0ea587daf8b17960b90603a70e3ac4057d883d.
15904         With message: "* lisp/emacs-lisp/bytecomp.el: Use `inhibit-message'".
15905         (Bug#20445).
15907 2015-05-01  K. Handa  <handa@gnu.org>
15909         * lisp/international/mule-cmds.el (input-method-use-echo-area):
15910         Change :type to 'boolean.
15912 2015-05-01  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15914         Start using proportional fonts in eww by default
15915         * lisp/net/shr.el (shr-use-fonts): Switch the default to t, since
15916         it seems to work well.
15918         Fix links in tables in shr
15919         * lisp/net/shr.el: Remove `shr-inhibit-decoration', because that
15920         makes (some) links in tables not work.
15922 2015-05-01  Jan D  <jan.h.d@swipnet.se>
15924         * lisp/term/ns-win.el (ns-get-cut-buffer-internal): Remove this alias.
15926 2015-04-30  Glenn Morris  <rgm@gnu.org>
15928         * lisp/emacs-lisp/ert.el (ert--special-operator-p):
15929         Update for 2015-02-08 change to indirect-function.
15931         * lisp/term/ns-win.el (ns-get-selection-internal):
15932         Remove declaration for function deleted 2014-10-21.
15934         * lisp/dom.el: Load subr-x when compiling, for when-let.
15936         Silence some compilation warnings
15937         * lisp/emacs-lisp/check-declare.el (compilation-forget-errors):
15938         * lisp/emulation/cua-base.el (delete-active-region):
15939         * lisp/net/net-utils.el (w32-get-console-output-codepage):
15940         * lisp/term/ns-win.el (ns-own-selection-internal)
15941         (ns-disown-selection-internal, ns-selection-owner-p)
15942         (ns-selection-exists-p, ns-get-selection):
15943         Declare for compiler.
15945         Function declaration updates prompted by 'make check-declare'
15946         * lisp/emacs-lisp/package.el (lm-homepage):
15947         * lisp/gnus/gnus-util.el (iswitchb-read-buffer):
15948         * lisp/gnus/mm-decode.el (libxml-parse-html-region):
15949         * lisp/gnus/mml.el (libxml-parse-html-region):
15950         * lisp/gnus/nnrss.el (libxml-parse-html-region):
15951         * lisp/net/eww.el (libxml-parse-html-region):
15952         * lisp/net/shr.el (libxml-parse-html-region):
15953         * lisp/vc/vc-bzr.el (vc-annotate-convert-time):
15954         * lisp/vc/vc-cvs.el (vc-annotate-convert-time):
15955         * lisp/vc/vc-git.el (vc-annotate-convert-time):
15956         * lisp/vc/vc-hg.el (vc-annotate-convert-time):
15957         * lisp/vc/vc-mtn.el (vc-annotate-convert-time):
15958         * lisp/vc/vc-rcs.el (vc-annotate-convert-time):
15959         Update declaration.
15961         Remove compatibility code for 20-year old function renaming
15962         * lisp/progmodes/idlw-shell.el (idlwave-shell-comint-filter):
15963         Make it an obsolete alias.
15964         (idlwave-shell-filter): Change all uses to comint-output-filter.
15966 2015-04-30  Tassilo Horn  <tsdh@gnu.org>
15968         Add ace-window face config
15969         * etc/themes/tsdh-light-theme.el (tsdh-light): Add ace-window face
15970         configuration.
15972 2015-04-30  Paul Eggert  <eggert@cs.ucla.edu>
15974         Unclutter 'make doc' output a bit
15975         * Makefile.in ($(DOCS), $(INSTALL_DOC), $(UNINSTALL_DOC)):
15976         Use make subst rather than sh IFS to split target string apart.
15977         This makes 'make' output easier to follow.
15979         Merge from gnulib
15980         * doc/misc/texinfo.tex: Update from gnulib.
15982 2015-04-30  Artur Malabarba  <bruce.connor.am@gmail.com>
15984         * lisp/emacs-lisp/package.el: Some speed optimizations on menu refresh.
15985         (package-menu--print-info): Obsolete.
15986         (package-menu--print-info-simple): New function.
15987         (package-menu--refresh): Use it, simplify code, and improve
15988         performance.
15989         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print-entry):
15990         Tiny performance improvement.
15992         * lisp/emacs-lisp/package.el (package--message): inhibit-message.
15994 2015-04-29  Paul Eggert  <eggert@cs.ucla.edu>
15996         Omit -Wstrict-overflow workaround in GCC 5
15997         * src/process.c: Remove workaround for GCC -Wstrict-overflow bug
15998         if it's GCC 5 or later, as the bug appears to be fixed in GCC 5.1.
16000         Merge from gnulib
16001         This incorporates:
16002         2015-04-29 extern-inline: no need for workaround in GCC 5.1
16003         2015-04-26 file-has-acl: port to CentOS 6
16004         * m4/acl.m4, m4/extern-inline.m4: Update from gnulib.
16006 2015-04-29  Helmut Eller  <eller.helmut@gmail.com>
16008         Set next-error-* in xref--xref-buffer-mode
16009         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
16010         Set `next-error-function' and `next-error-last-buffer'.
16011         (xref--next-error-function): New function.
16012         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01311.html)
16014 2015-04-29  Fabián Ezequiel Gallina  <fgallina@gnu.org>
16016         python.el: Fix warnings on looking-back calls missing LIMIT
16017         * lisp/progmodes/python.el (python-shell-accept-process-output):
16018         Pass LIMIT arg to looking-back.
16020 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
16022         * lisp/emacs-lisp/package.el: Use pushnew for downloads in progress.
16023         (package--download-and-read-archives): Use pushnew instead of
16024         append.  If something terrible happened during a previous
16025         download, simply refreshing should now make things work again.
16027 2015-04-29  Dmitry Gutov  <dgutov@yandex.ru>
16029         Introduce etags-xref-find-definitions-tag-order
16030         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
16031         New variable.
16032         (etags--xref-find-definitions): Use it (bug#19468).
16034 2015-04-29  Eli Zaretskii  <eliz@gnu.org>
16036         PATH- and completion-related fixes in Eshell on MS-Windows
16037         * lisp/eshell/esh-ext.el (eshell-search-path): When running on
16038         MS-Windows, prepend "." to list of directories produced from PATH,
16039         as Windows always implicitly searches the current directory first.
16040         (eshell-force-execution): Make it have a non-nil default value on
16041         MS-Windows and MS-DOS.
16042         * lisp/eshell/em-cmpl.el (eshell-complete-commands-list): If
16043         eshell-force-execution is non-nil, complete on readable files and
16044         directories, not only executables.  When running on MS-Windows,
16045         prepend "." to list of directories produced from PATH, as Windows
16046         always implicitly searches the current directory first.
16048 2015-04-29  Sam Steingold  <sds@gnu.org>
16050         Bury RCIRC buffers when there is no activity
16051         * lisp/net/rcirc.el (rcirc-non-irc-buffer): Remove.
16052         (rcirc-bury-buffers): New function.
16053         (rcirc-next-active-buffer): When there is no new activity, use
16054         `rcirc-bury-buffers' to hide all RCIRC buffers.
16056 2015-04-29  Krzysztof Jurewicz  <krzysztof.jurewicz@gmail.com>  (tiny change)
16058         Fix DBUS query result parsing for secrets-search-items
16059         * lisp/net/secrets.el (secrets-search-items): Fix DBUS query result
16060         parsing.  The function assumed that return value of the
16061         SearchItems method called on a collection is a list of two lists,
16062         however this is true only when no collection is specified.  GNOME
16063         had used to incorrectly return a list of two lists in both cases,
16064         but this was already fixed:
16065         https://bugzilla.gnome.org/show_bug.cgi?id=695115 .  Also fix an
16066         incorrect information in the secrets-search-items’ docstring.
16067         (Bug#20449)
16069 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
16071         * lisp/emacs-lisp/bytecomp.el (byte-compile--message):
16072         Use `inhibit-message' instead of hiding the previous message
16073         with (message nil).
16075 2015-04-29  Oleh Krehel  <ohwoeowho@gmail.com>
16077         Remove the deprecated INTERNAL_FIELD macro by expanding it
16078         * src/lisp.h (INTERNAL_FIELD): Remove.
16079         (DEFVAR_KBOARD): Modify accordingly.
16080         * src/alloc.c, src/buffer.c, src/buffer.h, src/category.c:
16081         * src/keyboard.c, src/keyboard.h, src/syntax.c: Adjust users.
16082         * src/buffer.c (compact_buffer): Use BVAR.
16084 2015-04-29  Glenn Morris  <rgm@gnu.org>
16086         Replace an obsolete function alias
16087         * lisp/isearch.el (isearch-yank-x-selection):
16088         * lisp/mouse-copy.el (mouse-drag-secondary-pasting)
16089         (mouse-drag-secondary-moving):
16090         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
16091         Replace obsolete alias x-get-selection with gui-get-selection.
16093 2015-04-29  Stefan Monnier  <monnier@iro.umontreal.ca>
16095         * lisp/mail/rmailsum.el: Use lexical-binding.
16097 2015-04-29  Glenn Morris  <rgm@gnu.org>
16099         * test/automated/package-test.el (package-test-update-archives-async):
16100         Skip test on hydra.nixos.org.
16102 2015-04-28  Glenn Morris  <rgm@gnu.org>
16104         * lisp/foldout.el: Update for 2015-01-30 outline.el changes.
16105         (foldout-zoom-subtree, foldout-exit-fold, foldout-mouse-show)
16106         (foldout-mouse-hide-or-exit): Use new names for outline functions.
16108         * lisp/cedet/semantic/bovine/c.el (semantic-c-do-lex-if):
16109         Update for 2014-06-26 hideif.el change.
16111         * lisp/mail/rmailsum.el: Fix search for encoded subjects.  (Bug#19088)
16112         (rmail--decode-and-apply): New function.
16113         (rmail-message-regexp-p-1, rmail-message-subject-p): Use it.
16115         * lisp/mail/rmail.el (rmail-highlighted-headers): Fix :type.
16117 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
16119         * lisp/emacs-lisp/package.el: Fix priority-hiding corner case
16120         (package-menu--refresh): Delegate obsolete-hiding to
16121         `package--remove-hidden'.
16122         (package--remove-hidden): Disregard high-priority package if it is
16123         older than the installed one.
16125 2015-04-28  Paul Eggert  <eggert@cs.ucla.edu>
16127         Update source file encoding list
16128         Update admin/notes/unicode, along with coding system cookies in
16129         other files, so that the two match each other better.
16130         * admin/notes/unicode: lisp/language/ethio-util.el and
16131         lisp/language/ethiopic.el also use utf-8-emacs.
16132         * admin/notes/hydra, doc/misc/dbus.texi, doc/misc/org.texi:
16133         * doc/misc/remember.texi, etc/refcards/cs-dired-ref.tex:
16134         * etc/refcards/cs-refcard.tex, etc/refcards/cs-survival.tex:
16135         * etc/refcards/sk-dired-ref.tex, etc/refcards/sk-refcard.tex:
16136         * etc/refcards/sk-survival.tex:
16137         Add "coding: utf-8" so that this file is not mishandled in a
16138         Latin-1 or Big-5 locale.
16139         * lisp/international/robin.el, lisp/org/ox-ascii.el:
16140         Specify utf-8, not utf-8-emacs, as these are plain UTF-8 files.
16141         * lisp/language/ethio-util.el: Fix trailer.
16143 2015-04-28  Eli Zaretskii  <eliz@gnu.org>
16145         Fix synchronous invocation of Ispell
16146         * lisp/textmodes/ispell.el (ispell-init-process): Assign a non-nil
16147         value to ispell-process-directory before calling ispell-init-process.
16148         Don't call set-process-coding-system if ispell-async-processp is nil.
16149         (Bug#20448)
16151 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
16153         * lisp/emacs-lisp/package.el: Skip space and comments in init file
16154         (package--ensure-init-file): Insert snippet at first
16155         non-whitespace non-comments line.  Respects local-vars at the top
16156         of the file.
16158 2015-04-28  Glenn Morris  <rgm@gnu.org>
16160         * lisp/mail/rmail.el (rmail-copy-headers):
16161         Handle rmail-nonignored-headers being nil.  (Bug#18878)
16163         * lisp/subr.el (delay-mode-hooks): Fix doc typo.
16165         * lisp/vc/vc-bzr.el (vc-bzr-after-dir-status):
16166         Don't get confused by a bzrlib version mismatch warning.
16168 2015-04-27  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
16170         Change default location of EUDC options file
16171         * etc/NEWS: Document change to EUDC options file's default location.
16172         * lisp/net/eudc-vars.el (eudc-options-file): Use
16173         `locate-user-emacs-file' to change default options file location.
16175 2015-04-27  Glenn Morris  <rgm@gnu.org>
16177         * test/automated/package-test.el (package-test-update-archives-async):
16178         Try to handle the test server script dying.
16180 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
16182         * lisp/saveplace.el (save-place-mode): New minor mode.
16183         (save-place): Redefine as an obsolete alias.
16185         * lisp/midnight.el: Make it a minor mode.  Allow predicates.
16186         * lisp/midnight.el: Use lexical-binding.
16187         (midnight-mode): Make it a proper minor mode.
16188         (midnight-buffer-display-time): Make arg non-optional.
16189         (midnight-find): Remove.
16190         (clean-buffer-list-kill-never-regexps)
16191         (clean-buffer-list-kill-regexps): Tweak type for new function choice.
16192         (clean-buffer-list-delay): Allow clean-buffer-list-kill-regexps to
16193         contain functions.
16194         (clean-buffer-list): Use cl-find.
16195         Allow clean-buffer-list-kill-never-regexps to contain functions.
16197 2015-04-27  Nicolas Petton  <nicolas@petton.fr>
16199         Bump version of seq.el to 1.5
16200         * lisp/emacs-lisp/seq.el (seq-doseq): Remove undocumented return value
16201         from seq-doseq.  Bump version number of seq.el.
16203 2015-04-27  Glenn Morris  <rgm@gnu.org>
16205         * lisp/mail/rmail.el (rmail-reply):
16206         Decode subject before matching "Re:" prefix.  (Bug#20396)
16208 2015-04-27  Artur Malabarba  <bruce.connor.am@gmail.com>
16210         * lisp/emacs-lisp/package.el: Small improvements
16211         (package--with-work-buffer-async): More informative error.
16212         (package-install-user-selected-packages): Rename to
16213         `package-install-selected-packages'.
16215 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
16217         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last
16218         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last change.
16219         (eieio--class-make): Remove leftover `tag'.
16221 2015-04-27  Glenn Morris  <rgm@gnu.org>
16223         * lisp/gnus/message.el (gnus-extract-address-components):
16224         Remove bogus declaration that was masking previous problem.
16226 2015-04-27  Nicolas Graner  <nicolas.graner@u-psud.fr>  (tiny change)
16228         * lisp/gnus/message.el (message-insert-formatted-citation-line):
16229         Fix typo.  (Bug#20318)
16231 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
16233         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Reuse oldc.
16235         * lisp/textmodes/reftex-toc.el: Improve multi-frame behavior
16236         * lisp/textmodes/reftex-toc.el (reftex-toc-revert): Avoid displaying
16237         the buffer in yet another frame.
16238         (reftex-toc-visit-location): Make sure toc-window has focus at the end
16239         when `final' is nil.
16240         (reftex--rebuilding-toc): Defvar to avoid `boundp' and
16241         silence warnings.  Use `--' to clarify that it's internal.
16242         (reftex-toc-next, reftex-toc-previous, reftex-toc-demote)
16243         (reftex-toc-promote): Clarify unused argument.
16244         (reftex--pro-or-de, reftex--start-line, reftex--mark-line):
16245         Add `reftex--' prefix.  Fix all users.
16246         (reftex-toc-promote-prepare): Use _ for dummy variable.
16247         (reftex-toc-restore-region): Rename `m.
16249 2015-04-27  Eli Zaretskii  <eliz@gnu.org>
16251         Fix a typo in bibtex.el
16252         * lisp/textmodes/bibtex.el (bibtex-insert-kill): Fix a typo from
16253         last change.  (Bug#20429)
16255         Fix redisplay of frame after loading new fonts
16256         * src/xdisp.c (redisplay_internal): When retrying redisplay of
16257         a frame because new fonts were loaded, disable all redisplay
16258         optimizations on that frame by calling SET_FRAME_GARBAGED.
16259         (Bug#20410)
16261 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
16263         * lisp/info.el (Info-menu): Properly provide the `default'
16264         (Bug#20391)
16266         * lisp/progmodes/elisp-mode.el (elisp--get-fnsym-args-string):
16267         Catch errors from documentation (bug#20418).
16268         (emacs-lisp-mode-abbrev-table): Remove redundant defvar.
16270 2015-04-26  Stefan Monnier  <monnier@iro.umontreal.ca>
16272         * lisp/emacs-lisp/package.el: Move variables to silence byte-compiler.
16273         Remove redundant ":group 'package".
16275 2015-04-26  Eli Zaretskii  <eliz@gnu.org>
16277         Fix a typo in rmail.el
16278         * lisp/mail/rmail.el (rmail-ensure-blank-line): Fix a typo in the
16279         last commit.  (Bug#20429)
16281 2015-04-26  Dmitry Gutov  <dgutov@yandex.ru>
16283         Introduce xref-prompt-for-identifier
16284         * lisp/progmodes/xref.el (xref-prompt-for-identifier): New option.
16285         (xref--read-identifier): Use it
16286         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01205.html).
16288 2015-04-26  João Távora  <joaotavora@gmail.com>
16290         `tex-insert-quote' after single `'' opens quotes instead of closing
16291         Without this, it's very hard to precede double quotes with the
16292         apostrophe character, i.e. insert the sequence '``
16293         (quote-backquote-backquote), commonly useful in portuguese, for
16294         instance.
16295         * lisp/textmodes/tex-mode.el (tex-insert-quote): Add ?' to the list of
16296         preceding chars making `tex-insert-quote' be in the "opening" context.
16298 2015-04-25  Dmitry Gutov  <dgutov@yandex.ru>
16300         Pass `id' to `completing-read' as def instead of initial input
16301         * lisp/progmodes/xref.el (xref--read-identifier): Pass `id' to
16302         `completing-read' as the default value instead of initial input
16303         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01182.html).
16305 2015-04-25  Paul Eggert  <eggert@cs.ucla.edu>
16307         Don't freeze with unreadable processes
16308         Don't freeze if an exiting process can't be read from.  (Bug#19860).
16309         This fixes a bug I introduced in
16310         2014-07-08T07:24:07Z@eggert@cs.ucla.edu
16311         "* process.c: Add sanity checks for file descriptors."
16312         Dmitry Gutov did most of the legwork in finding the problem.
16313         * src/process.c (wait_reading_process_output):
16314         Treat non-running processes that can't be read from
16315         the same as other non-running processes.
16317 2015-04-25  Alan Mackenzie  <acm@muc.de>
16319         Fix change from 2015-04-22 "On C-y, stop some text property entries ..."
16320         * lisp/subr.el (remove-yank-excluded-properties): Put
16321         `with-silent-modifications' around only the last three lines of code.
16323 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
16325         * lisp/emacs-lisp/package.el (package-all-keywords): Don't cache
16326         (package--all-keywords): Deleted variable.
16328         * etc/NEWS: Document package-hiding functionality.
16330 2015-04-25  Eli Zaretskii  <eliz@gnu.org>
16332         * lisp/window.el (recenter-last-op): Doc fix.  (Bug#20419)
16334         Clarify the doc string of 'replace-regexp-in-string'
16335         * lisp/subr.el (replace-regexp-in-string): Doc fix.  (Bug#20395)
16337         Improve doc string of 'insert-buffer-substring'
16338         * src/editfns.c (Finsert_buffer_substring): Doc fix.  (Bug#20421)
16340         MS-Windows followup for the recent gnulib update
16341         * nt/gnulib.mk (libgnu_a_SOURCES): Replace file-has-acl.c with
16342         acl-internal.c.
16344 2015-04-24  Paul Eggert  <eggert@cs.ucla.edu>
16346         Spelling fixes
16348         Merge from gnulib
16349         This incorporates:
16350         2015-04-24 file-has-acl: new module, split from acl
16351         2015-04-24 manywarnings: add GCC 5.1 warnings
16352         2015-04-21 lstat: fix cross-compilation 'ln -s' problem
16353         2015-04-15 qacl: Simplify HP-UX acl_nontrivial check
16354         2015-04-15 acl: On Linux, check for acls without libacl
16355         2015-04-14 tempname: avoid unused parameter warnings (trivial)
16356         * lib/acl-internal.c: New file, from gnulib.
16357         * lib/file-has-acl.c: Remove; no longer imported from gnulib.
16358         * lib/acl-internal.h, lib/gnulib.mk, lib/qcopy-acl.c, lib/tempname.c:
16359         * m4/acl.m4, m4/gnulib-comp.m4, m4/lstat.m4, m4/manywarnings.m4:
16360         Update from gnulib.
16362         Port --enable-gcc-warnings to GCC 5.1 x86-64
16363         * lib-src/ebrowse.c (dump_sym):
16364         * lib-src/hexl.c (main):
16365         * src/ccl.c (ccl_driver):
16366         * src/character.c (string_escape_byte8):
16367         * src/dbusbind.c (xd_retrieve_arg, xd_add_watch):
16368         * src/gnutls.c (Fgnutls_boot):
16369         * src/gtkutil.c (xg_check_special_colors):
16370         * src/image.c (x_build_heuristic_mask):
16371         * src/print.c (safe_debug_print, print_object):
16372         * src/term.c (produce_glyphless_glyph):
16373         * src/xdisp.c (get_next_display_element)
16374         (produce_glyphless_glyph):
16375         * src/xterm.c (x_draw_glyphless_glyph_string_foreground):
16376         Don't use a signed format to print an unsigned integer, or vice
16377         versa.  GCC 5.1's new -Wformat-signedness option warns about this.
16378         * src/image.c (png_load_body, jpeg_load_body):
16379         Silence a bogus setjump diagnostic from GCC 5.1 (GCC bug 54561).
16381 2015-04-24  Tassilo Horn  <tsdh@gnu.org>
16383         Add new faces to tsdh-light-theme
16384         * etc/themes/tsdh-light-theme.el (tsdh-light): New face
16385         definitions for Info-quoted, ace-jump-face-foreground,
16386         hl-paren-face, show-paren-match, and show-paren-mismatch.
16388 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
16390         * lisp/emacs-lisp/seq.el (seq-doseq): Fix the macro.
16392 2015-04-24  Glenn Morris  <rgm@gnu.org>
16394         * build-aux/gitlog-to-emacslog:
16395         Use raw log format rather than wrapped one.
16397 2015-04-24  Stefan Monnier  <monnier@iro.umontreal.ca>
16399         * lisp/emacs-lisp/seq.el (seq-doseq): Tighten the code.
16400         (seq-doseq): Fix out-of-scope binding.
16401         Don't call `seq-length at every iteration.
16402         Reduce `if's from 3 to 2 per iteration.
16403         (emacs-lisp-mode-hook): Don't tweak in Emacs≥25.
16405 2015-04-24  Glenn Morris  <rgm@gnu.org>
16407         * lisp/textmodes/text-mode.el (text-mode-hook):
16408         Move text-mode-hook-identify to default.
16410         * lisp/mouse.el (minor-mode-menu-from-indicator):
16411         Handle non-function members of minor-mode-map-alist.  (Bug#20201)
16413         * lisp/help-fns.el (describe-function): More type checking.
16414         (describe-function-1): Handle changed symbol-function.  (Bug#20201)
16416         * build-aux/gitlog-to-emacslog: Convert "Fixes:" to "(Bug#)".
16417         (Bug#20325)
16419 2015-04-24  Andreas Schwab  <schwab@linux-m68k.org>
16421         shr: strip leading whitespace when expanding URLs
16422         * lisp/net/shr.el (shr-expand-url): Strip leading whitespace from URL.
16424 2015-04-24  Eli Zaretskii  <eliz@gnu.org>
16426         Clarify "co-authored" some more
16428         * CONTRIBUTE: Clarify "co-authored-by".  (Bug#20400)
16430         Clarify doc strings of functions that search for properties
16431         * src/textprop.c (Fnext_char_property_change)
16432         (Fprevious_char_property_change)
16433         (Fnext_single_char_property_change)
16434         (Fprevious_single_char_property_change, Fnext_property_change)
16435         (Fnext_single_property_change, Fprevious_property_change)
16436         (Fprevious_single_property_change): Clarify doc strings wrt return
16437         value and the optional LIMIT argument.  (Bug#20411)
16439 2015-04-24  Glenn Morris  <rgm@gnu.org>
16441         * test/automated/message-mode-tests.el (message-mode-propertize):
16442         Handle non-writable HOME; eg on hydra.nixos.org.
16444 2015-04-23  Eli Zaretskii  <eliz@gnu.org>
16446         Avoid starting threads by w32-shell-execute
16447         * src/w32fns.c (Fw32_shell_execute): Convert "file:///" URLs into
16448         local file names, before invoking ShellExecute.  (Bug#20220)
16450 2015-04-23  Martin Rudalics  <rudalics@gmx.at>
16452         Fix following doc-links in `widget-documentation-link-action'
16453         * lisp/wid-edit.el (widget-documentation-link-action): Make
16454         following doc-links less simplistic (Bug#20398).
16456 2015-04-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
16458         Improve EUDC manual
16459         * doc/misc/eudc.texi (Troubleshooting):
16460         New LDAP troubleshooting subsection.
16462 2015-04-22  Paul Eggert  <eggert@cs.ucla.edu>
16464         Omit needless "\ " after multibyte then newline
16465         * src/print.c: Include <c-ctype.h>, for c_isxdigit.
16466         (print_object): When print-escape-multibyte is non-nil and a
16467         multibyte character is followed by a newline or formfeed, followed
16468         by a hex digit, don't output a needless "\ " before the hex digit.
16469         * test/automated/print-tests.el (print-hex-backslash): New test.
16471 2015-04-22  Oleh Krehel  <ohwoeowho@gmail.com>
16473         Add a new `inhibit-message' variable
16474         * src/xdisp.c (syms_of_xdisp): Define a boolean `inhibit_message'.
16475         (message3): Don't call `message3_nolog' (i.e. use the Echo Area) when
16476         `inhibit_message' is non-zero.
16477         * etc/NEWS: Add an entry.
16478         * doc/lispref/display.texi: Add an entry for `inhibit-message',
16479         mention it in `message'.
16481 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
16483         Fix last fix in `display-buffer-record-window'.
16484         * lisp/window.el (display-buffer-record-window): Fix last fix.
16486 2015-04-22  Eli Zaretskii  <eliz@gnu.org>
16488         Minor edits in CONTRIBUTE
16489         * CONTRIBUTE: Rearrange instructions about log messages.
16490         Use "Git" capitalized all over.
16491         Use 2 spaces between sentences.
16493 2015-04-22  Artur Malabarba  <bruce.connor.am@gmail.com>
16495         * lisp/files.el (basic-save-buffer): Fix argument.
16497         * lisp/cus-edit.el (custom-file): Consider init-file-had-error.
16498         In case `(and (null custom-file) init-file-had-error)' do the same
16499         thing we'd do if `(null user-init-file)', which is to either error out
16500         or return nil.  This is in line with `custom-save-all' which would
16501         throw an error in that situation.  (Bug#20355)
16503         * lisp/emacs-lisp/package.el: Hide lower-priority packages in menu.
16504         (package-menu-hide-low-priority): New variable, see its doc.
16505         (package-archive-priorities): Update doc.
16506         (package-desc-priority): New function.
16507         (package-desc-priority-version): Use it.
16508         (package--remove-hidden): New function.
16509         (package-menu--refresh): Use it.
16511         * lisp/emacs-lisp/package.el: Implement displaying obsolete packages.
16512         (package-menu--hide-obsolete): New variable.
16513         (package--remove-hidden): Use it.
16514         (package-menu-hide-obsolete): New interactive function to toggle
16515         the variable.
16516         (package--quick-help-keys): Document it.
16517         (package-menu-async): Add :version tag.
16518         (package-menu-mode-map): Bind package-menu-hide-obsolete.
16519         (package-desc-status): Indicate non-installed obsolete packages as
16520         avail-obso.
16521         (package-menu-mark-install): Allow installation of avail-obso.
16522         (package-menu--status-predicate): Sort avail-obso with available.
16524 2015-04-22  Alan Mackenzie  <acm@muc.de>
16526         On C-y, stop some text property entries being written into buffer-undo-list
16527         * lisp/subr.el (remove-yank-excluded-properties): Enclose the code in
16528         `with-silent-modifications'.
16530 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
16532         In display-buffer-record-window record selected window if necessary
16533         * lisp/window.el (display-buffer-record-window): Store selected window
16534         if it differs from 3rd element of 'quit-restore' parameter (Bug#20353).
16536 2015-04-22  Tassilo Horn  <tsdh@gnu.org>
16538         Fix reftex-citation bug
16539         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
16540         Fix `wrong-type-argument stringp nil' error that occurs when AUCTeX
16541         integration is enabled and there are no citations in the document
16542         so far.
16544 2015-04-21  Dmitry Gutov  <dgutov@yandex.ru>
16546         Add or reset based on the presence of MERGE_HEAD
16547         * lisp/vc/vc-git.el (vc-git-find-file-hook): Add
16548         `vc-git-resolve-when-done' to `after-save-hook' in either case.
16549         (vc-git-conflicted-files): Add a TODO.
16550         (vc-git-resolve-when-done): Depending on the presence of
16551         MERGE_HEAD, either update the resolved file in the index, or
16552         remove it from there.  (Bug#20292)
16554 2015-04-21  Glenn Morris  <rgm@gnu.org>
16556         * lisp/custom.el (custom-declare-group): No need to purecopy
16557         custom-current-group-alist members following recent change to set
16558         it to nil before dumping.
16560         * build-aux/gitlog-to-emacslog: Get footer from ChangeLog.2.
16561         (Bug#20399)
16563 2015-04-21  Daniel Colascione  <dancol@dancol.org>
16565         Unbreak no-op buffer save message
16566         * lisp/files.el (basic-save-buffer): Accept called-interactively as
16567         an argument instead of directly invoking called-interactively-p,
16568         which will always yield nil in that context.
16570 2015-04-21  Alan Mackenzie  <acm@muc.de>
16572         CC Mode: Do nothing in before/after-change-functions for text
16573         property changes
16574         Fixes bug#20266.
16575         * lisp/progmodes/cc-mode.el (c-basic-common-init): Make
16576         yank-handled-properties buffer local, and remove 'category from it.
16577         (c-called-from-text-property-change-p): New function.
16578         (c-before-change): Don't do anything if a call of the new function
16579         returns non-nil.
16580         (c-after-change): Don't do much if a call of the new function returns
16581         non-nil.
16582         (c-extend-after-change-region): Put changes to text property 'fontified
16583         inside c-save-buffer-state.
16585 2015-04-20  Stefan Monnier  <monnier@iro.umontreal.ca>
16587         Fix byte-compiler warnings about looking-back
16588         * lisp/vc/log-view.el (log-view-end-of-defun-1):
16589         * lisp/textmodes/tex-mode.el (latex-forward-sexp-1):
16590         * lisp/textmodes/reftex-ref.el (reftex-goto-label):
16591         * lisp/textmodes/bibtex.el (bibtex-insert-kill):
16592         * lisp/progmodes/sh-script.el (sh--maybe-here-document):
16593         * lisp/progmodes/ruby-mode.el (ruby-end-of-defun):
16594         * lisp/progmodes/ada-mode.el (ada-in-numeric-literal-p):
16595         * lisp/org/org.el (org-insert-heading, org-sort-entries):
16596         * lisp/org/org-mouse.el (org-mouse-end-headline)
16597         (org-mouse-context-menu):
16598         * lisp/org/org-clock.el (org-clock-cancel):
16599         * lisp/man.el (Man-default-man-entry):
16600         * lisp/mail/rmail.el (rmail-get-new-mail, rmail-insert-inbox-text)
16601         (rmail-ensure-blank-line):
16602         * lisp/mail/footnote.el (Footnote-delete-footnote):
16603         * lisp/mail/emacsbug.el (report-emacs-bug):
16604         * lisp/info.el (Info-follow-reference, Info-fontify-node):
16605         * lisp/info-look.el (info-lookup-guess-custom-symbol):
16606         * lisp/help-fns.el (help-fns--key-bindings):
16607         * lisp/files.el (hack-local-variables):
16608         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-cmd-complete)
16609         (viper-get-ex-pat, ex-expand-filsyms, viper-get-ex-file)
16610         (viper-complete-filename-or-exit):
16611         * lisp/emulation/viper-cmd.el (viper-backward-indent):
16612         * lisp/emacs-lisp/lisp-mode.el (calculate-lisp-indent):
16613         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
16614         * lisp/cus-edit.el (custom-face-edit-value-create):
16615         * lisp/calendar/todo-mode.el (todo-set-item-priority)
16616         (todo-filter-items-1, todo-convert-legacy-files)
16617         (todo-prefix-overlays): Add explicit second arg to looking-back.
16619 2015-04-20  Glenn Morris  <rgm@gnu.org>
16621         Avoid non-nil current-load-list at startup
16622         * src/process.c (init_process_emacs): Move Fprovide statement...
16623         (syms_of_process): ... to here.
16625         * lisp/loadup.el (custom-current-group-alist): Reset before dumping.
16627         * lisp/startup.el (command-line) <site-run-file>: Avoid rogue value
16628         in emacs -Q.
16630 2015-04-20  Ludovic Courtès  <ludo@gnu.org>
16632         * lisp/loadup.el (exec-path): Avoid storing build-time PATH in binary.
16633         (Bug#20330)
16635 2015-04-20  Glenn Morris  <rgm@gnu.org>
16637         * lisp/cus-start.el (exec-path): Set standard value, to avoid rogue.
16639         Tweak exec-path in uninstalled case
16640         * src/callproc.c (init_callproc): If running uninstalled, do not
16641         include eventual installation libexec directory in exec-path.
16643 2015-04-20  Artur Malabarba  <bruce.connor.am@gmail.com>
16645         * lisp/emacs-lisp/package.el: Filter by multiple keywords and
16646         cache keywords.
16647         (package-menu-filter): Accept a list of keywords.
16648         (package--all-keywords): New variable to cache known keywords.
16649         (package-all-keywords): Populate it if necessary.
16650         (package-refresh-contents): Reset it.
16652         * lisp/emacs-lisp/package.el: Make archive and status pseudo-keywords
16653         (package--has-keyword-p): Understand "arc:xxxx" and "status:xxxx"
16654         as special keywords which match agains package archive and status
16655         respectively.
16656         * etc/NEWS: Document it.
16658 2015-04-20  Eli Zaretskii  <eliz@gnu.org>
16660         Describe and index "empty overlays".
16661         * doc/lispref/display.texi (Overlays): Improve indexing.
16662         (Managing Overlays): Describe "empty" overlays.
16663         (Overlay Properties, Finding Overlays): Add cross-reference to
16664         where empty overlays are described.
16666 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
16668         Spelling fixes
16670         Quote 'like this' in top-level files
16671         * CONTRIBUTE, INSTALL, Makefile.in, README, configure.ac, make-dist:
16672         Prefer to single-quote 'like this' (instead of the older style
16673         `like this').
16674         * configure.ac: Fix some space-before-tab problems that 'git commit'
16675         complained about.
16677         Use bool for boolean in textprop.c, undo.c
16678         * src/textprop.c (soft, hard): Now constants instead of macros.
16679         (validate_plist): Rewrite to avoid need for boolean local.
16680         (interval_has_all_properties, interval_has_some_properties)
16681         (interval_has_some_properties_list, add_properties)
16682         (remove_properties, get_char_property_and_overlay)
16683         (Fnext_single_char_property_change)
16684         (Fprevious_single_char_property_change, add_text_properties_1)
16685         (Fremove_text_properties, Fremove_list_of_text_properties)
16686         (copy_text_properties):
16687         * src/tparam.c (tparam1):
16688         * src/undo.c (record_change, record_property_change)
16689         (syms_of_undo):
16690         Use 'true' and 'false' for booleans.
16692 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
16694         * lisp/vc/vc-git.el (vc-git-find-file-hook):
16695         Call `smerge-start-session' even when dealing with a stash
16696         conflict (bug#20292).
16698 2015-04-19  Vibhav Pant  <vibhavp@gmail.com>
16700         Add option to eshell/clear to clear scrollback.
16701         * lisp/eshell/esh-mode.el (eshell/clear-scrollback): New function.
16702         (eshell/clear): Add an optional SCROLLBACK argument.  If non-nil,
16703         scrollback contents are cleared.
16704         * etc/NEWS: Describe change.
16705         * doc/misc/eshell.texi: Add entry for `clear'.
16707 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
16709         * src/widget.c (set_frame_size): Prefer 'int' to 'unsigned'
16710         where either will do.
16712 2015-04-19  Steve Purcell  <steve@sanityinc.com>
16714         Assume package archive-contents are UTF8-encoded
16715         * lisp/emacs-lisp/package.el (package--read-archive-file):
16716         Set `coding-system-for-read' explicitly to 'utf-8 when reading the
16717         downloaded and cached archive-contents files, so that non-ASCII
16718         characters in package descriptions are displayed correctly in the
16719         `list-packages' menu.  (Bug#20231)
16721 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
16723         Abort when looking at stashed changes
16724         * lisp/vc/vc-git.el (vc-git-find-file-hook): Abort when looking at
16725         stashed changes (bug#20292).
16727 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
16729         Refactor low-level printing for simplicity
16730         * src/print.c (PRINTDECLARE): Remove.  Move its contents into
16731         PRINTPREPARE; doable now that we assume C99.  All callers changed.
16732         (PRINTCHAR): Remove, as it adds more mystery than clarity.
16733         All callers changed.
16734         (strout): Assume that caller computes length.  All callers changed.
16735         (print_c_string): New function.
16736         (write_string, write_string_1): Compute length instead of asking
16737         the caller to compute it.  All callers changed.
16738         (write_string): Simplify by using write_string_1.
16739         (write_string_1): Simplify by using print_c_string.
16740         (Fterpri): Compute default val more clearly.
16741         (Fprin1_to_string, print_object):
16742         Assume C99 to avoid unnecessary nesting.
16743         (print_object): Prefer print_c_string to multiple printchar, or
16744         to calling strout with -1 length.  Coalesce into sprintf when
16745         this is easy.
16747 2015-04-18  Paul Eggert  <eggert@cs.ucla.edu>
16749         Prefer "Bug#1234" in commit messages (Bug#20325)
16750         * .dir-locals.el (log-edit-mode): Don't rewrite Bug#,
16751         as this isn't useful for Git.
16752         * CONTRIBUTE: Suggest "Bug#1234" instead of "Fixes: debbugs:1234".
16754 2015-04-18  Glenn Morris  <rgm@gnu.org>
16756         * lisp/files.el (auto-mode-alist): Use conf mode for gitconfig, hgrc.
16757         (Bug#19506)
16759 2015-04-18  Tom Willemse  <tom@ryuslash.org>  (tiny change)
16761         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
16762         Do not use `chomp' as a function.  (Bug#19505)
16764 2015-04-18  Glenn Morris  <rgm@gnu.org>
16766         * lisp/net/browse-url.el (browse-url, browse-url-at-point): Doc fixes.
16768         * doc/emacs/misc.texi (Sorting): Small edit.
16769         (Bug#19896)
16771         * admin/admin.el (make-manuals): Add emacs-xtra in pdf and ps.
16773 2015-04-18  Simen Heggestøyl  <simenheg@gmail.com>
16775         css-mode.el: Support multi-line comment filling
16776         (Bug#20256)
16777         * lisp/textmodes/css-mode.el (css-fill-paragraph): Support multi-line
16778         comment filling.
16779         (css-adaptive-fill): New function.
16780         (css-mode): Set `adaptive-fill-function'.
16781         (scss-mode): Set `comment-continue'.
16783 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
16785         * lisp/emacs-lisp/seq.el (seq-concatenate, seq-into):
16786         Better error messages.
16788 2015-04-18  Ivan Radanov Ivanov  <ivanradanov@yahoo.co.uk>  (tiny change)
16790         Minor improvements in Bulgarian input methods
16791         * lisp/leim/quail/cyrillic.el (bulgarian-phonetic, bulgarian-bds):
16792         Replace U+042C with U+045D, as the former character is not used in
16793         the modern Bulgarian language.
16794         (Bug#20350)
16796 2015-04-17  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
16798         Improve EUDC manual
16799         * doc/misc/eudc.texi (LDAP Configuration): Mention simple and SASL
16800         authentication schemes.  Add index items.  Shorten example server
16801         name.
16803 2015-04-17  Dmitry Gutov  <dgutov@yandex.ru>
16805         Don't show both feature and function with the same name
16806         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
16807         Don't show both feature and function with the same name.
16809         (elisp--xref-identifier-location): Skip variable, if it's also
16810         a function
16811         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
16812         Avoid returning both the variable and the function for the same
16813         minor mode.
16815 2015-04-17  Wolfgang Jenkner  <wjenkner@inode.at>
16817         Fix fontification of keywords clobbered by the prompt
16818         * lisp/comint.el (comint-output-filter): Remove the uses of
16819         with-silent-modifications I introduced as part of the last change.
16820         This fixes, e.g., erratically missing highlighting when running
16821         ./configure --help; ./configure in a shell-mode buffer with
16822         compilation-shell-minor-mode turned on.
16824 2015-04-17  Glenn Morris  <rgm@gnu.org>
16826         * admin/authors.el (authors-valid-file-names)
16827         (authors-renamed-files-alist): Additions.
16829 2015-04-17  Stefan Monnier  <monnier@iro.umontreal.ca>
16831         * lisp/indent.el (indent-region): Don't deactivate the mark.
16832         (Bug#20357)
16834 2015-04-17  Sam Steingold  <sds@gnu.org>
16836         * lisp/net/rcirc.el (defun-rcirc-command): Mark `target' as ignorable.
16838 2015-04-16  Leo Liu  <sdl.web@gmail.com>
16840         * lisp/progmodes/xref.el (xref-push-marker-stack): Add optional arg.
16842 2015-04-16  Stefan Monnier  <monnier@iro.umontreal.ca>
16844         * lisp/erc/erc-pcomplete.el (erc-pcomplete):
16845         Don't use `pcomplete' any more.
16847 2015-04-16  Glenn Morris  <rgm@gnu.org>
16849         * admin/authors.el (authors-lax-changelogs): Update for erc changes.
16851 2015-04-16  Eli Zaretskii  <eliz@gnu.org>
16853         Don't link with -ljpeg on MS-Windows, to avoid dependency on DLL
16854         * configure.ac (LIBJPEG): Leave it empty for MinGW.
16856 2015-04-16  Glenn Morris  <rgm@gnu.org>
16858         * lisp/replace.el (query-replace-from-to-separator):
16859         Delay initialization to avoid rogue setting after startup.
16861 2015-04-16  Paul Eggert  <eggert@cs.ucla.edu>
16863         Pre-4.6 GCC succeeds with unknown option
16864         * configure.ac (emacs_cv_prog_cc_nopie): Port to pre-4.6 GCC.
16865         (Bug#20338)
16867 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
16869         '[:graph:]' now excludes whitespace, not just ' '
16870         * doc/lispref/searching.texi (Char Classes):
16871         * lisp/emacs-lisp/rx.el (rx): Document [:graph:] to be [:print:]
16872         sans whitespace (not sans space).
16873         * src/character.c (graphicp): Exclude all Unicode whitespace chars,
16874         not just space.
16875         * src/regex.c (ISGRAPH): Exclude U+00A0 (NO-BREAK SPACE).
16877 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
16879         * lisp/subr.el (substitute-key-definition-key, special-form-p)
16880         (macrop): Drop deprecated second arg to indirect-function.
16881         (looking-back): Make the second arg non-optional.
16883         * lisp/org/org-clock.el (org-x11idle-exists-p): Be honest about which
16884         command is actually sent to the shell.
16886 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
16888         Port jpeg configuration to Solaris 10 with Sun C
16889         * configure.ac: Check for jpeglib 6b by trying to link it, instead
16890         of relying on cpp magic that has problems in practice.  Check for
16891         both jpeglib.h and jerror.h features.  Remove special case for
16892         mingw32, which should no longer be needed (and if it were needed,
16893         should now be addressable by hotwiring emacs_cv_jpeglib).
16894         (Bug#20332)
16896 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
16898         Move some Elisp-specific code from lisp-mode.el to elisp-mode.el
16899         * lisp/emacs-lisp/lisp-mode.el (lisp--el-font-lock-flush-elisp-buffers):
16900         Move to elisp-mode.el.
16901         (lisp-mode-variables): (Re)move elisp-specific settings.
16902         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode): Add settings removed
16903         from lisp-mode-variables.
16904         (elisp--font-lock-flush-elisp-buffers): New function, moved from
16905         lisp-mode.el.
16907         * lisp/emacs-lisp/lisp-mode.el (lisp--el-non-funcall-position-p):
16908         Avoid pathological slowdown at top-level in large file.
16910 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
16912         Standardize names of ChangeLog history files
16913         Suggested by Glenn Morris in:
16914         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
16915         * Makefile.in (install-man): Don't treat ChangeLog.1 as a man page.
16916         * doc/man/ChangeLog.1: Rename back from doc/man/ChangeLog.01.
16917         * lisp/erc/ChangeLog.1: New file, containing the old contents of ...
16918         * lisp/erc/ChangeLog.01, lisp/erc/ChangeLog.02, lisp/erc/ChangeLog.03:
16919         * lisp/erc/ChangeLog.04, lisp/erc/ChangeLog.05, lisp/erc/ChangeLog.06:
16920         * lisp/erc/ChangeLog.07, lisp/erc/ChangeLog.08, lisp/erc/ChangeLog.09:
16921         Remove.
16923         Split top-level entries into pre- and post-April 7
16924         This more clearly distingiushes pre-April-7 ChangeLog entries (which
16925         are for top-level files only) from post-April-7 entries (which are
16926         about files at all levels.  Problem reported by Glenn Morris in:
16927         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
16928         * ChangeLog.1: Move post-April-7 entries from here ...
16929         * ChangeLog.2: ... to this new file.
16930         * Makefile.in (CHANGELOG_HISTORY_INDEX_MAX): Bump to 2.
16932 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
16934         Fix recent cus-start changes that added customize-rogues
16935         * lisp/cus-start.el (custom-delayed-init-variables): Initialize the
16936         vars early.
16937         * lisp/loadup.el ("cus-start"): Move to the end to reduce
16938         customize-rogue.
16940 2015-04-15  Nicolas Petton  <nicolas@petton.fr>
16942         Define cl-concatenate as an alias to seq-concatenate
16943         * lisp/emacs-lisp/cl-extra.el (cl-concatenate): Removes duplicated
16944           code by making cl-concatenate an alias to seq-concatenate.
16946 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
16948         * src/lread.c (intern_1): Make sure we'd find the symbol we add
16949         (Bug#20334)
16950         * src/xfaces.c (resolve_face_name): Don't use `intern' with
16951         Lisp_Strings.
16953 2015-04-15  Glenn Morris  <rgm@gnu.org>
16955         * doc/lispref/sequences.texi (Sequence Functions): Fix typo in previous.
16957 2015-04-15  Lars Magne Ingebrigtsen  <larsi@gnus.org>
16959         Clean up gnus-uu saving code slightly
16960         * lisp/gnus/gnus-uu.el (gnus-uu-save-article): Make the
16961         save-restriction/widen calls make more sense.
16963 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
16965         Make [:graph:] act like [:print:] sans space
16966         In POSIX [[:print:]] is equivalent to [ [:graph:]], so change
16967         [:graph:] so that it matches everything that [:print:] does,
16968         except for space.
16969         * doc/lispref/searching.texi (Char Classes):
16970         * etc/NEWS:
16971         * lisp/emacs-lisp/rx.el (rx):
16972         Document [:graph:] to be [:print:] sans ' '.
16973         * src/character.c, src/character.h (graphicp): New function.
16974         * src/regex.c (ISGRAPH) [emacs]: Use it.
16975         (BIT_GRAPH): New macro.
16976         (BIT_PRINT): Increase to 0x200, to make room for BIT_GRAPH.
16977         (re_wctype_to_bit) [! WIDE_CHAR_SUPPORT]:
16978         Return BIT_GRAPH for RECC_GRAPH.
16979         (re_match_2_internal) [emacs]: Use ISGRAPH if BIT_GRAPH,
16980         and ISPRINT if BIT_PRINT.
16982 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
16984         automated/eieio-test-methodinvoke.el (make-instance) <(subclass C)>:
16985         Don't use call-next-method in a cl-defmethod.
16987         * lisp/emacs-lisp/eieio-core.el (eieio--class): Derive from cl--class
16988         (eieio--class-p): Remove, provided by cl-defstruct.
16990 2015-04-14  Nicolas Petton  <nicolas@petton.fr>
16992         Add seq-intersection and seq-difference to the seq library
16993         * lisp/emacs-lisp/seq.el (seq-intersection, seq-difference):
16994         New functions.
16995         * test/automated/seq-tests.el: Add tests for seq-intersection and
16996         seq-difference.
16997         * doc/lispref/sequences.texi: Add documentation for seq-intersection
16998         and seq-difference.
17000 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
17002         * lisp/emacs-lisp/eieio-core.el (class-abstract-p): Don't inline,
17003         to avoid leaking internals.
17005 2015-04-14  Sam Steingold  <sds@gnu.org>
17007         package--ensure-init-file: widen requires save-restriction
17009 2015-04-14  Eli Zaretskii  <eliz@gnu.org>
17011         Improve the commit-msg Git hook for unibyte environments
17012         * build-aux/git-hooks/commit-msg: Set LC_ALL=C, before running Awk
17013         in unibyte environments.  (Suggested by Paul Eggert
17014         <eggert@cs.ucla.edu>.)  Use a more accurate approximation to
17015         [:print:], based on UTF-8 sequences of the unprintable characters.
17017         Describe problems with cursor caused by Windows Magnifier
17018         * etc/PROBLEMS: Describe the problem with cursor shape on
17019         MS-Windows due to Windows Magnifier.
17020         (Bug#20271)
17022         Make [:print:] support non-ASCII characters correctly
17023         * src/regex.c (ISPRINT): Call 'printablep' for multibyte characters.
17024         (BIT_PRINT): New bit mask.
17025         (re_wctype_to_bit): Return BIT_PRINT for RECC_PRINT.
17026         * src/character.c (printablep): New function.
17027         * src/character.h (printablep): Add prototype.
17028         * lisp/emacs-lisp/rx.el (rx): Doc fix: document the new behavior
17029         of 'print', 'alnum', and 'alphabetic'.
17030         * doc/lispref/searching.texi (Char Classes): Document the new
17031         behavior of [:print:].
17032         * etc/NEWS: Mention the new behavior of [:print:].
17034         Assign correct general-category and names to surrogates
17035         * admin/unidata/unidata-gen.el (unidata-setup-list): Don't ignore
17036         surrogates.  This avoids assigning them the default
17037         general-category of 'Cn', i.e. unassigned codepoints.
17038         (unidata-get-name): Give surrogates synthetic names.
17040 2015-04-14  Paul Eggert  <eggert@cs.ucla.edu>
17042         Assume C89 offsetof in xterm.c, xlwmenu.c
17043         * lwlib/xlwmenu.c (offset):
17044         * src/xterm.c (cvt_string_to_pixel_args):
17045         Use offsetof, not XtOffset.
17047 2015-04-14  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
17049         Assume C89 offsetof in widget.c
17050         * src/widget.c (XtOffset): Remove; no longer needed.
17051         (offset): Implement via offsetof instead of via pre-C89 XtOffset hack.
17053         Fix think-o in previous patch
17054         * src/window.c (count_windows, get_leaf_windows):
17055         Don't optimize count_windows incorrectly.
17057 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
17059         Avoid some int overflows in window.c
17060         * src/print.c (print_object):
17061         * src/window.c (sequence_number):
17062         * src/window.h (struct window.sequence_number):
17063         Don't assume window sequence number fits in int.
17064         * src/window.c (window_select_count):
17065         * src/window.h (struct window.use_time, window_select_count):
17066         Don't assume window use time fits in int.
17067         * src/window.c (Fsplit_window_internal):
17068         Don't assume user-supplied integer, or sum, fits in int.
17069         (Fset_window_configuration, count_windows, get_leaf_windows)
17070         (save_window_save, Fcurrent_window_configuration):
17071         Use ptrdiff_t for object counts.
17072         (Fset_window_configuration): Omit unused local 'n'.
17073         (count_windows): Simplify by writing in terms of get_leaf_windows.
17074         (get_leaf_windows): Don't store through FLAT if it's null.
17075         (extract_dimension): New static function.
17076         (set_window_margins, set_window_fringes, set_window_scroll_bars):
17077         Use it to avoid undefined behavior when converting user-supplied
17078         integer to 'int'.
17080 2015-04-13  Glenn Morris  <rgm@gnu.org>
17082         Minor doc copyedits
17083         * doc/emacs/custom.texi (Init Examples): Tweak example, replace typo.
17084         * doc/lispintro/emacs-lisp-intro.texi (condition-case): Typo fix.
17086 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
17088         [Gnus] Catch the invalid-operation that idna.el will issue
17089         * lisp/gnus/gnus-art.el (gnus-use-idna):
17090         * lisp/gnus/gnus-sum.el (gnus-summary-idna-message):
17091         * lisp/gnus/message.el (message-use-idna):
17092         Catch the invalid-operation that idna.el will issue.
17094 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
17096         * doc/lispref/processes.texi (Shell Arguments): Prefer diff -u.
17098 2015-04-13  Sam Steingold  <sds@gnu.org>
17100         package--ensure-init-file: widen before looking for
17101         "(package-initialize)"
17103 2015-04-13  Dmitry Gutov  <dgutov@yandex.ru>
17105         Change diff-switches default to `-u' (Bug#20290)
17106         * doc/emacs/files.texi (Comparing Files): Document the new default
17107         value of `diff-switches'.
17108         * doc/emacs/trouble.texi (Sending Patches): Document the preference
17109         for unified diff format.  Escape the plus in the suggested `-F' regexp
17110         value.
17111         * lisp/vc/diff.el (diff-switches): Change the default to `-u'.
17113 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
17115         (gnus-group--setup-tool-bar-update): Fix last change
17116         * lisp/gnus/gnus-group.el (gnus-group--setup-tool-bar-update):
17117         cursor-sensor-functions should be a list of functions.
17119 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
17121         * lisp/gnus/gnus-topic.el (gnus-topic-mode):
17122         Use gmm-called-interactively-p.
17124 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
17126         * lisp/loadup.el ("cus-start"): Load it after loaddefs.el
17127         (Bug#20321)
17128         * lisp/cus-start.el (read-buffer-function): Don't advertise
17129         iswitchb-read-buffer any more.
17130         (iswitchb): Don't tweak this obsolete group any more.
17132 2015-04-13  Artur Malabarba  <bruce.connor.am@gmail.com>
17134         * lisp/emacs-lisp/package.el: Fix package--ensure-init-file.
17136         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Implement docstrings.
17137         Adding a string after a constructor's argument list will use
17138         that string as the constructor function docstring.  If this string
17139         is absent but the struct itself was given a docstring, use that as
17140         the constructor's docstring.
17141         Fixes bug#17284.
17143 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
17145         Deprecate `intangible' and `point-entered' properties
17146         * lisp/emacs-lisp/cursor-sensor.el: New file.
17147         * lisp/simple.el (pre-redisplay-functions): New hook.
17148         (redisplay--pre-redisplay-functions): New function.
17149         (pre-redisplay-function): Use it.
17150         (minibuffer-avoid-prompt): Mark obsolete.
17151         (redisplay--update-region-highlight): Adapt it to work as a function on
17152         pre-redisplay-functions.
17153         * lisp/cus-start.el (minibuffer-prompt-properties--setter): New fun.
17154         (minibuffer-prompt-properties): Use it.  Use cursor-intangible rather
17155         than point-entered to make the prompt intangible.
17156         * lisp/forms.el: Move `provide' calls to the end.
17157         (forms-mode): Don't use `run-hooks' on a local var.
17158         (forms--make-format, forms--make-format-elt-using-text-properties):
17159         Use cursor-intangible rather than `intangible'.
17160         (forms-mode): Enable cursor-intangible-mode.
17161         * lisp/isearch.el (isearch-mode): Use defvar-local.
17162         (cursor-sensor-inhibit): Declare.
17163         (isearch-mode): Set cursor-sensor-inhibit.
17164         (isearch-done): Set it back.
17165         (isearch-open-overlay-temporary, isearch-open-necessary-overlays)
17166         (isearch-close-unnecessary-overlays): Don't bother with `intangible'
17167         any more.
17168         * lisp/ses.el (ses-localvars): Remove `mode-line-process'.
17169         (ses-sym-rowcol, ses-cell-value, ses-col-width, ses-col-printer):
17170         Add Edebug spec.
17171         (ses-goto-print, ses-print-cell, ses-adjust-print-width)
17172         (ses-goto-data, ses-setup, ses-copy-region): Don't let-bind
17173         inhibit-point-motion-hooks any more.
17174         (ses--cell-at-pos, ses--curcell): New functions, extracted from
17175         ses-set-curcell.
17176         (ses-set-curcell): Use them.
17177         (ses-print-cell, ses-setup): Use cursor-intangible instead of
17178         `intangible'.  Make sure cursor-intangible isn't sticky at BOB.
17179         (ses-print-cell-new-width, ses-reprint-all, ses-recalculate-all):
17180         Use ses--cell-at-pos.
17181         (ses--mode-line-process, ses--cursor-sensor-highlight): New functions,
17182         extracted from ses-command-hook.  Make them work with multiple windows
17183         displaying the same buffer.
17184         (ses-mode): Use them via mode-line-process and pre-redisplay-functions.
17185         Enable cursor-intangible-mode.
17186         (ses-command-hook): Remove cell highlight and mode-line update code.
17187         (ses-forward-or-insert, ses-copy-region-helper, ses-sort-column):
17188         Update for new name of text-property holding the cell name.
17189         (ses-rename-cell): Don't mess with mode-line-process.
17190         * lisp/erc/erc-stamp.el (erc-add-timestamp): Use the new
17191         cursor-sensor-functions property instead of point-entered.
17192         (erc-insert-timestamp-right, erc-format-timestamp):
17193         Use cursor-intangible rather than `intangible'.
17194         (erc-munge-invisibility-spec): Use add-to-invisibility-spec and
17195         remove-from-invisibility-spec.  Enable cursor-intangible-mode and
17196         cursor-sensor-mode if needed.
17197         (erc-echo-timestamp): Adapt to calling convention of
17198         cursor-sensor-functions.
17199         (erc-insert-timestamp-right): Remove unused vars `current-window' and
17200         `indent'.
17201         * lisp/gnus/gnus-group.el (gnus-tmp-*): Declare.
17202         (gnus-update-group-mark-positions): Remove unused `topic' var.
17203         (gnus-group-insert-group-line): Remove unused var `header'.
17204         (gnus-group--setup-tool-bar-update): New function.
17205         (gnus-group-insert-group-line): Use it.
17206         (gnus-group-update-eval-form): Declare local
17207         dynamically-bound variables.
17208         (gnus-group-unsubscribe-group): Use \` and \' to match string bounds.
17209         * lisp/gnus/gnus-topic.el (gnus-topic-jump-to-topic)
17210         (gnus-group-prepare-topics, gnus-topic-update-topic)
17211         (gnus-topic-change-level, gnus-topic-catchup-articles)
17212         (gnus-topic-remove-group, gnus-topic-delete, gnus-topic-indent):
17213         Use inhibit-read-only.
17214         (gnus-topic-prepare-topic): Use gnus-group--setup-tool-bar-update.
17215         (gnus-topic-mode): Use define-minor-mode and derived-mode-p.
17216         * lisp/textmodes/reftex-index.el (reftex-display-index):
17217         Use cursor-intangible-mode if available.
17218         (reftex-index-post-command-hook): Check cursor-intangible.
17219         * lisp/textmodes/reftex-toc.el (reftex-toc):
17220         Use cursor-intangible-mode if available.
17221         (reftex-toc-recenter, reftex-toc-post-command-hook):
17222         Check cursor-intangible.
17223         * lisp/textmodes/sgml-mode.el: Use lexical-binding.
17224         (sgml-tag): Use cursor-sensor-functions instead of point-entered.
17225         (sgml-tags-invisible): Use with-silent-modifications and
17226         inhibit-read-only.  Enable cursor-sensor-mode.
17227         (sgml-cursor-sensor): Rename from sgml-point-entered and adjust to
17228         calling convention of cursor-sensor-functions.
17229         * lisp/textmodes/table.el (table-cell-map-hook, table-load-hook)
17230         (table-point-entered-cell-hook, table-point-left-cell-hook):
17231         Don't autoload.
17232         (table-cell-entered-state): Remove var.
17233         (table--put-cell-point-entered/left-property)
17234         (table--remove-cell-properties):
17235         Use cursor-sensor-functions rather than point-entered/left.
17236         (table--point-entered/left-cell-function): Merge
17237         table--point-entered-cell-function and table--point-left-cell-function
17238         and adjust to calling convention of cursor-sensor-functions.
17240         Update ldef-boots.el
17242         * lisp/emacs-lisp/pcase.el (pcase-dolist): Autoload as well.
17244         * doc/misc/eieio.texi: Don't advertise now obsolete constructs
17246         Collapse successive char deletions in the undo log
17247         * src/cmds.c (remove_excessive_undo_boundaries): New function,
17248         extracted from Fself_insert_command.
17249         (Fdelete_char, Fself_insert_command): Use it.
17250         * src/fileio.c (Fmake_symbolic_link): Rename arg to `target'.
17251         * src/keyboard.c (syms_of_keyboard): `top-level' shouldn't be special.
17253         xterm and OSC 52: Add NEWS entry, and tweak the code
17254         * lisp/term/xterm.el (gui-set-selection) <nil>: Move method definition
17255         to top-level.
17256         (terminal-init-xterm-activate-set-selection): Set a terminal property.
17257         (xterm--set-selection): Use it instead of checking the value of
17258         `terminal-initted'.  Don't use string-bytes.
17260 2015-04-13  Philipp Stephani  <p.stephani2@gmail.com>
17262         xterm.el: Implement OSC-52 functionality for setting the X selection
17263         * lisp/term/xterm.el (xterm-max-cut-length): New var.
17264         (xterm--set-selection, terminal-init-xterm-activate-set-selection):
17265         New funs.
17266         (terminal-init-xterm, xterm--version-handler): Use them.
17268 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
17270         Remove left over code from when we used an obsolete/loaddefs.el file
17271         * lisp/subr.el (do-after-load-evaluation): Remove left over code from
17272         when we used an obsolete/loaddefs.el file.
17274         * lisp/cedet/semantic/fw.el (semantic-exit-on-input)
17275         (semanticdb-without-unloaded-file-searches): Use declare.
17276         (semantic-fw-add-edebug-spec): Remove.
17278         * lisp/completion.el (completion-lisp-mode-hook):
17279         Use completion-separator-chars rather than local key binding.
17281         * src/*.c: Set deactivate_mark buffer-locally
17282         (Bug#20260)
17283         * src/insdel.c (prepare_to_modify_buffer_1):
17284         * src/fileio.c (Finsert_file_contents): Set deactivate_mark
17285         buffer-locally.
17287 2015-04-12  Fabián Ezequiel Gallina  <fgallina@gnu.org>
17289         python.el: Keep symmetry on sexp navigation with parens
17290         (Bug#19954)
17291         * lisp/progmodes/python.el
17292         (python-nav--forward-sexp): Add argument skip-parens-p.
17293         (python-nav-forward-sexp, python-nav-backward-sexp)
17294         (python-nav-forward-sexp-safe)
17295         (python-nav-backward-sexp-safe): Use it.
17296         * test/automated/python-tests.el
17297         (python-nav-forward-sexp-1): Fix test.
17299 2015-04-12  João Távora  <joaotavora@gmail.com>
17301         Don't use `setq-local' in Gnus code
17302         This might break upstream builds with older Emacsen
17303         * lisp/gnus/message.el (message-mode): Use `set' and
17304         `make-local-variable' instead of `setq-local'.
17306 2015-04-12  Paul Eggert  <eggert@cs.ucla.edu>
17308         Update Makefile.in's .PHONY dependencies
17309         * Makefile.in (change-history-commit, master-branch-is-current)
17310         (no-ChangeLog): Now phony.
17312         Remove configure's --with-mmdf option
17313         * configure.ac (MAIL_USE_MMDF): Remove.
17314         * etc/NEWS: Document this.
17315         * lib-src/movemail.c: Assume MAIL_USE_MMDF is not defined.
17316         (Bug#20308)
17318         * doc/man/ChangeLog.01: Rename from doc/man/ChangeLog.1.
17319         That way, 'make install' won't think it's a man page.
17320         Reported by Ashish SHUKLA in:
17321         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00656.html
17323         Improve 'make change-history' prereq tests
17324         * Makefile.in (gen_origin): Fix to match what's in the master branch.
17325         (no-ChangeLog, master-branch-is-current): New rules.
17326         (change-history): Depend on them, to avoid similar future problems.
17327         Escape the local-variables string to pacify Emacs when editing
17328         Makefile.in.
17330 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
17332         * test/automated/package-test.el (with-package-test):
17333         Kill Packages buffer.
17335         * lisp/emacs-lisp/package.el: Improve transaction y-or-n prompt.
17336         (package-menu--prompt-transaction-p): Prompt for "Delete" first,
17337         "Upgrade" last, and use capitalized instead of all-caps.
17339         * lisp/emacs-lisp/package.el: Completely silence async operations.
17340         (package--make-autoloads-and-stuff): Silence autoloads.
17341         (package--save-selected-packages): New function, silences
17342         `customize-save-variable'.
17343         (package--user-selected-p, package-install-from-buffer)
17344         (package-delete, package-install): Use it.
17345         (package-install-from-archive)
17346         (package-menu--perform-transaction): Silence.
17347         (package-menu-execute): Feedback when operation starts.
17349         Use delay-mode-hooks when visiting the init-file
17350         * lisp/emacs-lisp/package.el (package--ensure-init-file):
17351         delay-mode-hooks.
17352         * lisp/cus-edit.el (custom-save-all): delay-mode-hooks.
17354         * lisp/files.el: Only message when saving if save-silently is nil.
17355         (save-silently): New variable.
17356         (files--message): New function.
17357         (find-file-noselect, save-buffer, basic-save-buffer)
17358         (basic-save-buffer-2, save-some-buffers, not-modified)
17359         (append-to-file): Use them.
17361 2015-04-12  Johan Bockgård  <bojohan@gnu.org>
17363         Support debug declarations in pcase macros
17364         * lisp/emacs-lisp/pcase.el (pcase-MACRO): New edebug spec.
17365         (pcase-UPAT): Use it.  Remove "`".
17366         (pcase--edebug-match-macro): New function.
17367         (pcase-defmacro): Support debug declarations.
17368         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
17369         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>:
17370         * lisp/emacs-lisp/pcase.el (\`): <pcase-defmacro>:
17371         Add debug declaration.
17373         pcase.el: Edebug support for `app' and vector patterns
17374         * lisp/emacs-lisp/pcase.el (pcase-FUN): New edebug spec.
17375         (pcase-UPAT): Use it.  Support `app' patterns.
17376         (pcase-QPAT): Support vector patterns.
17378         edebug.el: Disambiguate vector specifications
17379         * lisp/emacs-lisp/edebug.el (edebug-match-list): Always treat
17380         `(vector ...)' as a vector specification, not as a sublist.
17382         (gnus-summary-refer-thread): Don't clobber unread articles
17383         This fixes a bug where `A T' causes "random" articles to become marked
17384         as read.
17385         * lisp/gnus/gnus-sum.el (gnus-summary-refer-thread): Make sure
17386         gnus-newsgroup-unreads remains sorted.
17388         mouse-sel.el: Fix mouse-sel-get-selection-function
17389         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
17390         Use gui--last-selected-text-primary instead of no longer existing
17391         gui-last-selected-text.
17393         * lisp/rect.el (delete-whitespace-rectangle-line): Don't cross EOL.
17395         * lisp/net/nsm.el (nsm-query-user): Use cursor-in-echo-area.
17397 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
17399         * lisp/emacs-lisp/package.el (list-packages): Avoid redundant generate.
17401         * lisp/emacs-lisp/package.el (list-packages): Call refresh in
17402         right buffer.
17404         * lisp/emacs-lisp/bytecomp.el: Silence noninteractive compilations.
17405         (byte-compile--interactive): New var.
17406         (byte-compile--message): New function.
17407         (byte-compile-log-1, byte-force-recompile)
17408         (byte-recompile-directory, byte-recompile-file)
17409         (byte-compile-file, compile-defun)
17410         (byte-compile-file-form-defmumble, byte-compile)
17411         (byte-compile-file-form-defalias, display-call-tree): Use it.
17413         * lisp/files.el: Don't message when nothing happened.
17414         (save-some-buffers, basic-save-buffer): Before messaging to say
17415         "nothing was saved" check if (called-interactively-p 'any).
17417 2015-04-12  João Távora  <joaotavora@gmail.com>
17419         Summary: Improve sexp-based movement in message-mode
17420         Works by giving citations and smileys a different syntax.  This helps
17421         modes like `show-paren-mode', `electric-pair-mode', and C-M-*
17422         sexp-based movement.
17423         * lisp/gnus/message.el (message--syntax-propertize): New function.
17424         (message-mode): Set syntax-related vars.
17425         (message-smileys): New variable.
17426         * test/automated/message-mode-tests.el: New file
17428 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
17430         Use bool for boolean in window.c
17431         * src/window.c: Omit unnecessary static function decls.
17432         (adjust_window_count, select_window, Fselect_window)
17433         (window_body_width, Fwindow_body_height, Fwindow_body_width)
17434         (set_window_hscroll, check_window_containing, Fwindow_at)
17435         (Fwindow_end, Fset_window_start, Fpos_visible_in_window_p)
17436         (unshow_buffer, replace_window, recombine_windows)
17437         (add_window_to_list, candidate_window_p, next_window)
17438         (Fnext_window, Fprevious_window, window_loop, check_all_windows)
17439         (Fget_buffer_window, Fdelete_other_windows_internal)
17440         (replace_buffer_in_windows_safely, set_window_buffer)
17441         (Fset_window_buffer, Fforce_window_update)
17442         (temp_output_buffer_show, make_parent_window)
17443         (window_resize_check, window_resize_apply, Fwindow_resize_apply)
17444         (resize_frame_windows, Fsplit_window_internal)
17445         (Fdelete_window_internal, grow_mini_window, shrink_mini_window)
17446         (Fresize_mini_window_internal, mark_window_cursors_off)
17447         (window_scroll, window_scroll_pixel_based)
17448         (window_scroll_line_based, scroll_command, Fscroll_other_window)
17449         (Fscroll_left, Fscroll_right, displayed_window_lines, Frecenter)
17450         (Fmove_to_window_line, Fset_window_configuration)
17451         (delete_all_child_windows, apply_window_adjustment)
17452         (set_window_fringes, set_window_scroll_bars)
17453         (Fset_window_vscroll, foreach_window, foreach_window_1)
17454         (compare_window_configurations, Fcompare_window_configurations):
17455         Prefer 'bool', 'true', and 'false' for booleans.
17456         * src/window.h (WINDOW_MODE_LINE_LINES)
17457         (WINDOW_HEADER_LINE_LINES): Omit unnecessary "!!" on bool value.
17459 2015-04-11  Artur Malabarba  <bruce.connor.am@gmail.com>
17461         Speed up byte-compilation and autoload generation by avoiding mode-hooks
17462         This prevents emacs-lisp-mode-hook from being run everytime an
17463         autoload file is generated, which can account for a fraction of
17464         package installation time depending on the hooks the user has
17465         configured.
17466         * lisp/emacs-lisp/bytecomp.el (byte-compile-file): Use delay-mode-hooks.
17467         * lisp/emacs-lisp/autoload.el (autoload-find-file)
17468         (autoload-find-generated-file): Use delay-mode-hooks.
17470         * lisp/emacs-lisp/package.el: Improve `package-menu-refresh'.
17471         (package-menu-refresh): Respect async and do new package checking.
17472         (list-packages): Use `package-menu-refresh' instead of repeating code.
17474         * lisp/emacs-lisp/package.el: Improve package-menu-quick-help.
17475         (package--quick-help-keys): New variable.
17476         (package--prettify-quick-help-key): New function.
17477         (package-menu-quick-help): Use it.
17479         * lisp/emacs-lisp/package.el: Fix initially wrong compat table.
17480         (package--build-compatibility-table): Require finder.
17482         * test/automated/package-test.el: Fix new test.
17484         * lisp/emacs-lisp/package.el: Silence async operations.
17485         (package--silence): New variable.
17486         (package--message): New function.
17487         (package-import-keyring, package-refresh-contents)
17488         (package-compute-transaction, package-install, package-delete)
17489         (package-menu--perform-transaction, package-menu-execute): Use it.
17491         * test/automated/package-test.el: Test async functionality.
17492         (package-test-update-archives-async): New test.
17494 2015-04-11  Daiki Ueno  <ueno@gnu.org>
17496         Utilize `make-process' in epg.el
17497         * lisp/epg.el (epg-error-output): Abolish.
17498         (epg-context): New slot `error-buffer'.
17499         (epg--start): Use `make-process' and `make-pipe-process'.
17500         (epg--process-filter): Remove code separating stderr from stdout.
17501         (epg-wait-for-completion): Simplify `error-output' handling.
17502         (epg-reset): Dispose error buffer.
17504 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
17506         * .gitignore: Ignore doc temps and outputs.
17508         Port commit-msg to MSYS Bash+Gawk
17509         See Eli Zaretskii in:
17510         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00610.html
17511         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format)
17512         (cent_sign, print_at_sign, at_sign): Revert previous change.
17513         (print_at_sign): Prepend "BEGIN".
17514         (at_sign): Redirect from /dev/null to be safer with pre-POSIX awk.
17516         Port commit-msg to broken MS-Windows shell
17517         * build-aux/git-hooks/commit-msg (cent_sign):
17518         Just use UTF-8 here rather than ASCII + printf, as the latter fails
17519         on a broken MS-Windows shell.  Reported by Eli Zaretskii in:
17520         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00592.html
17522 2015-04-11  Chris Zheng  <chriszheng99@gmail.com>  (tiny change)
17524         Support GnuTLS v3.4 and later on MS-Windows
17525         * src/gnutls.c (syms_of_gnutls) <libgnutls-version>: New DEFSYM.
17526         * lisp/term/w32-win.el (dynamic-library-alist): Determine which
17527         GnuTLS DLL to load according to value of libgnutls-version.
17528         (Bug#20294)
17530 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
17532         Minor quoting etc. fixes to misc manuals
17533         Fix some minor quoting and spacing issues.  Distinguish more
17534         clearly among grave accent and apostrophe (which are ASCII) and
17535         single quote (which is not).  Prefer the standard terms
17536         "apostrophe" and "grave accent" to alternative names that can be
17537         confusing.  Use apostrophes to single-quote ASCII text.
17538         * doc/misc/remember.texi: Spell the mystic's pseudonym in UTF-8
17539         rather than approximating it in ASCII with grave accent.
17541 2015-04-11  Daiki Ueno  <ueno@gnu.org>
17543         Respect more keyword args in `make-process'
17544         * src/process.c (Fmake_process): Respect `:sentinel' and `:filter'
17545         keywords as documented.
17547 2015-04-10  Dmitry Gutov  <dgutov@yandex.ru>
17549         Extract ChangeLog entries when committing a directory
17550         * lisp/vc/vc-dispatcher.el (vc-log-edit): Update FIXME comment.
17551         * lisp/vc/log-edit.el (log-edit-changelog-insert-entries):
17552         Add a FIXME comment.
17553         (log-edit-changelog-entries): Extract from
17554         `log-edit-changelog-entries', handle FILE being a directory
17555         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00555.html).
17557 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
17559         Fix problems found by --enable-gcc-warnings
17560         * src/process.c (create_process, Fmake_pipe_process)
17561         (Fmake_network_process): Omit unused locals.
17563         Fix commit-msg to handle scissors lines
17564         * build-aux/git-hooks/commit-msg:
17565         Ignore every line after a scissors line, such as a line generated
17566         by 'git commit -v'.  Problem reported by Johan Bockgård in:
17567         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00580.html
17569         port commit-msg to Gawk 3.0.4 (1999)
17570         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format, cent_sign)
17571         (print_at_sign, at_sign): New vars.  Use them to avoid problems
17572         Eli Zaretskii encountered with Gawk 3.0.4 (1999) on MSYS.  See:
17573         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
17575         Have commit-msg report commit failure
17576         * build-aux/git-hooks/commit-msg: If the commit is aborted,
17577         say so.  Simplify by doing this at the end.  Problem reported
17578         by Eli Zaretskii in:
17579         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
17581 2015-04-10  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
17583         Clean up LDAP Configuration section of EUDC manual
17584         * doc/misc/eudc.texi: Combine indices.
17585         (LDAP Configuration): Use command markup.  Add index entries.
17586         Change formatting.  Wrap long lines.  Add noindent markup.
17588 2015-04-10  Daiki Ueno  <ueno@gnu.org>
17590         Add facility to collect stderr of async subprocess
17591         * src/w32.h (register_aux_fd): New function declaration.
17592         * src/w32.c (register_aux_fd): New function.
17593         * src/process.h (struct Lisp_Process): New member stderrproc.
17594         * src/process.c (PIPECONN_P): New macro.
17595         (PIPECONN1_P): New macro.
17596         (Fdelete_process, Fprocess_status, Fset_process_buffer)
17597         (Fset_process_filter, Fset_process_sentinel, Fstop_process)
17598         (Fcontinue_process): Handle pipe process specially.
17599         (create_process): Respect p->stderrproc.
17600         (Fmake_pipe_process): New function.
17601         (Fmake_process): Add new keyword argument :stderr.
17602         (wait_reading_process_output): Specially handle a pipe process when
17603         it gets an EOF.
17604         (syms_of_process): Register Qpipe and Smake_pipe_process.
17605         * doc/lispref/processes.texi (Asynchronous Processes): Document
17606         `make-pipe-process' and `:stderr' keyword of `make-process'.
17607         * lisp/subr.el (start-process): Suggest to use `make-process' handle
17608         standard error separately.
17609         * test/automated/process-tests.el (process-test-stderr-buffer)
17610         (process-test-stderr-filter): New tests.
17611         * etc/NEWS: Mention new process type `pipe' and its usage with the
17612         `:stderr' keyword of `make-process'.
17614 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
17616         Minor quoting etc. fixes to lispref manual
17617         * doc/lispref/tips.texi (Documentation Tips):
17618         Distinguish more clearly among grave accent, apostrophe,
17619         and single quote.
17620         * doc/lispref/README, doc/lispref/buffers.texi:
17621         * doc/lispref/commands.texi, doc/lispref/control.texi:
17622         * doc/lispref/customize.texi, doc/lispref/display.texi:
17623         * doc/lispref/elisp.texi, doc/lispref/files.texi:
17624         * doc/lispref/frames.texi, doc/lispref/hash.texi:
17625         * doc/lispref/help.texi, doc/lispref/internals.texi:
17626         * doc/lispref/loading.texi, doc/lispref/makefile.w32-in:
17627         * doc/lispref/markers.texi, doc/lispref/modes.texi:
17628         * doc/lispref/nonascii.texi, doc/lispref/objects.texi:
17629         * doc/lispref/os.texi, doc/lispref/positions.texi:
17630         * doc/lispref/strings.texi, doc/lispref/syntax.texi:
17631         * doc/lispref/text.texi, doc/lispref/tips.texi:
17632         * doc/lispref/two-volume-cross-refs.txt, doc/lispref/windows.texi:
17633         Use American-style double quoting in ordinary text,
17634         and quote 'like this' when single-quoting in ASCII text.
17635         Also, fix some minor spacing issues.
17637 2015-04-10  Michael Albinus  <michael.albinus@gmx.de>
17639         Handle symlinked test directory in tramp-tests.el
17640         * test/automated/tramp-tests.el (tramp-test18-file-attributes)
17641         (tramp--test-check-files): Use `file-truename' for directories.
17643 2015-04-10  Eli Zaretskii  <eliz@gnu.org>
17645         Fix 'recenter' when visual-line-mode is turned on
17646         * src/window.c (Frecenter): Use the same code for GUI and TTY
17647         frames alike; use vmotion only for "initial" frames.  This is
17648         because vmotion doesn't support visual-line-mode.  Rewrite the
17649         'iarg >= 0' case to use move_it_* functions instead of using
17650         vmotion, for the same reason.  Fix the clipping of the argument
17651         value to support scroll-margin in all cases and avoid unwarranted
17652         recentering.  Reported by Milan Stanojević <milanst@gmail.com> in
17653         http://lists.gnu.org/archive/html/help-gnu-emacs/2015-04/msg00092.html,
17654         which see.
17656 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
17658         * lisp/abbrev.el (define-abbrev-table): Refine last change.
17660         * lisp/emacs-lisp/cl-lib.el: Partial revert of "2015-04-05 Rationalize
17661         use of c[ad]+r", so as to keep the "cl-" prefix on all
17662         cl-lib definitions.
17664         * lisp/progmodes/vhdl-mode.el (vhdl-prepare-search-2):
17665         Use inhibit-point-motion-hooks.
17667         * lisp/cedet/semantic: Remove some dead code.
17668         * lisp/cedet/semantic/util-modes.el
17669         (semantic-stickyfunc-header-line-format): Emacs<22 is not supported
17670         any more.
17671         * lisp/cedet/semantic/fw.el (semantic-buffer-local-value): Emacs<21 is
17672         not supported any more.
17673         (semantic-safe): Use `declare'.
17674         * lisp/cedet/semantic/decorate.el (semantic-set-tag-intangible)
17675         (semantic-tag-intangible-p): Remove unused functions.
17676         * lisp/cedet/semantic/complete.el (semantic-displayor-window-edges):
17677         Remove unused function.
17679         * lisp/gnus/gnus-art.el (gnus-hidden-properties): Simplify.
17680         (gnus-article-hide-text, gnus-article-unhide-text)
17681         (gnus-article-unhide-text-type): Remove special handling of
17682         `intangible' since that property is not used any more.
17683         (gnus-article-treat-body-boundary): Use gnus-hidden-properties.
17685 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
17687         Use the VC root in `log-edit-listfun'
17688         * lisp/vc/vc-dispatcher.el (vc-log-edit): Use the VC root in
17689         `log-edit-listfun'.
17691 2015-04-09  Jay Belanger  <jay.p.belanger@gmail.com>
17693         Fix description of Unix time, mention new function.
17694         * lisp/calc/calc-forms.el (calcFunc-unixtime): Fix adjustment for
17695         Unix time.
17696         * doc/misc/calc.texi (Date Forms): Fix description of Unix time.
17697         (Basic Operations on Units): Mention `calc-convert-exact-units'.
17699 2015-04-09  Artur Malabarba  <bruce.connor.am@gmail.com>
17701         * lisp/emacs-lisp/package.el: Use mode-line-process for notification.
17703 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
17705         * lisp/vc/log-edit.el (log-edit-insert-changelog-entries):
17706         Don't add newline after the last entry.
17708 2015-04-09  Simen Heggestøyl  <simenheg@gmail.com>
17710         css-mode.el: Add "not" pseudo-class
17711         (Bug#20267)
17712         * lisp/textmodes/css-mode.el (css-pseudo-class-ids): Add "not" to
17713         list of CSS pseudo-classes.
17715 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
17717         * etc/NEWS: Add missing entry for "Stop messing with the EMACS env var".
17719 2015-04-09  Michael Albinus  <michael.albinus@gmx.de>
17721         Stop messing with the EMACS env var
17722         * doc/emacs/misc.texi (Interactive Shell): Remove description of
17723         EMACS env var.
17725 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
17727         Adapt 'make change-history' to coding cookie
17728         * Makefile.in (change-history): Adjust to change of format of
17729         ChangeLog file, which now has a coding cookie before an indented
17730         copyright notice.
17732 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
17734         Adapt 'make change-history' to coding cookie
17735         * Makefile.in (change-history): Adjust to change of format of
17736         ChangeLog file, which now has a coding cookie before an indented
17737         copyright notice.
17739         gitlog-to-changelog coding cookie and mv -i
17740         * build-aux/gitlog-to-emacslog: Use ChangeLog.1, not Makefile.in,
17741         for copyright notice prototype, so that we get a proper "coding:"
17742         cookie.  Use 'mv -i' to avoid unconditionally overwriting an
17743         existing ChangeLog.  Problems reported by Eli Zaretskii in:
17744         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00504.html
17746         Merge from gnulib
17747         * build-aux/gitlog-to-changelog: Update from gnulib, incorporating:
17748         2015-04-09 gitlog-to-changelog: port to MS-Windows
17750 2015-04-09  Boruch Baum  <boruch_baum@gmx.com>  (tiny change)
17752         * lisp/bookmark.el (bookmark-bmenu-goto-bookmark): Don't inf-loop.
17753         (Bug#20212)
17755 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
17757         Stop messing with the EMACS env var
17758         (Bug#20202)
17759         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
17760         * lisp/comint.el (comint-exec-1):
17761         * lisp/term.el (term-exec-1): Don't set EMACS envvar.
17762         * lisp/progmodes/compile.el (compilation-start): Same and bring
17763         INSIDE_EMACS's format in line with other users.
17765         css-mode.el (css-smie-rules): Fix indentation after complex selectors
17766         (Bug#20282)
17767         * lisp/textmodes/css-mode.el (css-smie-rules): Don't get confused by
17768         inner structure of selectors.
17770 2015-04-08  Fabián Ezequiel Gallina  <fgallina@gnu.org>
17772         python.el: Indent docstring lines to base-indent
17773         (Bug#19595)
17774         Thanks to immerrr <immerrr@gmail.com> for reporting and providing
17775         an initial patch.
17776         * lisp/progmodes/python.el
17777         (python-indent-context): Add :inside-docstring context.
17778         (python-indent--calculate-indentation): Handle :inside-docstring.
17779         (python-indent-region): Re-indent docstrings.
17780         * test/automated/python-tests.el (python-indent-region-5)
17781         (python-indent-inside-string-2): Fix tests.
17783         python.el: Increase native completion robustness
17784         (Bug#19755)
17785         Thanks to Carlos Pita <carlosjosepita@gmail.com> for reporting
17786         this and providing useful ideas.
17787         * lisp/progmodes/python.el
17788         (python-shell-completion-native-output-timeout): Increase value.
17789         (python-shell-completion-native-try-output-timeout): New var.
17790         (python-shell-completion-native-try): Use it.
17791         (python-shell-completion-native-setup): New readline setup avoids
17792         polluting current context, ensures output when no-completions are
17793         available and includes output end marker.
17794         (python-shell-completion-native-get-completions): Trigger with one
17795         tab only.  Call accept-process-output until output end is found or
17796         python-shell-completion-native-output-timeout is exceeded.
17798 2015-04-08  Samer Masterson  <samer@samertm.com>
17800         * lisp/eshell: Make backslash a no-op in front of normal chars
17801         (Bug#8531)
17802         * lisp/eshell/esh-arg.el (eshell-parse-argument-hook): Update comment.
17803         (eshell-parse-backslash): Return escaped character after backslash
17804         if it is special.  Otherwise, if the backslash is not in a quoted
17805         string, ignore the backslash and return the character after; if
17806         the backslash is in a quoted string, return the backslash and the
17807         character after.
17808         * test/automated/eshell.el (eshell-test/escape-nonspecial)
17809         (eshell-test/escape-nonspecial-unicode)
17810         (eshell-test/escape-nonspecial-quoted)
17811         (eshell-test/escape-special-quoted): Add tests for new
17812         `eshell-parse-backslash' behavior.
17814 2015-04-08  Gustav Hållberg  <gustav@gmail.com>  (tiny change)
17816         * lisp/vc/diff-mode.el (diff-hunk-file-names): Don't require a TAB
17817         after the file name.
17818         (Bug#20276)
17820 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
17822         Minor quoting etc. fixes to Emacs manual
17823         * doc/emacs/Makefile.in, doc/emacs/ack.texi, doc/emacs/building.texi:
17824         * doc/emacs/calendar.texi, doc/emacs/cmdargs.texi:
17825         * doc/emacs/custom.texi, doc/emacs/dired.texi, doc/emacs/emacs.texi:
17826         * doc/emacs/files.texi, doc/emacs/glossary.texi, doc/emacs/gnu.texi:
17827         * doc/emacs/indent.texi, doc/emacs/macos.texi:
17828         * doc/emacs/maintaining.texi, doc/emacs/makefile.w32-in:
17829         * doc/emacs/programs.texi, doc/emacs/rmail.texi:
17830         * doc/emacs/search.texi, doc/emacs/trouble.texi:
17831         * doc/emacs/vc1-xtra.texi:
17832         Use American-style double quoting in ordinary text,
17833         and quote 'like this' when single-quoting in ASCII text.
17834         Also, fix some minor spacing issues.
17836         Minor quoting etc. fixes to elisp intro
17837         * doc/lispintro/emacs-lisp-intro.texi: Consistently use
17838         American-style double quoting in ordinary text.  In ASCII text,
17839         consistently quote 'like this' instead of `like this', unless
17840         Emacs requires the latter.
17842 2015-04-08  Dmitry Gutov  <dgutov@yandex.ru>
17844         * CONTRIBUTE: Mention log-edit-insert-changelog.
17846         * CONTRIBUTE: Emphasize creating the top-level ChangeLog file manually.
17848 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
17850         * doc/misc/calc.texi (Summary): Avoid '@:' when usurped.
17852 2015-04-08  Stefan Monnier  <monnier@iro.umontreal.ca>
17854         * lisp/emacs-lisp/eieio-core.el (eieio-copy-parents-into-subclass):
17855         Fix inheritance of initargs.  (Bug#20270)
17857 2015-04-08  Artur Malabarba  <bruce.connor.am@gmail.com>
17859         * lisp/emacs-lisp/package.el (package-menu-mode): Mode-line notification
17860         while dowloading information.
17862         * lisp/emacs-lisp/package.el: More conservative `ensure-init-file'
17863         (package--ensure-init-file): Check file contents before visiting.
17864         (package-initialize): Call it.
17865         (package-install-from-buffer, package-install): Don't call it.
17867 2015-04-08  Eli Zaretskii  <eliz@gnu.org>
17869         * src/eval.c (init_eval_once): Bump max_lisp_eval_depth to 800.
17870         (Bug#17517)
17872 2015-04-08  Michael Albinus  <michael.albinus@gmx.de>
17874         * lisp/net/tramp-cache.el (tramp-flush-file-property):
17875         Fix nasty scoping bug.
17877 2015-04-08  Tassilo Horn  <tsdh@gnu.org>
17879         Add notice to visual commands section
17880         * doc/misc/eshell.texi (Input/Output): Add notice that some tools
17881         such as git call less with its -F option which omits pagination if
17882         the contents is less than one page long.  This interferes with
17883         eshell's visual (sub-)commands.
17885 2015-04-07  Dmitry Gutov  <dgutov@yandex.ru>
17887         * lisp/ffap.el (ffap-string-at-point-mode-alist): Support
17888         environment variable expansion in file names.  (Bug#19839)
17890 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
17892         Prefer double-quote to accent-grave in man pages
17894 2015-04-07  Stefan Monnier  <monnier@iro.umontreal.ca>
17896         (Bug#20257)
17897         * lisp/files.el (set-visited-file-name): Clear auto-save if nil.
17899 2015-04-07  Ivan Shmakov  <ivan@siamics.net>
17901         Update etc/PROBLEMS.
17902         * etc/PROBLEMS: Mention visible-cursor; a few more mentions of
17903         ~/.Xresources and xrdb(1); refer to 'GNU Coreutils' and
17904         'X Window System' or 'X' (were: 'GNU Fileutils' and 'X Windows',
17905         respectively); other minor updates and tweaks.  (Bug#20011)
17907 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
17909         Add doc strings for some Isearch state vars
17910         * lisp/misearch.el (multi-isearch-buffer-list)
17911         (multi-isearch-file-list): Add doc strings.
17912         (Bug#20232)
17914 2015-04-07  Alan Mackenzie  <acm@muc.de>
17916         Always mark "<" and ">" in #include directives with text properties.
17917         * lisp/progmodes/c-fonts.el (c-cpp-matchers): Replace a font-lock
17918         "anchored matcher" with an invocation of
17919         c-make-font-lock-search-function to allow fontification when there's
17920         no trailing space on an "#include <..>" line.
17922 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
17924         Generate a ChangeLog file from commit logs
17925         * .gitignore: Add 'ChangeLog'.
17926         * build-aux/gitlog-to-changelog: New file, from Gnulib.
17927         * build-aux/gitlog-to-emacslog: New file.
17928         * CONTRIBUTE: Document the revised workflow.
17929         * Makefile.in (clean): Remove *.tmp and etc/*.tmp*
17930         instead of just special cases.
17931         (CHANGELOG_HISTORY_INDEX_MAX, CHANGELOG_N, gen_origin): New vars.
17932         (ChangeLog, unchanged-history-files, change-history)
17933         (change-history-commit): New rules.
17934         * admin/admin.el (make-manuals-dist--1):
17935         Don't worry about doc/ChangeLog.
17936         * admin/authors.el: Add a FIXME.
17937         * admin/make-tarball.txt:
17938         * lisp/calendar/icalendar.el:
17939         * lisp/gnus/deuglify.el:
17940         * lisp/obsolete/gulp.el:
17941         * lwlib/README:
17942         Adjust to renamed ChangeLog history files.
17943         * admin/merge-gnulib (GNULIB_MODULES): Add gitlog-to-changelog.
17944         * admin/notes/repo: Call it 'master' a la Git, not 'trunk' a la Bzr.
17945         Remove obsolete discussion of merging ChangeLog files.
17946         New section "Maintaining ChangeLog history".
17947         * build-aux/git-hooks/pre-commit:
17948         Reject attempts to commit files named 'ChangeLog'.
17949         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
17950         * make-dist: Make and distribute top-level ChangeLog if there's a
17951         .git directory.  Distribute the new ChangeLog history files
17952         instead of scattered ChangeLog files.  Distribute the new files
17953         gitlog-to-changelog and gitlog-to-emacslog.
17954         (Bug#19113)
17956         Rename ChangeLogs for gitlog-to-changelog
17957         This patch was implemented via the following shell commands:
17958         find * -name ChangeLog |
17959         sed 's,.*,git mv & &.1,
17960         s, lisp/ChangeLog\.1$, lisp/ChangeLog.17,
17961         s, lisp/erc/ChangeLog\.1$, lisp/erc/ChangeLog.09,
17962         s, lisp/gnus/ChangeLog\.1$, lisp/gnus/ChangeLog.3,
17963         s, lisp/mh-e/ChangeLog\.1$, lisp/mh-e/ChangeLog.2,
17964         s, src/ChangeLog\.1$, src/ChangeLog.13,' |
17965         sh
17966         git commit -am"[this commit message]"
17968 This file records repository revisions from
17969 commit 9d56a21e6a696ad19ac65c4b405aeca44785884a (exclusive) to
17970 commit 8a8613bcf4227dfe46a694b761e9575bdf6ca2ce (inclusive).
17971 See ChangeLog.1 for earlier changes.
17973 ;; Local Variables:
17974 ;; coding: utf-8
17975 ;; End:
17977   Copyright (C) 2015 Free Software Foundation, Inc.
17979   This file is part of GNU Emacs.
17981   GNU Emacs is free software: you can redistribute it and/or modify
17982   it under the terms of the GNU General Public License as published by
17983   the Free Software Foundation, either version 3 of the License, or
17984   (at your option) any later version.
17986   GNU Emacs is distributed in the hope that it will be useful,
17987   but WITHOUT ANY WARRANTY; without even the implied warranty of
17988   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17989   GNU General Public License for more details.
17991   You should have received a copy of the GNU General Public License
17992   along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.