; Merge from origin/emacs-25
[emacs.git] / ChangeLog.2
blobb73651d814dd6fd5ce1d1914452e26378527e80b
1 2016-12-30  Alan Mackenzie  <acm@muc.de>
3         Backport: Remove an ambiguity from defvar's doc string.  Fixes bug #25292.
5         The ambiguity was whether INITVALUE is evaluated when it's not going to be
6         used to set SYMBOL's value.
8         * src/eval.c (defvar): Rewrite a paragraph of the doc string.
10         (cherry picked from commit 8295e97f18490a535d1188a3daf0b0fd1bf4fa0d)
12 2016-12-28  Stefan Monnier  <monnier@iro.umontreal.ca>
14         * lisp/emacs-lisp/inline.el: Fix apply-conversion (bug#25280)
16         (inline--dont-quote): Quote the function with #' when passing it to `apply'.
17         Cherry picked from commit e6161f648903d821865b9610b3b6aa0f82a5dcb7.
19 2016-12-26  Eli Zaretskii  <eliz@gnu.org>
21         Document 'default-toplevel-value' and 'set-default-toplevel-value'
23         * doc/lispref/variables.texi (Default Value): Document
24         'default-toplevel-value' and 'set-default-toplevel-value'.
26 2016-12-25  Leo Liu  <sdl.web@gmail.com>
28         Don't modify minibuffer variables globally
30         * lisp/files.el (cd): Use setq-local instead.  (Bug#25260)
32 2016-12-24  Eli Zaretskii  <eliz@gnu.org>
34         Revert to pre-25.1 behavior in ffap
36         * lisp/ffap.el (ffap-lax-url): Change the default to t, to produce
37         the same behavior as in Emacs 24.x.  (Bug#25264)
38         Explain the trade-offs of customizing this in the doc string.
40 2016-12-24  Noam Postavsky  <npostavs@gmail.com>
42         * lisp/ffap.el: Fix obsolete comment referencing ffap-bug.
44 2016-12-23  Eli Zaretskii  <eliz@gnu.org>
46         Attempt to fix 64-bit AIX build
48         * src/unexaix.c (make_hdr, copy_text_and_data, write_segment): Fix
49         type-casts that assumed 32-bit pointers.  (Bug#25141)
51 2016-12-23  Philipp Stephani  <phst@google.com>
53         Clarify usage of 'ediff-cleanup-hook' (Bug#24675)
55         * doc/misc/ediff.texi (Hooks): Clarify usage of 'ediff-cleanup-hook'
57 2016-12-23  Philipp Stephani  <phst@google.com>
59         Document that variable binding order is unspecified
61         * doc/lispref/variables.texi (Local Variables):
62         * doc/misc/cl.texi (Modify Macros): Document that binding order in 'let' and
63         'cl-letf' is unspecified.
65 2016-12-23  Eli Zaretskii  <eliz@gnu.org>
67         * lisp/desktop.el (desktop-buffers-not-to-save): Doc fix.
69 2016-12-23  Stefan Monnier  <monnier@IRO.UMontreal.CA>
71         Fix M-x hints on Mac port
73         * lisp/simple.el (execute-extended-command--shorter): Call
74         input-pending-p to trigger input processing on some systems, such
75         as Mac port.  (Bug#23002)
77 2016-12-22  Martin Rudalics  <rudalics@gmx.at>
79         Work around reporting a dpi change in apply_xft_settings
81         * src/xsettings.c (apply_xft_settings): Don't report a change
82         when dpi settings do not differ substantially.
84 2016-12-20  Alan Mackenzie  <acm@muc.de>
86         Amend the version number of CC Mode 5.33 -> 5.32.99.  Don't merge to trunk.
88         lisp/progmodes/cc-defs.el: Amend the version number.
89         etc/NEWS: Add an item explaining the change.
91 2016-12-20  Noam Postavsky  <npostavs@gmail.com>
93         Improve skeleton docstrings
95         * lisp/skeleton.el (skeleton-end-newline): Remove mention of
96         `skeleton-end-hook', its default code was moved into `skeleton-insert'.
97         (skeleton-insert): Mention `skeleton-end-newline' and move reference to
98         `skeleton-end-hook' above the explanation of skeleton syntax.
100 2016-12-19  Eli Zaretskii  <eliz@gnu.org>
102         Improve documentation of 'w32-scroll-lock-modifier'
104         * doc/emacs/msdos.texi (Windows Keyboard): Document how to set up
105         w32-scroll-lock-modifier so that Scroll Lock toggles the LED.
107         * src/w32fns.c (syms_of_w32fns) <w32-scroll-lock-modifier>: Doc
108         fix.  (Bug#25204)
110 2016-12-19  Eli Zaretskii  <eliz@gnu.org>
112         Document 'describe-fontset'
114         * doc/emacs/mule.texi (Fontsets): Document 'describe-fontset'.
115         (Bug#25216)
117 2016-12-19  Eli Zaretskii  <eliz@gnu.org>
119         Document 'describe-fontset'
121         * doc/emacs/mule.texi (Fontsets): Document 'describe-fontset'.
122         (Bug#25216)
124 2016-12-17  Eli Zaretskii  <eliz@gnu.org>
126         Repair desktop restoration on text terminals
128         * lisp/desktop.el (desktop-restoring-frameset-p): Test for the GUI
129         frame here, instead of in desktop-restoring-frameset.  That's
130         because desktop-read wants to know whether frameset will actually
131         be restored, and has fallback procedures up its sleeve when it
132         won't be; these fallbacks need to be invoked when the frameset is
133         not going to be restored.  (Bug#24298)
135 2016-12-17  Dmitry Gutov  <dgutov@yandex.ru>
137         Ignore forward-sexp-function in js-mode indentation code
139         * lisp/progmodes/js.el (js--multi-line-declaration-indentation)
140         (js--maybe-goto-declaration-keyword-end):
141         Bind forward-sexp-function to nil (bug#25215).
143 2016-12-16  Eli Zaretskii  <eliz@gnu.org>
145         Improve documentation of 'define-coding-system'
147         * lisp/international/mule.el (define-coding-system): Warn against
148         possible infinite recursion in pre-write-conversion and
149         post-read-conversion functions.  (Bug#25203)
151 2016-12-11  Michael Albinus  <michael.albinus@gmx.de>
153         Fix Bug#25162
155         * doc/emacs/files.texi (Reverting): Document
156         auto-revert-remote-files and auto-revert-verbose.
158         * lisp/autorevert.el (auto-revert-verbose, auto-revert-mode)
159         (auto-revert-tail-mode, global-auto-revert-mode): Fix docstring.
161 2016-12-11  Glenn Morris  <rgm@gnu.org>
163         Fix a typo in define-abbrev-table
165         * lisp/abbrev.el (define-abbrev-table): Fix typo in docstring handling.
167 2016-12-11  Glenn Morris  <rgm@gnu.org>
169         Bump makeinfo requirement from 4.7 to 4.13
171         * configure.ac: Bump makeinfo version requirement from 4.7 to 4.13.
172         We need at least 4.8, and that may be buggy, so go for the last
173         of the 4 series, which is 8 years old.  (Bug#25108)
175 2016-12-11  Glenn Morris  <rgm@gnu.org>
177         Fixes related to select-enable-clipboard
179         * lisp/menu-bar.el (clipboard-yank, clipboard-kill-ring-save)
180         (clipboard-kill-region):
181         * lisp/eshell/esh-io.el (eshell-virtual-targets)
182         (eshell-clipboard-append):
183         Replace option gui-select-enable-clipboard with
184         select-enable-clipboard; renamed October 2014.  (Bug#25145)
186 2016-12-10  Noam Postavsky  <npostavs@gmail.com>
188         Define struct predicate before acccesors
190         The accessor functions use the predicate function, which causes problems
191         when reloading after unload-feature: the compiler-macro property is
192         still present on the predicate symbol, and the compiler fails to find
193         the definition when trying to inline it into the accessor
194         function (Bug#25088).
196         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Move predicate definition
197         before field accessor definitions.
199 2016-12-08  Glenn Morris  <rgm@gnu.org>
201         Doc fix for vc-git
203         * lisp/vc/vc-git.el (vc-git-region-history): Add a doc string.
205 2016-12-08  Glenn Morris  <rgm@gnu.org>
207         Further improve make-dist checking
209         * make-dist: Print status messages when checking.
211 2016-12-08  Glenn Morris  <rgm@gnu.org>
213         Improve previous make-dist change
215         * make-dist: Let make check the info files more thoroughly.
217 2016-12-08  Glenn Morris  <rgm@gnu.org>
219         Make make-dist --snapshot do some sanity checks
221         * make-dist: Snapshot mode no longer disables checks.
222         Checks now includes checks for freshness.  (Bug#25084)
223         Checks now exits with an error if problems were found.
225 2016-12-07  Paul Eggert  <eggert@cs.ucla.edu>
227         Fix minor quoting problems in doc strings
229 2016-12-07  Philipp Stephani  <p.stephani2@gmail.com>
231         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode): Fix docstring
233         so that it matches the actual implementation.
234         See https://lists.gnu.org/archive/html/help-gnu-emacs/2016-04/msg00071.html
236 2016-12-07  Noam Postavsky  <npostavs@gmail.com>
238         Don't assume window-point and point are the same
240         The function `cursor-sensor--detect' calls `bobp' to decide whether to
241         check properties at (1- (window-point)).  However, (window-point) may be
242         at beginning of buffer, even if (point) is not.  In this case an
243         `args-out-of-range' error will be signaled (Bug#25104).
245         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect): Check the
246         value of (window-point) against (point-min), rather than (bobp) to
247         decide if (1- (window-point)) is accessible.
249 2016-12-02  Nicolas Petton  <nicolas@petton.fr>
251         Fix bug#25087
253         * etc/themes/manoj-dark-theme.el: Fix two typos.
255         (cherry picked from commit 66d6e7e9ecf5e481f8c2c3a4f88411f66c869a6e)
257 2016-12-02  Eli Zaretskii  <eliz@gnu.org>
259         * lisp/vc/ediff-util.el (ediff-janitor): Doc fix.  (Bug#25046)
261 2016-12-02  Eli Zaretskii  <eliz@gnu.org>
263         Improve indexing of 'man'
265         * doc/emacs/programs.texi (Man Page): Index 'man', not
266         'manual-entry', as the latter is an alias for the former.
267         Suggested by Hong Xu <hong@topbug.net>.  (Bug#25033)
269 2016-12-02  Paul Eggert  <eggert@cs.ucla.edu>
271         Port to Sun C 5.14
273         Backport from master.  Sun C 5.14 supports C11 but not GCC
274         extensions, and so refuses to compile Emacs without this patch.
275         * src/alloc.c (lmalloc, lrealloc): Don't use INT_ADD_WRAPV on
276         size_t, as in general this macro is restricted to signed types.
278 2016-12-02  Richard Stallman  <rms@gnu.org>
280         Fix mail-combine-fields
282         * lisp/mail/sendmail.el (mail-combine-fields): Call `save-excursion' to
283         avoid losing our place in the search loop.
285         (cherry picked from commit 5fbba6cceaf843cfca449eb000a0a65243b61808)
287 2016-12-01  Martin Rudalics  <rudalics@gmx.at>
289         Fix documentation of `window-combination-resize'
291         * src/window.c (Vwindow_combination_resize): Fix doc-string.
292         * doc/lispref/windows.texi (Recombining Windows): Fix
293         documentation of `window-combination-resize'.
295 2016-11-29  Bogdan Creanga  <bogdan.creanga@gmail.com>  (tiny change)
297         Typo fixes in elisp manual
299         * doc/lispref/sequences.texi: Add missing '4' in result (Bug#25047).
300         * doc/lispref/strings.texi (Text Comparison): Avoid duplicate
301         definitions of 'string-prefix-p' and 'string-suffix-p'.
302         * doc/lispref/symbols.texi (Definitions): Pluralize 'definitions'.
304 2016-11-28  Eli Zaretskii  <eliz@gnu.org>
306         Fix 'expand-file-name' during startup on MS-Windows
308         * src/w32.c (w32_init_file_name_codepage): New function, resets
309         file_name_codepage and w32_ansi_code_page to undo the values
310         recorded during dumping.
311         (codepage_for_filenames): Fix an embarrassing typo.  Ignore the
312         cached value of file-name encoding if it is nil, i.e. not
313         initialized yet.  Actually cache the last used file-name encoding
314         to avoid calling APIs when not necessary.
316         * src/w32.h (w32_init_file_name_codepage): Add prototype.
318         * src/w32term.c (syms_of_w32term): Set the value of
319         w32_unicode_filenames according to the OS version.  This avoids
320         resetting it during startup, which then causes temacs to run with
321         the incorrect value.
323         * src/emacs.c (main): Call w32_init_file_name_codepage early
324         during the startup.
326         * src/fileio.c (Fexpand_file_name) [WINDOWSNT]: Update 'newdir'
327         after converting $HOME to a UTF-8 string, so that 'newdirlim' is
328         consistent with it.  (Bug#25038)
330         * lisp/international/mule-cmds.el (set-locale-environment): Set
331         'default-file-name-coding-system' to the ANSI codepage even in
332         non-interactive sessions.
334         * lisp/files.el (directory-abbrev-alist, abbreviated-home-dir):
335         Doc fix.
336         (abbreviate-file-name): Decode 'abbreviated-home-dir' if it is a
337         unibyte string.
339         * doc/lispref/files.texi (Directory Names): Index
340         'directory-abbrev-alist'.
342 2016-11-28  Nicolas Petton  <nicolas@petton.fr>
344         * admin/authors.el (authors-renamed-files-alist): Addition.
346 2016-11-28  Glenn Morris  <rgm@gnu.org>
348         Tweak refcard note about documentation location
350         * etc/refcards/calccard.tex, etc/refcards/cs-dired-ref.tex:
351         * etc/refcards/cs-refcard.tex, etc/refcards/cs-survival.tex:
352         * etc/refcards/de-refcard.tex, etc/refcards/dired-ref.tex:
353         * etc/refcards/fr-dired-ref.tex, etc/refcards/fr-refcard.tex:
354         * etc/refcards/fr-survival.tex, etc/refcards/gnus-refcard.tex:
355         * etc/refcards/orgcard.tex, etc/refcards/pl-refcard.tex:
356         * etc/refcards/pt-br-refcard.tex, etc/refcards/refcard.tex:
357         * etc/refcards/ru-refcard.tex, etc/refcards/sk-dired-ref.tex:
358         * etc/refcards/sk-refcard.tex, etc/refcards/sk-survival.tex:
359         * etc/refcards/survival.tex, etc/refcards/vipcard.tex:
360         * etc/refcards/viperCard.tex: Tweak documentation url.
362 2016-11-28  Glenn Morris  <rgm@gnu.org>
364         Improve treatment of Fortran's "class is"
366         * lisp/progmodes/f90.el (f90-start-block-re, f90-no-block-limit):
367         Handle "class is".  (Bug#25039)
368         * test/automated/f90.el (f90-test-bug25039): New test.
370 2016-11-28  Nicolas Petton  <nicolas@petton.fr>
372         Bump Emacs version to 25.1.90
374         * README:
375         * configure.ac:
376         * msdos/sed2v2.inp:
377         * nt/README.W32: Bump Emacs version to 25.1.90
379 2016-11-27  Nicolas Petton  <nicolas@petton.fr>
381         Bump Emacs version
383         * README:
384         * configure.ac:
385         * etc/NEWS:
386         * msdos/sed2v2.inp:
387         * nt/README.W32: Bump Emacs version to 25.2.90
389 2016-11-26  Karl Fogel  <kfogel@red-bean.com>
391         Handle TeX comments when making new paragraph
393         * lisp/textmodes/tex-mode.el (tex-handle-newline): New function.
394           Handle comment case directly, and dispatch to `tex-terminate-paragraph'
395           for original behavior in non-comment case.
396           (tex-mode-map): Bind above to C-j, replacing `tex-terminate-paragraph'.
398 2016-11-25  Eli Zaretskii  <eliz@gnu.org>
400         Restore keystroke echo in 'C-q'
402         * lisp/simple.el (read-quoted-char): Use 'read-event' instead of
403         'read-key', to avoid losing the keystroke echo in 'C-q'.  (Bug#24635)
405 2016-11-25  Eli Zaretskii  <eliz@gnu.org>
407         Improve documentation of 'current-word'
409         * lisp/simple.el (current-word): Clarify and improve the doc
410         string.  (Bug#24979)
412 2016-11-25  Chunyang Xu  <mail@xuchunyang.me>
414         Fix a typo in an Eshell defcustom
416         * lisp/eshell/esh-mode.el (eshell-scroll-to-bottom-on-output): Fix
417         a typo in the 'others' standard value.  (Bug#24983)
419 2016-11-24  Hong Xu  <hong@topbug.net>  (tiny change)
421         Minor copyedits of electric-pair-mode
423         * doc/emacs/programs.texi (Matching): Add index entries.  Fix
424         typos.  (Bug#25012)
426 2016-11-24  Eli Zaretskii  <eliz@gnu.org>
428         Fix documentation of 'invocation-directory'
430         * doc/lispref/os.texi (System Environment): Fix wording of the
431         description of 'invocation-directory'.  (Bug#24999)
433 2016-11-23  Glenn Morris  <rgm@gnu.org>
435         * admin/authors.el (authors-aliases): Add an entry.
437 2016-11-22  Philipp Stephani  <phst@google.com>
439         Guard terminal parameter in XTerm mouse mode
441         It has been observed (in the HTerm terminal emulator) that the
442         event stored in the 'xterm-mouse-last-down' terminal parameter gets
443         overwritten during a mouse drag operation, causing Emacs to attempt to
444         synthesize the non-existing <drag-mouse-0> event.  Copy the event into
445         the terminal parameter to protect against such modifications.
447         * lisp/xt-mouse.el (xterm-mouse-translate-1): Guard against modification
448         of input event list.
450 2016-11-21  Nicolas Petton  <nicolas@petton.fr>
452         * etc/AUTHORS: Regenerate the AUTHORS file
454 2016-11-21  Nicolas Petton  <nicolas@petton.fr>
456         Update ChangeLog files and authors.el
458         * admin/authors.el (authors-renamed-files-alist): Add entries for
459           obsolete files.
460         * ChangeLog.2: Update.
462 2016-11-21  Eli Zaretskii  <eliz@gnu.org>
464         Fix menu bindings of Dired 'A' and 'Q' commands
466         * lisp/dired.el (dired-mode-map): Rebind "Search Files" and "Query
467         Replace in Files" menu items to 'dired-do-find-regexp' and
468         'dired-do-find-regexp-and-replace', respectively.  (Bug#24977)
470 2016-11-20  Eli Zaretskii  <eliz@gnu.org>
472         Avoid errors in shr-pixel-column due to dedicated windows
474         * lisp/net/shr.el (shr-pixel-column): If we are switching to
475         another buffer in the selected window, make that window
476         temporarily non-dedicated.  (Bug#24950)
478 2016-11-20  Tino Calancha  <tino.calancha@gmail.com>
480         Update format-time-string documentation
482         * doc/lispref/os.texi (Time Parsing):
483         Document %F, %g, %G, %u and %V.
485 2016-11-19  Eli Zaretskii  <eliz@gnu.org>
487         * admin/release-process: Update versions and blocking bug numbers.
489 2016-11-18  Eli Zaretskii  <eliz@gnu.org>
491         Improve documentation of functions that accept time values
493         * doc/lispref/os.texi (Time Calculations): Mention the meaning of
494         'nil' or a scalar number as the time-value argument.  Add a
495         cross-reference to 'float-time' for computing a time difference as
496         a scalar number of seconds.
498         * src/editfns.c (Fformat_time_string, Ftime_less_p)
499         (Ftime_subtract, Ftime_add, Fdecode_time, Fcurrent_time_string)
500         (Fcurrent_time_zone): Mention in the doc strings the meaning of
501         nil argument and the fact that a time value can be a scalar number
502         of seconds since the epoch.
503         (Ftime_subtract): Mention 'float-time'.
505 2016-11-18  Daniel Colascione  <dancol@dancol.org>
507         Speed up initialization by preferring /dev/urandom to GnuTLS
509         * src/sysdep.c (init_random): Try /dev/urandom before GnuTLS.
511         (cherry picked from commit a37eba849eddc41375ad73974f6fcb1258aa8eba)
513 2016-11-18  Glenn Morris  <rgm@gnu.org>
515         Add a comment in generated refcards about the source
517         * etc/refcards/calccard.tex, etc/refcards/cs-dired-ref.tex:
518         * etc/refcards/cs-refcard.tex, etc/refcards/cs-survival.tex:
519         * etc/refcards/de-refcard.tex, etc/refcards/dired-ref.tex:
520         * etc/refcards/fr-dired-ref.tex, etc/refcards/fr-refcard.tex:
521         * etc/refcards/fr-survival.tex, etc/refcards/gnus-refcard.tex:
522         * etc/refcards/orgcard.tex, etc/refcards/pl-refcard.tex:
523         * etc/refcards/pt-br-refcard.tex, etc/refcards/refcard.tex:
524         * etc/refcards/ru-refcard.tex, etc/refcards/sk-dired-ref.tex:
525         * etc/refcards/sk-refcard.tex, etc/refcards/sk-survival.tex:
526         * etc/refcards/survival.tex, etc/refcards/vipcard.tex:
527         * etc/refcards/viperCard.tex: Add comment about the source.
529 2016-11-17  Dmitry Gutov  <dgutov@yandex.ru>
531         js-mode: Fix indent problem after a regexp
533         * lisp/progmodes/js.el (js--looking-at-operator-p): Check that the
534         slash is not ending a regexp (bug#24854).
536 2016-11-16  Eli Zaretskii  <eliz@gnu.org>
538         Fix sluggish display of symbols in UTF-8 language environment
540         * lisp/international/fontset.el (setup-default-fontset): Make sure
541         Symbola and FreeMono are set up in the default fontset as belonging
542         to the "iso10646-1" registry.  In the UTF-8 locale, this avoids a
543         long and futile search for a suitable font, whose side effect is a
544         lot of consing, which then hits the font-cache compacting issue,
545         and causes very sluggish redisplay of characters displayed by
546         these fonts.  All this happens because the default for the
547         registry is "iso8859-1".  (Bug#24953)
549 2016-11-16  Glenn Morris  <rgm@gnu.org>
551         Don't confuse how Texinfo outputs @var with the input
553         * doc/emacs/rmail.texi (Movemail):
554         * doc/lispref/control.texi (Pattern matching case statement):
555         * doc/lispref/frames.texi (Size and Position):
556         * doc/lispref/processes.texi (Asynchronous Processes):
557         * doc/lispref/text.texi (Document Object Model):
558         * doc/lispref/windows.texi (Coordinates and Windows):
559         Do not upper-case the argument of @var.
561 2016-11-16  Glenn Morris  <rgm@gnu.org>
563         * doc/lispref/display.texi (Scroll Bars):
564         * doc/lispref/frames.texi (Size and Position):
565         * doc/lispref/windows.texi (Window Sizes): Fix arglist typos.
567         * doc/emacs/cmdargs.texi (Initial Options): Copyedit for --daemon.
569 2016-11-15  Eli Zaretskii  <eliz@gnu.org>
571         More fixes in copyright notices in etc/refcards/
573         * etc/refcards/calccard.tex:
574         * etc/refcards/cs-dired-ref.tex:
575         * etc/refcards/cs-refcard.tex:
576         * etc/refcards/cs-survival.tex:
577         * etc/refcards/de-refcard.tex:
578         * etc/refcards/dired-ref.tex:
579         * etc/refcards/fr-dired-ref.tex:
580         * etc/refcards/fr-refcard.tex:
581         * etc/refcards/fr-survival.tex:
582         * etc/refcards/orgcard.tex:
583         * etc/refcards/pl-refcard.tex:
584         * etc/refcards/pt-br-refcard.tex:
585         * etc/refcards/refcard.tex:
586         * etc/refcards/ru-refcard.tex:
587         * etc/refcards/sk-dired-ref.tex:
588         * etc/refcards/sk-refcard.tex:
589         * etc/refcards/sk-survival.tex:
590         * etc/refcards/survival.tex:
591         * etc/refcards/vipcard.tex:
592         * etc/refcards/viperCard.tex: Change "GNU Emacs" to "this
593         document" in copyright notices.  (Bug#24520)
595 2016-11-13  Eli Zaretskii  <eliz@gnu.org>
597         Update copyright text in refcards
599         * etc/refcards/viperCard.tex:
600         * etc/refcards/vipcard.tex:
601         * etc/refcards/survival.tex:
602         * etc/refcards/sk-survival.tex:
603         * etc/refcards/sk-dired-ref.tex:
604         * etc/refcards/sk-refcard.tex:
605         * etc/refcards/ru-refcard.tex:
606         * etc/refcards/refcard.tex:
607         * etc/refcards/pt-br-refcard.tex:
608         * etc/refcards/pl-refcard.tex:
609         * etc/refcards/orgcard.tex:
610         * etc/refcards/gnus-refcard.tex:
611         * etc/refcards/fr-survival.tex:
612         * etc/refcards/fr-refcard.tex:
613         * etc/refcards/fr-dired-ref.tex:
614         * etc/refcards/dired-ref.tex:
615         * etc/refcards/de-refcard.tex:
616         * etc/refcards/cs-survival.tex:
617         * etc/refcards/cs-refcard.tex:
618         * etc/refcards/cs-dired-ref.tex:
619         * etc/refcards/calccard.tex: Update the copyright blurb.  (Bug#24520)
621 2016-11-12  Eli Zaretskii  <eliz@gnu.org>
623         Fix Outline command names
625         * doc/emacs/text.texi (Foldout): Use the outline-* names instead
626         of the obsolete aliases.  (Bug#24890)
628 2016-11-10  Philipp Stephani  <phst@google.com>
630         Send text received by bracketed paste to process
632         See Bug#24639.
634         * lisp/term.el (term--xterm-paste): New function.
635         (term-raw-map): Use it.
636         (xterm--pasted-text): Declare function from xterm.el.
638 2016-11-10  Alan Mackenzie  <acm@muc.de>
640         Correct the statement about programming modes always running prog-mode-hook.
642         * doc/emacs/modes.texi (Major Modes): Amend the statement about programming
643         modes running prog-mode-hook to say that it applies to many (not all) such
644         modes, and specifying exactly which modes.
646 2016-11-10  Eli Zaretskii  <eliz@gnu.org>
648         Improve documentation of 'occur'
650         * doc/emacs/search.texi (Other Repeating Search): Clarify how to
651         use Occur with search strings from last Isearch.  (Bug#24890)
653 2016-11-09  Noam Postavsky  <npostavs@gmail.com>
655         Do call debugger on failed cl-assert
657         "Don't call debug on failed cl-assert..." removed the call to `debug' in
658         cl--assertion-failed because `debug' calls `kill-emacs' in batch mode,
659         thus messing up ert test runs.  However, calling the debugger is useful
660         because it allows catching failed assertions even inside
661         `condition-case' calls.  The problem with ert can be avoided by calling
662         `debugger' instead of `debug' directly, since ert installs its own
663         debugger while running tests.
665         * lisp/emacs-lisp/cl-preloaded.el (cl--assertion-failed): Call
666         `debugger' if `debug-on-error' is non-nil.
668 2016-11-09  Daniel Colascione  <dancol@dancol.org>
670         Avoid infloop in python
672         Fix bug#24905
674         * lisp/progmodes/python.el (python-info-docstring-p): Improve
675         infloop avoidance: replace (bobp) with generic test for
676         forward progress.
677         * test/automated/python-tests.el (python-bob-infloop-avoid): Add
678         test for bug#24905
680 2016-11-07  Eli Zaretskii  <eliz@gnu.org>
682         Don't refer to obsolete FEATURE-unload-hook
684         * doc/lispref/tips.texi (Coding Conventions): Refer to
685         FEATURE-unload-function rather than its obsolete variant
686         FEATURE-unload-hook.  (Bug#24890)
688 2016-11-07  Eli Zaretskii  <eliz@gnu.org>
690         Improve documentation of dabbrevs
692         * lisp/dabbrev.el (dabbrev-expand): Doc fix.  (Bug#24890)
694         * doc/emacs/abbrevs.texi (Dynamic Abbrevs): Mention
695         'dabbrev-check-all-buffers', 'dabbrev-check-other-buffers', and
696         'dabbrev-ignored-buffer-names' and their purpose.  (Bug#24890)
698 2016-11-07  Eli Zaretskii  <eliz@gnu.org>
700         * lisp/chistory.el (list-command-history): Doc fix.  (Bug#24890)
702         * lisp/simple.el (set-mark-command): Doc fix.  (Bug#24890)
704 2016-11-07  Eli Zaretskii  <eliz@gnu.org>
706         Improve documentation of some Help commands
708         * doc/emacs/help.texi (Help Mode): Fix mistake in key sequences.
709         Mention the 'l' and 'r' keys.
710         (Misc Help): Mention that 'C-h m' describes key bindings.
711         (Bug#24890)
713 2016-11-07  Eli Zaretskii  <eliz@gnu.org>
715         Fix documentation of yes-or-no prompts
717         * doc/emacs/mini.texi (Yes or No Prompts): Fix mistakes in key
718         sequences.  (Bug#24890)
720 2016-11-07  Eli Zaretskii  <eliz@gnu.org>
722         Fix documentation of partial completion style
724         * doc/emacs/mini.texi (Completion Styles): Fix the description of
725         the wildcard '*'.  (Bug#24890)
727 2016-11-07  Eli Zaretskii  <eliz@gnu.org>
729         Fix documentation of the mode line on emacsclient frames
731         * doc/emacs/screen.texi (Mode Line): Document the '@' indicator on
732         emacsclient frames.
734 2016-11-07  Eli Zaretskii  <eliz@gnu.org>
736         Fix description of 'C-z' in User manual
738         * doc/emacs/entering.texi (Exiting): 'C-z' is bound to
739         'suspend-frame'.  (Bug#24890)
741 2016-11-07  Eli Zaretskii  <eliz@gnu.org>
743         Improve and clarify documentation of Outline Mode
745         * doc/emacs/text.texi (Outline Visibility): Use the outline-*
746         names instead of the obsolete aliases.  (Bug#24890)
748         * lisp/outline.el (outline-hide-sublevels, outline-hide-other)
749         (outline-hide-body): Doc fixes.  (Bug#24890)
751 2016-11-06  Eli Zaretskii  <eliz@gnu.org>
753         Add Emacs version number to nt/README.W32
755         * nt/README.W32: Include the version number of the latest Emacs
756         release.
758         * admin/admin.el (set-version): Update the version in nt/README.W32.
760 2016-11-06  Noam Postavsky  <npostavs@gmail.com>
762         Fix python-mode hideshow regexp
764         2015-02-07 "Fix hideshow integration[...]" changed the regexp added to
765         `hs-special-modes-alist' so that it worked when not searching from the
766         beginning of the line.  However, this allows matching tokens ending in
767         "def" or "class", not just those keywords.  This results in an infinite
768         loop in hs-hide-all (Bug #24815).
770         * lisp/progmodes/python.el (python-mode): Add symbol boundaries around
771         the def|class matching part of the regexp added to
772         hs-special-modes-alist.
774 2016-11-06  Paul Eggert  <eggert@cs.ucla.edu>
776         Modernize usage of 'macOS' in doc and comments
778         Apple changed the spelling of its operating system again, to "macOS",
779         effective with macOS 10.12 Sierra (2016-09-20).  Change Emacs
780         documentation and comments to match this.  Stick with older OS
781         spellings ("OS X", "Mac OS X") when talking about older releases where
782         the older names are more correct.
784 2016-11-06  Paul Eggert  <eggert@cs.ucla.edu>
786         Prefer comments /* like this */ in C code
788         Emacs C code assumes C99 features, but has long used traditional
789         comments /* like this */ instead of C99-style comments // like this.
790         Stick with traditional comments for now, partly for style, partly as
791         it may be safer with compilers that are not fully in C99 mode.
793 2016-11-05  Noam Postavsky  <npostavs@gmail.com>
795         * doc/lispref/loading.texi (Autoload): Better link (Bug#24845).
797 2016-11-05  Eli Zaretskii  <eliz@gnu.org>
799         Clarify documentation of face attribute functions
801         * doc/lispref/display.texi (Attribute Functions): Make sure to
802         document that an omitted FRAME argument means the same as nil.
803         (Bug#24879)
805 2016-11-05  Noam Postavsky  <npostavs@gmail.com>
807         Don't call debug on failed cl-assert
809         Doing this causes problems when running ert tests, for
810         instance (Bug#24778).  The call to `debug` when `debug-on-error' is
811         non-nil was introduced in 2015-02-14 "* lisp/emacs-lisp/cl*.el: Use
812         define-inline and move some code...".
814         * lisp/emacs-lisp/cl-preloaded.el (cl--assertion-failed): Don't call
815         `debug' directly.
817 2016-11-04  Phillip Lord  <phillip.lord@russet.org.uk>
819         Update README for precompiled windows Emacs.
821          * nt/README.W32: Describe 64 and 32-bit downloads, optional
822            dependencies bundle. Remove old material on sourcing dependencies.
823            Remove references to Windows 95. Update GUI references to recent
824            Windows. Remove references to Usenet.
826 2016-11-04  Hong Xu  <hong@topbug.net>
828         Clarify documentation of 'vc-responsible-backend' wrt symlinks
830         * lisp/vc/vc.el (vc-responsible-backend): Clarify that symlinks
831         are not resolved when the VC backend is reported.
833         * doc/lispref/files.texi (Truenames): Document
834         'vc-responsible-backend'.  (Bug#23436)
835         * doc/emacs/maintaining.texi (Version Control Systems): Fix a
836         typo.
838 2016-11-04  Eli Zaretskii  <eliz@gnu.org>
840         Clarify doc string of 'transpose-sexps'
842         * lisp/simple.el (transpose-sexps): Clarify the conditions for
843         transposing sexps that are lists or strings.  Mention the effect
844         of the prefix argument.  (Bug#24860)
846 2016-11-04  Tibor Csögör  <tibi@tiborius.net>  (tiny change)
848         Fix docstring of 'browse-url-firefox-new-window-is-tab'
850         * lisp/net/browse-url.el (browse-url-firefox-new-window-is-tab):
851         Remove obsolete note from docstring (obsoleted by previous commits).
852         (Bug#24843)
854 2016-11-04  Eli Zaretskii  <eliz@gnu.org>
856         Improve documentation of 'font-lock-remove-keywords'
858         * doc/lispref/modes.texi (Customizing Keywords): Clarify the
859         'keywords' argument of 'font-lock-remove-keywords'.  Suggested by
860         Hong Xu <hong@topbug.net>.  (Bug#24830)
862 2016-11-04  Eli Zaretskii  <eliz@gnu.org>
864         Fix documentation of the command summary key
866         * doc/misc/info.texi (Help-^L, Help-Xref, Top): Emacs Info uses
867         '?' for the summary of commands, whereas the stand-alone reader
868         uses 'H'.  (Bug#24825)
870 2016-11-04  Eli Zaretskii  <eliz@gnu.org>
872         Mark relocation workarounds with REL_ALLOC
874         * src/search.c (boyer_moore): Mark workarounds for ralloc.c
875         relocation of buffer text with "#ifdef REL_ALLOC".
877 2016-11-02  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
879         Fix documentation for 'eudc-options-file'
881         * doc/misc/eudc.texi (The Server Hotlist): Update the default
882         value of 'eudc-options-file'.
884         Backport:
886         (cherry picked from commit 0575fd95d0b92a9a0ebff8df183a449190f74dbc)
888 2016-11-02  Tibor Csögör  <tibi@tiborius.net>
890         Fix documentation of 'eudc-inline-expansion-format'
892         * doc/misc/eudc.texi (Inline Query Expansion): Fix the default value of
893         'eudc-inline-expansion-format'. (Bug#24840)
895         Backport:
897         (cherry picked from commit 1fef1387c387d80f8ece326621539b89a6965702)
899 2016-10-31  Clément Pit--Claudel  <clement.pitclaudel@live.com>
901         python.el: Fix detection of native completion in Python 3 (bug #24401)
903         With Python 3.5, (python-shell-completion-native-get-completions ... "")
904         would return an empty list, causing python.el to think that native
905         completion was unavailable (the difference between Python 2 and Python 3
906         is due to https://bugs.python.org/issue25660).
908         * lisp/progmodes/python.el (python-shell-completion-native-try): Use "_"
909           to check whether native completion is available instead of "".
911 2016-10-26  Glenn Morris  <rgm@gnu.org>
913         * Makefile.in (install-arch-indep): Skip etc/refcards/emacsver.tex.in.
915 2016-10-26  Stefan Monnier  <monnier@iro.umontreal.ca>
917         * lisp/subr.el (set-transient-map): Exit for unbound events (bug#24755).
919 2016-10-26  Eli Zaretskii  <eliz@gnu.org>
921         Update category-table for Chinese characters
923         * lisp/international/characters.el (standard-category-table):
924         Update the ranges of Han and Chinese characters.  (Bug#24798)
926 2016-10-26  Noam Postavsky  <npostavs@gmail.com>
928         Inhibit buffer relocation during regex searches
930         * src/search.c (looking_at_1, fast_looking_at, search_buffer): Prevent
931         relocation of buffer contents during calls to re_search_2.  This ensures
932         the pointers into buffer text won't be invalidated by
933         r_alloc_sbrk (called from malloc with configurations where
934         REL_ALLOC=yes).
936 2016-10-26  Noam Postavsky  <npostavs@gmail.com>
938         Revert fixes to allocation of regex matching
940         The fix was not complete, and completing it was proving too complicated.
942         - Revert "* src/regex.c (re_search_2): Make new code safe for
943                   -Wjump-misses-init."
944           This reverts commit c2a17924a57483d14692c8913edbe8ad24b5ffbb.
945         - Revert "Port to GCC 6.2.1 + --enable-gcc-warnings"
946           This reverts commit f6134bbda259c115c06d4a9a3ab5c39340a15949.
947         - Revert "Fix handling of allocation in regex matching"
948           This reverts commit ad66b3fadb7ae22a4cbb82bb1507c39ceadf3897.
949         - Revert "Fix handling of buffer relocation in regex.c functions"
950           This reverts commit ee04aedc723b035eedaf975422d4eb242894121b.
952 2016-10-25  Eli Zaretskii  <eliz@gnu.org>
954         Comment for bug#24793
956         * lisp/info.el (Info-mode-font-lock-keywords): Add a comment
957         explaining why `..' quoting is not fontified using the
958         'Info-quoted' face.  (Bug#24793)
960 2016-10-25  Paul Eggert  <eggert@cs.ucla.edu>
962         Default REL_ALLOC to 'no'
964         This should make ralloc-related bugs less likely on GNU/Linux
965         systems with bleeding-edge glibc.  See the email thread containing:
966         http://lists.gnu.org/archive/html/emacs-devel/2016-10/msg00801.html
967         Do not merge to master.
968         * configure.ac (REL_ALLOC): Default to 'no' on all platforms, not
969         merely on platforms with Doug Lea malloc.  Although bleeding-edge
970         glibc no longer exports __malloc_initialize_hook and so longer
971         passes the configure-time test for Doug Lea malloc, ralloc tickles
972         longstanding bugs like Bug#24358 and Bug#24764 and Emacs is likely
973         to be more reliable without it.  This patch is not needed on
974         master, which uses hybrid malloc in this situation.
976 2016-10-24  Eli Zaretskii  <eliz@gnu.org>
978         Yet another fix for using pointers into buffer text
980         * src/search.c (boyer_moore): Update pointers to buffer text
981         after call to set_search_regs.  (Bug#24358)
983 2016-10-24  Eli Zaretskii  <eliz@gnu.org>
985         Another fix for using pointer to buffer text
987         * src/search.c (Freplace_match): Move the call to BYTE_POS_ADDR
988         after the call to xpalloc, to avoid the danger of buffer text
989         relocation after its address was taken.  (Bug#24358)
991 2016-10-24  Michael Albinus  <michael.albinus@gmx.de>
993         Fix Bug#24478
995         * lisp/net/tramp-sh.el (tramp-histfile-override): Change default value
996         to "~/.tramp_history".
997         (tramp-open-shell): Check proper HISTFILE setting.
998         (tramp-maybe-open-connection): Cleanup also for errors.  (Bug#24478)
1000 2016-10-24  Paul Eggert  <eggert@cs.ucla.edu>
1002         Port --enable-gcc-warnings to bleeding-edge glibc
1004         Bleeding-edge glibc sets emacs_cv_var_doug_lea_malloc to 'no'.
1005         Do not merge to master.
1006         * configure.ac: Check for valloc decl when compiling gmalloc.c.
1007         * src/gmalloc.c (emacs_abort) [emacs]: Adjust decl to match
1008         what is in lisp.h.  Remove duplicate decl.
1009         (aligned_alloc): #undef before defining.
1010         (aligned_alloc, memalign) [!MSDOS]: Declare.
1011         (valloc) [HAVE_DECL_VALLOC]: Remove duplicate decl.
1013 2016-10-23  Eli Zaretskii  <eliz@gnu.org>
1015         Fix handling of buffer relocation in regex.c functions
1017         * src/search.c (search_buffer): Updated the base pointer to buffer
1018         text after the call to re_search_2.  (Bug#24358)
1020 2016-10-23  Eli Zaretskii  <eliz@gnu.org>
1022         Avoid relocating buffers while libxml2 reads its text
1024         * src/xml.c (parse_region) [REL_ALLOC]: Freeze the ralloc arena
1025         while libxml2 reads the current buffer's text.  (Bug#24764)
1027 2016-10-23  Eli Zaretskii  <eliz@gnu.org>
1029         Attempt to catch reads from a buffer that is relocated
1031         * src/xml.c (parse_region): Add assertion to ensure buffer text is
1032         not relocated while libxml2 is reading it.  (Bug#24764)
1034 2016-10-23  Eli Zaretskii  <eliz@gnu.org>
1036         Revert "* lisp/simple.el (process-menu-mode, list-processes--refresh):"
1038         This reverts commit a4285bcb1114e29200001f33af9b4802167d6140.
1039         Do not merge to master!
1041 2016-10-23  Eli Zaretskii  <eliz@gnu.org>
1043         Revert "* lisp/ibuf-ext.el (ibuffer-do-shell-command-file):"
1045         This reverts commit b0c447e4668116cecfda91d0203cb7cac2486d92.
1046         Do not merge to master!
1048 2016-10-23  Eli Zaretskii  <eliz@gnu.org>
1050         Revert "* lisp/ibuffer.el (ibuffer): Improve 'other-window' case.  (Bug#23617)"
1052         This reverts commit cf3c19b0298236293d9c56d5ba425af4f42c1f8e.
1053         Do not merge to master!
1055 2016-10-23  Eli Zaretskii  <eliz@gnu.org>
1057         ;* src/w32heap.c: Fix typo and wording of the comments.
1059 2016-10-23  Paul Eggert  <eggert@cs.ucla.edu>
1061         electric-quote mode no longer worries about coding
1063         * doc/emacs/text.texi (Quotation Marks), etc/NEWS: Document this.
1064         * lisp/electric.el (electric--insertable-p): Remove.
1065         All uses removed (Bug#24759).
1067 2016-10-23  Paul Eggert  <eggert@cs.ucla.edu>
1069         * src/regex.c (re_search_2): Make new code safe for -Wjump-misses-init.
1071 2016-10-23  Paul Eggert  <eggert@cs.ucla.edu>
1073         Port to GCC 6.2.1 + --enable-gcc-warnings
1075         * src/regex.c (ENSURE_FAIL_STACK, re_search_2):
1076         Redo recent regex changes to avoid complaints from GCC 6.2.1 when
1077         Emacs is configured with --enable-gcc-warnings.  Also, work around
1078         GCC bug 78081, which was uncovered by this new code.
1080 2016-10-22  Noam Postavsky  <npostavs@gmail.com>
1082         Explain how to debug emacsclient lisp errors
1084         * doc/lispref/debugging.texi (Error Debugging): Mention that
1085         debug-on-signal is useful for getting backtraces from
1086         emacsclient (Bug#24616).
1088 2016-10-22  Noam Postavsky  <npostavs@gmail.com>
1090         Let describe-function work for lambda again
1092         Since commit "* lisp/help-fns.el (describe-function): More type
1093         checking[...]", `describe-function' throws a user-error when given a
1094         non-symbol.  This prevents the [back] button in a *Help* buffer from
1095         working when the page it goes back to describes an anonymous
1096         function (e.g., the result of `describe-key' on a key which is bound to
1097         a lambda form).
1099         * lisp/help-fns.el (describe-function): Move the checks on FUNCTION
1100         being an fbound symbol into the `interactive' form.  This allows
1101         non-interactive calls to pass an anonymous function (Bug #24221).  Note
1102         that passing a non-bound symbol non-interactively will still trigger a
1103         `void-function' error from `describe-function-1'.
1105 2016-10-22  Noam Postavsky  <npostavs@gmail.com>
1107         Fix kill-line's docstring
1109         * lisp/simple.el (kill-line): The effect of show-trailing-whitespace is
1110         important lines with *no* nonblanks (Bug #16654).
1112 2016-10-22  Noam Postavsky  <npostavs@gmail.com>
1114         Fix handling of allocation in regex matching
1116         `re_match_2_internal' uses pointers to the lisp objects that it
1117         searches.  Since it may call malloc when growing the "fail stack", these
1118         pointers may be invalidated while searching, resulting in memory
1119         curruption (Bug #24358).
1121         To fix this, we check the pointer that the lisp object (as specified by
1122         re_match_object) points to before and after growing the stack, and
1123         update existing pointers accordingly.
1125         * src/regex.c (STR_BASE_PTR): New macro.
1126         (ENSURE_FAIL_STACK, re_search_2): Use it to convert pointers into
1127         offsets before possible malloc call, and back into pointers again
1128         afterwards.
1129         (POS_AS_IN_BUFFER): Add explanatory comment about punning trick.
1130         * src/search.c (search_buffer): Instead of storing search location as
1131         pointers, store them as pointers and recompute the corresponding address
1132         for each call to `re_search_2'.
1133         (string_match_1, fast_string_match_internal, fast_looking_at):
1134         * src/dired.c (directory_files_internal): Set `re_match_object' to Qnil
1135         after calling `re_search' or `re_match_2'.
1136         * src/regex.h (re_match_object): Mention new usage in commentary.
1138 2016-10-21  Paul Eggert  <eggert@cs.ucla.edu>
1140         * lisp/electric.el (electric-quote-mode): Improve doc (Bug#24759).
1142 2016-10-20  Tino Calancha  <tino.calancha@gmail.com>
1144         vc-region-history: Search just on lines intersecting the region
1146         * lisp/vc/vc.el (vc-region-history): If region ends in the beginning
1147         of a line, then exclude that line from the search (Bug#24725).
1149 2016-10-19  Eli Zaretskii  <eliz@gnu.org>
1151         Fix documentation of 'alist-get'
1153         * doc/lispref/lists.texi (Association Lists): Fix the signature of
1154         'alist-get'.  Fix the markup, the wording, and the punctuation in
1155         the description. (Bug#24740)
1157 2016-10-19  Eli Zaretskii  <eliz@gnu.org>
1159         * src/regex.h (re_match_object): Improve commentary.
1161 2016-10-19  Alan Third  <alan@idiocy.org>
1163         Fix cursor at bottom left of rectangle (bug#24364)
1165         * lisp/rect.el (rectangle--col-pos): Don't assume point at EOL doesn't
1166         require rectangle--point-crutches to be set.
1168 2016-10-19  Michael Albinus  <michael.albinus@gmx.de>
1170         Change Tramp version to "2.2.13.25.2"
1172         * doc/misc/trampver.texi:
1173         * lisp/net/trampver.el: Change version to "2.2.13.25.2".
1175 2016-10-19  Eli Zaretskii  <eliz@gnu.org>
1177         * lisp/emacs-lisp/autoload.el (update-directory-autoloads): Fix last change.
1179 2016-10-19  Eli Zaretskii  <eliz@gnu.org>
1181         Don't scan compiled module files for autoloads
1183         * lisp/emacs-lisp/autoload.el (update-directory-autoloads): Ignore
1184         compiled module files.  Make sure the extension really ends the
1185         file name.
1187 2016-10-18  Michael Albinus  <michael.albinus@gmx.de>
1189         Fix Bug#24698
1191         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
1192         Don't send "stty tab0" to *BSD and Darwin machines.  (Bug#24698)
1194 2016-10-18  Eli Zaretskii  <eliz@gnu.org>
1196         * lisp/subr.el (start-process): Doc fix.  (Bug#24693)
1198 2016-10-18  Göktuğ Kayaalp  <self@gkayaalp.com>
1200         Fix display of vc-dir CVS file statuses in subdirectories
1202         * lisp/vc/vc-cvs.el (vc-cvs-dir-status-files): Use 'cvs update'
1203         instead of 'cvs status'.  It's faster, easier to parse, and
1204         relieves us of the need to use vc-expand-dirs.  (Bug#24082)
1205         (vc-cvs-after-dir-status): Parse its output.
1207 2016-10-17  Eli Zaretskii  <eliz@gnu.org>
1209         Update URL of MS-Windows optional DLLs
1211         * nt/README.W32:
1212         * nt/INSTALL: Update the URL of the MS-Windows binaries of the
1213         optional libraries built with MSYS2/MinGW64 project tools.
1215 2016-10-17  Eli Zaretskii  <eliz@gnu.org>
1217         Fix time-related data types in 2 editfns.c functions
1219         * src/editfns.c (format_time_string, Fcurrent_time_zone): Pass a
1220         pointer to time_t value to emacs_localtime_rz and gmtime_r,
1221         instead of relying on struct timespec's tv_sec member to be of
1222         compatible type.
1224 2016-10-17  Tino Calancha  <f92capac@gmail.com>
1226         * lisp/simple.el (process-menu-mode, list-processes--refresh):
1227         Include PID.  (Bug#21725)
1229         (cherry picked from commit b7adc2f23787eb72015cd705b873e229db6a5049)
1231 2016-10-17  Tino Calancha  <f92capac@gmail.com>
1233         * lisp/ibuf-ext.el (ibuffer-do-shell-command-file):
1234         Fix non-file-visiting-buffer case.  (Bug#22678)
1236         (cherry picked from commit 738738259ba77fe17e433c64e0758ea59ab5bc75)
1238 2016-10-17  Tino Calancha  <f92capac@gmail.com>
1240         * lisp/ibuffer.el (ibuffer): Improve 'other-window' case.  (Bug#23617)
1242         (cherry picked from commit f4ef1a1fea15aa58fbb5e7a59bff260720658e49)
1244 2016-10-17  Paul Eggert  <eggert@cs.ucla.edu>
1246         Port to Ubuntu 16.10, which needs gcc -nopie
1248         * configure.ac (emacs_cv_prog_cc_no_pie): Rename from
1249         emacs_cv_prog_cc_nopie.  All usages changed.  Check for -no-pie in
1250         preference to -nopie (Bug#24682).  Backport from master.
1252 2016-10-17  Glenn Morris  <rgm@gnu.org>
1254         * lisp/cus-start.el (exec-path): Handle nil elements.  (Bug#24471)
1256 2016-10-16  Andreas Politz  <politza@hochschule-trier.de>
1258         Catch the imenu-unavailable error in sh-mode completion table
1260         * lisp/progmodes/sh-script.el (sh--cmd-completion-table):
1261         Catch the imenu-unavailable error (bug#24238).
1263 2016-10-16  Eli Zaretskii  <eliz@gnu.org>
1265         More char-width fixes
1267         * lisp/international/characters.el (char-width-table): More fixes
1268         according to the latest EastAsianWidth.txt.  (Bug#24705)
1270 2016-10-15  Eli Zaretskii  <eliz@gnu.org>
1272         Fix char-width-table values for some Emoji
1274         * lisp/international/characters.el (char-width-table): Add missing
1275         range U+1F400..U+1F43E.  (Bug#24699)
1277         * admin/notes/unicode: Mention the need to verify char-width-table
1278         setting against data in EastAsianWidth.txt.
1280 2016-10-15  Eli Zaretskii  <eliz@gnu.org>
1282         Keep point when switching from and to *terminal* buffer
1284         * lisp/term.el (term-reset-size): Don't reset the size if it
1285         didn't change.  If the size did change, restore point after
1286         adjusting the size.  (Bug#24465)
1288 2016-10-15  Michael Albinus  <michael.albinus@gmx.de>
1290         * INSTALL: Use correct Emacs release number 25.
1292 2016-10-14  Eli Zaretskii  <eliz@gnu.org>
1294         Avoid crashes due to objects read with the #n=object form
1296         * src/lread.c (read1): Use Fcons for 'placeholder', not AUTO_CONS,
1297         because elements of the list in 'read_objects' cannot be allocated
1298         off the stack.  (Bug#24640)
1300 2016-10-13  Eli Zaretskii  <eliz@gnu.org>
1302         Improve doc string of 'completion-at-point-functions'
1304         * lisp/minibuffer.el (completion-at-point-functions): Doc fix.
1305         (Bug#24663)
1307 2016-10-13  Philipp Stephani  <phst@google.com>
1309         Fix crash in evaluating functions
1311         See Bug#24673
1313         * src/eval.c (funcall_lambda): Fix crash for bogus functions such
1314         as (closure).
1316 2016-10-13  Paul Eggert  <eggert@cs.ucla.edu>
1318         * src/filelock.c (current_lock_owner): Update comment.
1320 2016-10-12  Paul Eggert  <eggert@cs.ucla.edu>
1322         Port --enable-gcc-warnings to GCC 6.2.1
1324         Backport from master.
1325         * src/conf_post.h (GNUC_PREREQ): New macro.
1326         * src/keyboard.c: Use it to work around GCC bug 54561.
1327         * src/process.c (would_block): New function.
1328         (server_accept_connection, wait_reading_process_output, send_process):
1329         Use it.
1331 2016-10-12  Paul Eggert  <eggert@cs.ucla.edu>
1333         Work around Samba bug with ':' in symlink contents
1335         * src/filelock.c (current_lock_owner): When reading the contents
1336         of a lock, treat the UTF-8 for U+F022 as if it were ':' (Bug#24656).
1337         Backport from master.
1339 2016-10-12  Paul Eggert  <eggert@cs.ucla.edu>
1341         Port last_marked change to full-program optimizers
1343         * src/alloc.c (last_marked): Now EXTERNALLY_VISIBLE.
1345 2016-10-12  Eli Zaretskii  <eliz@gnu.org>
1347         Adapt GDB scripts to '--enable-check-lisp-object-type' builds
1349         * etc/emacs-buffer.gdb <$qnil>: New variable.
1350         (ybuffer-list, yset-buffer): Use $qnil for comparing against
1351         'nil', as direct comparison with Qnil doesn't work in a build with
1352         '--enable-check-lisp-object-type'.
1354         * src/.gdbinit: Adapt commands of the temporary breakpoint in
1355         init_sys_modes to a build with '--enable-check-lisp-object-type'.
1357 2016-10-11  Eli Zaretskii  <eliz@gnu.org>
1359         Avoid optimizing out the last_marked[] array
1361         * src/alloc.c <last_marked>: No longer 'static', to avoid having
1362         it optimized out in optimized builds, which then makes debugging
1363         GC problems harder.
1365 2016-10-09  Alan Mackenzie  <acm@muc.de>
1367         CC Mode manual: remove reference to former Emacs variable last-command-char
1369         * doc/misc/cc-mode.texi (Hanging Semicolons and Commas): Replace reference to
1370         variable last-command-char by one to macro c-last-command-char.
1372 2016-10-08  Eli Zaretskii  <eliz@gnu.org>
1374         Allow to disable compaction of font caches
1376         * src/font.c (syms_of_font) <inhibit-compacting-font-caches>: New
1377         boolean variable.
1378         * src/alloc.c (compact_font_caches): Use it to bypass the call to
1379         compact_font_cache_entry.  (Bug#24634)  (Bug#24565)
1381         * etc/NEWS: Mention the new variable.
1383 2016-10-08  Eli Zaretskii  <eliz@gnu.org>
1385         Allow selection of font for symbols as in Emacs 24.x
1387         * src/fontset.c (syms_of_fontset) <use-default-font-for-symbols>:
1388         New boolean variable.
1389         (face_for_char): Use it to fall back to pre-Emacs 25.1 behavior
1390         when selecting fonts for displaying symbol and punctuation
1391         characters.  (Bug#24644)
1393         * etc/NEWS: Mention the new variable.
1395 2016-10-08  Eli Zaretskii  <eliz@gnu.org>
1397         Fix horizontal scrolling during Isearch
1399         * lisp/isearch.el (isearch-update): Compute the window's body
1400         width in a way that is correct when there are no fringes.
1401         (Bug#24584)
1403 2016-10-08  Eli Zaretskii  <eliz@gnu.org>
1405         Fix infloop in redisplay due to truncated lines and invisible text
1407         * src/xdisp.c (forward_to_next_line_start): Don't call
1408         'get_next_display_element' after finding the end of line.  This
1409         avoids setting the row's end position to the wrong value when the
1410         next screen line begins with invisible text; that wrong value
1411         caused set_cursor_from_row position the cursor in the wrong screen
1412         line, and eventually triggered bug#24109.
1414 2016-10-07  David Engster  <deng@randomsample.de>
1416         gitmerge: Add cherry pick to gitmerge-skip-regexp
1418         * admin/gitmerge.el (gitmerge-skip-regexp): Add "cherry picked
1419         from commit", which is the string appended by 'git cherry-pick
1420         -x'.
1422         (cherry picked from commit f648e4866981b142fca788372e1fd9013a0bb16a)
1424 2016-10-06  Eli Zaretskii  <eliz@gnu.org>
1426         Improve documentation of 'menu-bar-open'
1428         * lisp/term/w32-win.el (w32-menu-bar-open): Clarify that sometimes
1429         two ESC keypresses are needed to exit the menu.
1431         * doc/emacs/screen.texi (Menu Bar): Qualify the description of how
1432         to exit menus.  (Bug#24596)
1434 2016-10-06  Eli Zaretskii  <eliz@gnu.org>
1436         Fix compilation with MinGW runtime 3.22.2 and w32api 3.18.2
1438         * nt/inc/ms-w32.h (_WIN32_WINNT) [!MINGW_W64]: Undefine before
1439         defining to avoid redefinition warnings.
1441         * nt/inc/sys/stat.h (_SYS_STAT_H, _INC_STAT_H): Define, to avoid
1442         inclusion of sys/stat.h from the system headers, which could then
1443         lead to compilation errors due to redefinition of 'struct stat'
1444         etc.  This is needed because latest versions of MinGW runtime
1445         include sys/stat.h from wchar.h.
1447         * src/image.c (__MINGW_MAJOR_VERSION) [WINDOWSNT]: Temporarily
1448         redefine to 4 to avoid conflict between 2 definitions of
1449         MemoryBarrier.  (Bug#24613)
1451         Do not merge to master!
1453 2016-10-05  John Wiegley  <johnw@newartisans.com>
1455         Add documentation note from Alex
1457 2016-10-05  Aurelien Aptel  <aaptel@suse.com>
1459         * src/alloc.c: call only non-null finalizers
1461 2016-10-04  Karl Fogel  <kfogel@red-bean.com>
1463         Clarify that doc fixes are okay in feature freeze
1465         * CONTRIBUTE (branches): Explain that doc fixes are always safe, even
1466         on a release branch in feature freeze.  Tweak wording of paragraph
1467         after that to avoid a misleading contrast.
1469 2016-10-04  Eli Zaretskii  <eliz@gnu.org>
1471         Avoid crashes when setting the cursor
1473         * src/xdisp.c (display_and_set_cursor): Don't index glyphs of a
1474         glyph row if hpos is out of valid bounds.  This avoids crashes in
1475         some rare cases.  (Bug#24614)
1477 2016-10-04  Philippe Vaucher  <philippe.vaucher@gmail.com>
1479         Restore 'command-debug-status' functionality
1481         * src/callint.c (Fcall_interactively): Bind command-debug-status
1482         to nil.  This restores functionality inadvertently removed in
1483         Emacs 25.1.  (Bug#24555)
1485         * lisp/subr.el (command-debug-status): Declare obsolete.
1487         * doc/lispref/debugging.texi (Internals of Debugger): Document
1488         that 'command-debug-status' is obsolete.
1490 2016-10-03  Karl Fogel  <kfogel@red-bean.com>
1492         Document yank behavior in the right place
1494         * lisp/simple.el (yank): Document the handling of the
1495         `yank-handled-properties' and `yank-excluded-properties' variables,
1496         and the `yank-handler' text property.
1497         (yank-pop): Refer to `yank' now (bug#286)
1499         * lisp/subr.el (insert-for-yank): Refer to `yank' now.
1500         (insert-for-yank-1): Refer to `insert-for-yank' now.
1502         See this thread for discussion:
1504           https://lists.gnu.org/archive/html/emacs-devel/2016-09/threads.html#00329
1505           From: Karl Fogel
1506           To: Emacs Devel
1507           Subject: Question about intended behavior of 'insert-for-yank-1'.
1508           Date: Mon, 12 Sep 2016 00:17:14 -0500
1509           Message-ID: <874m5lr92d.fsf@red-bean.com>
1511 2016-10-03  Philipp Stephani  <phst@google.com>
1513         Document nil args of compare-buffer-substrings
1515         * src/editfns.c (Fcompare_buffer_substrings): Document behavior when
1516         the arguments are nil.
1518 2016-10-03  Katsumi Yamaoka  <yamaoka@jpl.org>
1520         * doc/misc/message.texi (Bcc Warning): Fix markup.
1522         * doc/misc/message.texi (Bcc Warning):
1523         Document mml-secure-safe-bcc-list.
1525 2016-10-02  Noam Postavsky  <npostavs@gmail.com>
1527         Don't require isearch-update before isearch-done
1529         It is useful to be able to call `isearch-done' unconditionally to
1530         ensure a non-isearching state.
1532         * lisp/isearch.el (isearch-done): Check that `isearch--current-buffer'
1533         is a live buffer before using it (Bug #21091).
1534         * test/automated/isearch-tests.el (isearch--test-done): Test it.
1536         (cherry picked from commit 68f4b5292781bc331b040105c4079902b993835c)
1538 2016-10-02  Peder O. Klingenberg  <peder@klingenberg.no>
1540         Avoid error in icalendar--read-element
1542         * lisp/calendar/icalendar.el (icalendar--read-element): Avoid a regex
1543         stack overflow by not using regex to extract values from calendar
1544         events. (Bug#24315)
1546         (cherry picked from commit 55dde6c1a21a792d3d75c19e612c74dd054aaf1e)
1548 2016-10-02  Lars Ingebrigtsen  <larsi@gnus.org>
1550         Make a menu less ambiguous
1552         * doc/emacs/custom.texi (Key Bindings): The Modifier Keys node
1553         is about using modifier keys, not binding them (bug#10942).
1555         (cherry picked from commit 214f85a0a68b96a552ca605d601b33f6eef5c4ca)
1557 2016-10-02  Devon Sean McCullough  <Emacs-Hacker2012@jovi.net>
1559         Doc fix for url-http
1561         * lisp/url/url-http.el (url-http): Document better return values
1562           (bug#13187) (tiny change)
1564         (cherry picked from commit 344303c8d9cb03d4778a73940e80e966280aa694)
1566 2016-10-01  Eli Zaretskii  <eliz@gnu.org>
1568         * lisp/frame.el (blink-cursor-delay): Doc fix.  (Bug#24372)
1570 2016-09-30  Katsumi Yamaoka  <yamaoka@jpl.org>
1572         * lisp/gnus/gnus-art.el (gnus-button-handle-library): Fix typo.
1574 2016-09-27  Paul Eggert  <eggert@cs.ucla.edu>
1576         Regexp Functions doc minor fixes
1578         * doc/lispref/searching.texi (Regexp Functions):
1579         Fix misspelling of “matching”.  Use @table for table.
1580         Reformat code example to fit into info file width (Bug#17862).
1582 2016-09-27  Katsumi Yamaoka  <yamaoka@jpl.org>
1584         Backport mm-convert-shr-links fix from master (bug#23964)
1586         * lisp/gnus/mm-decode.el (mm-convert-shr-links):
1587         Preserve key bindings that shr adds (bug#23964).
1589 2016-09-26  Eli Zaretskii  <eliz@gnu.org>
1591         Improve documentation of 'expand-abbrev' and wrapper hooks
1593         * lisp/simple.el (filter-buffer-substring-functions)
1594         (buffer-substring--filter): Add a link to 'with-wrapper-hook' as
1595         the place to look for documentation of wrapper hooks.
1596         * lisp/minibuffer.el (completion-in-region-functions)
1597         (completion--in-region): Add a link to 'with-wrapper-hook' as the
1598         place to look for documentation of wrapper hooks.
1599         * lisp/abbrev.el (expand-abbrev, abbrev--default-expand): Clarify
1600         the doc strings.  (Bug#24540)
1602         * doc/lispref/text.texi (Buffer Contents): Mention
1603         'with-wrapper-hook's doc string as the place to learn about that
1604         obsolete facility.
1606 2016-09-25  Eli Zaretskii  <eliz@gnu.org>
1608         Minor copyedits of MS-Windows installation instructions
1610         * nt/INSTALL:
1611         * nt/README.W32: Add URL of Emacs dependencies on alpha.gnu.org.
1613 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
1615         Fix display of cursor when 'blink-cursor-delay' has small value
1617         * lisp/frame.el (blink-cursor-check, blink-cursor-mode):
1618         Protect ourselves against too small values of blink-cursor-delay.
1619         This avoids erratic display of the cursor, or even failure to
1620         display it, when user types text at high speed or leans on a key
1621         to invoke the keyboard auto-repeat feature.  (Bug#24372)
1623 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
1625         Improve the doc string of 'format'
1627         * src/editfns.c (Fformat): Fix ambiguity in the doc string's usage
1628         of a literal period.  (Bug#24407)
1630         This was backported from master
1631         (cherry picked from commit 7123896626b06c26c4e37839ab41e41980c8f433)
1633 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
1635         Improve doc strings in whitespace.el
1637         * lisp/whitespace.el (whitespace-mode, whitespace-newline-mode)
1638         (global-whitespace-mode, global-whitespace-newline-mode): Improve
1639         the doc strings.  (Bug#24413)
1641         This was backported from master
1642         (cherry picked from commit 3462fe73351f3da5bc3ebf8296ee44dd2e6b1dbc)
1644 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
1646         Improve detectability of 'next-logical-line' and 'previous-logical-line'
1648         * lisp/simple.el (next-line, previous-line): Mention
1649         'next-logical-line' and 'previous-logical-line' in the doc
1650         strings.  (Bug#24443)
1652         This was backported from master
1653         (cherry picked from commit e95d0d15bb1534803b0adb3c3a927c8beb7d4e79)
1655 2016-09-23  Martin Rudalics  <rudalics@gmx.at>
1657         Fix (next-frame nil t) crash (Bug#24281)
1659         * src/frame.c (candidate_frame): Check minibuf argument before
1660         comparing it to zero (Bug#24281).
1662         This was backported from master
1663         (cherry picked from commit dc491c3df305a73908fe8de20b7c428a5b38c846)
1665 2016-09-23  Noam Postavsky  <npostavs@gmail.com>
1667         Fix debugging of string-match-p errors
1669         * src/eval.c (call_debugger): Bind inhibit-changing-match-data to nil so
1670         that debugger code that needs to do regexp match won't break
1671         (Bug #23949, Bug #24166, Bug#16294).
1673         This was backported from master
1674         (cherry picked from commit 7fb75680b38fe0805c2ff7e9cca3bec8121ba984)
1676 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
1678         Fix region display while dragging mouse
1680         * lisp/mouse.el (mouse-drag-track): Reset deactivate-mark in the
1681         buffer of the drag event, to allow mark to be set and the region
1682         be shown as we drag the mouse.  (Bug#24030)
1684         This was backported from master
1685         (cherry picked from commit 7d58b02f363ab02961faa950d1ba727df96f2f19)
1687 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
1689         Fix 'vertical-motion' and 'posn-at-point' under 'visual-line-mode'
1691         * src/xdisp.c (move_it_in_display_line_to): Don't assume we can
1692         wrap on a whitespace character if it's followed by another
1693         whitespace character.  When returning under WORD_WRAP for a screen
1694         line that is continued, restore to wrap point when atpos/atx
1695         position would be displayed on the next screen line due to
1696         line-wrap.  (Bug#23570)
1698         This is backported from master
1699         (cherry picked from commit 99848b37d2c3e14c0af45fc6da437a806aa58a80)
1701 2016-09-23  Paul Eggert  <eggert@cs.ucla.edu>
1703         Improve display of tex-verbatim and Info quoted
1705         Problem reported by Glenn Morris (Bug#19889).
1706         * doc/emacs/display.texi (Standard Faces):
1707         * doc/lispref/display.texi (Basic Faces):
1708         * etc/NEWS: Mention fixed-pitch-serif.
1709         * lisp/faces.el (face-font-family-alternatives):
1710         New family alias Monospace Serif.
1711         (fixed-pitch-serif): New face, which uses the new family.
1712         * lisp/info.el (Info-quoted):
1713         * lisp/textmodes/tex-mode.el (tex-verbatim): Use the new face.
1714         * test/automated/font-parse-tests.el (font-parse-tests--data):
1715         Add test case for Monospace Serif.
1717         This is backport from master
1718         (cherry picked from commit 36906806ccfc0e53f1d8c365ab0d7151288b7833)
1720 2016-09-23  Lars Ingebrigtsen  <larsi@gnus.org>
1722         Document how to check for ImageMagick support
1724         * doc/lispref/display.texi (ImageMagick Images): Say how to
1725         check for ImageMagick support, which isn't quite obvious
1726         (bug#20702).
1728         This is backport from master
1729         (cherry picked from commit faf07d646575c78d6d956ce91820ebbf38308553)
1731 2016-09-23  Tino Calancha  <f92capac@gmail.com>
1733         Run find-function-after-hook after finding a symbol
1735         * lisp/emacs-lisp/find-func.el (find-library):
1736         * lisp/help-mode.el (help-function-def, help-variable-def):
1737         Run `find-function-after-hook' inside the help-function of the
1738         buttons (bug#22583).
1739         * etc/NEWS: Mention the change.
1741         This is a backport from master.
1742         (cherry picked from commit f069d854508946bcc03e4c77ceb430748e3ab6d7)
1744 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
1746         Document 'timerp'
1748         * doc/lispref/os.texi (Timers): Document 'timerp'.  (Bug#24511)
1749         Improve indexing.
1751 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
1753         Improve documentation of overlay priorities
1755         * doc/lispref/display.texi (Overlay Properties): Minor copyedits.
1756         By popular demand, mention the '(PRIMNARY . SECONDARY)' form of
1757         overlay properties used for the region.  (Bug#20253)
1759 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
1761         Fix 'dired-compress-files'
1763         * lisp/dired-aux.el (dired-do-compress-to): Make sure the archive
1764         file name is fully expanded by running it through
1765         'expand-file-name'.  Suggested by Drew Adams <drew.adams@oracle.com>.
1766         (Bug#24486)  Doc fix.
1767         * lisp/dired.el: Regenerated changes in autoloads.
1769 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
1771         Update commentary of STRING_CHAR and FETCH_MULTIBYTE_CHAR
1773         * src/character.h (STRING_CHAR):
1774         * src/buffer.h (FETCH_MULTIBYTE_CHAR): Update commentary: these
1775         two macros no longer do any character unification, so the caveats
1776         in those comments are no longer pertinent.
1778 2016-09-23  Eli Zaretskii  <eliz@gnu.org>
1780         Increment Emacs version to 25.1.50
1782         * README:
1783         * configure.ac:
1784         * etc/NEWS:
1785         * msdos/sed2v2.inp: Bump the version to 25.1.50.
1787 2016-09-21  Eli Zaretskii  <eliz@gnu.org>
1789         Document the optional zlib library in MS-Windows builds
1791         * nt/README.W32:
1792         * nt/INSTALL.W64:
1793         * nt/INSTALL: Mention the optional text decompression support and
1794         the zlib library.
1796 2016-09-21  Eli Zaretskii  <eliz@gnu.org>
1798         Fix tagging of DEFUN by etags
1800         * lib-src/etags.c (C_entries): Tag DEFUN twice: once with its C
1801         name, and then again with its Lisp name.  This restores the
1802         ability to find Lisp primitives by their C name, which was lost
1803         when the etags back-end was switched to a more strict search
1804         criteria.
1806         * test/etags/ETAGS.good_1:
1807         * test/etags/ETAGS.good_2:
1808         * test/etags/ETAGS.good_3:
1809         * test/etags/ETAGS.good_4:
1810         * test/etags/ETAGS.good_5:
1811         * test/etags/ETAGS.good_6:
1812         * test/etags/CTAGS.good: Adapt to the changes in etags.c wrt
1813         tagging DEFUN.
1815 2016-09-21  Eli Zaretskii  <eliz@gnu.org>
1817         Avoid resetting track-mouse by mouse clicks
1819         * lisp/mouse.el (mouse-drag-line, mouse-drag-track): Don't assume
1820         the previous value of track-mouse is nil; instead, save and
1821         restore the previous value.  (Bug#24480)
1823 2016-09-20  Eli Zaretskii  <eliz@gnu.org>
1825         Improve nt/README.W32 instructions
1827         * nt/README.W32: Add instructions for installing 64-bit builds of
1828         optional libraries.  (Bug#24470)
1830 2016-09-17  Eli Zaretskii  <eliz@gnu.org>
1832         Document that desktop file overrides frame parameters
1834         * doc/emacs/misc.texi (Saving Emacs Sessions):
1835         * doc/emacs/frames.texi (Frame Parameters): Document that frame
1836         parameters restored by desktop.el take precedence over the
1837         customizations in the init file, and explain how to countermand
1838         that.  For the details of the issue, see
1839         http://lists.gnu.org/archive/html/emacs-devel/2016-09/msg00318.html.
1841 2016-09-15  Nicolas Petton  <nicolas@petton.fr>
1843         * etc/AUTHORS: Regenerate the AUTHORS file
1845 2016-09-16  Nicolas Petton  <nicolas@petton.fr>
1847         * Version 25.1 released.
1849 2016-09-15  Nicolas Petton  <nicolas@petton.fr>
1851         * etc/AUTHORS: Regenerate the AUTHORS file
1853 2016-09-15  Eli Zaretskii  <eliz@gnu.org>
1855         Update admin/authors.el
1857         * admin/authors.el (authors-fixed-entries): Add an entry for Bob
1858         Weiner.
1860 2016-09-14  Eli Zaretskii  <eliz@gnu.org>
1862         Update Antinews in ELisp manual
1864         * doc/lispref/anti.texi (Antinews): Update for Emacs 25.1.
1865         * doc/lispref/elisp.texi (Top): Update the main menu entry for
1866         Antinews.
1868 2016-09-11  Noam Postavsky  <npostavs@gmail.com>
1870         Fix comments on window height macros
1872         * src/window.h (WINDOW_MODE_LINE_HEIGHT, WINDOW_HEADER_LINE_HEIGHT): Fix
1873         confusing claim that "height is in pixels and in lines"; in fact it's in
1874         pixels.
1876 2016-09-10  Toke Høiland-Jørgensen  <toke@toke.dk>  (tiny change)
1878         Fix 'url-http-create-request' when cookies are used
1880         * lisp/url/url-http.el (url-http-create-request): Make sure the
1881         cookie headers are a unibyte string.  For the details, see
1882         http://lists.gnu.org/archive/html/emacs-devel/2016-09/msg00202.html.
1884 2016-09-08  Martin Rudalics  <rudalics@gmx.at>
1886         Fix cross reference in frames.texi
1888         * doc/lispref/frames.texi (Minibuffers and Frames): Fix cross
1889         reference.
1891 2016-09-04  immerrr  <immerrr@gmail.com>
1893         Fix regexp-opt documentation (bug #17862)
1895         * lisp/emacs-lisp/regexp-opt.el (regexp-opt):
1896         * doc/lispref/searching.texi (Regexp Functions): Update PAREN doc.
1898 2016-08-31  Nicolas Richard  <youngfrog@members.fsf.org>
1900         * lisp/emacs-lisp/gv.el (gv-ref): Fix example of PLACE in docstring.
1902 2016-08-27  Noam Postavsky  <npostavs@gmail.com>
1904         Fix tags-query-replace docstring
1906         * lisp/progmodes/etags.el (tags-query-replace): Remove incorrect info
1907         regarding non-existent parameters.
1909 2016-08-26  Eli Zaretskii  <eliz@gnu.org>
1911         Clarify documentation of precision in format specs
1913         * doc/lispref/strings.texi (Formatting Strings): Be less
1914         definitive wrt what precision means in format specs other than
1915         floating-point, %s and %S.  (Bug#24314)
1917 2016-08-24  Eli Zaretskii  <eliz@gnu.org>
1919         Improve and clarify documentation of subprocesses
1921         * doc/lispref/processes.texi (Subprocess Creation, Shell Arguments):
1922         Mention 'make-process' rather than 'start-process'.  Update wrt
1923         standard destinations of standard output/error streams and due to
1924         different formats of arguments accepted by 'make-process'.
1925         (Processes): Mention process objects that represent connections.
1926         (Synchronous Processes): Minor clarifications.
1927         (Asynchronous Processes): Describe 'make-process' and
1928         'make-pipe-process' before 'start-process'.  Update and expand the
1929         documentation.
1930         (Deleting Processes, Process Information, Input to Processes)
1931         (Signals to Processes, Query Before Exit, Network): Update and
1932         expand the documentation, especially wrt process objects that
1933         represent connections.
1934         (Output from Processes): Mention the possibility of separating
1935         stderr via 'make-process'.
1936         (Filter Functions): Mention that stderr by default arrives at the
1937         filter function together with stdout.  (Bug#24287)
1939         * src/process.c (Fprocess_id, Fprocess_command)
1940         (Fprocess_contact, Fprocess_type, Fstop_process): Doc fixes for
1941         process objects that represent connections.
1943 2016-08-23  Paul Eggert  <eggert@cs.ucla.edu>
1945         * etc/PROBLEMS: Mention gnutls-cli 3.5.3 (Bug#24247).
1947 2016-08-21  Nicolas Petton  <nicolas@petton.fr>
1949         * etc/AUTHORS: Update the AUTHORS file
1951 2016-08-20  Philipp Stephani  <phst@google.com>
1953         Some assorted documentation clarifications
1955         * src/fileio.c (Fwrite_region): Clarify that END is ignored if
1956         START is nil.
1957         * src/editfns.c (Fbuffer_size): Add short discussion about
1958         narrowing.
1959         * src/callproc.c (Fcall_process_region): Discuss behavior when
1960         START and END are not buffer positions.
1962 2016-08-18  Eli Zaretskii  <eliz@gnu.org>
1964         Improve commentary in src/character.h
1966         * src/character.h (BYTES_BY_CHAR_HEAD, MULTIBYTE_LENGTH)
1967         (MULTIBYTE_LENGTH_NO_CHECK, STRING_CHAR_AND_LENGTH): Remove stale
1968         info from commentary and improve it.
1970 2016-08-17  Dmitry Gutov  <dgutov@yandex.ru>
1972         * etc/NEWS: Mention the change in json-encode-string.
1974         The change was made to fix bug#20154, and came up again in bug#24239.
1976 2016-08-16  Eli Zaretskii  <eliz@gnu.org>
1978         * src/doc.c (Fsubstitute_command_keys): Another fix for smart quotes.
1980         (Bug#24206)
1982 2016-08-16  Eli Zaretskii  <eliz@gnu.org>
1984         Avoid segfaults due to quoting in 'substitute-command-keys'
1986         * src/doc.c (Fsubstitute_command_keys): Correct character counts
1987         when the input string is unibyte.  (Bug#24206)
1989 2016-08-16  Martin Rudalics  <rudalics@gmx.at>
1991         In NEWS describe new handling of window margins (Bug#24193)
1993         * etc/NEWS: Describe new handling of margins when splitting or
1994         resizing windows (Bug#24193).
1996 2016-08-16  Martin Rudalics  <rudalics@gmx.at>
1998         Facultatively ignore margins when splitting and resizing windows (Bug#24193)
2000         Provide a new window parameter 'min-margins' which allows to
2001         ignore the actual widths of a window's margins when splitting or
2002         resizing that window horizontally.  This should serve as a
2003         workaround for handling the problems raised by Bug#24193.
2005         * lisp/window.el (window--min-size-1): Handle new window
2006         parameter 'min-margins'.
2007         (split-window): Fix text of error messages.
2008         * doc/lispref/windows.texi (Window Parameters): Describe new
2009         parameter 'min-margins'.
2011 2016-08-14  Noam Postavsky  <npostavs@gmail.com>
2013         Document CATEGORY arg to modify-category-entry
2015         * src/category.c (Fmodify_category_entry): Document CATEGORY argument.
2017 2016-08-13  Noam Postavsky  <npostavs@gmail.com>
2019         Document char-script-table's effect on word motion
2021         * doc/lispref/positions.texi (Word Motion): Talk about
2022         char-script-table (Bug #10494).
2024 2016-08-13  Eli Zaretskii  <eliz@gnu.org>
2026         Further fix for 'url-http-create-request' and multibyte strings
2028         * lisp/url/url-http.el (url-http-create-request): Run
2029         url-mime-charset-string through url-http--encode-string.
2030         (Bug#24117)
2032 2016-08-13  Noam Postavsky  <npostavs@gmail.com>
2034         Fix docstring of eval-expression
2036         * lisp/simple.el (eval-expression): Fix the docstring to reflect the
2037         fact that the prefix argument does not affect formatting for
2038         integers (Bug #20691).
2040 2016-08-11  Eli Zaretskii  <eliz@gnu.org>
2042         Clarify when 'cursor' property is in effect
2044         * doc/lispref/text.texi (Special Properties): Minor copyedits.
2045         (Bug#24179)
2047 2016-08-11  Dmitry Gutov  <dgutov@yandex.ru>
2049         Convert the remaining strings to unibyte before concatenating
2051         * lisp/url/url-http.el (url-http--encode-string): New function.
2052         (url-http-create-request): Use it to convert ASCII to unibyte.
2053         (Bug#24117)
2055 2016-08-11  Eli Zaretskii  <eliz@gnu.org>
2057         Fix bug with handling the bidi cache
2059         * src/xdisp.c (redisplay_window): Save and restore the state of
2060         the bidi cache before reusing the iterator after calls to
2061         try_window and try_window_reusing_current_matrix.
2063 2016-08-10  Eli Zaretskii  <eliz@gnu.org>
2065         * doc/lispref/text.texi (Change Hooks): Minor copyedits.
2067 2016-08-09  Eli Zaretskii  <eliz@gnu.org>
2069         Clarify documentation of before/after-change-functions
2071         * doc/lispref/text.texi (Change Hooks): Clarify that the hooks are
2072         not called in balanced pairs.
2074 2016-08-06  Noam Postavsky  <npostavs@gmail.com>
2076         Document use of vectors in keymaps
2078         * doc/lispref/keymaps.texi (Format of Keymaps): Mention vector
2079         format (Bug #14797).
2081 2016-08-03  Alan Third  <alan@idiocy.org>
2083         Post AppDefined events from the main thread ONLY (bug#23934)
2085         * src/nsterm.h: Make nextappdefined var not just GNUStep.
2086         * src/nsterm.m (ns_send_appdefined, sendFromMainThread): Remove GNUStep
2088 2016-08-03  John Wiegley  <johnw@newartisans.com>
2090         Update to the AUTHORS file for Bob Weiner
2092                 * etc/AUTHORS: Update the packages attributed to Bob Weiner
2094 2016-08-02  John Wiegley  <johnw@newartisans.com>
2096         Revert "Fix local printer set to left aligned string formatter."
2098         This reverts commit 8a38e948b039516e70176ebe20c5349e2ade6ac5.
2100 2016-08-02  John Wiegley  <johnw@newartisans.com>
2102         Revert "Fix ses-delete-blanks to delete only blanks + documentation."
2104         This reverts commit 3c97b0f7589e06aeb1ab0147f0ee32974c32926d.
2106 2016-08-02  John Wiegley  <johnw@newartisans.com>
2108         Revert "Fix English."
2110         This reverts commit b275cc76f0c5ab49e81445fcc3420c8772aefd42.
2112 2016-08-01  Eli Zaretskii  <eliz@gnu.org>
2114         Improve doc strings of 'gud-gdb' and 'gdb'
2116         * lisp/progmodes/gdb-mi.el (gdb):
2117         * lisp/progmodes/gud.el (gud-gdb): Doc fix.  (Bug#24125)
2119 2016-08-01  Eli Zaretskii  <eliz@gnu.org>
2121         Fix doc string of 'minibuffer-message-timeout'
2123         * src/keyboard.c (syms_of_keyboard) <minibuffer-message-timeout>:
2124         Doc fix.  (Bug#24123)
2126 2016-07-29  Vincent Belaïche  <vincentb1@users.sourceforge.net>
2128         Fix English.
2130         * doc/misc/ses.texi (Nonrelocatable references): Fix grammatically
2131           incorrect English.
2133 2016-07-29  Vincent Belaïche  <vincentb1@users.sourceforge.net>
2135         Fix ses-delete-blanks to delete only blanks + documentation.
2137         * doc/misc/ses.texi (Quick Tutorial): Mention the '!'
2138         'ses-range' modifier as an alternative to 'ses+'.
2139         (Advanced Features): Add a refernce to node 'Nonrelocatable
2140         references' concerning function 'ses-rename-cell'.
2141         (Standard formula functions): Mention the '!' 'ses-range'
2142         modifier as an alternative to 'ses-delete-blanks'.
2143         (More on cell printing): Fix fallback printer
2144         definition.  Minor editorial formatting changes.
2145         (Nonrelocatable references): Document the use of
2146         'ses-rename-cell' as a better way to make cell reference
2147         non-relocatable.
2148         (The data area): Document the presence of local printer
2149         definitions in the data area.
2151         * lisp/ses.el (ses-delete-blanks): Do not remove
2152         *error*.  Any error in an argument should propagate into the
2153         using formula rather than being silently hidden !
2155 2016-07-29  Noam Postavsky  <npostavs@gmail.com>
2157         profiler: document prefix arg for tree expansion
2159         * doc/lispref/debugging.texi (Profiling):
2160         * lisp/profiler.el (profiler-report-toggle-entry): Document use of
2161         prefix argument to expand whole call trees.
2163 2016-07-29  Noam Postavsky  <npostavs@gmail.com>
2165         Clarify usage of eshell-visual-options
2167         * lisp/eshell/em-term.el (eshell-visual-options): Add second option to
2168         example usage (Bug #19627).
2170 2016-07-29  Noam Postavsky  <npostavs@gmail.com>
2172         Fix comment in files-in-below-directory
2174         * doc/lispintro/emacs-lisp-intro.texi (Files List): Comment should not
2175         say append, since the code is adding to front of list (Bug #21589).
2177 2016-07-28  Vincent Belaïche  <vincentb1@users.sourceforge.net>
2179         Fix local printer set to left aligned string formatter.
2181         * lisp/ses.el (ses-local-printer-compile): Add missing case
2182         for left-aligned string formatter.
2184 2016-07-24  Nicolas Petton  <nicolas@petton.fr>
2186         Bump Emacs version to 25.1 for the first RC
2188         * README:
2189         * configure.ac:
2190         * lisp/ldefs-boot.el:
2191         * msdos/sed2v2.inp: Bump Emacs version to 25.1.
2193 2016-07-24  Nicolas Petton  <nicolas@petton.fr>
2195         * etc/AUTHORS: Update the AUTHORS file
2197         ;; * ChangeLog.2: ChangeLog update.
2199 2016-07-24  Nicolas Petton  <nicolas@petton.fr>
2201         * admin/authors.el (authors-valid-file-names): Addition.
2203 2016-07-23  Eli Zaretskii  <eliz@gnu.org>
2205         Warn about Cairo-related problems
2207         * etc/NEWS: Warn about known problems in the Cairo build.
2208         (Bug#23925)
2210 2016-07-23  Paul Pogonyshev  <pogonyshev@gmail.com>
2212         Don't let completion break `declare' handling
2214         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point): Fix to not alter
2215         `defun-declarations-alist' by side effect (Bug #23648).
2217 2016-07-23  Noam Postavsky  <npostavs@gmail.com>
2219         Adjust match data before calling after-change-funs
2221         It's important to adjust the match data in between calling
2222         before-change-functions and after-change-functions, so that buffer
2223         change hooks will always see match-data consistent with buffer content.
2224         (Bug #23917)
2226         * src/insdel.c (replace_range): Add new parameter ADJUST_MATCH_DATA, if
2227         true call update_search_regs.  Update all callers (except
2228         Freplace_match) to pass 0 for the new parameter.
2229         * src/search.c (update_search_regs): New function, extracted from
2230         Freplace_match.
2231         (Freplace_match): Remove match data adjustment code, pass 1 for
2232         ADJUST_MATCH_DATA to replace_range instead.
2234 2016-07-21  Mark Oteiza  <mvoteiza@udel.edu>
2236         Do not show string-rectangle preview if minibuffer is empty
2238         * lisp/rect.el (rectangle--string-preview): Remove condition that sets
2239         preview string to the default replacement string.
2241 2016-07-21  Achim Gratz  <Stromeko@nexgo.de>
2243         * etc/PROBLEMS: Add entry about selection problems under Plasma 5.
2245         Bug#24013
2247 2016-07-21  Paul Eggert  <eggert@cs.ucla.edu>
2249         Port to glibc 2.24 (pre-release) + ppc64
2251         Backport from master (Bug#24033).
2252         Inspired by a suggestion by Florian Weimer in:
2253         https://sourceware.org/ml/libc-alpha/2016-07/msg00425.html
2254         * src/emacs.c (main) [__PPC64__]:
2255         Special case for __PPC64__, which needs ASLR disabled in
2256         dumped Emacs too.
2258 2016-07-21  Katsumi Yamaoka  <yamaoka@jpl.org>
2260         * lisp/net/shr.el (shr-fill-line): Withdraw the last commit (4157159).
2262         * lisp/net/shr.el (shr-fill-line):
2263         Preserve text properties in folded lines (bug#24034).
2265 2016-07-17  Robert Cochran  <robert-git@cochranmail.com>  (tiny change)
2267         Expand FIXME near definition of fboundp
2269         This expansion of the FIXME is so that future developers are aware of
2270         the potential problems of aliasing fboundp to symbol-function without
2271         taking backwards compatibility into account.
2273         * src/data.c (fboundp): Note potential backwards compatibility issues in
2274         FIXME.
2276 2016-07-17  Noam Postavsky  <npostavs@gmail.com>
2278         kill-rectangle should mention killed-rectangle
2280         * lisp/rect.el (kill-rectangle): Mention `killed-rectangle' in docstring
2281         and warning message, rather than kill ring (Bug#19773).
2283 2016-07-16  Eli Zaretskii  <eliz@gnu.org>
2285         Avoid assertion violations in nhexl-mode
2287         * src/bidi.c (bidi_resolve_neutral): Convert an assertion to real
2288         code executed in all builds.  (Bug#24001)
2290 2016-07-15  Fredrik Bergroth  <fbergroth@gmail.com>  (tiny change)
2292         Use memmove instead of memcpy on overlapping regions
2294         * src/editfns.c (Ftranspose_regions): Regions may overlap, so
2295         use memmove instead of memcpy (bug#19213).
2298         This is a backport from trunk.
2299         (cherry picked from commit 354f9f0fc6cc05ed98883447f9b2f37943d79160)
2301 2016-07-15  Noam Postavsky  <npostavs@gmail.com>
2303         Document buffer-swap-text+save-excursion interaction
2305         * doc/lispref/buffers.texi (Swapping Text):
2306         * src/buffer.c (Fbuffer_swap_text): Add warning about interaction of
2307         `buffer-swap-text' and `save-excursion' (Bug #4655).
2309 2016-07-14  Stefan Monnier  <monnier@iro.umontreal.ca>
2311         Fix eieio vs cl-generic incompatibilities found in Rudel (bug#23947)
2313         * lisp/emacs-lisp/cl-generic.el (cl-generic-apply): New function.
2314         * lisp/emacs-lisp/eieio-compat.el (eieio--defmethod): Fix incorrect
2315         mapping between cl-no-applicable-method and EIEIO's no-applicable-method.
2316         * lisp/emacs-lisp/eieio-core.el (eieio--class-precedence-c3):
2317         `class' is not a symbol but a class object.
2319 2016-07-14  Stefan Monnier  <monnier@iro.umontreal.ca>
2321         Include cl-generic in package--builtin-versions (bug#22817)
2323         * lisp/emacs-lisp/cl-generic.el (package--builtin-versions):
2324         Add ourselves manually.  Don't merge since there's a better fix on master.
2326 2016-07-14  Michael Albinus  <michael.albinus@gmx.de>
2328         Improve timing in `tramp-test29-environment-variables'
2330         * test/automated/tramp-tests.el
2331         (tramp-test--shell-command-to-string-asynchronously):
2332         Add additional `accept-process-output' call.
2333         (tramp-test29-environment-variables): Remove additional sleep calls.
2335 2016-07-14  Michael Albinus  <michael.albinus@gmx.de>
2337         Add test for handling environment variables in Tramp
2339         * test/automated/tramp-tests.el
2340         (tramp-test--shell-command-to-string-asynchronously): New defun.
2341         (tramp-test29-environment-variables): New test.
2342         (tramp-test30-vc-registered)
2343         (tramp-test31-make-auto-save-file-name)
2344         (tramp-test32-special-characters)
2345         (tramp-test32-special-characters-with-stat)
2346         (tramp-test32-special-characters-with-perl)
2347         (tramp-test32-special-characters-with-ls, tramp-test33-utf8)
2348         (tramp-test33-utf8-with-stat, tramp-test33-utf8-with-perl)
2349         (tramp-test33-utf8-with-ls)
2350         (tramp-test34-asynchronous-requests)
2351         (tramp-test35-recursive-load, tramp-test36-unload): Rename.
2353 2016-07-13  Glenn Morris  <rgm@gnu.org>
2355         * lisp/emacs-lisp/package.el (describe-package-1)
2356         (package-status-external): Fix face references.  (Bug#23927)
2358 2016-07-12  Stephen Berman  <stephen.berman@gmx.net>
2360         Improve documentation of search functions
2362         Make the documentation of the search functions more accurate,
2363         complete, and uniform; in particular, extend the description of
2364         the effect when the 'count' parameter is a negative number to all
2365         of these functions.
2367         * src/search.c (Fsearch_backward, Fsearch_forward)
2368         (Fre_search_backward, Fre_search_forward)
2369         (Fposix_search_backward, Fposix_search_forward):
2370         * lisp/isearch.el (word-search-backward, word-search-forward)
2371         (word-search-backward-lax, word-search-forward-lax): Improve doc
2372         strings as described above.
2374         * doc/lispref/searching.texi (String Search, Regexp Search)
2375         (POSIX Regexps): Use 'count' instead of 'repeat' as the name of
2376         the fourth parameter of the *-search-{forward,backward} functions
2377         and improve documentation as described above.
2379 2016-07-12  Michael Albinus  <michael.albinus@gmx.de>
2381         Delete environment variables in Tramp when needed
2383         * lisp/net/tramp-sh.el (tramp-get-env-with-u-option): New defun.
2384         (tramp-sh-handle-start-file-process)
2385         (tramp-sh-handle-process-file, ): Use it.  (Bug#23952)
2387 2016-07-12  Eli Zaretskii  <eliz@gnu.org>
2389         Add "New in Emacs 25" section to the FAQ
2391         * doc/misc/efaq.texi (Latest version of Emacs): Update for later
2392         versions.
2393         (New in Emacs 25): New node.
2394         (Status of Emacs): Add it to the menu.
2396 2016-07-10  Eli Zaretskii  <eliz@gnu.org>
2398         Fix 'vertical-motion' in non-interactive sessions
2400         * src/indent.c (Fvertical_motion): Don't return uninitialized
2401         value in non-interactive session.  This fixes random errors in
2402         batch mode, see
2403         http://lists.gnu.org/archive/html/emacs-devel/2016-06/msg00609.html
2404         and
2405         http://lists.gnu.org/archive/html/emacs-devel/2016-07/msg00500.html
2406         for the details.
2408 2016-07-10  Andreas Schwab  <schwab@linux-m68k.org>
2410         Fix memory leak in imagemagick-types
2412         * src/image.c (Fimagemagick_types): Use AcquireExceptionInfo to
2413         avoid memory leak.
2415 2016-07-10  Eli Zaretskii  <eliz@gnu.org>
2417         Update ELisp manual to match 'string-collate-equalp' doc string
2419         * doc/lispref/strings.texi (Text Comparison): Remove reference to
2420         sorting from the description of 'string-collate-equalp'.  (Bug#23902)
2422 2016-07-09  Noam Postavsky  <npostavs@gmail.com>
2424         Clarify docstring of find-feature-regexp
2426         * lisp/emacs-lisp/find-func.el (find-feature-regexp): Explain that `%s'
2427         is optional (Bug #23520).
2429 2016-07-09  Noam Postavsky  <npostavs@gmail.com>
2431         Add details to cl-lib defining macros' docstrings
2433         * lisp/emacs-lisp/cl-macs.el (cl-defun, cl-defmacro): Add terse summary
2434         of supported arglist forms (Bug #22462).
2436 2016-07-09  Eli Zaretskii  <eliz@gnu.org>
2438         Clarify doc string of 'save-buffer'
2440         * lisp/files.el (save-buffer): Clarify that backups might not be
2441         made even if this command is invoked with 2 or 3 "C-u"s.
2442         (Bug#3702)
2444 2016-07-08  Eli Zaretskii  <eliz@gnu.org>
2446         Un-confuse doc string of 'string-collate-equalp'
2448         * src/fns.c (Fstring_collate_equalp): Remove confusing text from
2449         doc string.  (Bug#23902)
2451 2016-07-07  Eli Zaretskii  <eliz@gnu.org>
2453         Clarify documentation of 'mouse-on-link-p'
2455         * lisp/mouse.el (mouse-on-link-p): Clarify the form of the POS
2456         argument.  (Bug#23899)
2458 2016-07-06  Phillip Lord  <phillip.lord@russet.org.uk>
2460         Fix missing undo-boundary on revert-buffer.
2462         * lisp/simple.el (undo-auto--undoable-change-no-timer): New function.
2463         * src/fileio.c (insert-buffer-contents): Call
2464           undo-auto--undoably-changed-buffers before changes.
2466         Addresses Bug#23785.
2468         Do not merge to master as c98bc98 also addresses the same bug.
2470 2016-07-06  Martin Rudalics  <rudalics@gmx.at>
2472         Amend last addition to etc/PROBLEMS
2474         * etc/PROBLEMS: Mention GTK+ problem with unexpected frame widenings
2476 2016-07-06  Paul Eggert  <eggert@cs.ucla.edu>
2478         Fix open-network-stream responsiveness
2480         Problem reported by Christer Ekholm (Bug#23864).
2481         Backport from master.
2482         * src/process.c (wait_reading_process_output):
2483         Fix typo introduced in 2015-07-06T02:19:13Z!eggert@cs.ucla.edu
2484         when wait == INFINITY and got_output_end_time is invalid.
2485         In this case the code should break, not continue.
2487 2016-07-05  Phillip Lord  <phillip.lord@russet.org.uk>
2489         Fix missing point information in undo
2491         * src/undo.c (record_insert): Use record_point instead of
2492           prepare_record, and do so unconditionally.
2493           (prepare_record): Do not record first change.
2494           (record_point): Now conditional on state before the last command.
2495           (record_delete): Call record_point unconditionally.
2496           (record_property_change): Use prepare_record.
2497           (record_marker_adjustments): Use prepare_record.
2499         Addresses Bug# 21722
2501 2016-07-04  Eli Zaretskii  <eliz@gnu.org>
2503         Avoid crashes when buffer modification hooks clobber match data
2505         * src/search.c (Freplace_match): Error out if buffer modification
2506         hooks triggered by buffer changes in replace_range, upcase-region,
2507         and upcase-initials-region clobber the match data needed to be
2508         adjusted for the replacement.  (Bug#23869)
2510 2016-07-03  Noam Postavsky  <npostavs@gmail.com>
2512         Note combine-and-quote-strings doesn't shell quote
2514         * doc/lispref/processes.texi (Shell Arguments):
2515         * lisp/subr.el (combine-and-quote-strings): Add a note that
2516         combine-and-quote-strings doesn't protect arguments against shell
2517         evaluation (Bug #20333).
2519 2016-07-03  Noam Postavsky  <npostavs@gmail.com>
2521         Explain when package-initialize isn't called
2523         * doc/lispref/os.texi (Startup Summary): Explain that package-initialize
2524         is not called when options -q, -Q, or --batch were passed (Bug #19151).
2526 2016-07-03  Noam Postavsky  <npostavs@gmail.com>
2528         Fix escaping in sh-indent-after-continuation docstr
2530         * lisp/progmodes/sh-script.el (sh-indent-after-continuation): Properly
2531         escape backslashes in docstring (Bug#23046).
2533 2016-07-02  Eli Zaretskii  <eliz@gnu.org>
2535         Clarify the documentation of back-references in replacements
2537         * doc/emacs/search.texi (Regexp Replace): Clarify that \D starts
2538         with \1, not \0.
2540         * lisp/replace.el (query-replace-regexp)
2541         (query-replace-regexp-eval, replace-regexp): Doc fix (Bug#23884)
2543 2016-07-01  Noam Postavsky  <npostavs@gmail.com>
2545         Clarify lexical binding with symbol args behavior
2547         * doc/lispref/variables.texi (Lexical Binding): Clarify that symbol
2548         arguments always refer to dynamic values (Bug #23781).  Remove mention
2549         of obsolete restriction regarding lexical binding for defun and
2550         defmacro, this no longer applies since 61b108cc 2012-05-29 "*
2551         lisp/emacs-lisp/byte-run.el (defmacro, defun): Move from C...".
2553 2016-06-30  Michael Albinus  <michael.albinus@gmx.de>
2555         * lisp/net/tramp-sh.el (tramp-remote-path): Doc fix.
2557 2016-06-29  Eli Zaretskii  <eliz@gnu.org>
2559         * lisp/net/tramp-sh.el (tramp-remote-path): Doc fix.  (Bug#23865)
2561 2016-06-29  Eli Zaretskii  <eliz@gnu.org>
2563         Avoid assertion violations when rendering some fonts
2565         * src/dispextern.h (FONT_TOO_HIGH): Don't consider a font "too
2566         high" if its pixel_size value is zero.  This avoids assertion
2567         violations at the end of x_produce_glyphs.
2569 2016-06-28  Noam Postavsky  <npostavs@gmail.com>
2571         Document more details of package activation
2573         * doc/emacs/package.texi (Package Installation): Explain that package
2574         activation adds to load-path (Bug #21704).
2576 2016-06-28  Noam Postavsky  <npostavs@gmail.com>
2578         Fixup warning message regarding HOME a bit more
2580         * src/w32.c (init_environment): The manual section title is "Windows
2581         HOME" (Bug #11612).  Move newline so warning fits in 80 character lines.
2583 2016-06-27  Eli Zaretskii  <eliz@gnu.org>
2585         * lisp/leim/quail/indian.el ("bengali-probhat"): Change indicator to BngPB.
2587 2016-06-27  Michael Albinus  <michael.albinus@gmx.de>
2589         Fix input method "probhat" for Bengali
2591         Author: উৎসব রায় <uroybd@gmail.com>
2593         * lisp/leim/quail/indian.el ("bengali-probhat"): Fix entry.
2595 2016-06-27  Noam Postavsky  <npostavs@gmail.com>
2597         Add to elisp-completion-at-point's docstring
2599         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point): Document
2600         position dependent behavior (Bug #19854).
2602 2016-06-27  Noam Postavsky  <npostavs@gmail.com>
2603             Eli Zaretskii  <eliz@gnu.org>
2605         Give more helpful warning about setting HOME
2607         * src/w32.c (init_environment): Improve warning message that pops when
2608         Emacs sets HOME according to existence of C:\.emacs (Bug #11612).
2610 2016-06-26  Eli Zaretskii  <eliz@gnu.org>
2612         Fix slow redisplay in term-mode
2614         * lisp/term.el (term-mode): Move the setting of
2615         bidi-paragraph-direction from 'ansi-term' to here, since term-mode
2616         is also affected.  Do not merge to master, since there the problem
2617         is solved in bidi.c by changing the regexps that delimit a
2618         paragraph.  (Bug#23801)
2620 2016-06-26  উৎসব রায়  <uroybd@gmail.com>
2622         New input method "probhat" for Bengali
2624         * lisp/leim/quail/indian.el ("probhat"): New input method.
2625         (Bug#23822)
2627         * etc/NEWS: Mention the new input method.
2629 2016-06-25  Noam Postavsky  <npostavs@gmail.com>
2630             Drew Adams  <drew.adams@oracle.com>
2632         Update docs for `customize-mode'
2634         * lisp/cus-edit.el (customize-mode): This function works with both major
2635         and minor modes, make docstring and prompt reflect that (Bug #23649).
2637         * doc/lispref/modes.texi (Derived Modes): Remove note about
2638         customize-mode being experimental; it has been around since Emacs
2639         22 (Bug #11299).
2641 2016-06-23  Eli Zaretskii  <eliz@gnu.org>
2643         Fix documentation of 'assoc-string' and 'compare-strings'
2645         * src/minibuf.c (Fassoc_string): Clarify how CASE-FOLD affects the
2646         string comparison.  (Bug#23833)
2647         * src/fns.c (Fcompare_strings): Fix the description of how
2648         IGNORE-CASE affects the comparison.
2650         * doc/lispref/strings.texi (Text Comparison): Clarify how
2651         CASE-FOLD affects the string comparison in 'assoc-string'.  Fix
2652         the description of how IGNORE-CASE affects the comparison in
2653         'compare-strings'.
2655 2016-06-22  Dmitry Gutov  <dgutov@yandex.ru>
2657         Error on multibyte characters in HTTP request
2659         * lisp/url/url-http.el (url-http-create-request): Check the
2660         constructed request in the end to verify that it does not contain
2661         multibyte characters (bug#23750).
2663 2016-06-22  Katsumi Yamaoka  <yamaoka@jpl.org>
2665         * lisp/gnus/mm-decode.el (mm-convert-shr-links):
2666         Mask keys that launch `widget-button-click' (bug#22157).
2668 2016-06-22  Dmitry Gutov  <dgutov@yandex.ru>
2670         Unset GIT_DIR when calling Git commands
2672         * lisp/vc/vc-git.el (vc-git--call, vc-git-command):
2673         Unset GIT_DIR (bug#23769).
2675 2016-06-21  Phillip Lord  <phillip.lord@russet.org.uk>
2677         Ensure undo-boundary after insert-file-contents.
2679         * src/fileio.c: Record undoable change during insert-file-contents.
2681         Addresses Bug #23785.
2683 2016-06-21  Eli Zaretskii  <eliz@gnu.org>
2685         Clarify documentation of 'line-spacing' and 'line-height'
2687         * doc/lispref/display.texi (Line Height): Clarify how the line
2688         height is determined via variables and text properties.  (Bug#23806)
2690 2016-06-20  Eli Zaretskii  <eliz@gnu.org>
2692         Fix removal of variables from process-environment
2694         * src/callproc.c (add_env): Fix comparison of a variable with a
2695         value against the same variable without a value.  (Bug#23779)
2697 2016-06-20  Glenn Morris  <rgm@gnu.org>
2699         * admin/authors.el (authors-ignored-files, authors-valid-file-names)
2700         (authors-renamed-files-alist): Additions.
2702         * admin/authors.el (authors-aliases, authors-fixed-case): Additions.
2704 2016-06-18  Noam Postavsky  <npostavs@gmail.com>
2706         Fix documentation of completion functions
2708         So that the described behavior matches the code (and docstrings).
2710         * doc/lispref/minibuf.texi (Basic Completion): Symbol keys of hash table
2711         collections are used like string keys, not ignored (Bug #10416).
2713 2016-06-18  Eli Zaretskii  <eliz@gnu.org>
2715         Clarify documentation of 'font-lock-maximum-decoration'
2717         * doc/emacs/display.texi (Font Lock): Explain how to make the
2718         customization of 'font-lock-maximum-decoration' effective for an
2719         existing buffer.  (Bug#23783)
2721 2016-06-17  Glenn Morris  <rgm@gnu.org>
2723         * doc/misc/cl.texi (Usage): Add some more details.
2725 2016-06-17  Noam Postavsky  <npostavs@gmail.com>
2727         Fbackward_prefix_chars: stay within buffer bounds
2729         The commit 1fd3172d "(Fbackward_prefix_chars): Set point properly while
2730         scanning" (1998-03-18), moved the check against of the position against the
2731         buffer beginning out the loop condition so that we might end up checking
2732         the syntax of characters before the beginning of the buffer.  This can
2733         cause segfaults or trigger a "Point before start of properties" error in
2734         `update_interval' (called indirectly from `char_quoted').
2736         * src/syntax.c (Fbackward_prefix_chars): Stop the loop when beginning of
2737         buffer is reached (Bug #3552, Bug #17132, Bug #19379).
2739 2016-06-16  Paul Eggert  <eggert@cs.ucla.edu>
2741         Fix ifdef-vs-if typo with RANDR13_LIBRARY
2743         * src/xfns.c (x_get_monitor_attributes_xrandr): Use #if, not #ifdef.
2744         This ports to systems that predate xrandr 1.3. See Christian Lynbech in:
2745         http://lists.gnu.org/archive/html/emacs-devel/2016-06/msg00198.html
2747         (cherry picked from commit dce99f222f1ca33265cd56ddb157817be1dc078e)
2749 2016-06-16  Stephen Berman  <stephen.berman@gmx.net>
2751         Fix last todo-mode change
2753         * lisp/calendar/todo-mode.el (todo-read-category): Return the
2754         keymap in order to use its defined key bindings.
2756 2016-06-15  Stephen Berman  <stephen.berman@gmx.net>
2758         Improve last todo-mode fix
2760         * lisp/calendar/todo-mode.el (todo-read-category): Use
2761         set-keymap-parent instead of copy-keymap, and default (as
2762         previously) to the global binding (for rationale, see
2763         http://lists.gnu.org/archive/html/emacs-devel/2016-06/msg00217.html).
2765 2016-06-14  Stephen Berman  <stephen.berman@gmx.net>
2767         Fix todo-mode use of minibuffer completion keymap (bug#23695).
2769         * lisp/calendar/todo-mode.el (todo-read-category): Don't
2770         override minibuffer-local-completion-map globally (bug#23695).
2771         Bind <SPC> key to self-insert-command.
2773 2016-06-14  Glenn Morris  <rgm@gnu.org>
2775         * src/alloc.c (ALIGN): Avoid error on DragonFly BSD.  (Bug#23764)
2777         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
2778         Avoid mangling autoloads with unspecified arguments.  (Bug#21299)
2780 2016-06-13  Glenn Morris  <rgm@gnu.org>
2782         * lisp/help-fns.el (describe-function-1): Avoid reporting advised
2783         autoloads as aliases.  (Bug#21299)
2785 2016-06-13  Stephen Berman  <stephen.berman@gmx.net>
2787         Minor grammar fix (bug#23746)
2789         * doc/lispref/processes.texi (Synchronous Processes):
2790         Another minor grammar fix (bug#23746).
2792 2016-06-13  Stephen Berman  <stephen.berman@gmx.net>
2794         Doc fixes for grammar and typos (bug#23746)
2796         * doc/emacs/files.texi (Customize Save):
2797         * doc/emacs/frames.texi (Window Dividers):
2798         * doc/emacs/misc.texi (Printing):
2799         * doc/lispref/compile.texi (Compiler Errors):
2800         * doc/lispref/keymaps.texi (Changing Key Bindings):
2801         * doc/lispref/loading.texi (Named Features):
2802         * doc/lispref/markers.texi (Marker Insertion Types):
2803         * doc/lispref/modes.texi (Mode Hooks):
2804         * doc/lispref/text.texi (Undo):
2805         * src/floatfns.c (Fldexp):
2806         * src/xfaces.c (syms_of_xfaces):
2807         Minor doc fixes for grammar and typos (bug#23746).
2809 2016-06-13  Eli Zaretskii  <eliz@gnu.org>
2811         * doc/lispref/processes.texi (Process Buffers): Minor rewording.  (Bug#23446)
2813 2016-06-13  Eli Zaretskii  <eliz@gnu.org>
2815         Add cross-reference to ELisp manual
2817         * doc/lispref/commands.texi (Classifying Events): Add
2818         cross-reference to "Motion Events".  (Bug#23756)
2820 2016-06-11  Stefan Monnier  <monnier@iro.umontreal.ca>
2822         * lisp/emacs-lisp/macroexp.el (macroexp--expand-all): Fix (bug#19704)
2824         Don't rewrite (funcall 'f ...) to (f ...).
2826 2016-06-11  Phillip Lord  <phillip.lord@russet.org.uk>
2828         Restore initial undo boundary with viper
2830         * lisp/emulation/viper-cmd.el (viper-adjust-undo): Add back last undo
2831           boundary if it has been removed.
2833         Addresses Bug#22295.
2835 2016-06-11  Phillip Lord  <phillip.lord@russet.org.uk>
2837         Revert "Fix viper undo breakage from undo-boundary changes"
2839         This reverts commit c0139e32f1f3bb287b04e02a69a7848d6a040003.
2841 2016-06-11  Ken Brown  <kbrown@cornell.edu>
2843         Fix dbus crash on 32-bit Cygwin
2845         * src/dbusbind.c (Fdbus__init_bus): Use make_save_pointer to store
2846         connection address.  (Bug#23741)
2847         (xd_lisp_dbus_to_dbus): Use XSAVE_POINTER to retrieve connection
2848         address.
2850 2016-06-10  Nicolas Petton  <nicolas@petton.fr>
2852         Bump version to 25.0.95
2854         * README:
2855         * configure.ac:
2856         * lisp/ldefs-boot.el:
2857         * msdos/sed2v2.inp: Bump Emacs version to 25.0.95.
2859 2016-06-10  Nicolas Petton  <nicolas@petton.fr>
2861         * etc/AUTHORS: Update the AUTHORS file
2863 2016-06-10  Nicolas Petton  <nicolas@petton.fr>
2865         add entries to authors.el
2867         * admin/authors.el (authors-renamed-files-alist): Add char-fold files.
2869 2016-06-10  Jules Tamagnan  <jtamagnan@gmail.com>
2871         Fix eldoc-related freezes in python mode
2873         * lisp/progmodes/python.el (python-eldoc-get-doc): New defvar.
2874         (python-eldoc-function-timeout)
2875         (python-eldoc-function-timeout-permanent): New defcustoms.
2876         (python-eldoc-function): If python-eldoc--get-doc-at-point times
2877         out, effectively turn off ElDoc in current buffer.  (Bug#23609)
2879 2016-06-09  Martin Rudalics  <rudalics@gmx.at>
2881         Handle mouse leaving initial window in `mouse-set-region' (Bug#23707)
2883         * lisp/mouse.el (mouse-set-region): If the mouse ends up in
2884         another window or on the menu bar, use `window-point' of
2885         selected window instead of `posn-point' of the event end
2886         (Bug#23707).
2888 2016-06-08  Marco Wahl  <marcowahlsoft@gmail.com>
2890         org.el: Fix bindings of < and > for calendar scrolling
2892         [This patch taken from upstream Org repo with 8b63dc9 dated
2893         2014-10-20 (Bug#23725).]
2894         * lisp/org/org.el (org-read-date-minibuffer-local-map):
2895         Switch to the current calendar API for scrolling the calendar.
2897 2016-06-08  Phillip Lord  <phillip.lord@russet.org.uk>
2899         Fix undo boundary in recursive edit (Bug#23632)
2901          * src/keyboard.c (recursive_edit_1): specbind
2902            undo-auto--undoably-changed-buffers.
2903          * lisp/simple.el (undo-auto--undoably-changed-buffers):
2904            fix docstring.
2906 2016-06-07  Glenn Morris  <rgm@gnu.org>
2908         Doc fixes re alist-get.  (Bug#23548)
2910         * lisp/subr.el (alist-get): Doc fix.
2911         * doc/lispref/lists.texi (Association Lists): Improve alist-get.
2913 2016-06-07  Glenn Morris  <rgm@gnu.org>
2915         * lisp/progmodes/python.el (inferior-python-mode):
2916         Avoid tabs.  (Bug#23616)
2918         * src/syntax.c (syms_of_syntax) <comment-end-can-be-escaped>: Doc fix.
2920 2016-06-07  Tino Calancha  <f92capac@gmail.com>
2922         * lisp/help-fns.el (describe-function-1):
2923         Fix handling of file name for aliases.  (Bug#21950)
2925         * lisp/emacs-lisp/cl-macs.el (cl-loop): Doc fix re "by".
2927         * doc/misc/cl.texi (Mapping over Sequences): Fix cl-notevery.
2929 2016-06-07  Paul Eggert  <eggert@cs.ucla.edu>
2931         Fix crash in syntax.c after GC
2933         Problem reported by Vincent Belaïche (Bug#23704).
2934         * src/syntax.c (skip_chars): Recompute pointers into the
2935         buffer after every call to update_syntax_table_forward,
2936         as it can GC.
2938 2016-06-06  Dmitry Gutov  <dgutov@yandex.ru>
2940         Improve squiggly heredoc support in non-SMIE Ruby mode
2942         * lisp/progmodes/ruby-mode.el (ruby-parse-partial): Support
2943         squiggly heredocs here, too (port from upstream).
2945 2016-06-06  Stephen Berman  <stephen.berman@gmx.net>
2947         Fix doc string quoting
2949         * lisp/files.el (shell-quote-wildcard-pattern):
2950         * lisp/progmodes/vhdl-mode.el (vhdl-mode):
2951         * lisp/subr.el (replace-regexp-in-string):
2952         * lisp/view.el (view-mode):
2953         * src/nsfns.m (syms_of_nsfns):
2954         * src/syntax.c (Fbackward_prefix_chars):
2955         Fix quoting problems in doc strings (Bug#23696).
2957 2016-06-05  Martin Rudalics  <rudalics@gmx.at>
2959         Fix mouse dragging of vertical dividers with scroll bars on left (Bug#23690)
2961         * lisp/mouse.el (mouse-drag-line): With scroll bars on the left
2962         adjust trailing edge of window on the left when dragging the
2963         vertical divider of the mode line.  (Bug#23690)
2965 2016-06-04  Eli Zaretskii  <eliz@gnu.org>
2967         * etc/PROBLEMS: Mention the link-time problems on FreeBSD 11.
2969         (Bug#23641)
2971 2016-05-31  Glenn Morris  <rgm@gnu.org>
2973         * test/automated/viper-tests.el (viper-test-undo-kmacro):
2974         Delete temp-file at end.
2976         * lisp/mail/footnote.el (footnote-mode): Fix doc typo.
2978         * doc/misc/smtpmail.texi (Encryption): Fix 2012-12-22 typo.
2980         * lisp/emacs-lisp/lisp-mode.el (lisp--mode-syntax-table):
2981         Fix typo.  (Bug#23654)
2983 2016-05-30  Stefan Monnier  <monnier@iro.umontreal.ca>
2985         * lisp/recentf.el (recentf-dialog-mode-map): Remove follow-link (bug#22434)
2987 2016-05-30  Bill Wohler  <wohler@newt.com>
2989         Correct cl-flet usage (Bug#22317)
2991         * lisp/mh-e/mh-compat.el: Rename mh-cl-flet to mh-flet and convert alias to
2992         macro using patch from Katsumi Yamaoka <yamaoka@jpl.org>.
2993         * lisp/mh-e/mh-thread.el (mh-thread-set-tables):
2994         * lisp/mh-e/mh-show.el (mh-gnus-article-highlight-citation):
2995         * lisp/mh-e/mh-mime.el (mh-display-with-external-viewer):
2996         (mh-mime-display, mh-press-button, mh-push-button):
2997         (mh-display-emphasis): Call mh-flet instead of mh-cl-flet.
2999 2016-05-30  Bill Wohler  <wohler@newt.com>
3001         Release MH-E manual version 8.6
3003         * doc/misc/mh-e.texi (VERSION, EDITION, UPDATED, UPDATE-MONTH):
3004         Update for release 8.6.
3006 2016-05-30  Mike Kupfer  <m.kupfer@acm.org>
3008         Update MH-E's documentation about HTML renderers
3010         * doc/misc/mh-e.texi (HTML): Remove the footnote with the minimum Gnus
3011         version (we are no longer trying to support multiple Emacs
3012         releases). Sort the table of HTML renderers by name (the previous
3013         ordering was based on a 10-year-old survey). Add shr and gnus-w3m to
3014         the table. Remove the entry for w3 (no longer available).  Update
3015         existing entries so that they are more consistent about what features
3016         are discussed, and to reflect recent testing (Debian 8). Small tweaks
3017         to existing text.
3019 2016-05-30  Dmitry Gutov  <dgutov@yandex.ru>
3021         Fx the we->the typo
3023         * doc/emacs/trouble.texi (Sending Patches):
3024         Fix the typo (bug#23657).
3026 2016-05-30  Paul Eggert  <eggert@cs.ucla.edu>
3028         Restore frames into the current display by default
3030         * lisp/desktop.el (desktop-restore-in-current-display):
3031         Default to t, not nil (Bug#23604).
3032         * etc/NEWS: Mention the change.
3034 2016-05-29  Stefan Monnier  <monnier@iro.umontreal.ca>
3036         * lisp/recentf.el (recentf-open-files-item): Quick fix for (bug#22434).
3038         etc/TODO: Remove out-of-place issue
3040 2016-05-29  Eli Zaretskii  <eliz@gnu.org>
3042         Clarify doc string of 'file-name-sans-extension'
3044         * lisp/files.el (file-name-sans-extension, file-name-extension):
3045         Clarify in the doc strings what is the extension, and which
3046         leading period doesn't count.  (Bug#23643)
3048 2016-05-28  Eli Zaretskii  <eliz@gnu.org>
3050         Fix the MSDOS build
3052         * msdos/sed1v2.inp (PAXCTL_dumped, PAXCTL_notdumped): Define to
3053         empty, and remove the lines which use them in recipes, as that
3054         causes weird error message from Make and breaks the MSDOS build.
3056 2016-05-28  Andreas Schwab  <schwab@linux-m68k.org>
3058         * lisp/progmodes/elisp-mode.el (elisp-function-argstring): Call
3059         substitute-command-keys to undo help--docstring-quote. (Bug#23634)
3061 2016-05-27  Eli Zaretskii  <eliz@gnu.org>
3063         * src/dired.c (Ffile_name_all_completions): Doc fix.  (Bug#23631)
3065 2016-05-27  Eli Zaretskii  <eliz@gnu.org>
3067         Fix infloop in 'number-sequence'
3069         * lisp/subr.el (number-sequence): Avoid overflow leading to an
3070         infloop.  (Bug#23627)
3072         * test/automated/subr-tests.el (number-sequence-test): New test.
3074 2016-05-26  Glenn Morris  <rgm@gnu.org>
3076         * lisp/emacs-lisp/find-func.el (find-function-library):
3078         Update for symbol-function no longer erroring.  (Bug#23626)
3080 2016-05-26  Glenn Morris  <rgm@gnu.org>
3082         * lisp/w32-fns.el (set-message-beep, w32-get-locale-info)
3083         (w32-get-valid-locale-ids): Improve declarations.
3085 2016-05-26  Vincent Belaïche  <vincentb1@users.sourceforge.net>
3087         Correct old cell name unbinding when renaming cell.
3089         Bug is to unbind old cell names when renaming a cell with
3090         'makunbound'. when the old cell name is of A1 type, then
3091         'kill-local-variable' must be used instead, so that only the current
3092         spreadsheet is affected. When the old cell name is a renamed cell,
3093         then 'ses--unbind-cell-name' must be used in order to remove the old
3094         name from the name hashmap.
3096         * lisp/ses.el (ses-rename-cell): check consistency of cell symbol from
3097         text-property and from array object. Instead of 'makunbound', use
3098         either 'ses--unbind-cell-name' or 'kill-local-variable' depending on
3099         whether the cell old name is a named cell or an A1 type cell
3101 2016-05-25  Vincent Belaïche  <vincentb1@users.sourceforge.net>
3103         Document problem: slow screen refresh on missing font.
3105         See discussion of bug#22519 for more on this.
3107 2016-05-25  Glenn Morris  <rgm@gnu.org>
3109         * admin/admin.el (add-release-logs): Basic check of existing ChangeLog.
3111 2016-05-25  Glenn Morris  <rgm@gnu.org>
3113         * build-aux/gitlog-to-emacslog: Handle empty generated ChangeLog.
3115         This is relevant for M-x add-release-logs right after M-x authors.
3117 2016-05-25  Glenn Morris  <rgm@gnu.org>
3119         * admin/admin.el (add-release-logs): Generate ChangeLog if needed.
3121 2016-05-25  Paul Eggert  <eggert@cs.ucla.edu>
3123         * doc/misc/texinfo.tex: Revert previous change (Bug#23611).
3125 2016-05-25  Glenn Morris  <rgm@gnu.org>
3127         * admin/authors.el (authors): First update the ChangeLog.
3129         * admin/make-tarball.txt: Related updates.
3131 2016-05-24  Dmitry Gutov  <dgutov@yandex.ru>
3133         Rename vc-stay-local back to vc-cvs-stay-local
3135         * lisp/vc/vc-cvs.el (vc-cvs-stay-local): Rename back from
3136         vc-stay-local (bug#19548).  Improve the docstring.
3137         (vc-cvs-stay-local-p): Update accordingly.
3139 2016-05-24  Glenn Morris  <rgm@gnu.org>
3141         * doc/emacs/files.texi (Comparing Files):
3142         * doc/emacs/trouble.texi (Sending Patches): Fix external xrefs.
3144         * doc/misc/eww.texi (Advanced): Fix xref.
3146 2016-05-24  Eli Zaretskii  <eliz@gnu.org>
3148         Fix cross-references between manuals
3150         * doc/misc/viper.texi (Viper Specials):
3151         * doc/misc/url.texi (Tramp):
3152         * doc/misc/sem-user.texi (Smart Jump):
3153         * doc/lispintro/emacs-lisp-intro.texi (Finding More):
3154         * doc/misc/efaq.texi (Replacing text across multiple files): Fix
3155         cross-references between manuals.  (Bug#23612)
3156         * doc/lispintro/emacs-lisp-intro.texi (etags): Node deleted: no
3157         longer relevant to Emacs Lisp programming.
3159 2016-05-24  Glenn Morris  <rgm@gnu.org>
3161         * doc/misc/vhdl-mode.texi (Sample Init File): Rename node to avoid ".".
3163         * admin/admin.el (add-release-logs): Also update etc/HISTORY.
3165 2016-05-24  Eli Zaretskii  <eliz@gnu.org>
3167         Avoid aborting due to errors in arguments of 'set-face-attribute'
3169         * src/xfaces.c (Finternal_set_lisp_face_attribute): Check the
3170         FRAME argument before using it.  This avoids gratuitous aborts in
3171         Emacs built with --enable-checking when the luser was unlucky
3172         enough to get the argument list in wrong order.
3174 2016-05-23  Phillip Lord  <phillip.lord@russet.org.uk>
3176         Add automated test for viper-tests.el
3178 2016-05-23  Phillip Lord  <phillip.lord@russet.org.uk>
3180         Fix viper undo breakage from undo-boundary changes
3182         * lisp/simple.el (undo-auto-disable-boundaries): New variable
3183         * lisp/emulation/viper-init.el (viper-undo-in-complex-command,
3184           viper-undo-needs-adjustment): Rename
3185           variable to reflect new purpose,
3186           (viper-buffer-undo-list-mark): Remove
3187         * lisp/emulation/viper-cmd.el (viper-set-complex-command-for-undo):
3188           Add undo using `undo-boundary', disable default undo-boundary
3189           addition.
3190         * lisp/emulation/viper-cmd.el
3191           (viper-complete-complex-command-for-undo,viper-adjust-undo):
3192           Change function name, remove old undo list manipulation.
3193         * lisp/emulation/viper-cmd.el (viper-undo,viper-repeat,
3194           viper-change-state-to-vi,viper-change-state):
3195           Update for function name change.
3197         Addresses Bug #22295
3199 2016-05-22  Kaushal Modi  <kaushal.modi@gmail.com>
3201         Fix reference to obsolete fn ps-eval-switch
3203         lpr-eval-switch is functionally the same as ps-eval-switch,
3204         which was obsoleted in 2cdeb903c57126d3ad5f0cbd72e182584b76ee29.
3205         So use that instead (Bug#19717).
3206         * lisp/printing.el (pr-switches): Use lpr-eval-switch instead of
3207         ps-eval-switch.
3209 2016-05-22  Paul Eggert  <eggert@cs.ucla.edu>
3211         Do not trash symlinks to init file
3213         If the user’s init file is a symbolic link, do not break the link
3214         when initializing the package system.  Problem reported by Jackson
3215         Hamilton (Bug#23050).
3216         * lisp/emacs-lisp/package.el (package--ensure-init-file):
3217         Bind find-file-visit-truename when visiting the init file, and
3218         save and restore the buffer name the way cus-edit does in a
3219         similar situation (Bug#454).
3221 2016-05-22  Alan Mackenzie  <acm@muc.de>
3223         Don't print the "decomposition" line for control chars in what-cursor-position
3225         This is a temporary workaround for bug #23594, where the decomposition line
3226         for linefeed corrupted the display on a Linux virtual terminal.
3228         * lisp/descr-text.el (describe-char): Remove `decomposition' from the list of
3229         character code properties printed for control characters.
3231 2016-05-22  Paul Eggert  <eggert@cs.ucla.edu>
3233         Bring back xterm pasting with middle mouse
3235         Problem reported by Jan Synáček.
3236         Solution suggested by Stefan Monnier (Bug#23519).
3237         * lisp/isearch.el (isearch-mode-map): Add a binding for xterm-paste.
3238         (xterm--pasted-text): New decl.
3239         (isearch-xterm-paste): New function.
3240         * lisp/term/xterm.el (xterm--pasted-text): New function,
3241         taken from xterm-paste internals.
3242         (xterm-paste): Use it.
3244 2016-05-22  Eli Zaretskii  <eliz@gnu.org>
3246         Provide workaround for xftfont rendering problem
3248         * src/xftfont.c (syms_of_xftfont) <xft-font-ascent-descent-override>:
3249         New variable.
3250         (xftfont_open): Use it to work around problems with rendering some
3251         fonts.  (Bug#23360)
3253 2016-05-21  Jun Hao  <jun_hao@aol.com>
3255         * lisp/desktop.el: Disable restore frameset if in non-graphic display.
3257         (Bug#17693)
3259 2016-05-21  Eli Zaretskii  <eliz@gnu.org>
3261         Mention GTK+ problems in etc/PROBLEMS
3263         * etc/PROBLEMS (GDK_SCALE, GDK_DPI_SCALE): Mention the possible
3264         problems this could create and the workaround.  (Bug#23587)
3266 2016-05-20  Artur Malabarba  <bruce.connor.am@gmail.com>
3268         * lisp/emacs-lisp/package.el (package-refresh-contents):
3270         Don't change the value of `package-check-signature'.
3271         (package-check-signature): Use `epg-find-configuration'
3272         instead of `executable-find'.
3274 2016-05-20  Daiki Ueno  <ueno@gnu.org>
3276         Revert "epg: Add a way to detect gpg1 executable for tests"
3278         This reverts commit d4ae6d7033b34e8b75c59aaf1584131e439ef2d5.
3280 2016-05-19  Eli Zaretskii  <eliz@gnu.org>
3282         Avoid errors with Czech and Slovak input methods
3284         * lisp/leim/quail/slovak.el (slovak, slovak-prog-1, slovak-prog-2)
3285         (slovak-prog-3): Remove the kp-* key bindings, they are not needed
3286         and cause errors in "C-u C-x =".
3287         * lisp/leim/quail/czech.el (czech, czech-qwerty, czech-prog-1)
3288         (czech-prog-2, czech-prog-3): Remove the kp-* key bindings.
3289         (Bug#23559)
3291 2016-05-19  Daiki Ueno  <ueno@gnu.org>
3293         epg: Add a way to detect gpg1 executable for tests
3295         Fixes bug#23561.
3297         * test/automated/epg-tests.el
3298         (epg-tests-program-alist-for-passphrase-callback): New
3299         constant.
3300         (epg-tests-find-usable-gpg-configuration): New function,
3301         renamed from `epg-tests-gpg-usable'.  All callers changed.
3302         (epg-tests-gpg-usable): Remove.
3304         * lisp/epg-config.el (epg-config--program-alist): Factor out
3305         constructor element to...
3306         (epg-config--configuration-constructor-alist): ...here.
3307         (epg-find-configuration): Rename FORCE argument to NO-CACHE,
3308         and add PROGRAM-ALIST argument.
3310 2016-05-18  Artur Malabarba  <bruce.connor.am@gmail.com>
3312         * lisp/emacs-lisp/package.el: Fix free variable warnings.
3314         (package--with-response-buffer): Replace two usages of
3315         `macroexp-let2*' with `let'.
3317 2016-05-18  Artur Malabarba  <bruce.connor.am@gmail.com>
3319         * lisp/emacs-lisp/package.el (package--with-response-buffer):
3321         Fix some macro locals leaking into body.  (Bug#22440)
3323         * test/automated/package-test.el (package-test-signed):
3324         Manually check all possible values of `package-check-signature'.
3326 2016-05-18  Eli Zaretskii  <eliz@gnu.org>
3328         Improve documentation of 'server-name'
3330         * doc/emacs/misc.texi (Emacs Server): Fix example of setting
3331         'server-name'.  Mention how to do that with daemon sessions.
3332         (Bug#23576)
3334 2016-05-18  Paul Eggert  <eggert@cs.ucla.edu>
3336         Modernize ASLR advice in etc/PROBLEMS
3338         * etc/PROBLEMS (Segfault during 'make'): Modernize advice for
3339         seccomp, Docker, and NetBSD (Bug#23529).
3341 2016-05-17  Juri Linkov  <juri@linkov.net>
3343         * lisp/char-fold.el: Rename from character-fold.el.
3345         * lisp/replace.el (replace-char-fold): Rename from replace-character-fold.
3346         * test/automated/char-fold-tests.el: Rename from character-fold-tests.el.
3347         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00529.html
3349 2016-05-17  Nicolas Petton  <nicolas@petton.fr>
3351         Bump version to 25.0.94
3353         * README:
3354         * configure.ac:
3355         * msdos/sed2v2.inp: Bump Emacs version to 25.0.94.
3357 2016-05-17  Nicolas Petton  <nicolas@petton.fr>
3359         etc/AUTHORS: Update the AUTHORS file
3361 2016-05-16  Alan Third  <alan@idiocy.org>
3363         Fix bug#23462: Crash when iconifying frame on OS X.
3365         * src/nsterm.m (x_iconify_frame): Block input while miniaturize is
3366         running.
3368 2016-05-16  Paul Eggert  <eggert@cs.ucla.edu>
3370         Avoid shrinking windows with Gtk+ 3.20.3
3372         Problem reported by Matthias Clasen (Bug#23144).
3373         This was fixed in a different way in master.
3374         Do not merge to master.
3375         * src/xterm.c (handle_one_xevent) [GTK_CHECK_VERSION (3, 20, 3)]:
3376         Do not call xg_frame_resized in the MapNotify case.
3378 2016-05-16  Eli Zaretskii  <eliz@gnu.org>
3380         Fix bug in default setting of 'ps-paper-type'
3382         * lisp/international/mule-cmds.el (set-locale-environment): Don't
3383         inherit the value of locale from previous examination of different
3384         environment variables, which didn't look at LC_PAPER, and so using
3385         that value would effectively ignore the setting of LC_PAPER.
3386         (Bug#23544)
3388 2016-05-13  Paul Eggert  <eggert@cs.ucla.edu>  (tiny change)
3390         Properly reject malformed or empty package sigs
3392         Problem report and fix by Lizzie Dixon (Bug#23513).
3393         * lisp/emacs-lisp/package.el (package--check-signature-content):
3394         Report an error if no good signatures OR if a fatal error.  Not AND.
3396 2016-05-13  Paul Eggert  <eggert@cs.ucla.edu>
3398         Remove buggy non-native image scrolling
3400         This never worked, and could cause infinite recursion.
3401         Problem reported by Glenn Morris (Bug#22465).
3402         * lisp/xwidget.el (xwidget-webkit-scroll-behavior): Remove.
3403         All uses removed.
3405 2016-05-13  Paul Eggert  <eggert@cs.ucla.edu>
3407         * doc/misc/texinfo.tex: Sync from gnulib.
3409 2016-05-12  Glenn Morris  <rgm@gnu.org>
3411         * lisp/emacs-lisp/find-func.el (find-feature-regexp)
3412         (find-alias-regexp): Fix :version.
3414 2016-05-11  Dmitry Gutov  <dgutov@yandex.ru>
3416         Do not mistake colon at the end of regexp for slash symbol
3418         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
3419         Check the parse state in the "Symbols with special characters"
3420         rule (bug#23515).
3422 2016-05-11  Dmitry Gutov  <dgutov@yandex.ru>
3424         Make package-install-from-buffer not move point
3426         * lisp/emacs-lisp/package.el (package-install-from-buffer):
3427         Use save-excursion here (bug#22616).
3429 2016-05-11  Dmitry Gutov  <dgutov@yandex.ru>
3431         Redo the fix for bug#21839
3433         * lisp/help.el (help-add-fundoc-usage): Undo the previous change.
3434         (help--make-usage-docstring): Escape newlines when printing.
3436         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
3437         Ditto (bug#21839).
3439 2016-05-10  Dmitry Gutov  <dgutov@yandex.ru>
3441         Don't treat JS spread as contination method call
3443         * lisp/progmodes/js.el (js--indent-operator-re):
3444         Allow only one dot (bug#23492).
3446         * test/indent/js.js (default): Add a corresponding example.
3448 2016-05-09  Dmitry Gutov  <dgutov@yandex.ru>
3450         Allow newlines inside cl function arglists
3452         * lisp/help.el (help-add-fundoc-usage): Allow newlines inside
3453         ARGLIST (bug#21839).
3455 2016-05-09  Dmitry Gutov  <dgutov@yandex.ru>
3457         Publicize cl--generic-all-functions
3459         * lisp/emacs-lisp/cl-generic.el (cl-generic-all-functions):
3460         Rename from cl--generic-all-functions.  Update both callers.
3462         * lisp/cedet/semantic/db-el.el
3463         (semanticdb-find-tags-external-children-of-type-method):
3464         And use it here (bug#23042).
3466 2016-05-09  Alan Mackenzie  <acm@muc.de>
3468         Add some "safe-local-variable" declarations for compatibility with master.
3470         These enable C files from the master repository to be visited in Emacs 25
3471         without generating irritating questions about configuration variable safety.
3473         * lisp/progmodes/cc-vars.el: (c-string-list-p, c-string-or-string-list-p): New
3474         functions.
3475         (c-noise-macro-names, c-noise-macro-with-parens-names): give the
3476         safe-local-variable property c-string-list-p.
3477         (c-macro-names-with-semicolon): give the safe-local-variable property
3478         c-string-or-string-list-p.
3480 2016-05-09  Lars Ingebrigtsen  <larsi@gnus.org>
3482         Fix doc string in `insert'
3484         * src/editfns.c (Finsert_and_inherit): The before-insertion
3485         markers do not move.
3486         (Finsert): Ditto.
3488 2016-05-08  Paul Eggert  <eggert@cs.ucla.edu>
3490         * doc/misc/emacs-mime.texi (time-date): Document now-builtins better.
3492 2016-05-07  Dmitry Gutov  <dgutov@yandex.ru>
3494         Say 'All results processed' at the end
3496         * lisp/progmodes/xref.el (xref--query-replace-1):
3497         Say 'All results processed' at the end if the user hadn't
3498         cancelled the process (bug#23284).
3500 2016-05-07  Eli Zaretskii  <eliz@gnu.org>
3502         Document automatic adjustment of process' logical window dimensions
3504         * doc/lispref/processes.texi (Process Buffers): Document
3505         'set-process-window-size' and
3506         'window-adjust-process-window-size-function'.
3508         * etc/NEWS: Mention the new functionality and variable.
3510         * src/process.c (Fset_process_window_size): Improve the doc string.
3512 2016-05-06  Michael Albinus  <michael.albinus@gmx.de>
3514         tramp-sh.el: Work around a stat bug (backport from master)
3516         * lisp/net/tramp-sh.el (tramp-get-remote-stat): Do not use
3517         stat versions which produce shell quoted output.  See also
3518         coreutils Bug#23422.
3520         (cherry picked from commit 6aad36ace9953b9672b13be68416d205532d5e59)
3522 2016-05-05  Paul Eggert  <eggert@cs.ucla.edu>
3524         Doc fixes for fclist and grep
3526         A newline is needed between two fc-list calls.
3527         egrep and fgrep have been withdrawn from POSIX,
3528         so document grep -E and grep -F instead.
3530 2016-05-05  Paul Eggert  <eggert@cs.ucla.edu>
3532         Minor doc fixes for quoting
3534         * doc/lispref/control.texi (Signaling Errors):
3535         * doc/lispref/display.texi (Displaying Messages):
3536         Don’t say that formats “generate”.  Try to word more clearly.
3537         * etc/NEWS: Coalesce near-duplicate entries.
3539 2016-05-05  Dmitry Gutov  <dgutov@yandex.ru>
3541         `nreverse' the marker pairs list
3543         * lisp/progmodes/xref.el (xref--buf-pairs-iterator): `nreverse'
3544         the marker pairs list for each buffer before returning.
3546 2016-05-04  Dmitry Gutov  <dgutov@yandex.ru>
3548         Use save-excursion in xref-location-marker more
3550         * lisp/progmodes/elisp-mode.el (xref-location-marker): Use
3551         save-excursion, in order not to alter the value of point if the
3552         buffer is currently open in the background (problem reported by
3553         Robert Weiner).
3555         * lisp/progmodes/etags.el (xref-location-marker): Same.
3557 2016-05-04  Dmitry Gutov  <dgutov@yandex.ru>
3559         shell-quote-argument DIR when appropriate
3561         * lisp/progmodes/project.el (project-file-completion-table):
3562         `shell-quote-argument' DIR as well.
3564         * lisp/progmodes/xref.el (xref--rgrep-command): Pass DIR through
3565         `shell-quote-argument' (bug#23453).  Thanks for Kaushal Modi for
3566         pointing out the problem.  Assert that DIR doesn't start with `~'.
3568 2016-05-04  Dmitry Gutov  <dgutov@yandex.ru>
3570         Rework xref-query-replace-in-results
3572         * lisp/progmodes/xref.el (xref-query-replace-in-results): Collect
3573         all xrefs from the buffer first, then delegate most of the
3574         processing to the value returned by xref--buf-pairs-iterator.
3575         (xref--buf-pairs-iterator): New function.  Return an "iterator"
3576         which partitions returned markers into buffers, and only processes
3577         markers from one buffer at a time.  When an xref is out of date,
3578         skip it with a message instead of signaling error (bug#23284).
3579         (xref--outdated-p): Extract from xref--buf-pairs-iterator.  Trim
3580         CR from both strings before comparing.
3581         (xref--query-replace-1): Remove the variable current-buf, no need
3582         to track it anymore.  Simplify the filter-predicate and search
3583         functions accordingly.  Iterate over buffer-markers pairs returned
3584         by the iterator, and call `perform-replace' for each of them.  Use
3585         multi-query-replace-map (bug#23284).  Use `switch-to-buffer' every
3586         time after the first, in order not to jump between windows.
3588         * test/automated/xref-tests.el
3589         (xref--buf-pairs-iterator-groups-markers-by-buffers-1)
3590         (xref--buf-pairs-iterator-groups-markers-by-buffers-2)
3591         (xref--buf-pairs-iterator-cleans-up-markers): New tests.
3593 2016-05-04  Juri Linkov  <juri@linkov.net>
3595         * lisp/replace.el (query-replace-read-from): Use minibuffer-with-setup-hook
3597         to set minibuffer-local value of text-property-default-nonsticky.
3598         (Bug#23418, bug#23127)
3600 2016-05-04  Stephen Berman  <stephen.berman@gmx.net>
3602         Fix todo-mode bug involving archived items (bug#23447)
3604         * lisp/calendar/todo-mode.el (todo-jump-to-category): When jumping
3605         from Todo Categories mode to a category with only archived items
3606         and todo-skip-archived-categories is non-nil, make sure the
3607         archive file buffer is in Todo Archive mode to prevent
3608         todo-category-select from raising an error, and don't set
3609         todo-current-todo-file, since that makes todo-show display the
3610         archived category.  Remove a no-op call to kill-buffer, which is
3611         already called in todo-insert-category-line.
3613 2016-05-03  Dmitry Gutov  <dgutov@yandex.ru>
3615         Handle "empty line" regexp in xref searches
3617         * lisp/progmodes/xref.el (xref--collect-matches-1): Stop after one
3618         match if re-search-forward doesn't move point (bug#23426).
3620         * test/automated/xref-tests.el
3621         (xref-collect-matches-finds-an-empty-line-regexp-match):
3622         Uncomment test.
3624 2016-05-03  Dmitry Gutov  <dgutov@yandex.ru>
3626         Add tests for xref-collect-matches
3628         * test/automated/xref-tests.el: New file.  Add tests for
3629         xref-collect-matches.
3631 2016-05-03  Dmitry Gutov  <dgutov@yandex.ru>
3633         Use grep-find-ignored-directories instead of vc-directory-exclusion-list
3635         * lisp/dired-aux.el (dired-do-find-regexp):
3636         Use grep-find-ignored-directories instead of
3637         vc-directory-exclusion-list.  The result should be functionally
3638         similar (the former uses the latter as the default value), but it
3639         should be more consistent and appropriate WRT user
3640         customizations.
3641         (dired-do-find-regexp-and-replace): Update the docstring.
3643         * lisp/dired.el: Update the corresponding autoloads.
3645         * doc/emacs/dired.texi (Operating on Files): Update the
3646         documentation accordingly.
3648 2016-05-03  Dmitry Gutov  <dgutov@yandex.ru>
3650         Clear buffer-undo-list when showing xrefs
3652         * lisp/progmodes/xref.el (xref--show-xref-buffer): Clear
3653         buffer-undo-list and temporarily bind it to t while rendering the
3654         buffer contents.
3656 2016-05-03  Alan Mackenzie  <acm@muc.de>
3658         Note the quote translation in `message' in section "incompatible changes".
3660         * etc/NEWS: Note that `message' translates quotes, that the translation
3661         cannot be disabled, and that `format' can be used to get the old
3662         behavior back.
3664 2016-05-03  Paul Eggert  <eggert@cs.ucla.edu>
3666         * etc/NEWS: Mention (message "%s" (format ...)).
3668 2016-05-03  Lars Ingebrigtsen  <larsi@gnus.org>
3670         (Common Keywords): Correct what missing :group means
3672         * doc/lispref/customize.texi (Common Keywords): Correct what
3673         missing :group means.
3675 2016-05-03  Eli Zaretskii  <eliz@gnu.org>
3677         Improve documentation of Dired's 'A' and 'Q' commands
3679         * lisp/dired-aux.el (dired-do-find-regexp)
3680         (dired-do-find-regexp-and-replace): Mention
3681         'grep-find-ignored-files' and 'vc-directory-exclusion-list', and
3682         also the fact that REGEXP should be palatable by Grep.  (Bug#23426)
3683         * lisp/dired.el: Update the corresponding autoload forms.
3685         * doc/emacs/dired.texi (Operating on Files): Mention
3686         'grep-find-ignored-files' and 'vc-directory-exclusion-list'.
3687         (Bug#23429)
3689 2016-05-03  Paul Eggert  <eggert@cs.ucla.edu>
3691         Doc fixes for quoting
3693         * doc/emacs/text.texi, doc/lispintro/emacs-lisp-intro.texi:
3694         * doc/lispref/control.texi, doc/lispref/display.texi:
3695         * doc/lispref/help.texi, doc/lispref/strings.texi, lisp/subr.el:
3696         * src/callint.c, src/doprnt.c, src/editfns.c:
3697         Document quoting a bit more systematically.
3698         Problem reported by Alan Mackenzie (Bug#23425).
3700 2016-05-02  Lars Ingebrigtsen  <larsi@gnus.org>
3702         posnp doc clarification
3704         * lisp/subr.el (posnp): Mention that a posn object is returned
3705         from `event-start' (bug#18211).
3707 2016-05-02  Lars Ingebrigtsen  <larsi@gnus.org>
3709         Mention what a missing :group does
3711         * doc/lispref/customize.texi (Common Keywords): Document that
3712         a missing :group reuses the group from the preceding item (bug#21601).
3714 2016-05-02  Eli Zaretskii  <eliz@gnu.org>
3716         Fix documentation of dired-aux search/replace commands
3718         * lisp/dired-aux.el (dired-do-find-regexp)
3719         (dired-do-find-regexp-and-replace): Doc fixes.  (Bug#23429)
3720         * lisp/dired.el: Update the corresponding autoload forms.
3722 2016-05-02  Paul Eggert  <eggert@cs.ucla.edu>
3724         Fix quoting problem in cc-engine debug message
3726         * lisp/progmodes/cc-engine.el (c-replay-parse-state-state):
3727         Use "%s" format to pass through ‘'’ unscathed (Bug#23425), and
3728         likewise for ‘`’, and ‘%’.
3730 2016-05-02  Philipp Stephani  <phst@google.com>
3732         Add electric-quote-string unit test
3734         * test/automated/electric-tests.el (electric-quote-string): New test.
3736 2016-05-02  Paul Eggert  <eggert@cs.ucla.edu>
3738         Don’t electrically quote ‘'’ in Python
3740         Problem reported by Philipp Stephani (Bug#23387).
3741         * lisp/electric.el (electric-quote-post-self-insert-function):
3742         Do not requote a string starter or ender.
3744 2016-05-02  Dmitry Gutov  <dgutov@yandex.ru>
3746         `nreverse' Grep hits before passing them to xref--convert-hits
3748         * lisp/progmodes/xref.el (xref-collect-matches): `nreverse' hits
3749         before passing them to xref--convert-hits.  Fixes a regression
3750         from cc0b7132.
3752 2016-05-01  Paul Eggert  <eggert@cs.ucla.edu>
3754         * doc/misc/texinfo.tex: Sync from gnulib.
3756 2016-05-01  Juri Linkov  <juri@linkov.net>
3758         * lisp/isearch.el (isearch-forward-symbol-at-point): Add isearch-push-state.
3760         (Bug#23410)
3762 2016-05-01  Michael Albinus  <michael.albinus@gmx.de>
3764         tramp.texi: Revert last change due to backward compatibility
3766         (cherry picked from commit 910f9a0a936aacbffe9b9b790d7f698dfd287aac)
3768 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3770         cua-prefix-override-inhibit-delay doc fix
3772         * lisp/emulation/cua-base.el
3773         (cua-prefix-override-inhibit-delay): Typo fix in doc string
3774         (bug#23401).
3776         (cherry picked from commit 2b4c099822811ede787fc6e575bfbb17b3cc0681)
3778 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3780         global-eldoc-mode doc fix
3782         * lisp/emacs-lisp/eldoc.el (global-eldoc-mode): Be more
3783         specific about what "applicable" means (bug#23071).
3785         (cherry picked from commit 25e95b5dd8cd92e03788e589bf99a4b399f03114)
3787 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3789         normal-top-level-add-subdirs-to-load-path doc fix
3791         * lisp/startup.el (normal-top-level-add-subdirs-to-load-path):
3792         Doc fix (bug#21962).
3794         (cherry picked from commit 28aaa6d20586e3330a23b017a65e56dd6461c003)
3796 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3798         isearch-search-fun-function doc tweak
3800         * lisp/isearch.el (isearch-search-fun-function): Mention what
3801         the STRING parameter is (bug#21552).
3803         (cherry picked from commit cafc2a5940cdc523cfea6dcf1cf540f48367c62a)
3805 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3807         Fill some imenu--index-alist doc lines
3809         * lisp/imenu.el (imenu--index-alist): Fill some doc lines (bug#21269).
3811         (cherry picked from commit 4b7bb8f596550628eaa83b82c0f7eabe59a84964)
3813 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3815         Fmarker_position doc string clarification
3817         * src/marker.c (Fmarker_position): Clarify the doc string
3818         (bug#21231).
3820         (cherry picked from commit eeac7c57273cec3f9408b18392dd2bafe3be4450)
3822 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3824         Further define-obsolete-* doc fixups
3826         * lisp/emacs-lisp/byte-run.el (define-obsolete-face-alias):
3827         Fix up last change.
3828         (define-obsolete-variable-alias): Ditto.
3830         (cherry picked from commit 28e9f4390d8391c2c36be4ef515cf3a2c679a5a5)
3832 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3834         Describe WHEN in all the define-obsolete- macros
3836         * lisp/emacs-lisp/byte-run.el (define-obsolete-face-alias):
3837         Say more verbosely what WHEN is (bug#21225).
3838         (define-obsolete-function-alias): Describe the WHEN parameter.
3839         (define-obsolete-variable-alias): Ditto.
3841         (cherry picked from commit 247c388f160581d207e41ca5926990bbf69d4a0f)
3843 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3845         Mention with-silent-modifications in the lispref manual
3847         * doc/lispref/text.texi (Changing Properties): Document
3848         with-silent-modifications (bug#21171).
3850         (cherry picked from commit fcd0d854eef6e439d51e8f07cf734d5e34e502b3)
3852 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3854         with-silent-modifications doc clarification
3856         * lisp/subr.el (with-silent-modifications): Rearrange the doc
3857         string a bit so that the most pertinent information is at the
3858         top (bug#21171).
3860         (cherry picked from commit e0e70f030e69d9696a963a86f5f7caaff4df06eb)
3862 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3864         clear-visited-file-modtime doc string fix
3866         * lisp/files.el (clear-visited-file-modtime): Fix possibly
3867         confusing doc string wording (bug#21169).
3869         (cherry picked from commit 1aaeaf1450756a71c9254a2a5b174c72084ca67a)
3871 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3873         Document mode mode line variables
3875         * doc/lispref/modes.texi (Mode Line Variables): Document
3876         `mode-line-front-space, `mode-line-misc-info',
3877         `mode-line-end-spaces' (bug#21014).
3879         (cherry picked from commit bf7a630b0a5d3900f2afb0e7a881ce62e2b9f935)
3881 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3883         Add a cross ref to Optional Mode Line
3885         * doc/lispref/modes.texi (Mode Line Variables): Add a cross
3886         reference to the Emacs mode line node that explains things
3887         like `display-time-string' (bug#21002).
3889         (cherry picked from commit a3151a28789f413af73b14fbba557b2a587fca53)
3891 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3893         Add a doc string to display-time-string
3895         * lisp/time.el: Add a doc string to `display-time-string',
3896         because it's referred to in the manual, and is too mysterious
3897         otherwise (bug#21002).
3899         (cherry picked from commit 45559c584e5a4ddeed1539b028b50b95baa372f8)
3901 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3903         custom-buffer-style doc fix
3905         * lisp/cus-edit.el (custom-buffer-style): Document the `tree'
3906         value (bug#20724).
3908         (cherry picked from commit bcf0291d0cd02095b0809b1eb91f1e5c5c2ac5e3)
3910 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3912         Rearrange the doc of query-replace slightly
3914         * lisp/replace.el (query-replace): Move the mention of the
3915         interactive prefix arg earlier so that users can find it
3916         (bug#20654).
3918         (cherry picked from commit bcc10761c3b968fa4534718116a0a601ed7da389)
3920 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3922         apropos-print doc fix
3924         * lisp/apropos.el (apropos-print): Document the undocumented
3925         parameters (bug#20520).
3927         (cherry picked from commit 0714d7387812a151f59993ac77c7321724ef79b1)
3929 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3931         completion-table-with-predicate doc string fix
3933         * lisp/minibuffer.el (completion-table-with-predicate): t ->
3934         non-nil in the doc string (bug#20460).
3936         (cherry picked from commit b6a4d162208f239bc7804696d611ae52c686f138)
3938 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3940         Fill the completion-table-with-predicate doc string
3942         * lisp/minibuffer.el (completion-table-with-predicate): Fill
3943         the doc string (bug#20460).
3945         (cherry picked from commit 207a31432c1ed8b548003a3e4af32c49aa3441e9)
3947 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3949         replace-match-maybe-edit doc clarification
3951         * lisp/replace.el (replace-match-maybe-edit): Say what
3952         MATCH-DATA is (bug#20304).
3954         (cherry picked from commit 139874ba53c2e2de9868f8e5234d6ea2bcb97af8)
3956 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3958         add-timeout doc fix
3960         * lisp/emacs-lisp/timer.el (add-timeout): Mention the return
3961         value (bug#20181).
3963         (cherry picked from commit 921b40476f597c84d7c34aa289cd43caeb389c4a)
3965 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3967         Extremely minor doc fix in Choosing Window
3969         * doc/lispref/windows.texi (Choosing Window): There's only one
3970         action alist, I think (bug#20158).
3972         (cherry picked from commit 6c7e7f421d02d9290d6d1d85320737371160aef7)
3974 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3976         Transform mentions of `eval-after-load' to `with-eval-after-load'
3978         * doc/lispref/loading.texi (Hooks for Loading): Update text to
3979         not mention `eval-after-load' (bug#20038).
3981         (cherry picked from commit 9392193be56eebdfac702a0bbb5e954088371c7a)
3983 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3985         cursor-type doc fix
3987         * src/buffer.c (syms_of_buffer): Mention that cursor-type's
3988         WIDHT/HEIGHT can't exceed the frame char size (bug#19215).
3990         (cherry picked from commit 77c5f4554ebb3b7c7d49bc881e45a550f6c93987)
3992 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
3994         Add a link from Tool Bar to Images
3996         * doc/lispref/keymaps.texi (Tool Bar): Add a link to the
3997         Images node (bug#19722).
3999         (cherry picked from commit da5d0786163a91400eced4fddba4a92b652458d1)
4001 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4003         (default-mode-line-format): More explicit obsolete info
4005         * lisp/subr.el (default-mode-line-format): Be more explicit in
4006         how default values are now handled (bug#19424).
4008         (cherry picked from commit 9dc5f6d830e72420dc4d41c8f6ca1ca6b28609c0)
4010 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4012         Fcompare_buffer_substrings doc string clarification
4014         * src/editfns.c (Fcompare_buffer_substrings): Extremely minor
4015         doc string clarification (bug#19255).
4017         (cherry picked from commit aa692acbb598a1cc8219ed7a87dde25fd7626ba5)
4019 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4021         insert-file-contents-literally doc fix
4023         * lisp/files.el (insert-file-contents-literally): Say that the
4024         parameters are explained in the other function (bug#18317).
4026         (cherry picked from commit b6481b19bc9592492b1f70dfecb4de6256f537fe)
4028 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4030         Fix custom types for cursor-in-non-selected-windows
4032         * lisp/cus-start.el (standard): Use the same custom types for
4033         cursor-in-non-selected-windows as for cursor-type (bug#19214).
4035         (cherry picked from commit b66bc0cced786e0320e1c3b0758bd3c434d4e8b5)
4037 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4039         Doc clarification to mwheel-scroll
4041         * lisp/mwheel.el (mwheel-scroll): Mention that the restriction
4042         does not apply to Windows (bug#19209).
4044         (cherry picked from commit 696052b5fdfbc5c25dff3c6b081aebe70f6d06c7)
4046 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4048         Clarify the doc of eval-expression-print-format
4050         * lisp/simple.el (eval-expression-print-format): Doc
4051         clarification (bug#19114).
4053         (cherry picked from commit cd193a871f5a8e1c81ba86fc398ac382fa814383)
4055 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4057         Explictly explain that package-initialize loads the packages
4059         * lisp/emacs-lisp/package.el (package-initialize): Be explicit
4060         in saying that `package-initialize' obviates adjusting the
4061         path or requiring the packages, as this is a question that
4062         apparently comes up now and then (bug#18829).
4064         (cherry picked from commit 619e0aedb2f3dbfe6821ac34e2d25b4e5c181117)
4066 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4068         Have the doc strings of `load-path' and `require' mention each other
4070         * src/fns.c (Frequire): Mention `load-path' and fill the doc
4071         string (bug#18829).
4073         * src/lread.c (syms_of_lread): Mention that `require' uses
4074         `load-path'.
4076         (cherry picked from commit 3eca9a03816f95da0030665223c0b5262f223ba7)
4078 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4080         Doc fix for insert-pair-alist
4082         * lisp/emacs-lisp/lisp.el (insert-pair-alist): Say what
4083         COMMAND-CHAR is (bug#18809).
4085         (cherry picked from commit 2824c587e9749a8f350f1d3dddd65176b4561dcb)
4087 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4089         Move doc of backup-directory-alist to the Backup node
4091         * doc/emacs/files.texi (Backup): Move the documentation of
4092         `backup-directory-alist' here from the "Single or Numbered
4093         Backups" node, because it doesn't seem to have much to do with
4094         numbering (bug#18692).
4096         (cherry picked from commit e77b8d84b4161f2cf8720dec2bf44a3e50134398)
4098 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4100         Tiny doc clarification for create-fontset-from-fontset-spec
4102         * lisp/international/fontset.el (create-fontset-from-fontset-spec):
4103         Clarify what the optional part is (bug#18686).
4105         (cherry picked from commit c05d186455ce9907eeb6b21ea4227e453996c681)
4107 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4109         Fill the doc string of font-lock-keywords
4111         * lisp/font-lock.el (font-lock-keywords): Fill the lines and
4112         reorganise some explanations (bug#21427).
4114         (cherry picked from commit c05716d3a26ea7518b89eacfccaf70c9d0731df7)
4116 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4118         Doc fix for font-lock-remove-keywords
4120         * lisp/font-lock.el (font-lock-remove-keywords): Add a link to
4121         `font-lock-add-keywords' to describe KEYWORDS (bug#18634).
4123         (cherry picked from commit bc00dcf12983cd399127d0eea39647f29778eb02)
4125 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4127         Clarify whitespace-style doc string
4129         * lisp/whitespace.el (whitespace-style): Doc clarification
4130         (bug#18296).
4132         (cherry picked from commit d96c720d0cca7c9ffbb4c712ad315bb707d6625c)
4134 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4136         Doc fixed for next-error-buffer-p
4138         * lisp/simple.el (next-error-buffer-p): Clarify doc string
4139         (bug#18202).
4141         (cherry picked from commit a10eb168cc96db9f0dab2d75550cbd8f08be2363)
4143 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4145         Tiny doc fix
4147         * src/fileio.c (Ffile_accessible_directory_p): Tiny doc fix
4148         (and fill) (bug#18201).
4150         (cherry picked from commit 2ef0040e2363a669d9b93df935d31c98fa130132)
4152 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4154         Doc fix
4156         * src/keymap.c (Fdefine_prefix_command): Clarify doc string
4157         slightly (bug#18092).
4159         (cherry picked from commit 6b769c81d024f7eeb90b167e7df6f87d859614d4)
4161 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4163         delsel doc touch ups
4165         * lisp/delsel.el (delete-selection-helper): Use non-nil
4166         instead of t and clarify function return values (bug#18089).
4168         (cherry picked from commit d7a5b5be9a5869bcd233434ec3103dd1976d7df7)
4170 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4172         Doc fixes for menu-bar.el
4174         * lisp/menu-bar.el (clipboard-kill-ring-save): Describe the
4175         REGION parameter (bug#18028).
4176         (clipboard-kill-region): Ditto.
4178         (cherry picked from commit 33d2c67bff0992ecbc0fe38556683242b9d1a4ae)
4180 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4182         Doc fix
4184         * lisp/rect.el (delete-whitespace-rectangle): Doc fix (bug#18026).
4186         (cherry picked from commit 6baca4911ec901579749dbf7596011d90fea3781)
4188 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4190         Minor doc clarification
4192         * lisp/subr.el (y-or-n-p): Document the return value from "n"
4193         (bug#18024).
4195         (cherry picked from commit 5d1f3192d484edee92caa46cd7d699da3e920259)
4197 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4199         Fill font-lock-mode doc string
4201         * lisp/font-core.el (font-lock-mode): Fill the text to make it
4202         narrower (bug#18008).
4204         (cherry picked from commit 27abf372836532c57be2e9e3ed23413729cc07fc)
4206 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4208         Wrap the auto-generated doc string
4210         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode): Wrap a
4211         string to make it less likely that we get overlong lines
4212         (bug#17999).
4214         (cherry picked from commit 323b69664914d687fd4b48593479cea223dfbcb4)
4216 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4218         Clarify hi-lock-find-patterns
4220         * lisp/hi-lock.el (hi-lock-find-patterns): Doc clarification
4221         (bug#17989).
4223         (cherry picked from commit 552e90ce7dff3a7107243fdf71c4de3af443e13a)
4225 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4227         Add a doc string to `winner-mode'
4229         * lisp/winner.el (winner-mode): Add a doc string based on the
4230         comments in the file (bug#17716).
4232         (cherry picked from commit 2c3ab9b6e39a3d600e7d82deacc24effaec051bb)
4234 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4236         Doc fix for align-newline-and-indent
4238         * lisp/align.el (align-newline-and-indent): Mention that
4239         alignment is done by `align' (bug#17707).
4241         (cherry picked from commit 340a224ec3e01706112a07164da9a9f3f369a5aa)
4243 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4245         Doc fix for `kbd'
4247         * lisp/subr.el (kbd): Describe more fully the format of the
4248         parameter (bug#17039).
4250         (cherry picked from commit 3a33afe25d8518f194fa4706eaccdb2a786a0348)
4252 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4254         Doc tweak
4256         * lisp/simple.el (use-empty-active-region): Doc tweak.
4257         There's only one region (bug#16513).
4259         (cherry picked from commit 35fb7897f161d5e5a87e039dc1e427094640b0c8)
4261 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4263         Link from (emacs)Exiting to (lisp)Killing Emacs
4265         * doc/emacs/entering.texi (Exiting): Link to the lispref
4266         manual for further customisations (bug#15445).
4268         (cherry picked from commit bc5f27aa099cdde02ca66e71501b89300685ab28)
4270 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4272         find-lisp doc touchups
4274         * lisp/find-lisp.el (find-lisp-format): Copy over the doc
4275         string (bug#15047).
4276         (find-lisp-find-files): Clarify doc.
4278         (cherry picked from commit e4c7657b0d1a31d64ca24bc64b5480cd7687e332)
4280 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4282         Don't have the manual claim that it lists all CL incompatibilities
4284         * doc/misc/cl.texi (Common Lisp Compatibility): The list of
4285         incompatibilities isn't exhaustive, so don't say that it is
4286         (bug#15171).
4288         (cherry picked from commit fb685bc91a72508c97ce7e30f970d4157677f371)
4290 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4292         Change all occurrences of "Mouse-[0-9]" to "mouse-[0-9]"
4294         * doc/emacs/*.texi: Change all occurrences of "Mouse-[0-9]" to
4295         "mouse-[0-9]".  These are case sensitive, and the keys are lower case
4296         (bug#14554).
4298         (cherry picked from commit e4c26271f2c2fe08f8490e25c63a436ab2a804ca)
4300 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4302         Doc string change to enable-recursive-minibuffers
4304         * src/minibuf.c (syms_of_minibuf): Mention
4305         minibuffer-depth-indicator-mode in the doc string to
4306         enable-recursive-minibuffers (bug#14147).
4308         (cherry picked from commit 23ba488a5e8290c4de91e0ff4161641efa364c0d)
4310 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4312         Clarify the `interactive' doc string slightly
4314         * src/callint.c (Finteractive): Clarify the doc string slightly
4315           (bug#14577).
4317         (cherry picked from commit cd993be60da2d12db0d390001373d486c1091c47)
4319 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4321         Clarify some doc strings
4323         * lisp/emacs-lisp/syntax.el (syntax-propertize-via-font-lock):
4324         Clarify doc string (bug#8693).
4325         (syntax-propertize): Clarify doc string.
4327         (cherry picked from commit ad3ef417f3c40f086de9c547d6272e5685595e42)
4329 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4331         Add some concept index entries for custom types
4333         * doc/lispref/customize.texi (Composite Types): Add concept
4334         index entries for restricted-sexp, radio and choice (bug#7385).
4336         (cherry picked from commit 388bb723fa078158d3148de05e942f9c01e95dd8)
4338 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4340         Mention `lisp-indent-function' in the lispref manual
4342         * doc/lispref/macros.texi (Indenting Macros): Mention
4343         `lisp-indent-function' (bug#3393).
4345         (cherry picked from commit a1627691a896b2afaa264f93534178bc763564c9)
4347 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
4349         Clarify doc string of internal compilation function
4351         * lisp/progmodes/compile.el (compilation-get-file-structure):
4352         Clarify doc string (bug#3137).
4354         (cherry picked from commit 123191decb7428db3b32a6c01631fa755088393a)
4356 2016-05-01  Paul Eggert  <eggert@cs.ucla.edu>
4358         Use ‘T *restrict’ proto, not ‘T[restrict]’
4360         * src/fns.c (sort_vector_copy): Use a different way to attempt to
4361         work around GCC 3.0-and-earlier incompatibility with C99, one that
4362         does not have problems with modern non-GCC compilers.
4364 2016-05-01  Eli Zaretskii  <eliz@gnu.org>
4366         Fix documentation of 'url-retrieve-synchronously'
4368         * doc/misc/url.texi (Retrieving URLs): Update argument list of
4369         'url-retrieve-synchronously'.  (Bug#23411)
4371 2016-05-01  Eli Zaretskii  <eliz@gnu.org>
4373         * lisp/url/url.el (url-retrieve-synchronously): Doc fix.  (Bug#23411)
4375 2016-04-30  Leo Liu  <sdl.web@gmail.com>
4377         Fix last change to isearch-update (bug#23406)
4379         * lisp/isearch.el (isearch-update): Remove (setq cursor-sensor-inhibit
4380           nil) ie remove the original (unless (boundp 'cursor-sensor-inhibit)
4381           ...) form.
4383 2016-04-30  Leo Liu  <sdl.web@gmail.com>
4385         Autoload cursor-sensor-inhibit (bug#23406)
4387         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor-inhibit): Autoload.
4388         * lisp/isearch.el (isearch-update): Remove boundp check.
4390 2016-04-30  Phillip Lord  <phillip.lord@newcastle.ac.uk>
4392         org-map-entries: Fix org-agenda-prepare-buffers call
4394         * lisp/org/org.el (org-map-entries): Check that buffer-file-name is non-nil
4395           before passing to org-agenda-prepare-buffers.
4397         This is a backport of commit 44c8cd7136e3fcd1e6bfa08895cac437b7a691fa
4398         from upstream org-mode. Addresses bug #23365.
4400 2016-04-30  Eli Zaretskii  <eliz@gnu.org>
4402         Followup for last commit in the user manual
4404         * doc/emacs/basic.texi (Moving Point): Clarify that
4405         set-goal-column has buffer-local effect.  (Bug#23405)
4407 2016-04-30  Eli Zaretskii  <eliz@gnu.org>
4409         Improve doc string of 'set-goal-column'
4411         * lisp/simple.el (set-goal-column): Doc fix.  (Bug#23405)
4413 2016-04-30  Eli Zaretskii  <eliz@gnu.org>
4415         Fix the MSDOS build
4417         * config.bat:
4418         * msdos/sedlisp.inp:
4419         * msdos/sedlibmk.inp:
4420         * msdos/sedleim.inp:
4421         * msdos/sedadmin.inp:
4422         * msdos/sed6.inp:
4423         * msdos/sed3v2.inp:
4424         * msdos/sed2v2.inp:
4425         * msdos/sed1v2.inp: Adapt to Emacs 25.
4427         * src/process.c (remove_slash_colon): Move out of "#ifdef
4428         subprocesses" block, as it its called unconditionally.  Move
4429         ADD_SUBFEATURE calls into "#ifdef subprocesses" block, as they
4430         reference variables only defined in that block.
4431         * src/msdos.h: Provide prototypes for IT_set_frame_parameters,
4432         faccessat, msdos_fatal_signal, syms_of_msdos, pthread_sigmask,
4433         dos_keysns, dos_keyread, run_msdos_command, and
4434         syms_of_win16select, to avoid compiler warnings.
4435         * src/msdos.c (SYS_ENVIRON): Define to either '_environ' or
4436         'environ', depending on the DJGPP version.
4437         Remove declarations of externally-visible Lisp objects, like
4438         Qbackground_color and Qreverse.
4439         (run_msdos_command): First argument is not signed, not unsigned.
4440         Use SYS_ENVIRON.
4441         (sys_select): Use 'timespec_cmp' instead of 'timespec_sign', as
4442         the latter doesn't work when 'time_t' is an unsigned data type.
4443         This caused idle timers to behave incorrectly: they only fired
4444         after a keyboard input event.
4445         * src/frame.c (adjust_frame_size) [MSDOS]: Account for
4446         FRAME_TOP_MARGIN that isn't counted in the frame's number of
4447         lines, but dos_set_window_size needs it to be added.
4448         * src/lread.c (INFINITY, NAN) [DJGPP < 2.05]: Provide definitions.
4449         * src/fns.c (sort_vector_copy) [__GNUC__ < 4]: Provide a prototype
4450         that works around compilation errors with older GCC versions.
4451         * src/w16select.c: Don't declare QCLIPBOARD and QPRIMARY as Lisp
4452         Objects.
4453         * src/filelock.c [MSDOS]: Ifdef away most of the code.  Provide
4454         no-op implementations for 'lock_file' and 'unlock_file'.
4455         (Ffile_locked_p) [MSDOS]: Always return nil.  This avoids multiple
4456         ifdefs in all users of filelock.c functionality.
4457         * src/conf_post.h (EOVERFLOW, SIZE_MAX) [DJGPP < 2.04]: Define.
4458         * src/emacs.c [MSDOS]: Include dosfns.h, to avoid compiler
4459         warnings.
4460         * src/dosfns.h: Provide prototypes for dos_cleanup,
4461         syms_of_dosfns, and init_dosfns.
4462         * src/deps.mk (atimer.o): Depend on msdos.h.
4463         (emacs.o): Depend on dosfns.h.
4464         * src/atimer.c [MSDOS]: Include msdos.h, to avoid compiler
4465         warnings.
4467         * lisp/window.el (window--adjust-process-windows): Skip the body
4468         if 'process-list' is not available.  This avoids failure to start
4469         up on MS-DOS.
4470         * lisp/vc/diff.el (diff-no-select): Test 'make-process', not
4471         'start-process', as the latter is now available on all platforms.
4472         * lisp/textmodes/ispell.el (ispell-async-processp): Replace
4473         'start-process' with 'make-process' in a comment.
4474         * lisp/term/internal.el (IT-unicode-translations): Modify and add
4475         a few translations to display Info files with Unicode markup.  Fix
4476         an ancient off-by-one mismatch error with Unicode codepoints.
4477         * lisp/progmodes/compile.el (compilation-start): Test
4478         'make-process', not 'start-process', as the latter is now
4479         available on all platforms.
4480         * lisp/man.el (Man-build-man-command, Man-getpage-in-background):
4481         Test 'make-process', not 'start-process', as the latter is now
4482         available on all platforms.
4483         * lisp/international/mule-cmds.el (set-coding-system-map): Test
4484         'make-process', not 'start-process', as the latter is now
4485         available on all platforms.
4486         * lisp/eshell/esh-cmd.el (eshell-do-pipelines-synchronously): Doc
4487         fix.
4488         (eshell-execute-pipeline): Test 'make-process', not
4489         'start-process', as the latter is now available on all platforms.
4491 2016-04-30  Andreas Schwab  <schwab@linux-m68k.org>
4493         Remove \= from format string (bug#18190)
4495         * lisp/emacs-lisp/eieio.el (defclass): Remove \= from format
4496         string.
4498 2016-04-30  Eli Zaretskii  <eliz@gnu.org>
4500         Fix variable-pitch font on MS-Windows
4502         * lisp/faces.el (variable-pitch) [w32]: Name a variable-pitch font
4503         explicitly, to avoid Emacs picking up a bold-italic variant on
4504         some MS-Windows systems.  See this thread for details:
4505         http://lists.gnu.org/archive/html/emacs-devel/2016-04/msg00746.html.
4507 2016-04-29  Alan Mackenzie  <acm@muc.de>
4509         Restore follow-scroll-up/down to scrolling by the combined size of all windows
4511         Also rename the current follow-scroll-up/down functions to
4512         follow-scroll-up-window and follow-scroll-down-window.  These scroll by the
4513         height of the current window.
4515         This fixes bug #23347.
4517         * lisp/follow.el (follow-mode): Tweak the doc string.
4518         (follow-scroll-up-arg, follow-scroll-down-arg): new functions, extracted from
4519         follow-scroll-up/down.
4520         (follow-scroll-up-window, follow-scroll-down-window): Functions renamed from
4521         follow-scroll-up/down.
4522         (follow-scroll-up, follow-scroll-down): Restore the historic functionality.
4524 2016-04-29  Alan Mackenzie  <acm@muc.de>
4526         Revert unneeded change which harms syntactic parsing.  This fixes bug #23308.
4528         * lisp/progmodes/cc-engine.el (c-invalidate-state-cache): User
4529         c-state-old-cpp-end as an argument to c-with-all-but-one-cpps-commented-out
4530         regardless of the value of `here'.
4532 2016-04-29  Alan Mackenzie  <acm@muc.de>
4534         Correct indentation of ids in a C++ enum after a protection keyword.
4536         Also correct the misfontification of the last enum identifier.
4538         * lisp/progmodes/cc-engine.el (c-forward-keyword-prefixed-id): setq
4539         c-last-identifier-range to nil to ensure that only types recognized by this
4540         macro are set for fontification as types.
4541         (c-backward-typed-enum-colon): Function renamed from
4542         c-backward-colon-prefixed-type.  On finding a colon in the backward search,
4543         check it is preceded by an identifier rather than a keyword.
4545 2016-04-27  Glenn Morris  <rgm@gnu.org>
4547         * lisp/window.el (window--process-window-list): No-op if no processes.
4549         This avoids an issue with save-selected-window (from walk-windows)
4550         failing if frame.el is not loaded, eg if the terminal is resized
4551         during startup of a -nw CANNOT_DUMP build.  (Bug#23369).
4553 2016-04-27  Paul Eggert  <eggert@penguin.cs.ucla.edu>
4555         Port dumping to NetBSD with PaX
4557         Problem reported by Thomas Klausner (Bug#23371).
4558         * configure.ac (PAXCTL_dumped, PAXCTL_notdumped): New vars.
4559         Set them to setfattr and/or paxctl commands appropriate for
4560         GNU/Linux and/or NetBSD; the latter prefers paxctl +a.  Search
4561         for paxctl only if setfattr is not found.
4562         * src/Makefile.in (PAXCTL_dumped, PAXCTL_notdumped):
4563         New vars, replacing PAXCTL_if_present and SETFATTR_if_present.
4564         All uses changed.
4566 2016-04-27  Dmitry Gutov  <dgutov@yandex.ru>
4568         Don't mistake `for' inside a function for a part of array comprehension
4570         * lisp/progmodes/js.el (js--indent-in-array-comp): Also check the
4571         depth in parens between the bracket and `for' (bug#23391).
4573         * test/indent/js.js: Add a corresponding example.
4575 2016-04-27  Anders Lindgren  <andlind@gmail.com>
4577         Fix bug#22891: wrong terminal width when a fringe width is zero.
4579         When either fringe width is zero, Emacs reserved one column for a
4580         continuation glyph. Terminal windows does not take this into
4581         account when the frame is resized.
4583         * lisp/window.el (window-adjust-process-window-size): Use
4584         `window-max-chars-per-line' instead of `window-body-width'.
4585         * lisp/term.el (term-window-width): Remove function. (It does the
4586         same as `window-max-chars-per-line' but without recent bug fixes.)
4587         (term-mode): Use `window-max-chars-per-line' instead of
4588         `term-window-width'.
4590         Backport
4592         (cherry picked from commit 5b5403289888efe8783ae6a405845b925f544ec1)
4594 2016-04-27  Leo Liu  <sdl.web@gmail.com>
4596         Improve last change to vc-git-mode-line-string
4598         * lisp/vc/vc-git.el (vc-git-mode-line-string): Better fix that caches
4599           the result.
4601 2016-04-27  Stephen Berman  <stephen.berman@gmx.net>
4603         Todo mode doc bug fix
4605         * lisp/calendar/todo-mode.el (todo-show): Correct obsolete and no
4606         longer correct information in doc string.
4608 2016-04-27  Leo Liu  <sdl.web@gmail.com>
4610         Fix revision calculation in vc-git-mode-line-string
4612         * lisp/vc/vc-git.el (vc-git-mode-line-string): Use
4613           vc-git-working-revision because vc-working-revision needs to decide
4614           the backend and may return nil.
4616 2016-04-26  Jorgen Schaefer  <contact@jorgenschaefer.de>
4618         Add Python 3.5 keyword "await"
4620         * lisp/progmodes/python.el (python-font-lock-keywords): Add await as
4621         keyword.
4623 2016-04-26  Lele Gaifax  <lele@metapensiero.it>
4625         Add new keywords of Python 3.5
4627         Python 3.5, released in mid September 2015, introduced a few new
4628         keywords to better support asynchronous code, "async" and "await"
4629         in particular. See https://www.python.org/dev/peps/pep-0492/ for
4630         details. (Bug#21783)
4631         * lisp/progmodes/python.el (python-rx-constituents): Add async
4632         def/for/with as block-start and async def as defun.
4633         * lisp/progmodes/python.el (python-font-lock-keywords): Add async
4634         def/for/with as keyword.
4635         * test/automated/python-tests.el (python-indent-after-async-block-1,
4636         python-indent-after-async-block-2, python-indent-after-async-block-3,
4637         python-nav-beginning-of-defun-3): New tests to test indentation and
4638         navigation for the async keyword.
4640 2016-04-26  Mark Oteiza  <mvoteiza@udel.edu>
4642         Partially revert previous change.
4644         This commit partially reverts 0f332848cdb2ed6d46771914a911cbca194cd51a.
4645         * lisp/rect.el (rectangle--highlight-for-redisplay): Use region face.
4646         This function is for rectangle-mark-mode, not string-rectangle.
4648 2016-04-25  Paul Eggert  <eggert@penguin.cs.ucla.edu>
4650         Say why text-quoting-style is not a user option
4652         * doc/lispref/help.texi (Keys in Documentation):
4653         * etc/NEWS: Document why text-quoting-style is not a
4654         customizable variable (Bug#23372).
4656 2016-04-25  Glenn Morris  <rgm@gnu.org>
4658         * lisp/emacs-lisp/autoload.el (update-directory-autoloads):
4659         Future-proof against non-time-values.
4661 2016-04-25  Eli Zaretskii  <eliz@gnu.org>
4663         Don't mention ~/.emacs.bmk literally in doc strings
4665         * lisp/bookmark.el (bookmark-save-flag, bookmark-load): Don't
4666         mention "~/.emacs.bmk" explicitly as the default bookmark file in
4667         the doc strings.  (Bug#23350)
4669 2016-04-25  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
4671         * etc/NEWS: Explain why multicolor font display is disabled on OS X Cocoa.
4673 2016-04-24  Paul Eggert  <eggert@cs.ucla.edu>
4675         Port to Ubuntu 16.04 --enable-gcc-warnings
4677         * src/image.c (gif_load) [HAVE_GIF]: Fix pointer signedness problem.
4679 2016-04-24  Paul Eggert  <eggert@cs.ucla.edu>
4681         * etc/NEWS: Improve wording of vc-git-log-output-coding-system etc.
4683 2016-04-24  Tino Calancha  <f92capac@gmail.com>
4685         Don't kill ~/ if it's the top level directory
4687         * lisp/dired-aux.el (dired-kill-subdir): Don't kill ~/ if it's
4688         the top level directory (bug#23017).
4690 2016-04-23  Tino Calancha  <f92capac@gmail.com>  (tiny change)
4692         describe-char: fix insert char documentation
4694         * lisp/descr-text.el (describe-char):
4695         Only 'ucs-names' entries can be inserted by unicode name (Bug#23325).
4697 2016-04-23  Dmitry Gutov  <dgutov@yandex.ru>
4699         (vc-git-mode-line-string): Don't use `replace-regexp-in-string'
4701         * lisp/vc/vc-git.el (vc-git-mode-line-string): Use `substring'
4702         instead of `replace-regexp-in-string', because REV can be nil
4703         (e.g. when FILE is a directory, bug#23344), and we actually know
4704         we only need the first 4 characters.
4706 2016-04-22  Nicolas Petton  <nicolas@petton.fr>
4708         Bump version to 25.0.93
4710         * README:
4711         * configure.ac:
4712         * msdos/sed2v2.inp: Bump Emacs version to 25.0.93.
4714 2016-04-22  Nicolas Petton  <nicolas@petton.fr>
4716         * etc/AUTHORS: Update the AUTHORS file
4718         * admin/update_autogen: Use #!/usr/bin/env bash
4720         * admin/authors.el (authors-ignored-files): Additions.
4722 2016-04-22  Martin Rudalics  <rudalics@gmx.at>
4724         In x_set_window_size restore do_pending_window_change calls
4726         * src/xterm.c (x_set_window_size):
4727         * src/w32term.c (x_set_window_size): Restore
4728         do_pending_window_change calls after their stupid removal on
4729         2015-08-31.
4731 2016-04-21  Ilya Zakharevich  <ilya@math.berkeley.edu>
4733         Fix Alt-modified keys on some European MS-Windows keyboards
4735         * src/w32fns.c (deliver_wm_chars): If the reported character is
4736         ASCII, AND Meta modifier is a candidate, behave as if Meta is
4737         present, i.e. fall back to the legacy code.  (Bug#23251)
4739 2016-04-20  Eli Zaretskii  <eliz@gnu.org>
4741         Document 'help-go-forward'
4743         * doc/emacs/help.texi (Help Mode): Document and index
4744         'help-go-forward'.  (Bug#23323)
4746 2016-04-20  Eli Zaretskii  <eliz@gnu.org>
4748         Revert "Allow to customize names of executables used by grep.el"
4750         This reverts commit c93ae7a1e5a94541189a8f36984014344d561ffc.
4752 2016-04-20  Eli Zaretskii  <eliz@gnu.org>
4754         Revert "Don't use 'find-program'"
4756         This reverts commit 10597c977d55cbf9304b51c3b364ce58199384a0.
4758 2016-04-20  Eli Zaretskii  <eliz@gnu.org>
4760         Revert "Use 'grep-find-program' in check-declare.el"
4762         This reverts commit 33bef6e90bfd20609d044b8a076c1570c627684a.
4764 2016-04-20  Eli Zaretskii  <eliz@gnu.org>
4766         Clarify documentation of 'dired-mark-files-containing-regexp'
4768         * doc/emacs/dired.texi (Marks vs Flags): Clarify that for files
4769         visited in buffers, 'dired-mark-files-containing-regexp' searches
4770         the buffer rather than the file on disk.  (Bug#22694)
4772         * lisp/dired.el (dired-mark-files-containing-regexp): Clarify that
4773         for files visited in buffers, 'dired-mark-files-containing-regexp'
4774         searches the buffer rather than the file on disk.  (Bug#22694)
4776 2016-04-19  Eli Zaretskii  <eliz@gnu.org>
4778         Make tmm-menubar work in correct order again
4780         * lisp/tmm.el (tmm-prompt): Don't reverse 'tmm-km-list' right at the
4781         beginning; instead, pass a reversed copy to 'tmm--completion-table'.
4782         (Bug#23309)
4783         (tmm-menubar): Fix an off-by-one error in determining the menu
4784         item when the function is called with a non-nil 'x-position'
4785         argument.
4787 2016-04-18  Dmitry Gutov  <dgutov@yandex.ru>
4789         Remove the Meta-CVS VC backend
4791         * lisp/obsolete/vc-mcvs.el: Remove the file (bug#20475).
4793         * lisp/vc/log-view.el (log-view-extract-comment): Remove the MCVS
4794         reference.
4796         * doc/misc/efaq-w32.texi (Version control): Same.
4798 2016-04-18  Michael Albinus  <michael.albinus@gmx.de>
4800         Fix Bug#23276
4802         * lisp/autorevert.el (auto-revert-handler): Ignore errors
4803         coming from `revert-buffer'.  (Bug#23276)
4805 2016-04-17  Reto Zimmermann  <reto@gnu.org>
4807         Sync with upstream vhdl mode v3.38.1.
4809         * lisp/progmodes/vhdl-mode.el (vhdl-version, vhdl-time-stamp): Update.
4810         (vhdl-mode): No longer set comment-padding.
4811         (vhdl-begin-p): Handle missing space between keyword and parenthesis.
4812         (vhdl-beginning-of-statement-1): Fix indentation for "else generate".
4813         (vhdl-template-else, vhdl-template-elsif): Support generate statement.
4814         (vhdl-re-search-forward, vhdl-re-search-backward): Save match data.
4816 2016-04-16  Paul Eggert  <eggert@cs.ucla.edu>
4818         Tweak configure.ac syntax in recent module patch
4820         * configure.ac: Use proper Autoconf parenthesization in
4821         recent HAVE_MODULES patch.  Although this doesn’t fix any bugs,
4822         the previous syntax was confusing.
4824 2016-04-16  Paul Eggert  <eggert@cs.ucla.edu>
4826         Port to GCC 5.3.1 20160406 (Red Hat 5.3.1-6)
4828         * src/indent.c (Fvertical_motion): Pacify --enable-gcc-warnings
4829         when using the April 6 Fedora patch to GCC.
4831 2016-04-16  Mark Oteiza  <mvoteiza@udel.edu>
4833         Make sh-electric-here-document-mode accessible in sh-mode-hook. (Bug#3226)
4835         * lisp/progmodes/sh-script.el (sh-mode-hook): Add
4836         sh-electric-here-document-mode as an option and the default value.
4837         (sh-mode): Mention sh-mode-hook in docstring.
4838         (sh-mode): Remove sh-electric-here-document-mode invocation.
4840 2016-04-16  Glenn Morris  <rgm@gnu.org>
4842         * configure.ac (HAVE_MODULES): Exclude gnu-kfreebsd from previous.
4844 2016-04-16  Mark Oteiza  <mvoteiza@udel.edu>
4846         Make use of rectangle-preview custom variable.
4848         lisp/rect.el (rectangle--string-preview): Only create a preview if
4849         rectangle-preview is non-nil (Bug#23248).
4851 2016-04-16  Mark Oteiza  <mvoteiza@udel.edu>
4853         Make use of rectangle-preview face.
4855         * lisp/rect.el (rectangle--string-preview):
4856         (rectangle--highlight-for-redisplay): Replace 'region with
4857         'rectangle-preview (Bug#23248).
4859 2016-04-16  Eli Zaretskii  <eliz@gnu.org>
4861         Use 'grep-find-program' in check-declare.el
4863         * lisp/emacs-lisp/check-declare.el (check-declare-directory): Use
4864         'grep-find-program', not 'find-program'.
4866 2016-04-16  Eli Zaretskii  <eliz@gnu.org>
4868         Improve "C-h S" for cl-lib symbols
4870         * lisp/info-look.el: Add cl.info lookup to emacs-lisp-mode related
4871         manuals.  (Bug#23289)
4873 2016-04-16  Eli Zaretskii  <eliz@gnu.org>
4875         Fix minor issues with removing left or right fringes
4877         * lisp/window.el (window-max-chars-per-line): Account for
4878         'left-fringe-width' and 'right-fringe-width' variables.
4880         * doc/lispref/windows.texi (Window Sizes): Document the effect on
4881         window text width when setting the width of one or both fringes to
4882         zero.
4883         * doc/emacs/display.texi (Fringes): Document the effect on window
4884         text width when setting the width of one or both fringes to zero.
4885         (Bug#22891)
4887 2016-04-16  Eli Zaretskii  <eliz@gnu.org>
4889         Speed up redisplay in ansi-term mode
4891         * lisp/term.el (ansi-term): Force L2R 'bidi-paragraph-direction'.
4892         (Bug#20611)
4894 2016-04-16  Philipp Stephani  <phst@google.com>
4896         Simplify 8-bit character handling by terminal for 'raw-text'
4898         * lisp/international/mule.el (set-keyboard-coding-system): Treat
4899         'raw-text' as another coding type that requires 8-bit characters.
4900         * lisp/xt-mouse.el (xterm-mouse--read-coordinate): Use 'no-conversion'
4901         instead of 'latin-1'.
4903 2016-04-15  Glenn Morris  <rgm@gnu.org>
4905         * configure.ac (HAVE_MODULES): Treat gnu like gnu-linux.  (Bug#22722)
4907 2016-04-15  Eli Zaretskii  <eliz@gnu.org>
4909         Fix w32 memory-management problem when extending buffer text
4911         * src/w32heap.c (mmap_realloc): Only attempt extending a region if
4912         the following region has the same allocation base.  Also, use the
4913         original allocation base and enlarged size to commit reserved
4914         memory, to ensure that the allocation base stays at its original
4915         value.  This fixes several hard-to-debug problems whereby part of
4916         buffer text was overwritten with binary nulls, because
4917         mmap_realloc copied only part of buffer text when extending it.
4918         See
4919         http://lists.gnu.org/archive/html/emacs-devel/2016-04/msg00325.html
4920         and http://debbugs.gnu.org/cgi/bugreport.cgi?bug=23223#55 for two
4921         examples of the related problems.
4923 2016-04-14  Michael Albinus  <michael.albinus@gmx.de>
4925         Fix Bug#20637.  Do not merge to master
4927         * lisp/vc/vc-hooks.el (vc-state, vc-working-revision):
4928         Use `vc-backend' instead of `vc-responsible-backend'.  (Bug#20637)
4930         * test/automated/vc-tests.el (vc-test--state)
4931         (vc-test--working-revision): Deactivate now failing checks.
4933 2016-04-14  Paul Eggert  <eggert@cs.ucla.edu>
4935         substitute-command-keys keeps quotes’ text props
4937         Problem reported by Clément Pit--Claudel (Bug#23254).
4938         * src/doc.c: Include intervals.h.
4939         (Fsubstitute_command_keys): If the only substitutions are for
4940         quotes, copy the source string’s text properties too, since no
4941         substring lengths have changed.
4943 2016-04-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
4945         * src/xwidget.c (x_draw_xwidget_glyph_string): More clipping fixes.
4947 2016-04-12  Dmitry Gutov  <dgutov@yandex.ru>
4949         Add semantic-symref-filepattern-alist entry for lisp-interaction-mode
4951         * lisp/cedet/semantic/symref/grep.el
4952         (semantic-symref-filepattern-alist):
4953         Add entry for lisp-interaction-mode
4954         (http://debbugs.gnu.org/cgi/bugreport.cgi?bug=23223#47)
4956 2016-04-12  Dmitry Gutov  <dgutov@yandex.ru>
4958         Perform xref searches without visiting unopened files
4960         * lisp/progmodes/xref.el (xref-collect-references): Instead of
4961         calling `semantic-symref-find-references-by-name', use
4962         `semantic-symref-instantiate' and `semantic-symref-perform-search'
4963         directly.  Ask for `line-and-text' results (bug#23223).
4964         (xref-collect-matches): Include the line text in the "hit"
4965         structure.
4966         (xref--convert-hits): New function, split off from
4967         `xref-collect-references' and `xref-collect-matches', to convert
4968         "hits" to xref instance list.  Create a temporary buffer here, to
4969         use it for post-processing all hit lines.
4970         (xref--collect-matches): Use a different approach for non-visited
4971         files.  Insert the line text into the temp buffer, apply the
4972         file's major mode the best we can without reading its whole
4973         contents, syntax-propertize, and search in the result.
4974         (xref--collect-matches-1): Extract, to handle the common logic
4975         between two cases.
4976         (xref--find-buffer-visiting): New function, a wrapper around
4977         `find-buffer-visiting' to amortize its cost.
4979         * lisp/cedet/semantic/symref/idutils.el
4980         (semantic-symref-idutils--line-re): New constant.
4981         (semantic-symref-parse-tool-output-one-line): Support result type
4982         `line-and-text'.
4984         * lisp/cedet/semantic/symref/grep.el
4985         (semantic-symref-grep--line-re)
4986         (semantic-symref-parse-tool-output-one-line): Same.
4988         * lisp/cedet/semantic/symref/cscope.el
4989         (semantic-symref-cscope--line-re)
4990         (semantic-symref-parse-tool-output-one-line): Same.
4992         * lisp/cedet/semantic/symref/global.el
4993         (semantic-symref-global--line-re)
4994         (semantic-symref-parse-tool-output-one-line): Same.
4996 2016-04-12  Phillip Lord  <phillip.lord@newcastle.ac.uk>
4998         Revert "Prevent bootstrap autoload backup files"
5000         This reverts commit c23c965bb9d0a4bcc1b6158833ff99aa20fd53e9.
5002 2016-04-12  Paul Eggert  <eggert@cs.ucla.edu>
5004         Improve time zone documentation
5006         * doc/lispref/os.texi (Time Zone Rules):
5007         New section, mostly with material moved here from other sections.
5008         * doc/emacs/cmdargs.texi (General Variables):
5009         * doc/lispref/os.texi (Time Conversion, Time Parsing):
5010         Xref new section.
5011         * etc/NEWS, etc/PROBLEMS:
5012         * lisp/org/org.el (org-timestamp-format):
5013         * src/editfns.c (Fformat_time_string, Fdecode_time)
5014         (Fencode_time, Fcurrent_time_string, Fcurrent_time_zone)
5015         (Fset_time_zone_rule):
5016         When documenting time zone rule strings, mention the TZ
5017         environment variable in preference to mentioning the
5018         sort-of-internal function set-time-zone-rule.
5020 2016-04-12  Phillip Lord  <phillip.lord@russet.org.uk>
5022         Prevent bootstrap autoload backup files
5024          * lisp/emacs-lisp/autoload.el (autoload-find-generated-file): Suppress
5025            backups in newly created file.
5027           (autoload-ensure-default-file): Function split into two.
5028           (autoload-ensure-file-writeable): New function from split.
5030           (Bug#23203)
5032 2016-04-11  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
5034         Disable multicolor fonts on OS X since they are not supported on free systems
5036         * src/macfont.m (macfont_list): Don't use color bitmap fonts.
5038 2016-04-11  Paul Eggert  <eggert@cs.ucla.edu>
5040         Capitalize “Universal Time” in documentation
5042         It’s a proper noun.
5043         * lisp/vc/add-log.el (add-log-time-zone-rule): Also, fix typo by
5044         mentioning ‘format-time-string’ instead of ‘set-time-zone-rule’.
5046 2016-04-11  Eli Zaretskii  <eliz@gnu.org>
5048         Don't use 'find-program'
5050         * lisp/progmodes/project.el (project-file-completion-table): Use
5051         'grep-find-program', rather than the obsolete 'find-program'.
5053 2016-04-11  Paul Eggert  <eggert@cs.ucla.edu>
5055         Sync with gnulib
5057         This is for picky compilers whose stdint.h fails our C11 tests.
5058         Problem reported for clang by Philipp Stephani (Bug#23261).
5059         This incorporates:
5060         2016-04-11 stdint: port to strict C11 left shift
5061         * doc/misc/texinfo.tex, lib/stdint.in.h: Copy from gnulib.
5063 2016-04-11  Leo Liu  <sdl.web@gmail.com>
5065         Fix last change on 2016-01-02
5067         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2): Move
5068           `cl-errs-re' before `lisp--el-match-keyword'; don't use `prepend'
5069           which highlights `cl-errs-re' even in comments or strings.
5071 2016-04-11  Paul Eggert  <eggert@cs.ucla.edu>
5073         Port run-prolog EMACS to SWI-Prolog 7.2.3
5075         * lisp/progmodes/prolog.el (prolog-ensure-process):
5076         Work around incompatibility of SWI-Prolog 7.2.3 and earlier
5077         with the new way of dealing with the EMACS and INSIDE_EMACS
5078         environment variables.
5080 2016-04-10  Eli Zaretskii  <eliz@gnu.org>
5082         Avoid crashes due to unreasonably large or small text scaling
5084         * lisp/face-remap.el (text-scale-min-amount)
5085         (text-scale-max-amount): New functions.
5086         (text-scale-set, text-scale-increase): Use them to limit the text
5087         scaling to a reasonable range of values.  (Bug#23259)
5089 2016-04-10  Eli Zaretskii  <eliz@gnu.org>
5091         Improve documentation of 'with-eval-after-load'
5093         * lisp/subr.el (with-eval-after-load): Doc fix.  (Bug#23258)
5095 2016-04-10  Eli Zaretskii  <eliz@gnu.org>
5097         Improve handling of non-ASCII characters in Git log messages
5099         * lisp/vc/vc-git.el (vc-git-commits-coding-system): Now a defcustom.
5100         (vc-git-log-output-coding-system): New defcustom.
5101         (vc-git-print-log, vc-git-command, vc-git--call): Use
5102         'vc-git-log-output-coding-system' for reading stuff from Git.
5103         Don't override values of 'coding-system-for-read/write' if they
5104         are bound by caller -- this allows the user to force an encoding
5105         via "C-x RET c".
5106         (vc-git-checkin): On MS-Windows, pass the log message via a
5107         temporary file, to work around the limitations on passing
5108         non-ASCII characters via command-line arguments.  Force using the
5109         'locale-coding-system' for Git command-line arguments.  This fixes
5110         problems with non-ASCII commit log messages on MS-Windows.
5111         (Bug#23076)
5113         * etc/NEWS: Mention the new vc-git related defcustoms.
5115 2016-04-09  Philipp Stephani  <phst@google.com>
5117         Remove undefined behavior in OS X dumper.
5119         Found by Address Sanitizer.
5121         * src/unexmacosx.c (unexec_write): Use Mach virtual memory API to
5122         avoid undefined behavior when reading arbitrary memory.
5124 2016-04-09  Joakim Verona  <joakim@verona.se>
5126         Fix clipping of xwidgets
5128         * src/xwidget.c (x_draw_xwidget_glyph_string): Use window_box
5129         instead of calculating the clipping borders manually.  Suggested
5130         by YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>.
5132 2016-04-09  Eli Zaretskii  <eliz@gnu.org>
5134         Improve Lisp-level documentation of tooltips
5136         * doc/lispref/display.texi (Tooltips): New section.  (Bug#23246)
5137         (Display): Update the chapter menu.
5138         * doc/lispref/text.texi (Special Properties): Make the "tooltip"
5139         index entry more concrete.  Change the cross-reference to point to
5140         "Tooltips" in the ELisp manual.
5141         * doc/lispref/elisp.texi (Top): Update the master menu.
5142         * doc/emacs/frames.texi (Tooltips): Include more customization
5143         variables.  Add a cross-reference to the ELisp manual.
5145 2016-04-08  Glenn Morris  <rgm@gnu.org>
5147         Faces names should not end in "-face".
5149         * lisp/rect.el (rectangle-preview): Rename from rectangle-preview-face.
5150         * lisp/vc/vc-hooks.el (vc-state-base): Rename from vc-state-base-face.
5152 2016-04-08  Paul Eggert  <eggert@cs.ucla.edu>
5154         * src/xsmfns.c (syms_of_xsmfns): Remove stray "s in doc strings.
5156 2016-04-08  Paul Eggert  <eggert@cs.ucla.edu>
5158         Comint and compile no longer set EMACS
5160         This mostly restores the change that I reverted on March 23,
5161         fixing most of Bug#20202.  The only part of the change that is
5162         still reverted is the change to M-x term, where compatibility with
5163         current Bash constrains us from moving too quickly (Bug#20484).
5164         Problem reported by Phillip Lord in: http://bugs.gnu.org/20484#108
5165         * etc/NEWS: Document this.
5166         * lisp/comint.el (comint-exec-1):
5167         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
5168         * lisp/progmodes/compile.el (compilation-start):
5169         Don’t set EMACS=t in the subsidiary process.
5171 2016-04-08  Stefan Monnier  <monnier@iro.umontreal.ca>
5173         * lisp/subr.el (read-key): Don't let the prompt linger (bug#22714)
5175 2016-04-08  Eli Zaretskii  <eliz@gnu.org>
5177         Allow to customize names of executables used by grep.el
5179         * lisp/progmodes/grep.el (grep-find-program): Renamed from
5180         'find-program', which was a variable.  All uses changed.
5181         (grep-xargs-program): Renamed from 'xargs-program', which was a
5182         variable.  All uses changed.
5183         (grep-program): Now a defcustom rather than a simple variable.
5184         (Bug#23219)
5186 2016-04-08  Alan Third  <alan@idiocy.org>
5188         Set locale encoding to UTF-8 when run from OS X GUI.
5190         * src/nsterm.m (ns_init_locale): Append .UTF-8 when setting LANG.
5192 2016-04-08  Eli Zaretskii  <eliz@gnu.org>
5194         Avoid signaling errors in 'M-n' at the 'C-x C-f' prompt
5196         * lisp/ffap.el (ffap-guess-file-name-at-point): Ignore errors
5197         while 'ffap-guesser' runs.  (Bug#23218)
5199 2016-04-08  Marcin Borkowski  <mbork@mbork.pl>
5201         Avoid infinite loop in 'studlify-word'
5203         * lisp/play/studly.el (studlify-region): Call
5204         'forward-word-strictly' and 'backward-word-strictly' instead of
5205         'forward-word' and 'backward-word'.  (Bug#19940)
5207 2016-04-07  Paul Eggert  <eggert@cs.ucla.edu>
5209         Don’t recommend obsolete EMACS env var
5211         * doc/misc/efaq.texi (Escape sequences in shell output):
5212         Remove long-obsolete (and now-confusing) notes about
5213         the EMACS environment variable in Emacs 21.1 and earlier.
5214         * doc/misc/efaq.texi (^M in the shell buffer):
5215         * etc/PROBLEMS:
5216         Remove obsolescent recommendation to consult the EMACS environment
5217         variable.
5219 2016-04-07  Glenn Morris  <rgm@gnu.org>
5221         * lisp/emacs-lisp/package.el: Change from a few days ago needs seq.
5223         * lisp/emacs-lisp/seq.el: Load cl-lib, not cl-extra.
5225 2016-04-07  Leo Liu  <sdl.web@gmail.com>
5227         Fix "Beginning of buffer" error in forward-page
5229         * lisp/textmodes/page.el (forward-page): Check before move to prevent
5230           "Beginning of buffer" error.
5232 2016-04-06  Dmitry Gutov  <dgutov@yandex.ru>
5234         Add a `transient' project type
5236         * lisp/progmodes/project.el (project-roots): Implement for the
5237         `transient' project type (bug#23224).
5238         (project-current): Instead of signaling an error, return a
5239         transient project instance rooted in the chosen directory.
5241 2016-04-06  Lars Magne Ingebrigtsen  <larsi@gnus.org>
5243         Revert "Backport HTTPS proxy fix"
5245         This reverts commit 2d1a6054b161bd1055d4feb11c8c5ac95543f5db.
5247         It's too late in the Emacs 25 release cycle to add things like this to
5248         Emacs 25.1.  It's border line new feature.
5250 2016-04-06  Tao Fang  <fangtao0901@gmail.com>
5252         Backport HTTPS proxy fix
5254         Cherry-picked from 3c623c26ae7d695746e05d8a2e16a67a6256b024
5256         Backport:
5258 2016-04-06  Paul Eggert  <eggert@cs.ucla.edu>
5260         Fix stability confusion in sort-tests
5262         Problem reported by Philipp Stephani (Bug#23205).
5263         * test/automated/sort-tests.el:
5264         (sort-tests--insert-words-sort-and-compare):
5265         Don’t assume that reversing a sorted list is the same
5266         as sorting with the reverse predicate.  This is not true
5267         for stable sorts when items compare equal.
5269 2016-04-05  Paul Eggert  <eggert@cs.ucla.edu>
5271         Avoid describe-key error with lambdas
5273         Problem reported by Sho Takemori (Bug#22716).
5274         * lisp/cedet/mode-local.el (describe-mode-local-overload)
5275         (xref-mode-local-overload): Use function-overload-p instead
5276         of assuming the argument is a symbol.
5278 2016-04-04  Artur Malabarba  <bruce.connor.am@gmail.com>
5280         * lisp/emacs-lisp/package.el (package-install-selected-packages):
5282         Skip unavailable packages.
5284 2016-04-04  Paul Eggert  <eggert@cs.ucla.edu>
5286         Sync with gnulib
5288         This incorporates:
5289         2016-04-03 stdint: detect good enough pre-C++11 stdint.h in C++ mode
5290         2016-04-01 stddef: support configuring with g++
5291         * doc/misc/texinfo.tex, lib/stddef.in.h, m4/stdint.m4:
5292         Copy from gnulib.
5294 2016-04-03  Paul Eggert  <eggert@cs.ucla.edu>
5296         Fix doc for Universal Time
5298         * doc/lispref/os.texi (Time of Day, Time Conversion):
5299         Be more careful about distinguishing UTC (which is not valid for
5300         pre-1961 time stamps) and UT (which is).
5301         (Time Parsing): Remove stray obsolete paragraph about a
5302         UNIVERSAL argument for ‘format-time-string’.
5304 2016-04-03  Michael Albinus  <michael.albinus@gmx.de>
5306         Handle Bug#23186
5308         * lisp/net/tramp.el (tramp-encoding-command-switch)
5309         (tramp-encoding-command-interactive):
5310         * lisp/net/tramp-sh.el (tramp-maybe-open-connection):
5311         `tramp-encoding-shell' could be nil.  (Bug#23186)
5313 2016-04-03  Paul Eggert  <eggert@cs.ucla.edu>
5315         More format-time-string change fixups
5317         * lisp/net/tramp-sh.el (tramp-sh-handle-set-file-times):
5318         * lisp/org/org.el (org-timestamp-format):
5319         Fix doc to match new format-time-string behavior.
5320         * lisp/org/ox-icalendar.el (org-icalendar-convert-timestamp):
5321         Use (not (not X)) to treat non-nil values of utc arg as UTC.
5323 2016-04-02  Paul Eggert  <eggert@cs.ucla.edu>
5325         make-xwidget unused arg cleanup
5327         * doc/lispref/display.texi (Xwidgets): Remove stray refs.
5328         * src/xwidget.c (syms_of_xwidget): Qwebkit, not Qwebkit_osr.
5330 2016-04-02  Joakim Verona  <joakim@verona.se>
5332         Remove unused arguments from make-xwidget
5334         The arguments BEG and END were unused, and are now removed.
5336         * doc/emacs/display.texi (Xwidgets): Document the change
5337         * lisp/xwidget.el (make-xwidget, xwidget-insert)
5338         (xwidget-webkit-new-session): Reflect changed arguments
5339         * src/xwidget.c (Fmake_xwidget, syms_of_xwidget): Reflect changed arguments
5341 2016-04-02  Eli Zaretskii  <eliz@gnu.org>
5343         Document incompatible changes in 'format-time-string'
5345         * etc/NEWS: Mention the incompatible change in the interpretation
5346         of the 3rd argument to 'format-time-string'.  (Bug#21943)
5348 2016-04-02  Eli Zaretskii  <eliz@gnu.org>
5350         Improve documentation of byte-code objects
5352         * doc/lispref/compile.texi (Byte-Code Objects): Document the
5353         integer format of the argument descriptor.  (Bug#23061)
5355 2016-04-02  Eli Zaretskii  <eliz@gnu.org>
5357         Adapt calls to 'format-time-string' to changes in Emacs 25
5359         * lisp/vc/pcvs-info.el (cvs-fileinfo-from-entries): Use t as the
5360         last argument to format-time-string.  (Bug#23128)
5361         * lisp/gnus/gmm-utils.el (gmm-format-time-string): Use t as the
5362         last argument to format-time-string, when the TZ argument is not a
5363         number, per the doc string.
5365 2016-04-02  Eli Zaretskii  <eliz@gnu.org>
5367         Improve vc-diff with Git backend
5369         * lisp/vc/vc-git.el (vc-git-command): Don't override
5370         coding-system-for-read/write if they are already bound.
5371         Suggested by joaotavora@gmail.com (João Távora).  (Bug#20892)
5372         (vc-git-print-log): Don't override coding-system-for-read if it's
5373         already bound.
5375 2016-04-01  Dmitry Gutov  <dgutov@yandex.ru>
5377         (js--continued-expression-p): Special-case unary plus and minus
5379         * lisp/progmodes/js.el (js--continued-expression-p): Make an
5380         effort to recognize unary plus and minus, in the contexts where
5381         they make sense (https://github.com/mooz/js2-mode/issues/322).
5383 2016-04-01  Alan Mackenzie  <acm@muc.de>
5385         Prevent C++ Mode wrongly fontifying some identifiers near templates as types
5387         This fixes debbugs #7917.
5389         * lisp/progmodes/cc-engine.el (c-forward-keyword-prefixed-id): Accept 'maybe
5390         (from c-forward-type) as sufficient to record an id.  Record type id as well
5391         as ref ids.
5392         (c-forward-name): Bind c-last-identifier-range around the call to
5393         c-forward-<>-arglist to prevent it getting corrupted.  Don't automatically
5394         assume an identifier is a type when a template ">" is followed by a "(".
5395         (c-forward-type): Don't automatically assume an identifier is a type when a
5396         template ">" is followed by a "(".
5398         * lisp/progmodes/cc-fonts.el (c-font-lock-<>-arglists): Don't fontify an
5399         identifier as a type when its associated ">" is followed by a "(".
5401 2016-04-01  Eli Zaretskii  <eliz@gnu.org>
5403         Avoid crashes due to insanely large columns in tabulated-list-format
5405         * src/xdisp.c (append_stretch_glyph, produce_xwidget_glyph)
5406         (produce_image_glyph): Limit the pixel width of the produced glyph
5407         to SHRT_MAX.  (Bug#23178)
5408         (append_composite_glyph, append_glyph, append_glyphless_glyph):
5409         Add assertions to verify that the pixel width of the glyph will
5410         never overflow a 'short'.
5411         * src/term.c (append_composite_glyph): Add assertion to verify
5412         that the pixel width of the glyph will never overflow a 'short'.
5414 2016-03-31  Mark Oteiza  <mvoteiza@udel.edu>
5416         Teach M-x disassemble a default argument.
5418         Adopts default argument in the same way as `describe-function'.
5419         * lisp/emacs-lisp/disass.el (disassemble): Default to function at point,
5420         if any.
5422 2016-03-31  Eli Zaretskii  <eliz@gnu.org>
5424         Fix EOL decoding in vc-annotate with SVN back-end on MS-Windows
5426         * lisp/vc/vc-annotate.el (vc-annotate): Force DOS EOL decoding on
5427         MS-Windows and MS-DOS, when processing the output of "svn annotate".
5429 2016-03-31  Michael Albinus  <michael.albinus@gmx.de>
5431         Fix OS X specific settings in tramp-tests
5433         * lisp/net/tramp-sh.el (tramp-maybe-open-connection): Use it.
5435         * lisp/net/tramp.el (tramp-get-local-locale): New defun.
5437         * test/automated/tramp-tests.el (tramp--test-darwin-p): Remove.
5438         (tramp--test-utf8): Improve settings of coding systems.
5439         Do not use `tramp--test-darwin-p' anymore.  (Bug#22145)
5441 2016-03-30  Alan Mackenzie  <acm@muc.de>
5443         Finish fixing a cacheing bug in CC Mode (see 2016-03-09)
5445         * lisp/progmodes/cc-cmds.el: (c-beginning-of-defun, c-end-of-defun): Remove
5446         superfluous invocations of c-self-bind-state-cache.
5448         * lisp/progmodes/cc-defs.el: (c-self-bind-state-cache): Copy and terminate
5449         markers correctly.
5451         * lisp/progmodes/cc-engine.el (c-record-parse-state-state): Terminate stale
5452         markers.
5454 2016-03-30  Alan Mackenzie  <acm@muc.de>
5456         Merge branch 'emacs-25' of /home/acm/emacs/emacs.git/emacs-25 into emacs-25
5458 2016-03-29  Xue Fuqiao  <xfq.free@gmail.com>
5460         * doc/lispref/text.texi (Columns): Remove a nonexistent reference.
5462         The example was removed by Chong Yidong on Mar 5, 2012.
5464 2016-03-29  Paul Eggert  <eggert@cs.ucla.edu>
5466         * doc/man/emacsclient.1: Document +line:column option.
5468 2016-03-29  Eli Zaretskii  <eliz@gnu.org>
5470         Fix rare problems with echo-area display and multiple frames
5472         * src/xdisp.c (redisplay_window): Bind inhibit-redisplay non-nil
5473         around the call to x_consider_frame_title, to prevent
5474         resize_mini_window from undoing echo-area display.  (Bug#23124)
5476 2016-03-29  Alan Mackenzie  <acm@muc.de>
5478         In M-%, avoid making buffer-local binding of text-property-default-nonsticky
5480         This would happen when that variable already has a buffer local binding.  Such
5481         a binding would not be seen by read-from-minibuffer.  This fixes bug #23127.
5483         * lisp/replace.el (query-replace-read-from): Move the binding of
5484         text-property-default-nonsticky to inside of a new with-current-buffer buffer
5485         form with the minibuffer as argument.
5487 2016-03-27  Dmitry Gutov  <dgutov@yandex.ru>
5489         Remove prog-indentation-context
5491         * lisp/progmodes/prog-mode.el: (prog-indentation-context)
5492         (prog-first-column, prog-widen): Remove, as discussed in
5493         http://lists.gnu.org/archive/html/emacs-devel/2016-03/msg01425.html.
5495         * doc/lispref/text.texi (Mode-Specific Indent): Remove references
5496         to them.
5498         * etc/NEWS: Ditto.
5500         * lisp/progmodes/python.el: (prog-widen, prog-first-column):
5501         Remove the compatibility aliases and all uses.
5503         Do not merge to master.
5505 2016-03-27  Paul Eggert  <eggert@cs.ucla.edu>
5507         * src/font.c (QCuser_spec): Add missing colon to :user-spec.
5509 2016-03-27  Eli Zaretskii  <eliz@gnu.org>
5511         Don't start the 'midnight' timer twice
5513         * lisp/midnight.el (midnight-mode): Avoid starting the midnight
5514         timer twice when activating the mode the first time.  (Bug#23123)
5516 2016-03-27  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
5518         * src/xwidget.c (Fxwidget_resize): Fix inappropriate use of XFASTINT.
5520 2016-03-26  Stephen Berman  <stephen.berman@gmx.net>
5522         Fix todo-mode category movement
5524         * lisp/calendar/todo-mode.el (todo-move-category): Use moved
5525         category's existing categories sexp instead of invoking
5526         todo-update-categories-sexp in file moved to, in order to take
5527         archived items into account.  If the moved category has archived
5528         items, handle the source archive buffer properly.  Remove
5529         superfluous code.
5531 2016-03-26  Glenn Morris  <rgm@gnu.org>
5533         * lisp/xt-mouse.el (xterm-mouse-utf-8): Add :version.
5535 2016-03-26  Eli Zaretskii  <eliz@gnu.org>
5537         Ignore non-nil. non-cons values of unread-command-events
5539         * src/keyboard.c (requeued_events_pending_p, read_char)
5540         (Finput_pending_p): Use CONSP instead of !NILP to see if there are
5541         unread command events to be processed.  (Bug#22976)
5543 2016-03-26  Eli Zaretskii  <eliz@gnu.org>
5545         Improve documentatuon of 'truncate-partial-width-windows'
5547         * src/xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>:
5548         Clarify in the doc string how the width of partial-width windows
5549         is computed for the purposes of truncation decision.  (Bug#4338)
5551         * doc/emacs/windows.texi (Split Window): Clarify how the width of
5552         windows is calculated for the purposes of truncation decision.
5553         * doc/emacs/display.texi (Line Truncation): Remove a redundant
5554         index entry.
5556 2016-03-25  Paul Eggert  <eggert@cs.ucla.edu>
5558         * src/ftfont.c (ftfont_shape_by_flt): Parenthesize as per GNU style.
5560 2016-03-25  Eli Zaretskii  <eliz@gnu.org>
5562         Fix 'dired-goto-file' in Dired buffers produced by find-dired
5564         * lisp/dired.el (dired-goto-file): Try looking for the file as a
5565         relative name with leading sub-directories, before looking for the
5566         basename alone.  (Bug#23089)
5568 2016-03-25  Nicolas Petton  <nicolas@petton.fr>
5570         Fix map-put and map-delete for alists (Bug#23105)
5572         * lisp/emacs-lisp/map.el (map-put): Do not bind the evaluated place
5573         expression to a new symbol.
5574         * test/automated/map-tests.el: Add a regression test.
5576 2016-03-25  Eli Zaretskii  <eliz@gnu.org>
5578         Minor copyedits of documentation for temporary displays
5580         * doc/emacs/windows.texi (Temporary Displays): Improve indexing.
5581         Minor changes in wording.
5582         (Window Choice, Displaying Buffers, Pop Up Window): Disambiguate
5583         index entries for 'display-buffer'.
5585         * etc/NEWS: Minor rewording of the entry about temporary displays.
5587 2016-03-25  Philipp Stephani  <phst@google.com>
5589         Add customization option for using UTF-8 coordinates in xt-mouse
5591         * lisp/xt-mouse.el (xterm-mouse-utf-8): New customization option.
5592         (xterm-mouse--read-coordinate): New function to replace
5593         `xterm-mouse--read-utf8-char'; uses UTF-8 only if enabled.
5594         (xterm-mouse--read-number-from-terminal): Adapt to new name.
5595         (xterm-mouse-tracking-enable-sequence)
5596         (xterm-mouse-tracking-disable-sequence): Replace constants with
5597         functions, mark constants as obsolete.
5598         (xterm-mouse--tracking-sequence): New helper function.
5599         (turn-on-xterm-mouse-tracking-on-terminal): Use new functions;
5600         enable UTF-8 only if customization option says so; store UTF-8
5601         flag in terminal parameter.  (Bug#23009)
5603         * test/automated/xt-mouse-tests.el: Add tests for xt-mouse.el.
5605 2016-03-25  Eli Zaretskii  <eliz@gnu.org>
5607         Minor doc string fixes in replace.el
5609         * lisp/replace.el (query-replace, query-replace-regexp)
5610         (query-replace-regexp-eval, map-query-replace-regexp)
5611         (replace-string, replace-regexp): Clarify in doc strings that
5612         these commands operate from point to the end of the buffer's
5613         accessible portion.  (Bug#23067)
5615 2016-03-25  Eli Zaretskii  <eliz@gnu.org>
5617         Fix scrolling upwards with 'xwidget-webkit-browse-url'
5619         * src/xwidget.c (Fxwidget_set_adjustment): Use CHECK_NUMBER instead
5620         of CHECK_NATNUM.  Suggested by Shayan Pirani <shayanpirani@gmail.com>.
5621         (Bug#22918)
5623 2016-03-25  K. Handa  <handa@gnu.org>
5625         Fix display of Indic scripts
5627         * src/ftfont.c (ftfont_shape_by_flt): For combining characters out
5628         of the range U+300...U+36F, use the "combining" FLT only with
5629         non-OTF fonts.
5631 2016-03-25  Eli Zaretskii  <eliz@gnu.org>
5633         Fix splash screen display at startup
5635         * src/frame.c (DEFAULT_ROWS): Enlarge to 36, so that the initial
5636         window displayed by "emacs -q" has enough space to show the whole
5637         text even if it includes 2 lines talking about recovering crashes
5638         sessions.  (Bug#23074)
5640         * lisp/startup.el (use-fancy-splash-screens-p): Fix off-by-one
5641         error when computing the window-height from frame-height.
5643         * etc/NEWS: Mention the change.
5645 2016-03-25  Martin Rudalics  <rudalics@gmx.at>
5647         Describe temporary displays in Emacs manual
5649         * doc/emacs/emacs.texi (Temporary Displays): New subsubsection.
5650         * doc/emacs/windows.texi (Window Choice): Minor fixes.
5651         (Temporary Displays): New subsubsection describing display of
5652         temporary buffers and `temp-buffer-resize-mode'.
5654 2016-03-24  Paul Eggert  <eggert@cs.ucla.edu>
5656         Avoid stray As next to IDLW icons
5658         * lisp/progmodes/idlw-toolbar.el (idlwave-toolbar-add-everywhere):
5659         Use "" for empty labels, not "a", as the latter now displays stray
5660         "A"s (Bug#18997).
5662 2016-03-24  Paul Eggert  <eggert@cs.ucla.edu>
5664         Avoid GTK 3 crash with icons and masks
5666         Problem reported by Mosè Giordano (Bug#18997).
5667         * src/gtkutil.c (xg_get_pixbuf_from_pixmap): Remove.
5668         (xg_get_pixbuf_from_pix_and_mask): Do not use
5669         xg_get_pixbuf_from_pixmap, as it is poorly documented.  Instead,
5670         invoke XGetPixel directly.  This is slow but speed is not
5671         important here.  Also, fail for unusual situations (not TrueColor,
5672         or images that are not 8 bits per sample) instead of displaying
5673         junk or crashing.
5675 2016-03-24  Juri Linkov  <juri@linkov.net>
5677         * lisp/minibuffer.el (minibuffer-completion-help): Use fit-window-to-buffer
5679         instead of shrink-window-if-larger-than-buffer.  (Bug#23092)
5681 2016-03-24  Eli Zaretskii  <eliz@gnu.org>
5683         Define make_save_ptr_ptr unconditionally
5685         * src/alloc.c (make_save_ptr_ptr): Remove the !(defined
5686         USE_X_TOOLKIT || defined USE_GTK) conditional.  Reported by
5687         Philipp Stephani <phst@google.com>.  (Bug#23101)
5689 2016-03-24  Eli Zaretskii  <eliz@gnu.org>
5691         Preserve current buffer when popping up TTY menus
5693         * src/term.c (tty_menu_show): Be sure to save and restore the
5694         current buffer around TTY menu pop-ups.  (Bug#23101)
5696 2016-03-24  Eli Zaretskii  <eliz@gnu.org>
5698         Improve font selection by family on MS-Windows
5700         * src/w32font.c (w32font_list_internal): Allow 'ascii-0' charset,
5701         in addition to 'iso10646-1', 'unicode-bmp', and 'unicode-sip'.
5702         This avoids rejecting many font families whose members are shown
5703         by 'font-family-list', in particular 'courier' requested by
5704         info.el.  Without this change, many values of ':family' attribute
5705         of a face have no effect on MS-Windows, because they are rejected
5706         due to bogus mismatch of the charset.
5708 2016-03-23  Paul Eggert  <eggert@penguin.cs.ucla.edu>
5710         Comint, term, and compile now set EMACS
5712         This fixes directory tracking in ansi-term, at the expense of
5713         breaking some usages of 'configure'.  Setting EMACS is meant to be
5714         a somewhat temporary measure, until Bash 4.4 comes out and is
5715         common.  (Bug#20484).
5716         * etc/NEWS: Document this.
5717         * lisp/comint.el (comint-exec-1):
5718         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
5719         * lisp/progmodes/compile.el (compilation-start):
5720         * lisp/term.el (term-exec-1):
5721         Go back to setting the EMACS environment variable, for backward
5722         compatibility to Bash 4.3 and earlier.
5724 2016-03-23  Paul Eggert  <eggert@penguin.cs.ucla.edu>
5726         Ignore more merges when generating ChangeLog
5728         * build-aux/gitlog-to-emacslog: Ignore all merges from gnu.org,
5729         not merely those from master and emacs-NN.  The ChangeLog entries
5730         they generate are not that useful.
5732 2016-03-23  Paul Eggert  <eggert@cs.ucla.edu>
5734         Sync with gnulib
5736         This incorporates:
5737         2016-03-22 gitlog-to-changelog: suppress ignored chatter
5738         2016-03-21 sys_select: port to new Cygwin
5739         * build-aux/gitlog-to-changelog, doc/misc/texinfo.tex:
5740         * lib/sys_select.in.h: Copy from gnulib.
5742 2016-03-23  Paul Eggert  <eggert@cs.ucla.edu>
5744         Resurrect GNUS-NEWS autogeneration
5746         * doc/misc/gnus-coding.texi (Gnus Maintenance Guide): Update
5747         GNUS-NEWS section to match current file locations and procedure.
5748         * etc/GNUS-NEWS: Regenerate by using new procedure.
5749         * lisp/Makefile.in (update-gnus-news): New rule, containing a
5750         procedure for building GNUS-NEWS.  The old procedure got lost
5751         somehow when Gnus was merged into Emacs.
5753 2016-03-22  Anders Lindgren  <andlind@gmail.com>
5755         Make `toggle-frame-maximized' respect the dock on OS X (bug#22988).
5757         * src/nsterm.m (ns_screen_margins): New function.
5758         (ns_screen_margins_ignoring_hidden_dock): New function.
5759         (ns_menu_bar_height): Reimplement in terms of `ns_screen_margins'.
5760         ([EmacsWindow zoom:]): Take all screen margins (except those
5761         originating from a hidden dock) into account.
5763 2016-03-22  Eli Zaretskii  <eliz@gnu.org>
5765         Fix bug in displaying header line with a box face
5767         * src/xdisp.c (get_next_display_element): Handle the case when a
5768         display string acquires the box face from an underlying string,
5769         not from the buffer.  (Bug#23091)
5771 2016-03-21  Kaushal Modi  <kaushal.modi@gmail.com>
5773         Fix an Isearch var to be a string (Bug#23038)
5775         * lisp/isearch.el (isearch--describe-regexp-mode): The `description' var
5776           needs to always be a string.  Add the missing default case for the
5777           cond form that ensures that.
5779         Before this bug fix, for the events when `regexp-function' and
5780         `search-default-mode' both were nil, `description' also stayed nil.  So
5781         when `space-before' was non-nil, the "non-string" `description'
5782         (with a value of nil) got passed as an argument to
5783         `replace-regexp-in-string' (where a string was expected).  That caused
5784         the error described in Bug#23038.
5786 2016-03-21  Leo Liu  <sdl.web@gmail.com>
5788         Fix (args-out-of-range 1) error in cursor-sensor--detect
5790         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect): Don't
5791           hard-code (point-min) as 1 which fails in narrowed buffers.
5793 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
5795         Render empty <ul><li><ul> correctly
5797         * lisp/net/shr.el (shr-tag-ul): Render empty <ul><li><ul>
5798         correctly (bug#22964).
5799         (cherry picked from commit 4f6ea3988b66cf132c67fd0cc26d12eb9a300ba1)
5801         Backport:
5803 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
5805         Ignore invalid base64 encoded embedded images
5807         * lisp/net/shr.el (shr-image-from-data): Ignore invalid base64
5808         encoded embedded images (bug#22928).
5809         (cherry picked from commit f2da80d0e1ccd121c4891e869a45aeb9c6b1795d)
5811         Backport:
5813 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
5815         Fix <p> and <div> newlines with or without <li> in shr
5817         * lisp/net/shr.el (shr-ensure-newline): Respect that we're in
5818         a <li>, if we are, and don't insert newlines there.
5819         (shr-ensure-paragraph): When mixing newlines and paragraph
5820         ensurements, don't insert too many blank lines.
5821         (shr-tag-div): A <div> shouldn't introduce a paragraph, but a
5822         new line.
5823         (cherry picked from commit 292921facaff2f02ac4e8602c1f7ecbdcfe7ef45)
5825         Backport:
5827 2016-03-19  Eli Zaretskii  <eliz@gnu.org>
5829         Avoid errors in 'newline'
5831         * lisp/simple.el (newline): Don't barf if invoked with
5832         non-positive argument in the middle of a line.  (Bug#22490)
5834 2016-03-19  Michael Albinus  <michael.albinus@gmx.de>
5836         Fix Bug#23032
5838         * doc/misc/eshell.texi (Arguments): Mention the pipe symbol in
5839         remote file names.  (Bug#23032)
5841 2016-03-19  Eli Zaretskii  <eliz@gnu.org>
5843         Adjudicate review comments in abbrevs.texi
5845         * doc/lispref/abbrevs.texi (Abbrev Files, Abbrev Expansion):
5846         * doc/emacs/abbrevs.texi (Dabbrev Customization): State the
5847         default values of variables.  Suggested by Steve Byrne
5848         <sbb@penguinis.org>.  (Bug#23016)
5850         * admin/release-process (Check manuals): Mark files reviewed by
5851         Steve Byrne.
5853 2016-03-18  Dmitry Gutov  <dgutov@yandex.ru>
5855         Fixup the "normal" matcher; highlight global var symbols, too
5857         * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords): Highlight
5858         operator name symbols with the "normal" matcher (it actually
5859         needed updating).  Highlight global variable symbols, too.
5861 2016-03-18  Marcin Borkowski  <mbork@mbork.pl>
5863         Honor prefix arg in doc-view-next-line-or-next-page
5865         * lisp/doc-view.el (doc-view-next-line-or-next-page): Take the
5866         prefix argument into consideration when continuous scrolling is
5867         not in effect (i.e., by default) (bug#19559).
5869 2016-03-18  Paul Eggert  <eggert@cs.ucla.edu>
5871         Port to strict C99 offsetof
5873         * src/bidi.c (bidi_copy_it):
5874         * src/lisp.h (CHAR_TABLE_EXTRA_SLOTS):
5875         Use only a single identifier as the second argument of offsetof.
5876         Found by using clang -pedantic.
5878 2016-03-18  Paul Eggert  <eggert@cs.ucla.edu>
5880         Port to GTK with strict C11 compiler
5882         * src/gtkutil.c (xg_create_frame_widgets, xg_toggle_notify_cb):
5883         Cast from function type to void * where the C standard requires this.
5884         This works around a problem in the prototypes for
5885         g_signal_handler_find and g_signal_handlers_block_by_func, which
5886         use gpointer instead of GCallback.  Found by using gcc -pedantic.
5888 2016-03-18  Paul Eggert  <eggert@cs.ucla.edu>
5890         Port to GTK with strict C99 compiler
5892         * src/emacsgtkfixed.c: Use workaround for GNOME bug 683906 only
5893         in glib 2.35.6 and earlier, since the bug is fixed in 2.35.7.
5894         * src/emacsgtkfixed.c (EmacsFixedPrivate):
5895         * src/emacsgtkfixed.h (EmacsFixedClass):
5896         Remove duplicate typedef, which strict C99 does not allow (Bug#23003).
5898 2016-03-17  Anders Lindgren  <andlind@gmail.com>
5900         Avoid screen artifacts with new OS X visible bell after scrolling
5902         * src/nsterm.m (EmacsBell): Save NSView when displaying the
5903         visible bell and set `needsDisplay' when removed.
5904         (hide_bell): Trace.
5905         (ns_copy_bits): Trace.
5907 2016-03-17  Michael Albinus  <michael.albinus@gmx.de>
5909         Suppress some Tramp tests for OSX, do not merge with master
5911         * test/automated/tramp-tests.el (tramp--test-darwin-p): New defun.
5912         (tramp--test-utf8): Use it.  (Bug#22145)
5914 2016-03-17  Glenn Morris  <rgm@gnu.org>
5916         * lisp/progmodes/xref.el (xref-buffer-name, xref--window):
5917         Move definitions before use.
5919         * lisp/gnus/mm-decode.el (gnus-format-message): Autoload it.
5921         * lisp/mail/rmail.el (rmail-mime-entity-truncated): Declare.
5923 2016-03-17  Glenn Morris  <rgm@gnu.org>
5925         Address compilation warnings due to 2016-01-03 mml refactoring.
5927         * lisp/gnus/mml-sec.el (password-cache, mm-encode): Require.
5928         (message-options-get): Autoload.
5929         (message-options-set): Declare.
5930         (mml-secure-cache-passphrase, mml-secure-passphrase-cache-expiry):
5931         Simplify default value.
5932         * lisp/gnus/mml-smime.el (message-options-set): Remove declaration.
5933         * lisp/gnus/mml1991.el, lisp/gnus/mml2015.el:
5934         No longer a need for password-cache.
5936 2016-03-16  Stefan Monnier  <monnier@iro.umontreal.ca>
5938         * lisp/emacs-lisp/smie.el (smie-indent-keyword): Don't burp in strings
5940         (bug#22960).
5942 2016-03-16  Glenn Morris  <rgm@gnu.org>
5944         * lisp/dired-x.el (dired-omit-here-always): Correct error message
5945         for 2016-01-25 change.
5947         * lisp/dired-x.el (dired-omit-here-always): Replace undefined function
5948         removed 2016-01-30.
5950         * lisp/xml.el (xml-parse-tag-1): Replace undefined function.
5952 2016-03-16  Eli Zaretskii  <eliz@gnu.org>
5954         Avoid segfaults due to frame image cache being absent
5956         * src/image.c (cache_image): If the frame doesn't have an image
5957         cache, create it.  (Bug#23028)
5959 2016-03-16  Eli Zaretskii  <eliz@gnu.org>
5961         Improve documentation of glyphless-character display
5963         * doc/emacs/display.texi (Text Display): Document and index the
5964         'glyphless-char' face.
5966 2016-03-16  Dmitry Gutov  <dgutov@yandex.ru>
5968         Support safe navigation operator in non-SMIE indentation code
5970         * lisp/progmodes/ruby-mode.el (ruby-calculate-indent):
5971         Support safe navigation operator in non-SMIE indentation code.
5972         Cherry-picked from
5973         https://github.com/ruby/ruby/commit/68e16ddd7961b86e5013e62ae2954e88638de058.
5975 2016-03-16  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
5977         Move xsd:base64Binary decoding fix to debbugs.el 0.9.1
5979         * lisp/net/soap-client.el (soap-encode-xs-basic-type): Do not
5980         assume xsd:base64Binary values are UTF-8 strings.
5981         (soap-decode-xs-basic-type): Likewise.
5982         (soap-invoke): Document xsd:base64Binary handling.
5984 2016-03-15  Dmitry Gutov  <dgutov@yandex.ru>
5986         Fix Ruby's operator precedence
5988         * lisp/progmodes/ruby-mode.el (ruby-smie-grammar):
5989         Rearrange the smie-precs->prec2 form.
5991 2016-03-15  Dmitry Gutov  <dgutov@yandex.ru>
5993         (ruby-interpolation-inside-another-interpolation): New failing test
5995         * test/automated/ruby-mode-tests.el
5996         (ruby-interpolation-inside-another-interpolation):
5997         New failing test.
5999 2016-03-15  Paul Eggert  <eggert@cs.ucla.edu>
6001         Port to clang 3.7.0 on x86-64
6003         * configure.ac: Use AS_IF so that gl_WARN_ADD’s prerequisites are
6004         not done conditionally.  This helps clang, which needs
6005         -Wunknown-warning-option later when configured with warnings.
6006         * src/editfns.c (invalid_time): Now _Noreturn, since clang isn’t
6007         smart enough to figure this out on its own if warnings are enabled.
6008         (lisp_time_struct): Redo for clarity, and to pacify clang.
6009         * src/xfns.c (x_real_pos_and_offsets) [USE_XCB]: Don’t use
6010         uninitialized locals.  This avoids undefined behavior and pacifies
6011         clang.
6013 2016-03-15  Glenn Morris  <rgm@gnu.org>
6015         * test/automated/package-test.el (package-test-signed): Tweak skip
6016         condition, for hydra.
6018 2016-03-15  Paul Eggert  <eggert@cs.ucla.edu>
6020         Sync with gnulib
6022         This incorporates:
6023         2016-03-15 time_rz: port to clang -Wunused-const-variable
6024         2016-03-15 select: port more to Intel 2016.1.150 compiler
6025         * lib/sys_select.in.h, lib/time_rz.c: Copy from gnulib.
6027 2016-03-15  Eli Zaretskii  <eliz@gnu.org>
6029         Fix startup of "emacs -nw" on systems that CANNOT_DUMP
6031         * src/xdisp.c (syms_of_xdisp) <resize-mini-windows>: Initialize to
6032         nil.
6034         * lisp/loadup.el <resize-mini-windows>: Set to 'grow-only' after
6035         loading window.el.  (Bug#22975)
6037 2016-03-14  Dmitry Gutov  <dgutov@yandex.ru>
6039         Do not tokenize a comment before continuation as ';'
6041         * lisp/progmodes/ruby-mode.el (ruby-smie--implicit-semi-p):
6042         Account for a comment right after point.
6044 2016-03-14  Dmitry Gutov  <dgutov@yandex.ru>
6046         Don't misindent arguments of a method call inside continuation
6048         * lisp/progmodes/ruby-mode.el (ruby-smie-rules):
6049         Use smie-indent-virtual instead of smie-rule-parent (bug#23015).
6050         Simplify the traversal loop.
6052 2016-03-14  Stefan Monnier  <monnier@iro.umontreal.ca>
6054         * src/keyboard.c (echo_keystrokes_p): Don't test cursor_in_echo_area
6056         (read_key_sequence): Test it here, as before.
6057         (bug#22825).
6059 2016-03-14  Paul Eggert  <eggert@cs.ucla.edu>
6061         ASCII-only etc/NEWS etc.
6063         * etc/NEWS, nextstep/README: Revert the recently-added curved
6064         quotes, and stick to ASCII.  This typically involves replacing
6065         curved with straight quotes.  Since etc/NEWS is viewed so often by
6066         UTF-8-ignorant tools, rewrite its non-ASCII text to spell out
6067         Unicode, e.g., replace ‘‒’ with ‘U+2012 (FIGURE DASH)’.
6069 2016-03-14  Alan Mackenzie  <acm@muc.de>
6071         Fix a cacheing bug, which led to inordinately slow c-beginning-of-defun.
6073         * lisp/progmodes/cc-defs.el (c-self-bind-state-cache): New macro.
6075         * lisp/progmodes/cc-engine.el (c-ssb-lit-begin): Always call c-parse-state
6076         rather than just using the cache variable c-state-cache.
6077         (c-syntactic-skip-backward): Invoke c-self-bind-state-cache to isolate calls
6078         to c-parse-state from other uses of the parse state cache.
6080         * lisp/progmodes/cc-cmds.el (c-beginning-of-defun, c-end-of-defun): Invoke
6081         c-self-bind-state-cache around the processing, replacing flawed bindings of
6082         c-state-cache.
6084 2016-03-14  Alan Mackenzie  <acm@muc.de>
6086         Fix a cacheing bug, which led to inordinately slow c-beginning-of-defun.
6088         * lisp/progmodes/cc-defs.el (c-self-bind-state-cache): New macro.
6090         * lisp/progmodes/cc-engine.el (c-ssb-lit-begin): Always call c-parse-state
6091         rather than just using the cache variable c-state-cache.
6092         (c-syntactic-skip-backward): Invoke c-self-bind-state-cache to isolate calls
6093         to c-parse-state from other uses of the parse state cache.
6095         * lisp/progmodes/cc-cmds.el (c-beginning-of-defun, c-end-of-defun): Invoke
6096         c-self-bind-state-cache around the processing, replacing flawed bindings of
6097         c-state-cache.
6099 2016-03-14  Kaushal Modi  <kaushal.modi@gmail.com>
6101         Fix Isearch prompt when invoked with an argument
6103         * lisp/isearch.el (isearch--describe-regexp-mode): With
6104         `search-default-mode' set to nil, if user does C-u C-s, the minibuffer
6105         now displays "Regexp I-search: " again.  But if the user has set
6106         `search-default-mode' to t, and then does C-s, the minibuffer now
6107         displays "I-search: " because the default search mode is now regexp
6108         mode.  Comments have been added to explain the priority of conditions
6109         in the `cond' form.  (Bug#22991)
6111 2016-03-14  Cesar Quiroz  <cesar.quiroz@gmail.com>  (tiny change)
6113         Fix a typo in the Emacs manual
6115         * doc/emacs/maintaining.texi (VC Directory Commands): Fix a typo
6116         in a command name.
6118 2016-03-14  Paul Eggert  <eggert@cs.ucla.edu>
6120         Curved quotes in etc/NEWS etc.
6122         * etc/NEWS, nextstep/README: Prefer curved quotes in the
6123         recently-changed text documentation.  See:
6124         http://lists.gnu.org/archive/html/emacs-devel/2016-03/msg00860.html
6126 2016-03-14  Paul Eggert  <eggert@cs.ucla.edu>
6128         Fix some single quotes in documentation
6130         * doc/emacs/anti.texi (Antinews): Avoid confusion in info and PDF
6131         when documenting quoting styles.
6132         * etc/NEWS, nextstep/README: In these plain text files, quote
6133         'like this' consistently, rather than also (sometimes) ‘like this’
6134         or (more often) `like this'.
6136 2016-03-13  Dmitry Gutov  <dgutov@yandex.ru>
6138         Make lisp-completion-at-point's argument optional
6140         * lisp/progmodes/elisp-mode.el (lisp-completion-at-point): Make
6141         the argument optional, like it was before the rename.
6143 2016-03-13  Dmitry Gutov  <dgutov@yandex.ru>
6145         Tweak the left precedence of '=>'
6147         * lisp/progmodes/ruby-mode.el (ruby-smie-grammar): Tweak the left
6148         precedence of '=>', to improve indentation and sexp navigation.
6150 2016-03-13  Dmitry Gutov  <dgutov@yandex.ru>
6152         Indent '.' relative to the first sibling expression
6154         * lisp/progmodes/ruby-mode.el (ruby-smie-rules):
6155         Indent '.' relative to the first sibling expression, instead of the
6156         parent token (bug#17213).
6158 2016-03-13  Dmitry Gutov  <dgutov@yandex.ru>
6160         Make '.' associative, for easier sexp navigation
6162         * lisp/progmodes/ruby-mode.el (ruby-smie-grammar):
6163         Make '.' associative, for easier sexp navigation.
6165 2016-03-13  Phillip Lord  <phillip.lord@russet.org.uk>
6167         Revert "Simplify "Visit New File" to "New File""
6169         This reverts commit d457fd9dc782465e1547f74021390c9d5951d6af.
6171 2016-03-12  Phillip Lord  <phillip.lord@russet.org.uk>
6173         Simplify "Visit New File" to "New File"
6175         * doc/emacs/files.texi, lisp/menu-bar.el (menu-bar-file-menu),
6176           lisp/startup.el(normal-mouse-start-screen,
6177           normal-no-mouse-startup-screen): Change label "Visit New File" to "New
6178           File".
6180 2016-03-12  Eli Zaretskii  <eliz@gnu.org>
6182         Update Unicode notes for importing a new Unicode version
6184         * admin/notes/unicode: Mention the need to update otf-script-alist
6185         in fontset.el when importing data files from a new Unicode
6186         version.
6188 2016-03-12  Eli Zaretskii  <eliz@gnu.org>
6190         Import new data files from Unicode 9.0.0beta
6192         * admin/unidata/UnicodeData.txt:
6193         * admin/unidata/Blocks.txt:
6194         * admin/unidata/BidiMirroring.txt:
6195         * admin/unidata/BidiBrackets.txt: Update from Unicode 9.0.0beta.
6196         * admin/unidata/unidata-gen.el (unidata-gen-files): Bind
6197         'coding-system-for-read' to 'utf-8, as various Unicode data files
6198         now actually use non-ASCII characters.
6199         (unidata-setup-list, unidata-get-name): Support the new Tangut
6200         Ideographs block.
6202         * lisp/international/characters.el (standard-case-table): Add new
6203         characters from Unicode 9.0.0.
6204         (standard-category-table): Add Arabic block u+08A0..u+08FF.  Add
6205         Cyrillic Extended-C block.
6206         (char-width-table): Update ranges per Unicode 9.0.0.
6207         * lisp/international/fontset.el (script-representative-chars): Add
6208         new scripts defined by Unicode 9.0.0.
6209         (otf-script-alist): Add new OTF script tags.
6210         * lisp/international/mule-cmds.el (ucs-names): Update ranges per
6211         Unicode 9.0.0 additions.
6213 2016-03-12  Eli Zaretskii  <eliz@gnu.org>
6215         Avoid errors in forms-mode when default major mode is text
6217         * lisp/forms.el (forms-mode): Bind
6218         change-major-mode-with-file-name to nil when calling
6219         set-visited-file-name.  (Bug#22982)
6221 2016-03-12  Eli Zaretskii  <eliz@gnu.org>
6223         Avoid crashes at startup on systems that CANNOT_DUMP
6225         * src/xdisp.c (syms_of_xdisp) <redisplay--inhibit-bidi>: New
6226         boolean variable.
6227         (init_iterator, reseat_to_string)
6228         (Fcurrent_bidi_paragraph_direction)
6229         (Fbidi_find_overridden_directionality): Use
6230         redisplay--inhibit-bidi instead of purify-flag, to determine when
6231         it's safe to reorder bidirectional text.
6233         * lisp/loadup.el (redisplay--inhibit-bidi): Set to t at the
6234         beginning of the file.  Reset to nil when charprop.el is
6235         successfully loaded, or when we are going to dump, whichever
6236         happens last.  (Bug#22975)
6238 2016-03-12  Eli Zaretskii  <eliz@gnu.org>
6240         Fix documentation of seq.el functions
6242         * doc/lispref/sequences.texi (Sequence Functions): Fix typos.  Add
6243         cross-references.  Fix formatting.  (Bug#22992)
6245 2016-03-11  Dmitry Gutov  <dgutov@yandex.ru>
6247         Support Ruby 2.3.0's safe navigation operator
6249         * lisp/progmodes/ruby-mode.el (ruby-smie--forward-token)
6250         (ruby-smie--backward-token): Tokenize '&.' as '.'.
6251         (ruby-smie--implicit-semi-p): Check for possible '&' before '.'.
6253         * test/indent/ruby.rb: Add an example using safe navigation
6254         operator.  Fix a syntax error in existing example.
6256 2016-03-11  John Wiegley  <johnw@newartisans.com>
6258         Update Emacs manual section related to character folding
6260         * doc/emacs/search.texi: Character folding is not on by default.
6262 2016-03-11  Eli Zaretskii  <eliz@gnu.org>
6264         Update admin/notes/unicode
6266         * admin/notes/unicode: Update the list of files from the UCD we
6267         are using.  Mention the possible need to change 'ucs-names' when
6268         importing a new version of the Unicode Standard.
6270 2016-03-10  Dmitry Gutov  <dgutov@yandex.ru>
6272         Add symref-filepattern entries for c?perl-mode
6274         * lisp/cedet/semantic/symref/grep.el
6275         (semantic-symref-filepattern-alist): Add entries for perl-mode and
6276         cperl-mode.
6278 2016-03-10  Ken Raeburn  <raeburn@raeburn.org>
6280         Don't use XRANDR 1.3 extensions if the server doesn't support them.
6282         * src/xterm.h (struct x_display_info): Add fields to save XRANDR
6283         version number.
6284         * src/xfns.c (x_get_monitor_attributes): Save the version numbers
6285         after querying the X server.
6286         (x_get_monitor_attributes_xrandr): Don't use XRRGetOutputPrimary or
6287         XRRGetScreenResourcesCurrent if the server doesn't support at least
6288         RANDR version 1.3.  Conditionalize the code blocks on compiling
6289         against library version 1.3 or better, rather than feature tests for
6290         each function.
6291         * configure.ac: Stop testing for those two functions.
6293 2016-03-10  Paul Eggert  <eggert@cs.ucla.edu>
6295         Sync with gnulib
6297         This incorporates:
6298         2016-03-08 intprops: make .h file license match module
6299         2016-03-08 acl: fix missing return on Cygwin
6300         2016-03-05 extern-inline: port to PGI CC
6301         * doc/misc/texinfo.tex, lib/intprops.h, lib/set-permissions.c:
6302         * m4/extern-inline.m4:
6303         Copy from gnulib.
6305 2016-03-10  Paul Eggert  <eggert@cs.ucla.edu>
6307         Rework C source files to avoid ^(
6309         Work around Bug#22884 by rewording comments and strings to avoid ‘(’
6310         at the start of a line unless it starts a function.  This change
6311         is a short-term hack; in the longer run we plan to fix cc-mode’s
6312         performance for C files that have ‘(’ at the start of a line in a
6313         comment or string.
6315 2016-03-10  Eli Zaretskii  <eliz@gnu.org>
6317         By default, etags produces unqualified Perl tag names
6319         * lib-src/etags.c (Perl_functions): Produce unqualified names,
6320         unless -Q was specified.
6321         (print_help): Update the description of -Q.
6323         * doc/man/etags.1: Update the documentation of -Q.
6325         * test/etags/ETAGS.good_1:
6326         * test/etags/ETAGS.good_2:
6327         * test/etags/ETAGS.good_3:
6328         * test/etags/ETAGS.good_4:
6329         * test/etags/ETAGS.good_5:
6330         * test/etags/CTAGS.good: Adapt the expected test results to the
6331         changed Perl functionality.
6333 2016-03-10  Dmitry Gutov  <dgutov@yandex.ru>
6335         Indent methods with keyword names correctly
6337         * lisp/progmodes/ruby-mode.el (ruby-smie--at-dot-call):
6338         Rename to ruby-smie--before-method-name.  Now also check if we're
6339         after a 'def' keyword.  Update both callers.
6341 2016-03-10  Dmitry Gutov  <dgutov@yandex.ru>
6343         Propertize character literals and special global variables differently
6345         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize): Propertize
6346         character literals and global variables with special names with
6347         prefix and symbol syntax classes, for SMIE to tokenize them
6348         together automatically.
6349         (ruby-font-lock-keywords): Fix an old regression in highlighting
6350         character literals.
6352 2016-03-09  John Wiegley  <johnw@newartisans.com>
6354         Change how /etc/NEWS presents character folding
6356         * NEWS: Note that character folding is no longer the default.
6358 2016-03-09  John Wiegley  <johnw@newartisans.com>
6360         Revert "Revert "Backport: * lisp/isearch.el: Turn char-folding off by default""
6362         This reverts commit a91b4b51ddf2575d821adb8b84fdf32cff83886e.
6364 2016-03-09  Andreas Schwab  <schwab@linux-m68k.org>
6366         Properly handle lambda as read function (bug 22961)
6368         * src/lread.c (readchar): Be more strict about checking for
6369         string in cons for read_vector.
6370         (unreadchar): Likewise.
6372 2016-03-09  Dmitry Gutov  <dgutov@yandex.ru>
6374         Propertize operator symbol names with symbol syntax class
6376         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
6377         Do it here.
6378         (ruby-font-lock-keywords): Instead of handling them here.  Leave
6379         highlighting them to the "normal" matcher, because now we can.
6380         (ruby-smie--forward-token, ruby-smie--backward-token):
6381         Likewise, don't special-case operator symbols anymore.
6382         (ruby-smie--args-separator-p): Simplify the regexp, match operator
6383         names with \s_.
6384         (ruby-smie--implicit-semi-p): Handle the special cases of ? and =
6385         at EOL the same way: check if the character has been assigned the
6386         symbol syntax class by syntax-propertize.
6388 2016-03-09  Dmitry Gutov  <dgutov@yandex.ru>
6390         Stop recognizing :#{} as symbol in ruby-mode
6392         * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords): Remove
6393         the weird part that recognized colon followed by interpolation
6394         construct without quotes (e.g. ':#{abc}') as symbol, which is just a
6395         syntax error in any modern version of Ruby.  Fix nearby bug reference.
6397 2016-03-09  Dmitry Gutov  <dgutov@yandex.ru>
6399         Allow using the left shift operator without spaces on both sides
6401         * lisp/progmodes/ruby-mode.el (ruby-singleton-class-p): Rename to
6402         ruby-verify-heredoc, reverse the meaning of the return value, and
6403         short-circuit if preceded by a symbol not separated by whitespace.
6405         * test/automated/ruby-mode-tests.el (ruby-no-heredoc-left-shift)
6406         (ruby-no-heredoc-class-self): New tests.
6408 2016-03-08  Andreas Schwab  <schwab@linux-m68k.org>
6410         Properly handle unquoting in wdired (bug 22938)
6412         The recorded old names are not quoted, don't unquote them.
6414         * lisp/wdired.el (wdired-normalize-filename): Add argument
6415         unquotep, only unquote if non-nil.
6416         (wdired-get-filename): Don't unquote the old file name.
6417         (wdired-get-previous-link): Always unquote.
6419 2016-03-06  Dmitry Gutov  <dgutov@yandex.ru>
6421         Allow splat operator before percent literal
6423         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
6424         Allow splat operator before percent literal.
6426 2016-03-06  Dmitry Gutov  <dgutov@yandex.ru>
6428         Don't apply the return value of goto-char as syntax class
6430         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize): Don't
6431         apply the return value of goto-char as syntax class.
6433 2016-03-06  Dmitry Gutov  <dgutov@yandex.ru>
6435         Guard against nested percent literals
6437         * lisp/progmodes/ruby-mode.el
6438         (ruby-syntax-propertize-percent-literal):
6439         Don't check the syntax status.
6440         (ruby-syntax-propertize): Check it here.  And also guard against
6441         being in a larger percent literal.
6443         * test/automated/ruby-mode-tests.el
6444         (ruby-no-nested-percent-literals): New test.
6446 2016-03-06  Dmitry Gutov  <dgutov@yandex.ru>
6448         Recognize iuwu-mod after an escaped newline
6450         * lisp/progmodes/ruby-mode.el (ruby-smie--bosp): Check if the
6451         newline is escaped.
6452         (ruby-smie-rules): Indent iuwu-mod after an escaped newline
6453         correctly.
6455 2016-03-06  Andreas Schwab  <schwab@linux-m68k.org>
6457         Fix symbolic mode string conversion for s and t
6459         * lisp/files.el (file-modes-char-to-right): Fix values for ?s and
6460         ?t.
6461         (file-modes-symbolic-to-number): Default to a for ts permissions.
6463 2016-03-06  Eli Zaretskii  <eliz@gnu.org>
6465         Update 'ucs-names' database
6467         * lisp/international/mule-cmds.el (ucs-names): Update used and
6468         unused ranges from the latest UnicodeData.txt.
6470 2016-03-06  Eli Zaretskii  <eliz@gnu.org>
6472         Improve doc string of 'shell-command'
6474         * lisp/simple.el (shell-command): Mention that COMMAND is prompted
6475         for.  (Bug#22926)
6477 2016-03-06  Eli Zaretskii  <eliz@gnu.org>
6479         Make the code in movemail_strftime more general
6481         * lib-src/movemail.c (movemail_strftime): Transform the format
6482         string passed by the caller instead of using a separate format
6483         string.
6485 2016-03-06  Eli Zaretskii  <eliz@gnu.org>
6487         Speed up redisplay of binary files with long series of nulls
6489         * src/bidi.c (bidi_resolve_weak): Avoid entering a loop searching
6490         for a character needed for resolving the type of a series of BN
6491         and ET characters, as required by rule W5 of UAX#9, if the results
6492         of the resolution are known in advance, because we are at level
6493         zero, and the previous strong character was L.
6494         (bidi_resolve_neutral): Partially resurrect the optimization for a
6495         long series of control characters in an otherwise strictly L2R
6496         text.
6497         (bidi_level_of_next_char): Don't enter the loop that searches for
6498         a paragraph separator if the current character is already at base
6499         embedding level.  (Bug#22739)
6501 2016-03-05  Dmitry Gutov  <dgutov@yandex.ru>
6503         Remove the highlighting support for quoting 'like this' inside Lisp docstrings
6505         Remove the highlighting support for quoting 'like this' inside
6506         Lisp docstrings.  This part of
6507         c4151ebe15479de4c2e511b068cdf9af6a4576cf seems to have been
6508         unintentional, considering substitute-command-keys gives wrong
6509         output for such usage.
6510         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2)
6511         (lisp-cl-font-lock-keywords-2): Do not highlight text between two
6512         straight quotes as symbol.
6514 2016-03-05  Paul Eggert  <eggert@cs.ucla.edu>
6516         Restore leading space in movemail pop output
6518         * lib-src/movemail.c (movemail_strftime) [WINDOWSNT]: New function.
6519         (strftime) [WINDOWSNT]: New macro.
6520         (mbx_delimit_begin): Go back to previous version of this code,
6521         now that there’s a special-purpose WINDOWSNT implementation
6522         that should do the right thing.  That way, the output continues
6523         to use leading space rather than leading zero for day of month.
6525 2016-03-05  Eli Zaretskii  <eliz@gnu.org>
6527         Fix bidi-paragraph-direction in Rmail view buffer
6529         * lisp/mail/rmail.el (rmail-show-message-1): Reset
6530         bidi-paragraph-direction to nil before formatting the message for
6531         display.
6533 2016-03-05  Dmitry Gutov  <dgutov@yandex.ru>
6535         Don't misindent computed property generator methods
6537         * lisp/progmodes/js.el (js--looking-at-operator-p):
6538         Don't misindent computed property generator methods
6539         (https://github.com/mooz/js2-mode/issues/317).
6541 2016-03-05  Eli Zaretskii  <eliz@gnu.org>
6543         Fix mbox files produced by movemail on MS-Windows
6545         * lib-src/movemail.c (mbx_delimit_begin): Use portable strftime
6546         format specifiers, as at least the MS-Windows version of strftime
6547         doesn't support %e and %T.
6549 2016-03-04  Paul Eggert  <eggert@cs.ucla.edu>
6551         doc string file descriptor exhaustion fix
6553         * src/doc.c (get_doc_string): Move newly-added check to a better
6554         location (Bug#22814).
6556 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
6558         Fix Bug#22814
6560         * src/doc.c (get_doc_string): Raise an error in case too many
6561         files are open.  (Bug#22814)
6563 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
6565         Fix insertion of edited servers in the dribble file
6567         * lisp/gnus/gnus-srvr.el (gnus-server-update-server): Don't
6568         insert explicit newlines, because they're quoted (bug#22903).
6570         Backport:
6572         (cherry picked from commit ca4e30058eba0531f38fff75f14734acffab84ea)
6574 2016-03-04  Martin Rudalics  <rudalics@gmx.at>
6576         Fix previous fix of enlarge-/shrink-window
6578         * lisp/window.el (enlarge-window, shrink-window): Consistently
6579         signal user-error instead of error.  Resize minibuffer window by
6580         delta lines instead of pixels.  When a window cannot be resized,
6581         signal an error only when this function was invoked by a command
6582         in the enlarge-/shrink-window group (this restores the behavior
6583         before the fix of bug#22723 for the non-interactive case).
6585 2016-03-03  Artur Malabarba  <bruce.connor.am@gmail.com>
6587         * lisp/isearch.el (isearch-define-mode-toggle): Fix toggling logic
6589 2016-03-03  Mark Oteiza  <mvoteiza@udel.edu>
6591         Complete temperature units in calc-convert-temperature
6593         * lisp/calc/calc-units.el (calc-convert-temperature): Complete with
6594         temperature units in math-standard-units.
6596 2016-03-02  Dmitry Gutov  <dgutov@yandex.ru>
6598         Make sure to use case-sensitive search
6600         * lisp/progmodes/xref.el (xref-collect-references): Make sure to
6601         use case-sensitive search.
6603 2016-03-02  Ulf Jasper  <ulf.jasper@web.de>
6605         Prevent infinite loop on not-well-formed xml. (Bug#16344)
6607         * lisp/xml.el (xml-parse-tag-1): Prevent inifinite loop. (Bug#16344)
6608         * test/automated/xml-parse-tests.el (xml-parse-tests--bad-data): Add
6609           test cases for Bug#16344.
6611 2016-03-02  Alan Third  <alan@idiocy.org>
6613         Add the missing test case for the previous patch
6615         lisp/dabbrev.el (dabbrev--substitute-expansion): Return EXPANSION after
6616         any processing.
6617         lisp/dabbrev.el (dabbrev-expand): Set EXPANSION to the return value of
6618         DABBREV--SUBSTITUTE-EXPANSION.
6619         test/automated/dabbrev-tests.el (dabbrev-expand-test): Test for bug#1948.
6621 2016-03-02  Alan Third  <alan@idiocy.org>
6623         Use the correct dabbrev expansion
6625         lisp/dabbrev.el (dabbrev--substitute-expansion): Return EXPANSION after
6626         any processing.
6627         lisp/dabbrev.el (dabbrev-expand): Set EXPANSION to the return value of
6628         DABBREV--SUBSTITUTE-EXPANSION.
6629         test/automated/dabbrev-tests.el (dabbrev-expand-test): Test for bug#1948.
6631 2016-03-02  Nicolas Petton  <nicolas@petton.fr>
6633         Bump version to 25.0.92
6635         * README:
6636         * configure.ac:
6637         * msdos/sed2v2.inp: Bump version to 25.0.92.
6639 2016-03-02  Nicolas Petton  <nicolas@petton.fr>
6641         * etc/AUTHORS: Update the AUTHORS file
6643 2016-03-02  Nicolas Petton  <nicolas@petton.fr>
6645         authors.el updates
6647         * admin/authors.el (authors-ignored-files): Addition.
6649 2016-03-02  Michael Albinus  <michael.albinus@gmx.de>
6651         Fix Bug#22859
6653         * lisp/filenotify.el (file-notify-callback): Return a `deleted'
6654         event in case of kqueue and file1 is nil.  (Bug#22859)
6656 2016-03-01  Eli Zaretskii  <eliz@gnu.org>
6658         Fix reordering of bidi text in an isolate inside an override
6660         * src/bidi.c (bidi_resolve_explicit): Override the orig_type value
6661         of FSI with either LRI or RLI, as determined by the first strong
6662         directional character in the isolate.  This prevents failure to
6663         isolate when the FSI...PDI text is inside a directional override.
6664         (Bug#22786)
6666 2016-03-01  Alan Mackenzie  <acm@muc.de>
6668         Document c-guess-basic-syntax in the CC Mode manual.
6670         * doc/misc/cc-mode.texi (Syntactic Analysis): Document the function, adding
6671         pxrefs to Custom Line-Up and Other Indentation.
6672         (Custom Line-Up): Add a note on using c-guess-basic-syntax with a pxref to
6673         Syntactic Analysis.
6675 2016-03-01  Michael Albinus  <michael.albinus@gmx.de>
6677         Fix targets in test/automated/Makefile.in
6679         * test/automated/Makefile.in: Use $(SELECTOR_DEFAULT) also for
6680         empty target and target all.
6682 2016-03-01  Leo Liu  <sdl.web@gmail.com>
6684         Comment on last change to define-derived-mode
6686         * lisp/emacs-lisp/derived.el (define-derived-mode): Add comment.
6688 2016-03-01  Lars Ingebrigtsen  <larsi@gnus.org>
6690         Allow binding `url-mime-accept-string'
6692         * lisp/url/url-http.el (url-http): Allow binding
6693         `url-mime-accept-string' (bug#22855).
6695         Backport:
6697         (cherry picked from commit 144bb0cf322b9756d29def3e27a42303e2edce43)
6699 2016-03-01  Lars Ingebrigtsen  <larsi@gnus.org>
6701         Also allow setting the paragraph direction to nil
6703         * lisp/net/eww.el (eww-toggle-paragraph-direction): Also allow
6704         setting the paragraph direction to nil ("auto").
6706 2016-02-29  Anders Lindgren  <andlind@gmail.com>
6708         Made the new OS X visible bell more visible.
6710         * src/nsterm.m: (EmacsBell:init:) Scaled up the visible bell
6711           "caution" image five times, as the image in its original size
6712           was hard to see.
6714 2016-02-29  Lars Ingebrigtsen  <larsi@gnus.org>
6716         Use the correct background color when filling nested <divs>
6718         * lisp/net/shr.el (shr-face-background): Return the first
6719         background, because that's the one that's visible (bug#22680).
6721         Backport:
6723         (cherry picked from commit cad0bc70558f9c28c808711c5295dec9fc5ad6e5)
6725 2016-02-29  Lars Ingebrigtsen  <larsi@gnus.org>
6727         Make <div> in <li> not insert extra newlines
6729         * lisp/net/shr.el (shr-tag-div): Make <div> in <li> not insert
6730         extra newlines (bug#19587).
6732         Backport:
6734         (cherry picked from commit 379a846b8548dc32a9019ef0a37c02f62cd9bad1)
6736 2016-02-29  Dmitry Gutov  <dgutov@yandex.ru>
6738         Uncomment the next-error-function integration in xref
6740         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
6741         Uncomment the next-error-function integration
6742         (http://debbugs.gnu.org/cgi/bugreport.cgi?bug=20489#110).
6744 2016-02-29  Dmitry Gutov  <dgutov@yandex.ru>
6746         Remove the word "valid", to avoid ambiguity
6748         * doc/emacs/maintaining.texi (Identifier Search)
6749         (Looking Up Identifiers): Remove the word "valid" (bug#22692).
6751 2016-02-28  Michael Albinus  <michael.albinus@gmx.de>
6753         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
6755 2016-02-28  Michael Albinus  <michael.albinus@gmx.de>
6757         Set auto-revert-use-notify to nil in global-auto-revert-mode.  (Bug#22814)
6759         * etc/NEWS:
6760         * etc/PROBLEMS: Mention this.
6762         * lisp/autorevert.el (global-auto-revert-mode): Set
6763         `auto-revert-use-notify' to nil.  (Bug#22814)
6765 2016-02-28  Paul Eggert  <eggert@cs.ucla.edu>
6767         * etc/TODO: Minor quoting and grammar fixes.
6769 2016-02-28  Friedrich Beckmann  <friedrich.beckmann@gmx.de>  (tiny change)
6771         Fix ModelSim error parsing
6773         * lisp/progmodes/vhdl-mode.el (vhdl-compiler-alist): Fix
6774         ModelSim error parsing (bug#5768).
6776 2016-02-28  Lars Ingebrigtsen  <larsi@gnus.org>
6778         Make parse-time-string-chars faster
6780         * lisp/calendar/parse-time.el (parse-time-string-chars): Clean
6781         up the code (backport:).
6783 2016-02-28  Lars Ingebrigtsen  <larsi@gnus.org>
6785         Add a eww command to toggle paragraph direction
6787         * lisp/net/eww.el (eww-toggle-paragraph-direction): New
6788         command and keystroke.
6790         * doc/misc/eww.texi (Advanced): Mention the `D' command.
6792 2016-02-27  Glenn Morris  <rgm@gnu.org>
6794         * nextstep/WISHLIST: Merge into etc/TODO and remove.
6796         * etc/TODO: Merge in items from nextstep/WISHLIST.
6797         * nextstep/README: Update for this change.
6799 2016-02-27  Andreas Schwab  <schwab@linux-m68k.org>
6801         Fix char signedness issue in bidi code
6803         * src/dispextern.h (struct bidi_t): Change type of resolved_level
6804         and isolate_level to signed char.  (Bug#22830)
6806 2016-02-27  Andreas Schwab  <schwab@linux-m68k.org>
6808         * lib-src/pop.c (socket_connection): Fix format string.
6810 2016-02-27  Eli Zaretskii  <eliz@gnu.org>
6812         Avoid inflooping in thing-at-point-looking-at
6814         * lisp/thingatpt.el (thing-at-point-looking-at): Avoid inflooping
6815         with regular expressions whose matching doesn't move point.
6816         (Bug#22756)
6817         Describe the argument DISTANCE in the doc string.
6819 2016-02-27  Leo Liu  <sdl.web@gmail.com>
6821         * lisp/emacs-lisp/derived.el (define-derived-mode): Revert indent change.
6823 2016-02-26  Michael Albinus  <michael.albinus@gmx.de>
6825         etc/PROBLEMS: Mention problems with using file descriptors
6827         * etc/PROBLEMS: Mention problems with using file descriptors
6828         of kqueue file notification library.
6830 2016-02-26  Kaushal Modi  <kaushal.modi@gmail.com>
6832         * lisp/apropos.el (apropos-variable): Doc fix.  (Bug#22813).
6834 2016-02-25  Eli Zaretskii  <eliz@gnu.org>
6836         Remove unneeded workaround in xftfont.c
6838         * src/xftfont.c (xftfont_open): Remove "dirty workaround" for
6839         XftTextExtents8 behavior, as it is no longer needed.  Suggested by
6840         Fangwen Yu <yynyygy@gmail.com>.  (Bug#22383)
6842 2016-02-25  Stefan Monnier  <monnier@iro.umontreal.ca>
6844         * lisp/saveplace.el (save-place-local-mode): New minor mode
6846         (toggle-save-place): Define as obsolete alias.
6847         (save-place--setup-hooks): New function.
6848         (save-place-mode): Use it.
6850 2016-02-25  Eli Zaretskii  <eliz@gnu.org>
6852         Fix redisplay on a TTY after 'make-frame'
6854         * src/xdisp.c (clear_garbaged_frames): Don't clear/redraw a
6855         garbaged TTY frame if it is not the selected frame.  (Bug#22794)
6857 2016-02-25  Alan Mackenzie  <acm@muc.de>
6859         Make double-click-1 work with unbalanced parens in CC Mode.  Fixes bug#5560.
6861         * lisp/mouse.el (mouse-start-end): check the syntax of alleged parens with
6862         `syntax-after' to ensure syntax-table text properties are respected.
6864 2016-02-25  Magnus Henoch  <magnus.henoch@gmail.com>
6866         Input method polish-slash should not use keyboard translation
6868         * lisp/leim/quail/latin-pre.el ("polish-slash"): Input method
6869         polish-slash should not use keyboard translation (bug#19081).
6871 2016-02-25  Chris Feng  <chris.w.feng@gmail.com>
6873         Fix an assertion
6875         * src/dispnew.c (clear_glyph_matrix_rows): Test matrix->nrows == 0 (which
6876         implies start == 0) separately.
6878 2016-02-24  Eli Zaretskii  <eliz@gnu.org>
6880         Fix 'toggle-save-place'
6882         * lisp/saveplace.el (toggle-save-place): Set up hooks necessary to
6883         support save-place in the buffer.  Autoload the command.
6885 2016-02-24  Stefan Monnier  <monnier@iro.umontreal.ca>
6887         * src/keyboard.c: Don't inadvertently set immediate_echo (bug#22581)
6889         * src/keyboard.c (read_key_sequence): Don't inadvertently set
6890         immediate_echo when we don't want any echo-keystrokes.
6891         (echo_keystrokes_p): Move earlier.
6893 2016-02-24  Chris Zheng  <chriszheng99@gmail.com>  (tiny change)
6895         Minor fixes in calculator.el
6897         * lisp/calculator.el (calculator-mode-map): Bind `E' for
6898         `calculator-exp'.
6899         (calculator-last-input): Fix a bug with pressing F1.
6900         (Bug#20764)
6902 2016-02-24  Anders Lindgren  <andlind@gmail.com>
6904         Update HISTORY section in readme for the NextStep interface.
6906         * nextstep/README: Update HISTORY after suggestion
6907         from former maintainer Adrian Robert.
6909 2016-02-24  Eli Zaretskii  <eliz@gnu.org>
6911         Improve documentation of 'save-place-mode'
6913         * lisp/saveplace.el (toggle-save-place): Update the doc string wrt
6914         turning on 'save-place-mode' globally.
6916         * etc/NEWS: Mention the need to call 'save-place-mode' for turning
6917         on the mode in all buffers.
6919 2016-02-24  Chris Feng  <chris.w.feng@gmail.com>  (tiny change)
6921         Allocate glyph matrices for the initial frame
6923         * src/frame.c (make_initial_frame): Allocate glyph matrices (Bug#22787).
6925         * src/dispnew.c (clear_glyph_matrix_rows): matrix->nrows can be 0.
6927 2016-02-24  Lars Ingebrigtsen  <larsi@gnus.org>
6929         Fix white space in last checkin
6931 2016-02-24  Dima Kogan  <gnuplot@dima.secretsauce.net>
6933         Make `insert-pair' always leave the cursor where documented
6935         * lisp/emacs-lisp/lisp.el (insert-pair): The docstring of
6936         insert-pair states that after insertion, the point ends up
6937         after the opening character. This was not true if the pair was
6938         inserted to surround a region (bug#16949).
6940 2016-02-24  Kaushal Modi  <kaushal.modi@gmail.com>
6942         etc/NEWS: Mention the new second parameter to `package-install'
6944         * etc/NEWS: Mention the new second parameter to
6945         `package-install' (bug#22784).
6947 2016-02-24  John F. Trudeau  <JFTrudeau@aetna.com>  (tiny change)
6949         Highlight assignments in Makefiles more correctly
6951         * lisp/progmodes/make-mode.el (makefile-macroassign-regex):
6952         Highlight assignments preceded by a TAB character correctly
6953         (bug#20787).
6956         Backport:
6958         (cherry picked from commit bbd86c5642bd62c43d72391669f28eaa14459fd5)
6960 2016-02-23  Eli Zaretskii  <eliz@gnu.org>
6962         Improve documentation of focus-related hooks
6964         * doc/lispref/commands.texi (Focus Events): Mention focus-related
6965         hooks.  (Bug#21728)
6967 2016-02-23  Eli Zaretskii  <eliz@gnu.org>
6969         Further improve doc string of 'disable-point-adjustment'
6971         * src/keyboard.c (syms_of_keyboard): <disable-point-adjustment>
6972         <global-disable-point-adjustment>: Clarify doc strings.  (Bug#22771)
6974 2016-02-23  Michael Albinus  <michael.albinus@gmx.de>
6976         Further adaptions in file-notify-tests.el for w32notify
6978         * test/automated/file-notify-tests.el
6979         (file-notify--test-read-event-timeout, file-notify--test-timeout):
6980         Decrease values.
6981         (file-notify-test03-autorevert)
6982         (file-notify-test04-file-validity)
6983         (file-notify-test05-dir-validity): Run tests also for w32notify.
6984         (file-notify-test08-watched-file-in-watched-dir):
6985         Adapt expected events for w32notify.
6987 2016-02-23  Jan Tatarik  <jan.tatarik@gmail.com>
6989         Don't bug out on localised dates in gnus-icalendar
6991         * lisp/gnus/gnus-icalendar.el
6992         (gnus-icalendar-event:org-timestamp): Don't bug out on
6993         localised dates.
6995 2016-02-23  Drew Adams  <drew.adams@oracle.com>
6997         (ls-lisp-insert-directory): Make -B work
6999         * lisp/ls-lisp.el (ls-lisp-insert-directory): Make -B work
7000         (bug#20776).
7002         Backport:
7004         (cherry picked from commit ef52e66efd78aac4c4e5bd5e11870e5ba3b37a1e)
7006 2016-02-23  Vaidheeswaran C  <vaidheeswaran.chinnaraju@gmail.com>
7008         Make buttons in header lines work
7010         * lisp/help-mode.el (help-button-action): `help-xref-button' in
7011         header line doesn't work (bug#21024).
7013         Backport:
7015         (cherry picked from commit c11e565a6b6d09fa39d4c3ef65bef08190eaecc1)
7017 2016-02-23  Christopher Wellons  <wellons@nullprogram.com>
7019         Make setf for frame-height/width work again
7021         * lisp/emacs-lisp/cl-lib.el (frame-height): Make setf for
7022         frame-height/width work again (bug#21979).
7024 2016-02-23  Łukasz Stelmach  <stlman@poczta.fm>
7026         Encode header strings before printing
7028         * lisp/ps-print.el (ps-generate-header-line): Encode the
7029         header strings to avoid problems with non-ASCII headers
7030         (bug#22611).
7032         Backport:
7034         (cherry picked from commit 3cedbdcc71ebefc12bd20ec84f74251fe99ee7d0)
7036 2016-02-23  Nicolas Richard  <youngfrog@members.fsf.org>
7038         (cl-union): Do not ignore :test argument when lists are equal.
7040         * lisp/emacs-lisp/cl-seq.el (cl-union): Do not ignore :test argument when lists are equal.
7042         * test/automated/cl-seq-tests.el: New file (bug#22729).
7044 2016-02-23  Lars Ingebrigtsen  <larsi@gnus.org>
7046         Add `isearch' to `basic-faces'
7048         * doc/lispref/display.texi (Basic Faces): Mention the isearch
7049         and lazy-highlight faces.
7051         * lisp/replace.el (match): Add `isearch' to the `basic-faces'
7052         group, too (bug#22760).
7054 2016-02-23  Dmitry Gutov  <dgutov@yandex.ru>
7056         Make $, : and @ "prefix characters" in ruby-mode
7058         * lisp/progmodes/ruby-mode.el (ruby-mode-syntax-table): Change the
7059         syntax classes of $, : and @ to "prefix character"
7060         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00272.html).
7061         (ruby-syntax-propertize): Undo that specifically for colons
7062         followed by an opening paren or bracket.
7063         (ruby-font-lock-keyword-beg-re): Include colon character.
7064         (ruby-font-lock-keywords): Adjust the constants matcher for `:'
7065         not being a symbol constituent anymore.
7067 2016-02-23  Dmitry Gutov  <dgutov@yandex.ru>
7069         Make find-tag-default-bounds more strict
7071         * lisp/subr.el (find-tag-default-bounds): Delegate to
7072         bounds-of-thing-at-point (bug#22692).
7074 2016-02-22  Michael Albinus  <michael.albinus@gmx.de>
7076         Minor fixes in filenotify.el
7078         * lisp/filenotify.el (top): Require 'cl-lib.
7079         (file-notify--rm-descriptor)
7080         (file-notify--event-watched-file): Use cl-caadr.
7081         (file-notify-callback): Handle also `ignore' events from inotify.
7083 2016-02-22  Michael Albinus  <michael.albinus@gmx.de>
7085         Additional fixes for file notification
7087         * lisp/filenotify.el (top): Require 'cl when compiling.
7088         (file-notify--event-watched-file): New defun.
7089         (file-notify--rm-descriptor, file-notify-callback):
7090         Handle case of several monitors running in parallel.
7092         * test/automated/file-notify-tests.el
7093         (file-notify--test-event-test): Simplify test.
7094         (file-notify--test-with-events): Get rid of outer definition.
7095         Check also results of tests performed in callbacks.
7096         (file-notify-test02-events): No wrapping when calling
7097         `file-notify-rm-watch'.  No special checking for callback tests.
7098         (file-notify-test07-backup): Adapt expected events for gfilenotify.
7099         (file-notify-test08-watched-file-in-watched-dir): Improve.
7101 2016-02-22  Eli Zaretskii  <eliz@gnu.org>
7103         Fix documentation of 'global-disable-point-adjustment'
7105         * src/keyboard.c (syms_of_keyboard) <disable-point-adjustment>
7106         <global-disable-point-adjustment>: Doc fixes.  (Bug#22771)
7108 2016-02-22  Daiki Ueno  <ueno@gnu.org>
7110         Set file modes of pinentry socket for extra safety
7112         * lisp/net/pinentry.el: Require 'cl-lib for `cl-letf'.
7113         (pinentry-start): Change the file modes of the socket file to 0700.
7114         This is just for extra safety since the parent directory is already
7115         protected with `server-ensure-safe-dir'.
7117 2016-02-22  Daiki Ueno  <ueno@gnu.org>
7119         Clarify GnuPG version compatibility chapter
7121         * doc/misc/epa.texi (GnuPG version compatibility): Make the gpg-agent
7122         description a bit clearer.
7124 2016-02-22  Daiki Ueno  <ueno@gnu.org>
7126         Revert "Change the default socket location for pinentry"
7128         This reverts commit e34fbdee8aca84b98393b06b2450837d175999ca.
7129         It turned out that the address is fixed in Pinentry itself.
7131 2016-02-21  Dmitry Gutov  <dgutov@yandex.ru>
7133         Kill off xref--display-history
7135         Now that the core workflow keeps the xref window visible, there's
7136         less value in storing this history.  And it never was
7137         comprehensive enough to undo scrolling changes.
7138         * lisp/progmodes/xref.el (xref--display-history)
7139         (xref--save-to-history, xref-quit): Remove.
7140         (xref--show-pos-in-buf): Update accordingly.
7141         (xref--xref-buffer-mode-map): Remove xref-quit binding.
7143 2016-02-21  Dmitry Gutov  <dgutov@yandex.ru>
7145         Keep the xref buffer visible until the user quits it explicitly
7147         * lisp/progmodes/xref.el (xref--pop-to-location):
7148         Rename WINDOW argument to ACTION.
7149         (xref--with-dedicated-window): New macro.
7150         (xref--show-pos-in-buf): Rename from `xref--display-position'.
7151         Add and handle new argument, SELECTED.  Use the above macro.
7152         (xref--show-location): Add SELECTED argument.
7153         (xref-show-location-at-point): Make an effort to avoid the
7154         original window when showing the location.
7155         (xref-goto-xref): Don't quit the xref window (bug#20487 and
7156         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01133.html).
7157         (xref--query-replace-1): Use xref--with-dedicated-window as well.
7158         (xref--next-error-function): Call xref--show-location instead of
7159         xref--pop-to-location.
7160         (xref--show-xrefs): Rename WINDOW argument to DISPLAY-ACTION.
7161         Only pass that value to xref--pop-to-location.  Pass the current
7162         selected window to xref-show-xrefs-function as the `window'
7163         property.
7164         (xref--find-xrefs, xref--find-definitions): Rename WINDOW argument
7165         to DISPLAY-ACTION as well.
7167 2016-02-21  Daiki Ueno  <ueno@gnu.org>
7169         Change the default socket location for pinentry
7171         * lisp/net/pinentry.el: Require 'cl-lib for `cl-letf'.
7172         (pinentry--socket-dir): Change the default from /tmp/emacsXXX to
7173         ~/.emacs.d/pinentry.
7174         (pinentry-start): Change the file modes of the socket file to 0700.
7175         This is just for extra safety since the parent directory is already
7176         protected with `server-ensure-safe-dir'.
7178 2016-02-21  Daiki Ueno  <ueno@gnu.org>
7180         Mention how to enable pinentry feature
7182         * etc/NEWS: Mention "gpgconf --reload gpg-agent".
7183         * lisp/net/pinentry.el: Likewise.
7185 2016-02-21  Paul Eggert  <eggert@cs.ucla.edu>
7187         Sync with gnulib
7189         This incorporates:
7190         2016-02-10 stdalign: port to older HP and IBM cc
7191         * doc/misc/texinfo.tex, lib/stdalign.in.h: Copy from gnulib.
7193 2016-02-21  David Engster  <deng@randomsample.de>
7195         Remove `semanticdb-save-all-db-idle' from `auto-save-hook'
7197         * lisp/cedet/semantic/db-mode.el (semanticdb-hooks): Do not put
7198           `semanticdb-save-all-db-idle' into `auto-save-hook'. The latter is
7199           not an idle hook, so it's not appropriate to call it there. It will
7200           already be called in the `semantic-idle-work-core-handler', which
7201           runs when Emacs is actually idle.
7203 2016-02-21  David Engster  <deng@randomsample.de>
7205         Restore point when writing semantic table to disk
7207         * lisp/cedet/semantic/db-file.el (object-write): Wrap call to
7208           `semantic-fetch-tags' in `save-excursion', since it might move point
7209           in current buffer. (Bug #22287)
7211 2016-02-21  Daiki Ueno  <ueno@gnu.org>
7213         Mention pinentry.el in epa manual
7215         * doc/misc/epa.texi (GnuPG version compatibility): New chapter,
7216         describing the differences between three GnuPG branches, and how
7217         to enable pinentry.el.
7218         (Caching Passphrases): Add xref to the compatibility chapter.
7220 2016-02-21  Michael Albinus  <michael.albinus@gmx.de>
7222         Fix Bug#22736
7224         * lisp/filenotify.el (file-notify-callback): Use the proper
7225         descriptor when calling the callback.  (Bug#22736)
7227         * test/automated/file-notify-tests.el
7228         (file-notify--test-event-handler): Deactivate trace.
7229         (file-notify-test08-watched-file-in-watched-dir): Bind
7230         `file-notify--test-tmpfile' temporarily in `dir-callback'.
7232 2016-02-21  Wieland Hoffmann  <themineo@gmail.com>  (tiny change)
7234         Grammar fix in doc string
7236         * lisp/custom.el (defgroup): Grammar fix in doc string.
7238 2016-02-20  Daiki Ueno  <ueno@gnu.org>
7240         Naming fix for consistency
7242         * lisp/epg-config.el (epg-find-configuration): Rename from
7243         `epg-configuration-find' to be consistent with other epg-* functions.
7244         Change all callers.
7246 2016-02-20  Daiki Ueno  <ueno@gnu.org>
7248         Prefer customized value for GnuPG executable
7250         * lisp/epg-config.el (epg-configuration-find): Don't check GPG
7251         configuration if it is already set with custom.  (Bug#22747)
7253 2016-02-20  Eli Zaretskii  <eliz@gnu.org>
7255         Fix memory reservation on MS-Windows
7257         * src/w32heap.c (mmap_alloc): Reserve memory in 64KB granular
7258         units.  This avoids leaving gaps in reserved memory regions that
7259         no one can use, since memory reservation must produce 64KB-aligned
7260         addresses.  (Bug#22526)
7262 2016-02-20  Anders Lindgren  <andlind@gmail.com>
7264         Update NextStep readme and add wish list.
7266         * nextstep/README: Rewritten from scratch. New sections on
7267         "History", "Overview of Cocoa and Objective-C", "Guidelines",
7268         "Tracing Support", and "GNUStep". Expanded the "See Also" section.
7269         * nextstep/WISHLIST: New file containing list of issues and ideas
7270         associated with the NS port of Emacs.
7272 2016-02-20  Michael Albinus  <michael.albinus@gmx.de>
7274         Report also result in `file-notify--test-event-handler'
7276 2016-02-20  Michael Albinus  <michael.albinus@gmx.de>
7278         Improve file-notify-test08-watched-file-in-watched-dir
7280         * test/automated/file-notify-tests.el (file-notify--test-desc2):
7281         New variable.
7282         (file-notify--test-cleanup): Use it.
7283         (file-notify--test-event-handler): Enable trace.
7284         (file-notify-test08-watched-file-in-watched-dir): Tag it as
7285         :expensive-test.  Rewrite callbacks to use
7286         `file-notify--test-event-handler'.  Read events in loop.  Check
7287         `file-notify--test-results'.
7288         (file-notify-test08-watched-file-in-watched-dir): Fix docstring.
7290 2016-02-20  Stephen Berman  <stephen.berman@gmx.net>
7292         Fix todo-mode item date editing bugs
7294         * lisp/calendar/todo-mode.el (todo-edit-item--header): Prevent out of
7295         range error by making sure the value of the numerical month date
7296         component cannot be nil.  Prevent wrong type error on trying to edit
7297         day number in February by making sure numerical instead of string
7298         value of the year component is passed to todo-read-date.
7299         (todo-read-date): When using the numerical month date component make
7300         sure to use `*' for an arbitrary month instead of its numerical value.
7302 2016-02-20  Eli Zaretskii  <eliz@gnu.org>
7304         Fix "[:upper:]" for non-ASCII characters
7306         * src/regex.c (re_match_2_internal): Support [:upper:] and
7307         [:lower:] for non-ASCII characters.  (Bug#18150)
7309 2016-02-20  Lars Ingebrigtsen  <larsi@gnus.org>
7311         Allow customising the article mode cursor behavior
7313         * doc/misc/gnus.texi (HTML): Mention gnus-article-show-cursor.
7315         * lisp/gnus/gnus-art.el (gnus-article-show-cursor): New variable.
7316         (gnus-article-mode): Use it.
7318 2016-02-20  Ari Roponen  <ari.roponen@gmail.com>
7320         Use pop-to-buffer-same-window in woman.el
7322         * lisp/woman.el (woman-really-find-file): Work around going to
7323         the wrong buffer by using `pop-to-buffer-same-window' (bug#22332).
7324         (WoMan-find-buffer): Ditto.
7326 2016-02-20  Tassilo Horn  <tsdh@gnu.org>
7328         New filenotify test for bug#22736
7330         * test/automated/file-notify-tests.el
7331         (file-notify-test08-watched-file-in-watched-dir):
7332         (file-notify--test-desc1): New filenotify test for bug#22736
7334 2016-02-20  Marcin Borkowski  <mbork@mbork.pl>
7336         Report critical battery errors
7338         * lisp/battery.el (battery-pmset): Report critical battery
7339         errors (bug#18157).
7341 2016-02-19  Kaushal Modi  <kaushal.modi@gmail.com>  (tiny change)
7343         Make eww message toggling message clearer
7345         * lisp/net/eww.el (eww-toggle-fonts): Make the message
7346         clearer.
7348 2016-02-19  Mark Oteiza  <mvoteiza@udel.edu>
7350         * lisp/calc/calc-units.el (math-standard-units): Update to 2014 CODATA adjustment.
7352 2016-02-18  Martin Rudalics  <rudalics@gmx.at>
7354         Fix bugs in window resizing code
7356         * lisp/window.el (adjust-window-trailing-edge): Fix mismatched
7357         parenthesis.
7358         (shrink-window, enlarge-window): Fix bug#22723 where windows
7359         with preserved size would not get resized.  Also now signal an
7360         error when the window cannot be shrunk or enlarged as requested.
7362 2016-02-17  Eli Zaretskii  <eliz@gnu.org>
7364         Fix decoding DOS EOL in a unibyte buffer
7366         * src/coding.c (decode_eol): Loop over bytes, not characters.
7367         (Bug#5251)
7369 2016-02-17  Alan Mackenzie  <acm@muc.de>
7371         Correct c-parse-state cache manipulation error.
7373         * lisp/progmodes/cc-engine.el (c-invalidate-state-cache-1): Correct a
7374         comparison bound.  Amend comments.
7376 2016-02-17  Daiki Ueno  <ueno@gnu.org>
7378         Take advantage of new GnuPG version check function
7380         * lisp/emacs-lisp/package.el (epg-configuration-find): Declare.
7381         (package-refresh-contents): Use `epg-configuration-find' to check if EPG
7382         is usable.
7384 2016-02-17  Daiki Ueno  <ueno@gnu.org>
7386         Make GnuPG version check robuster
7388         We changed the default gpg program to "gpg2" from "gpg" in the commit
7389         f93d669a16bd3cb3f43f0c8cfd22fe18b627a6a1.  However, there are two
7390         maintained branches (2.0 and 2.1) and Emacs doesn't work well with 2.0
7391         series.  Check the actual version of "gpg2" at run time, and properly
7392         divert to "gpg" if necessary.
7393         * lisp/epg-config.el: Require 'cl-lib for `cl-destructuring-bind'.
7394         (epg-config--program-alist): New variable.
7395         (epg--configurations): New variable.
7396         (epg-configuration-find): New function.
7397         (epg-config--make-gpg-configuration): New function.
7398         (epg-config--make-gpgsm-configuration): New function.
7399         (epg-configuration): Mark as obsolete.
7400         * lisp/epg.el (epg-context): Use `epg-configuration-find'.
7402 2016-02-17  Paul Eggert  <eggert@cs.ucla.edu>
7404         Fix x-load-color-file pointer signedness
7406         * src/xfaces.c (Fx_load_color_file) [!HAVE_X_WINDOWS]:
7407         For sscanf and int *, use %d, not %u.
7408         Problem found on Ubuntu 15.10 x32, which lacks X support.
7410 2016-02-17  Paul Eggert  <eggert@cs.ucla.edu>
7412         * lisp/time-stamp.el (time-stamp-time-zone): Fix doc string punct.
7414 2016-02-16  Mark Oteiza  <mvoteiza@udel.edu>
7416         Follow convention for greek letter constants.
7418         * lisp/calc/calc-units.el (math-standard-units):
7419         Add "sigma" and alias σ to it.
7421 2016-02-16  Mark Oteiza  <mvoteiza@udel.edu>
7423         Add Stefan-Boltzmann constant to calc units table.
7425         * lisp/calc/calc-units.el (math-standard-units):
7426         Add Stefan-Boltzmann constant.
7428 2016-02-16  Mark Oteiza  <mvoteiza@udel.edu>
7430         * lisp/calc/calc-units.el (math-build-units-table-buffer): Use special-mode.
7432 2016-02-16  Glenn Morris  <rgm@gnu.org>
7434         Avoid loading cl-lib for term/xterm.elc, eg in -Q -nw.  (Bug#22669)
7436         * lisp/emacs-lisp/cl-generic.el (cl--generic-dispatchers):
7437         Prefill with relevant elements for term/xterm.
7439 2016-02-16  Tassilo Horn  <tsdh@gnu.org>
7441         Fix soffice UserInstallation-URL for Windows
7443         * lisp/doc-view.el (doc-view-odf->pdf-converter-soffice): Fix
7444         UserInstallation-URL when calling soffice on Windows.
7446 2016-02-16  Lars Ingebrigtsen  <larsi@gnus.org>
7448         Fix display of <pre> elements
7450         * lisp/net/eww.el (eww-display-html): Remove CRLF before
7451         parsing so that <pre> elements don't render with ^M at the end
7452         of the lines.
7454 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
7456         Minor fixes in global-auto-composition-mode
7458         * lisp/emacs-lisp/easy-mmode.el (easy-mmode-pretty-mode-name):
7459         Produce prettier names of globalized minor modes.
7460         * lisp/composite.el (global-auto-composition-mode): Make it a
7461         globalized mode.  (Bug#22682)
7463 2016-02-15  Alan Mackenzie  <acm@muc.de>
7465         Allow arithmetic operators inside C++ template constructs.
7467         Fixes debbugs #22486.  This corrects the previous patch with this message
7468         which was empty.
7470         * lisp/progmodes/cc-langs.el (c-multichar->-op-not->>-regexp): New language
7471         variable.
7472         (c-<>-notable-chars-re): New language variable.
7474         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur): User
7475         c-<>-notable-chars-re in place of the former fixed string in searching for
7476         places to stop and examine.
7477         Use c-multichar->-op-not->>-regexp to check that a found ">" is not part of a
7478         multichar operator in place of the former c->-op-without->-cont-regexp.
7479         Add code to skip forwards over a balanced parenthesized expression.
7481 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
7483         Avoid crashes in semi-malformed 'condition-case'
7485         * src/eval.c (internal_lisp_condition_case): Treat a handler
7486         '(nil)' as if it were '(nil nil)'.  (Bug#22675)
7488 2016-02-15  Alan Mackenzie  <acm@muc.de>
7490         Allow arithmetic operators inside C++ template constructs.
7492         Fixes debbugs #22486.
7494         * lisp/progmodes/cc-langs.el (c-multichar->-op-not->>-regexp): New language
7495         variable.
7496         (c-<>-notable-chars-re): New language variable.
7498         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur): User
7499         c-<>-notable-chars-re in place of the former fixed string in searching for
7500         places to stop and examine.
7501         Use c-multichar->-op-not->>-regexp to check that a found ">" is not part of a
7502         multichar operator in place of the former c->-op-without->-cont-regexp.
7503         Add code to skip forwards over a balanced parenthesized expression.
7505 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
7507         Fix regression with 'recent-keys' and keyboard macros
7509         * src/keyboard.c (record_char): Don't record in 'recent_keys'
7510         events that come from executing keyboard macros.  (Bug#22674)
7512 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
7514         Fix wording in a doc-view.el comment
7516         * lisp/doc-view.el (doc-view--current-cache-dir): Don't use
7517         "illegal" for something that is not against the law.
7519 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
7521         CONTRIBUTE cleanups and updates
7523         * CONTRIBUTE: Mention URLs and info nodes more consistently,
7524         avoiding possibly-confusing punctuation adjacent to a URL, and
7525         giving full shell commands for 'info'.  Start with a brief but
7526         complete how-to, for people who want to get started right away.
7527         Then briefly discuss how to join the development process in the
7528         typical order.  Omit needless words.  Update some of the
7529         now-obsolete file names, info node names, and quoting styles.
7530         Better document emacs-NN branches and how they are merged.
7531         * admin/notes/git-workflow: Change emacs-24 to emacs-25,
7532         and trunk to master.  This file still needs work.
7534 2016-02-14  Paul Eggert  <eggert@cs.ucla.edu>
7536         Port USE_STACK_LISP_OBJECTS fix to Clang
7538         * src/lisp.h (USE_STACK_LISP_OBJECTS): Default to false for Clang.
7539         Recent versions of Clang claim to be GCC 4.2.1 but do not have
7540         the GCC bug.
7542 2016-02-14  Paul Eggert  <eggert@cs.ucla.edu>
7544         Port to x86 GCC 4.3.1 and earlier
7546         This tries to port to x86 FreeBSD 9, where Emacs dumps core (Bug#22065).
7547         * src/lisp.h (USE_STACK_LISP_OBJECTS): Default to false
7548         for GCC 4.3.1 and earlier.
7550 2016-02-14  Eli Zaretskii  <eliz@gnu.org>
7552         Fix point movement under 'scroll-conservatively'
7554         * src/xdisp.c (redisplay_window): Correct a typo in computing the
7555         effective number of text lines in a window.  (Bug#22637)
7557 2016-02-14  Thomas Plass  <thomas.plass@arcor.de>
7559         Replace colon in file name (not legal on Windows)
7561         * lisp/doc-view.el (doc-view--current-cache-dir): Replace colon in file
7562         name (not legal on Windows). [tiny change]
7564 2016-02-14  Eli Zaretskii  <eliz@gnu.org>
7566         Fix a typo in edt.texi
7568         * doc/misc/edt.texi: Fix a typo in an email address.  Reported by
7569         "Herbert J. Skuhra" <herbert@mailbox.org>.
7571 2016-02-14  Eli Zaretskii  <eliz@gnu.org>
7573         Make 'mmap_realloc' on MS-Windows more reliable
7575         * src/w32heap.c (mmap_alloc): If reserving memory succeeds, but
7576         committing fails, return NULL.  Don't call GetLastError twice for
7577         the same API error.
7578         (mmap_realloc): Zero out MEMORY_BASIC_INFORMATION structures
7579         before calling VirtualQuery, to avoid using garbled values if the
7580         call fails.  If committing more pages from the same block fails,
7581         fall back on mmap_alloc + CopyMemory.  Enhance debugging printouts
7582         if the call to VirtualAlloc to commit more pages fails.
7583         (Bug#22526)
7585 2016-02-14  Oscar Fuentes  <ofv@wanadoo.es>
7587         Grep alias `all' shall not match parent directory
7589         * lisp/progmodes/grep.el (grep-files-aliases): Don't match parent
7590           directory for `all'. Fixes bug#22577
7592 2016-02-13  Nicolas Petton  <nicolas@petton.fr>
7594         Bump version to 25.0.91
7596         * README:
7597         * configure.ac:
7598         * msdos/sed2v2.inp: Bump version to 25.0.91.
7600 2016-02-13  Nicolas Petton  <nicolas@petton.fr>
7602         * etc/AUTHORS: Update the AUTHORS file
7604 2016-02-13  Glenn Morris  <rgm@gnu.org>
7606         * lisp/dired-aux.el: Require cl-lib.  (Bug#22613)
7608 2016-02-13  Eli Zaretskii  <eliz@gnu.org>
7610         Index tilde characters in names of backup files
7612         * doc/emacs/files.texi (Backup Names): Improve indexing.
7613         (Bug#22625)
7615 2016-02-13  Eli Zaretskii  <eliz@gnu.org>
7617         Document deprecation of hi-lock-mode's 'C-x w' bindings
7619         * doc/emacs/display.texi (Highlight Interactively): Deprecate the
7620         "C-x w" bindings of hi-lock-mode.
7622         * etc/NEWS: Mark the deprecation entry as documented.
7624 2016-02-13  Stefan Monnier  <monnier@iro.umontreal.ca>
7626         Announce that the `C-x w' bindings are deprecated
7628 2016-02-13  Paul Eggert  <eggert@cs.ucla.edu>
7630         Suppress GNUstep hardening
7632         Fedora 23 normally hardens GNUstep applications, which causes
7633         ‘./configure --with-ns’ to break Emacs’s funky way of undumping.
7634         Fix this by eliding the hardening options (Bug#22518).
7635         * src/Makefile.in (LIBS_GNUSTEP): Omit options like
7636         ‘-specs=/usr/lib/rpm/redhat/redhat-hardened-ld’.
7637         (GNU_OBJC_CFLAGS): Omit options like
7638         ‘-specs=/usr/lib/rpm/redhat/redhat-hardened-cc1’.
7640 2016-02-12  Eli Zaretskii  <eliz@gnu.org>
7642         Fix redisplay after a large insertion
7644         * src/xdisp.c (redisplay_internal): Don't accept the results of
7645         "optimization 3" if the cursor ends up in a partially visible
7646         glyph row.  (Bug22637)
7648 2016-02-12  Andreas Schwab  <schwab@linux-m68k.org>
7650         Revert "Fix gnus-group-get-new-news-this-group on group with closed server"
7652         This reverts commit 9dc77e37aa84c6df9b3ddb4609f3c09201b0580e.
7654                 * lisp/gnus/nnimap.el (nnimap-change-group): Revert last
7655                 change.  (Bug#22634)
7657 2016-02-11  Paul Eggert  <eggert@cs.ucla.edu>
7659         * lib-src/make-docfile.c: Include stdarg.h.
7661 2016-02-11  Alan Mackenzie  <acm@muc.de>
7663         Extend gpm-mouse-mode's doc string and doc to point out limitations.
7665         * lisp/t-mouse.el (gpm-mouse-mode): Extend doc string to indicate the
7666         inability to transfer text between Emacs and other programs which use GPM.
7668         * doc/emacs/frames.texi (Text-Only Mouse): Note the inability to transfer text
7669         between Emacs and other progrmas which use GPM.
7671 2016-02-11  Eli Zaretskii  <eliz@gnu.org>
7673         Revert "Backport: * lisp/isearch.el: Turn char-folding off by default"
7675         * lisp/isearch.el: Turn char-folding back oon by default.
7677         This reverts commit 12c50e82c9b432b2fc31f8fb2215f43ceea80822.
7679 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
7681         Revert "Support integer image rotation and respect EXIF rotations"
7683         This reverts commit 0f600496050bf435f55dc81056e06fcd45992dc8.
7685         This change does not work on Fedora.
7687 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
7689         Revert "Document EXIF image rotation"
7691         This reverts commit 10b8ed27ec91ff52f93eb0297dcc3abb214931aa.
7693         This change does not work on Fedora, for instance.
7695 2016-02-11  Paul Eggert  <eggert@cs.ucla.edu>
7697         Document OS X LANG default
7699         * doc/emacs/cmdargs.texi (General Variables):
7700         Document OS X Language and Region system preference.
7701         Suggested by Alan Third.
7703 2016-02-11  Alan Third  <alan@idiocy.org>
7705         Set locale when run from OS X GUI
7707         * src/emacs.c (main): Call ns_init_locale.
7708         * src/nsterm.m (ns_init_locale): Get locale from OS and set LANG.
7709         * src/nsterm.h: Include ns_init_locale.
7711 2016-02-10  Paul Eggert  <eggert@cs.ucla.edu>
7713         make-docfile cleanup for I/O, etc.
7715         * lib-src/make-docfile.c (progname, generate_globals, num_globals)
7716         (num_globals_allocated, globals): Now static.
7717         (generate_globals, struct rcsoc_state, read_c_string_or_comment):
7718         (write_c_args, scan_c_stream, search_lisp_doc_at_eol, scan_lisp_file):
7719         Use bool for boolean.
7720         (verror): New function.
7721         (fatal, error): Use it.  API is now like printf.  All callers changed.
7722         (main): Remove err_count local that was always 0.
7723         (main, scan_c_stream, scan_lisp_file): Check for I/O error.
7724         (scan_file, scan_c_file, scan_c_stream, scan_lisp_file):
7725         Return void, not 0.
7726         (put_char, scan_keyword_or_put_char, scan_c_file): Use char for byte.
7727         (scan_keyword_or_put_char): Check for missing ( and unexpected EOF.
7728         (close_emacs_globals): Use ptrdiff_t for index, not int.
7729         (scan_c_file, scan_lisp_file): Exit with failure if file cannot be
7730         opened, rather than diagnosing but exiting with status 0.
7731         (search_lisp_doc_at_eol): Don't worry about ungetc of EOF; it's
7732         portable now.
7734 2016-02-10  Paul Eggert  <eggert@cs.ucla.edu>
7736         Memory-management cleanup in make-docfile
7738         I compiled it with -fsanitize=address and fixed the leaks it detected.
7739         Also, I changed it to prefer signed to unsigned integer types,
7740         and to check for integer overflow.
7741         * lib-src/make-docfile.c:
7742         Include <stddef.h>, <stdint.h>, <intprops.h>, <min-max.h>.
7743         (memory_exhausted): New function.
7744         (xmalloc, xrealloc): Use it.
7745         (xmalloc, xrealloc, scan_file, struct rcsoc_state, write_c_args)
7746         (uncompiled, scan_lisp_file):
7747         Prefer signed integer types to unsigned.
7748         (xstrdup): Remove.  All uses removed.
7749         (num_globals, num_globals_allocated, write_globals, scan_c_stream):
7750         Use ptrdiff_t, not int, for indexes that in theory could exceed INT_MAX.
7751         (add_global): Use const to pacify --enable-gcc-warnings.
7752         Make a copy here, rather than relying on strdup calls later.
7753         (add_global, write_globals, scan_c_stream):
7754         Avoid integer overflow when calculating sizes.
7755         (write_globals, scan_c_stream, scan_lisp_file): Avoid memory leak.
7756         (scan_c_stream): Check for add_global failure.
7758 2016-02-10  Kevin Gallagher  <Kevin.Gallagher@boeing.com>
7760         Kevin Gallagher has new email address
7762         * lisp/emulation/edt.el:
7763         * lisp/emulation/edt-lk201.el:
7764         * lisp/emulation/edt-mapper.el:
7765         * lisp/emulation/edt-pc.el:
7766         * lisp/emulation/edt-vt100.el:
7767         * etc/edt-user.el:
7768         * doc/misc/edt.texi: Update Kevin Gallagher's email address.
7770 2016-02-10  Eli Zaretskii  <eliz@gnu.org>
7772         Improve doc strings of 'forward/backward-word-strictly'
7774         * lisp/simple.el (backward-word): Refer to 'backward-word-strictly'
7775         in the doc string.  Suggested by Glenn Morris <rgm@gnu.org>.
7776         * lisp/subr.el (forward-word-strictly, backward-word-strictly):
7777         Mention 'subword-mode' in the doc strings.
7779         * src/syntax.c (Fforward_word): Refer to 'forward-word-strictly'
7780         in the doc string.  (Bug#22560)
7782 2016-02-10  Michael Albinus  <michael.albinus@gmx.de>
7784         Describe Makefile test targets in test/README
7786         * CONTRIBUTE: Move Makefile test targets to test/README.
7788         * Makefile.in:
7789         * test/README: Describe Makefile test targets.
7791 2016-02-10  Artur Malabarba  <bruce.connor.am@gmail.com>
7793         Backport: * lisp/isearch.el: Turn char-folding off by default
7795         (search-default-mode): Set default value to nil.
7797 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
7799         Document EXIF image rotation
7801         * doc/lispref/display.texi (ImageMagick Images): Mention EXIF rotation.
7803 2016-02-10  Dima Kogan  <dima@secretsauce.net>
7805         Support integer image rotation and respect EXIF rotations
7807         * src/image.c (imagemagick_load_image): Allow integer rotations in
7808         addition to floating point rotations (bug#22591).
7809         * src/image.c (imagemagick_load_image): Images that have an
7810         orientation given in EXIF and have no explicit :rotation tag are now
7811         pre-rotated.  All information such as width/height is reported for the
7812         rotated image.
7814 2016-02-10  Matthew Carter  <m@ahungry.com>
7816         Quote table names for postgres listings (sql-mode)
7818         * lisp/progmodes/sql.el (sql-postgres-completion-object): Avoid passing
7819           unquoted table names to the completion list.
7821 2016-02-10  Juri Linkov  <juri@linkov.net>
7823         * lisp/replace.el (replace-match-maybe-edit): Make arg `backward' optional.
7825         Doc fix.
7826         (replace-search, replace-highlight): Make arg `backward' optional.
7827         (Bug#18388)
7829 2016-02-10  Juri Linkov  <juri@linkov.net>
7831         * lisp/simple.el (next-line-or-history-element): Reset temporary-goal-column.
7833         (previous-line-or-history-element): Reset temporary-goal-column.
7834         Use end-of-visual-line instead of line-end-position.  (Bug#22544)
7836 2016-02-10  Paul Eggert  <eggert@cs.ucla.edu>
7838         Suppress ACL ops if configured with --disable-acl
7840         Without this patch, some ACL operations were suppressed, but not all.
7841         * src/fileio.c [!USE_ACL]: Do not include sys/acl.h.
7842         (Ffile_acl, Fset_file_acl) [!USE_ACL]: Return nil in this case.
7844 2016-02-09  Katsumi Yamaoka  <yamaoka@jpl.org>
7846         Mention web bugs
7848         * doc/misc/emacs-mime.texi (Display Customization):
7849         Mention web bugs in the mm-html-blocked-images section.
7851 2016-02-09  Katsumi Yamaoka  <yamaoka@jpl.org>
7853         Make mm-html-blocked-images default to "" again
7855         * lisp/gnus/mm-decode.el (mm-html-blocked-images):
7856         Default to "" that blocks all external images.
7858         * doc/misc/emacs-mime.texi (Display Customization):
7859         Mention that mm-html-blocked-images defaults to "".
7861 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
7863         Minor alignas cleanup
7865         * src/lisp.h (alignas): Remove now-redundant #ifdef that was left
7866         over from the old way of doing things, before Bug#20862 was fixed.
7868 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
7870         Add lmalloc commentary and tweak laligned
7872         * src/alloc.c (laligned): Help compiler in a tiny way by putting
7873         the more-commonly-failing disjunct first.
7875 2016-02-09  Eli Zaretskii  <eliz@gnu.org>
7877         Clarify documentation of key binding conventions
7879         * doc/lispref/tips.texi (Key Binding Conventions): Clarify which
7880         "punctuation characters" are reserved after "C-c".  (Bug#22604)
7882 2016-02-09  Oscar Fuentes  <ofv@wanadoo.es>
7884         * etc/NEWS: mention the `vc-faces' customization group
7886 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
7888         Sync with gnulib
7890         This incorporates:
7891         2016-02-09 stdalign: port to clang 3.7.0
7892         2016-02-06 misc: port better to gcc -fsanitize=address
7893         * doc/misc/texinfo.tex, lib/stdalign.in.h, m4/acl.m4, m4/getgroups.m4:
7894         Copy from gnulib.
7896 2016-02-09  Michael Albinus  <michael.albinus@gmx.de>
7898         * CONTRIBUTE: Add more examples for $(SELECTOR) make variable.
7900 2016-02-09  Katsumi Yamaoka  <yamaoka@jpl.org>
7902         Make mm-html-inhibit-images and mm-html-blocked-images default to nil
7904         * lisp/gnus/mm-decode.el (mm-html-inhibit-images)
7905         (mm-html-blocked-images): Default to nil.
7907         * doc/misc/emacs-mime.texi (Display Customization): Mention that
7908         mm-html-inhibit-images and mm-html-blocked-images default to nil.
7910         * etc/NEWS (Gnus): Document mm-html-inhibit-images and
7911         mm-html-blocked-images.
7913 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
7915         Increase success rate of fallback lmalloc
7917         * src/alloc.c (lmalloc, lrealloc): Reallocate with (typically)
7918         larger and larger sizes, to increase the probability that
7919         the allocator will return a Lisp-aligned pointer.
7921 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
7923         Make backgrounds extend to the end of the lines in shr
7925         * lisp/net/shr.el (shr-face-background): Faces can also be on
7926         the form `(:background "#fff)' (bug#22547).
7928 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
7930         Make the `R' command get the correct relative <img>s
7932         * lisp/net/eww.el (eww-readable): Preserve the base URL so
7933         that image expansions are fetched from the right place (bug#22605).
7935         (cherry picked from commit 8722e849f75ceafb82a1c17105e8ab76077a8ebc)
7937         Backport:
7939 2016-02-09  Mike Kupfer  <m.kupfer@acm.org>
7941         Fix typos in emacs-mime.texi and gnus.texi
7943         * doc/misc/emacs-mime.texi (Display Customization):
7944         * doc/misc/gnus.texi (HTML): Fix typo.
7946 2016-02-09  Katsumi Yamaoka  <yamaoka@jpl.org>
7948         * doc/misc/emacs-mime.texi (Display Customization):
7949         Doc fix for mm-html-inhibit-images.
7951 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
7953         Fix message-cross-post-followup-to group names
7955         * lisp/gnus/message.el (message-cross-post-followup-to): Don't
7956         insert group names like "nntp+foo:zot", because those aren't valid.
7958 2016-02-09  David Edmondson  <dme@dme.org>
7960         Compare recipient and keys case-insensitively
7962         * lisp/gnus/mml2015.el: (mml-secure-check-user-id): When comparing a
7963         recipient address with that from a key, do so in a case insensitive
7964         manner (bug#22603).
7966 2016-02-08  Glenn Morris  <rgm@gnu.org>
7968         * lisp/gnus/mm-decode.el (mm-alist-to-plist): Doc fix.
7970 2016-02-08  Katsumi Yamaoka  <yamaoka@jpl.org>
7972         Refactor HTML images handling of Gnus and mm-* (a part of bug#21650)
7974         * doc/misc/emacs-mime.texi (Display Customization):
7975         Remove mm-inline-text-html-with-images; add documentations for
7976         mm-html-inhibit-images and mm-html-blocked-images.
7978         * lisp/gnus/gnus-art.el (gnus-article-show-images):
7979         No need to bind mm-inline-text-html-with-images.
7980         (gnus-bind-safe-url-regexp): Rename to gnus-bind-mm-vars.
7981         (gnus-bind-mm-vars): Rename from gnus-bind-safe-url-regexp;
7982         bind mm-html-inhibit-images and mm-html-blocked-images.
7983         (gnus-mime-view-all-parts, gnus-mime-view-part-internally)
7984         (gnus-mm-display-part, gnus-mime-display-single)
7985         (gnus-mime-display-alternative): Use gnus-bind-mm-vars.
7987         * lisp/gnus/mm-decode.el (mm-inline-text-html-with-images): Remove.
7988         (mm-html-inhibit-images, mm-html-blocked-images): New user options.
7989         (mm-shr): Bind shr-inhibit-images and shr-blocked-images with
7990         mm-html-inhibit-images and mm-html-blocked-images respectively
7991         instead of gnus-inhibit-images and gnus-blocked-images.
7993         * lisp/gnus/mm-view.el (mm-setup-w3m): Use mm-html-inhibit-images
7994         instead of mm-inline-text-html-with-images.
7996 2016-02-08  Paul Eggert  <eggert@cs.ucla.edu>
7998         Port to FreeBSD 11-CURRENT i386
8000         Problem reported by Herbert J. Skuhra in:
8001         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00354.html
8002         Instead of trying
8003         * src/alloc.c (lmalloc, lrealloc, laligned): New functions.
8004         (xmalloc, xzalloc, xrealloc, lisp_malloc): Use them.
8005         (__alignof__) [!__GNUC__ && !__alignof__]: New macro.
8006         (MALLOC_IS_GC_ALIGNED): New macro.
8007         * src/lisp.h (NONPOINTER_BITS): Remove.  All uses removed.
8008         No longer needed now that alloc.c uses lmalloc and lrealloc.
8010 2016-02-08  Michael Albinus  <michael.albinus@gmx.de>
8012         Some fixes in file-notify-tests.el
8014         * test/automated/file-notify-tests.el
8015         (file-notify--test-with-events-check)
8016         (file-notify--test-with-events-explainer): New defuns.
8017         (file-notify--test-with-events): Use it.
8018         (file-notify-test07-backup): Fix docstring.  Some of the
8019         backends fire two `changed' events.  Backup by rename doesn't
8020         work for kqueue.
8022 2016-02-07  Michael Albinus  <michael.albinus@gmx.de>
8024         Fix Bug#22557
8026         * lisp/filenotify.el (file-notify-callback): Do not send a
8027         `stopped' event in case of backup by renaming.  (Bug#22557)
8029         * test/automated/Makefile.in: Use $(SELECTOR_EXPENSIVE) for
8030         all targets but check and check-maybe.
8032         * test/automated/file-notify-tests.el
8033         (file-notify--test-read-event-timeout): New defconst.
8034         (file-notify--deftest-remote, file-notify--wait-for-events)
8035         (file-notify-test02-events)
8036         (file-notify-test04-file-validity)
8037         (file-notify-test06-many-events): Use it.
8038         (file-notify--test-cleanup): Make it more robust.  Delete also
8039         backup file.
8040         (file-notify-test07-backup): New test.
8042 2016-02-07  Paul Eggert  <eggert@cs.ucla.edu>
8044         Fix test for dladdr
8046         Problem reported by Andreas Schwab in:
8047         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00327.html
8048         * configure.ac (dladdr): Link with LIBMODULES when checking for
8049         this function.
8051 2016-02-07  Andreas Schwab  <schwab@linux-m68k.org>
8053         Fix gnus-group-get-new-news-this-group on group with closed server
8055         * lisp/gnus/nnimap.el (nnimap-change-group): Lookup server
8056         method and pass to nnimap-open-server.
8058 2016-02-07  Artur Malabarba  <bruce.connor.am@gmail.com>
8060         * lisp/comint.el (comint-prompt-read-only): Clean tabs in docstring
8062         While tabs in code are mostly fine because the Emacs sources have a
8063         .dir-locals file specifying tab-width, the same is not true of tabs in
8064         code examples inside docstrings.  The docstring is printed on a *Help*
8065         buffer, which can be created on any directory and won't necessarily have
8066         the same tab-width set.
8068 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
8070         Don't inloop gnus-uu-mark-thread on the last thread
8072         * lisp/gnus/gnus-uu.el (gnus-uu-mark-thread): Don't infloop on the
8073         final thread in the summary buffer (bug#16666).
8075 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
8077         Display non-ASCII group names better in prompts
8079         * lisp/gnus/gnus-sum.el (gnus-articles-to-read): To decode the
8080         group name, we have to do that before we remove the prefix.
8082 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
8084         Default to gpg2 instead of gpg
8086         * lisp/epg-config.el (epg-gpg-program): Prefer gpg2 over gpg, if
8087         it exists.  This fixes many problems with using the GPG
8088         authentication agent.
8090 2016-02-06  David Edmondson  <dme@dme.org>
8092         src/process.c Correctly convert AF_INET6 addresses
8094         * src/process.c (conv_lisp_to_sockaddr): AF_INET6 addresses are
8095         converted to a list of 16 bit quantities by
8096         conv_sockaddr_to_lisp(). conv_lisp_to_sockaddr() should follow the
8097         same scheme rather than expecting a (longer) list of 8 bit
8098         quantities.
8100         Backport:
8102         (cherry picked from commit 55ce3c30d617c38eb086d5ad4ffbd881c20c559c)
8104 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
8106         * lisp/isearch.el (isearch-define-mode-toggle): Improve logic
8108 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
8110         * lisp/menu-bar.el (menu-bar-options-menu): New search submenu
8112         (menu-bar-search-options-menu): New variable
8114 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
8116         * lisp/isearch.el (search-default-mode)
8118         (isearch-regexp-function): Improve docstrings.
8120 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
8122         * lisp/isearch.el: Rename search-default-regexp-mode to search-default-mode
8124         (search-default-mode): New variable.
8125         (isearch-mode, isearch-define-mode-toggle)
8126         (isearch--describe-regexp-mode): Update accordingly.
8127         * lisp/menu-bar.el (nonincremental-search-forward): Update accordingly.
8128         * etc/NEWS: Update accordingly.
8129         * doc/emacs/search.texi: Update accordingly.
8131 2016-02-06  Oscar Fuentes  <ofv@wanadoo.es>
8133         Use monitor's resolution for positioning tooltips
8135         * src/xfns.c (compute_tip_xy): Use the resolution of the monitor where
8136           the mouse pointer is to avoid placing the tooltip over the border of
8137           the monitor on multi-head displays. Fixes bug#22549.
8139 2016-02-06  Eli Zaretskii  <eliz@gnu.org>
8141         Fix file-notify-test on MS-Windows
8143         * test/automated/file-notify-tests.el (file-notify--test-timeout):
8144         Reduce w32notify timeout to 10 sec.
8145         (file-notify-test06-many-events): Call read-event after each
8146         rename, to keep the w32notify backend happy in batch mode.
8147         (Bug#22534)
8149 2016-02-06  Eli Zaretskii  <eliz@gnu.org>
8151         Fix issues found by auditing w32notify code
8153         * src/w32inevt.c (handle_file_notifications): Count the number of
8154         events to be returned.
8155         * src/w32notify.c (send_notifications): Don't copy to the file
8156         notification buffer more than it can hold.  (Bug#22534)
8158 2016-02-06  Eli Zaretskii  <eliz@gnu.org>
8160         Extend etags Ruby support for accessors
8162         * lib-src/etags.c (Ruby_functions): Support accessors defined with
8163         parentheses.  (Bug#22563)
8165         * test/etags/ruby-src/test1.ru (A::B): Add tests for accessors
8166         defined with parentheses.
8167         * test/etags/ETAGS.good_1:
8168         * test/etags/ETAGS.good_2:
8169         * test/etags/ETAGS.good_3:
8170         * test/etags/ETAGS.good_4:
8171         * test/etags/ETAGS.good_5:
8172         * test/etags/ETAGS.good_6:
8173         * test/etags/CTAGS.good: Adapt to changes in Ruby tests.
8175 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
8177         Update publicsuffix.txt.
8179         * etc/publicsuffix.txt: Updated from
8180         https://publicsuffix.org/list/public_suffix_list.dat.
8182 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
8184         Ensure that Gnus dribble handling allows removing entries
8186         * lisp/gnus/gnus-start.el (gnus-dribble-enter): Ensure that each
8187         entry is on a single line.
8189 2016-02-05  OGAWA Hirofumi  <hirofumi@mail.parknet.co.jp>  (tiny change)
8191         Be consistent when using encoded strings in nnimap data
8193         * lisp/gnus/nnimap.el (nnimap-encode-gnus-group): New function
8194         (nnimap-request-list): Use it.
8195         (nnimap-request-newgroups): Ditto.
8197 2016-02-05  OGAWA Hirofumi  <hirofumi@mail.parknet.co.jp>  (tiny change)
8199         Display the decoded Gnus group name
8201         * lisp/gnus/gnus-sum.el (gnus-summary-read-group-1): Use the
8202         decoded group name in the message.
8204 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
8206         Use completion-ignore-case instead of defining command
8208         * lisp/erc/erc.el (erc-mode): Set completion-ignore-case so
8209         that we get case-insensitive completion.
8210         (erc-completion-at-point): Remove.
8212 2016-02-05  Eli Zaretskii  <eliz@gnu.org>
8214         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
8216 2016-02-05  Michael Albinus  <michael.albinus@gmx.de>
8218         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
8220         Reduce the number of iterations to 250 in case of w32notify.
8222 2016-02-05  Eli Zaretskii  <eliz@gnu.org>
8224         Fix problems caused by new implementation of sub-word mode
8226         * lisp/subr.el (forward-word-strictly, backward-word-strictly):
8227         New functions.
8228         (word-move-empty-char-table): New variable.
8230         * etc/NEWS: Mention 'forward-word-strictly' and
8231         'backward-word-strictly'.
8233         * doc/lispref/positions.texi (Word Motion): Document
8234         'find-word-boundary-function-table', 'forward-word-strictly', and
8235         'backward-word-strictly'.  (Bug#22560)
8237         * src/syntax.c (syms_of_syntax)
8238         <find-word-boundary-function-table>: Doc fix.
8240         * lisp/wdired.el (wdired-xcase-word):
8241         * lisp/textmodes/texnfo-upd.el (texinfo-copy-node-name)
8242         (texinfo-copy-section-title, texinfo-start-menu-description)
8243         (texinfo-copy-menu-title, texinfo-specific-section-type)
8244         (texinfo-insert-node-lines, texinfo-copy-next-section-title):
8245         * lisp/textmodes/texinfo.el (texinfo-clone-environment)
8246         (texinfo-insert-@end):
8247         * lisp/textmodes/texinfmt.el (texinfo-format-scan)
8248         (texinfo-anchor, texinfo-multitable-widths)
8249         (texinfo-multitable-item):
8250         * lisp/textmodes/tex-mode.el (latex-env-before-change):
8251         * lisp/textmodes/flyspell.el (texinfo-mode-flyspell-verify):
8252         * lisp/skeleton.el (skeleton-insert):
8253         * lisp/simple.el (count-words):
8254         * lisp/progmodes/vhdl-mode.el (vhdl-beginning-of-libunit)
8255         (vhdl-beginning-of-defun, vhdl-beginning-of-statement-1)
8256         (vhdl-update-sensitivity-list, vhdl-template-block)
8257         (vhdl-template-break, vhdl-template-case, vhdl-template-default)
8258         (vhdl-template-default-indent, vhdl-template-for-loop)
8259         (vhdl-template-if-then-use, vhdl-template-bare-loop)
8260         (vhdl-template-nature, vhdl-template-procedural)
8261         (vhdl-template-process, vhdl-template-selected-signal-asst)
8262         (vhdl-template-type, vhdl-template-variable)
8263         (vhdl-template-while-loop, vhdl-beginning-of-block)
8264         (vhdl-hooked-abbrev, vhdl-port-copy, vhdl-hs-forward-sexp-func):
8265         * lisp/progmodes/verilog-mode.el (verilog-backward-sexp)
8266         (verilog-forward-sexp, verilog-beg-of-statement)
8267         (verilog-set-auto-endcomments, verilog-backward-token)
8268         (verilog-do-indent):
8269         * lisp/progmodes/vera-mode.el (vera-guess-basic-syntax)
8270         (vera-indent-block-closing):
8271         * lisp/progmodes/simula.el (simula-context)
8272         (simula-backward-up-level, simula-forward-down-level)
8273         (simula-previous-statement, simula-next-statement)
8274         (simula-skip-comment-backward, simula-calculate-indent)
8275         (simula-find-if, simula-electric-keyword):
8276         * lisp/progmodes/sh-script.el (sh-smie--rc-newline-semi-p):
8277         * lisp/progmodes/ruby-mode.el (ruby-smie--redundant-do-p)
8278         (ruby-smie--forward-token, ruby-smie--backward-token)
8279         (ruby-singleton-class-p, ruby-calculate-indent)
8280         (ruby-forward-sexp, ruby-backward-sexp):
8281         * lisp/progmodes/ps-mode.el (ps-run-goto-error):
8282         * lisp/progmodes/perl-mode.el (perl-syntax-propertize-function)
8283         (perl-syntax-propertize-special-constructs)
8284         (perl-backward-to-start-of-continued-exp):
8285         * lisp/progmodes/pascal.el (pascal-indent-declaration):
8286         * lisp/progmodes/octave.el (octave-function-file-p):
8287         * lisp/progmodes/mantemp.el (mantemp-insert-cxx-syntax):
8288         * lisp/progmodes/js.el (js--forward-function-decl):
8289         * lisp/progmodes/idlwave.el (idlwave-show-begin-check)
8290         (idlwave-beginning-of-block, idlwave-end-of-block)
8291         (idlwave-block-jump-out, idlwave-determine-class):
8292         * lisp/progmodes/icon.el (icon-is-continuation-line)
8293         (icon-backward-to-start-of-continued-exp, end-of-icon-defun):
8294         * lisp/progmodes/hideif.el (hide-ifdef-define):
8295         * lisp/progmodes/f90.el (f90-change-keywords):
8296         * lisp/progmodes/cperl-mode.el (cperl-electric-pod)
8297         (cperl-linefeed, cperl-electric-terminator)
8298         (cperl-find-pods-heres, cperl-fix-line-spacing)
8299         (cperl-invert-if-unless):
8300         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur):
8301         * lisp/progmodes/cc-align.el (c-lineup-java-inher):
8302         * lisp/progmodes/ada-mode.el (ada-compile-goto-error)
8303         (ada-adjust-case-skeleton, ada-create-case-exception)
8304         (ada-create-case-exception-substring)
8305         (ada-case-read-exceptions-from-file, ada-after-keyword-p)
8306         (ada-scan-paramlist, ada-get-current-indent, ada-get-indent-end)
8307         (ada-get-indent-if, ada-get-indent-block-start)
8308         (ada-get-indent-loop, ada-get-indent-type)
8309         (ada-search-prev-end-stmt, ada-check-defun-name)
8310         (ada-goto-decl-start, ada-goto-matching-start)
8311         (ada-goto-matching-end, ada-looking-at-semi-or)
8312         (ada-looking-at-semi-private, ada-in-paramlist-p)
8313         (ada-search-ignore-complex-boolean, ada-move-to-start)
8314         (ada-move-to-end, ada-which-function, ada-gen-treat-proc):
8315         * lisp/net/quickurl.el (quickurl-grab-url):
8316         * lisp/mail/sendmail.el (mail-do-fcc):
8317         * lisp/mail/rmail.el (rmail-resend):
8318         * lisp/mail/mailabbrev.el (mail-abbrev-complete-alias):
8319         * lisp/mail/mail-extr.el (mail-extract-address-components):
8320         * lisp/json.el (json-read-keyword):
8321         * lisp/files.el (insert-directory):
8322         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
8323         * lisp/completion.el (symbol-under-point, symbol-before-point)
8324         (symbol-before-point-for-complete, next-cdabbrev)
8325         (add-completions-from-c-buffer):
8326         * lisp/cedet/semantic/texi.el (semantic-up-context)
8327         (semantic-beginning-of-context):
8328         * lisp/cedet/semantic/bovine/el.el (semantic-get-local-variables):
8329         use 'forward-word-strictly' and 'backward-word-strictly' instead
8330         of 'forward-word' and 'backward-word'.
8332 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
8334         Fix doc string of tls-program
8336         * lisp/net/tls.el (tls-program): Document the %t parameter (bug#22559).
8338 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
8340         Restore window conf in nsm
8342         * lisp/net/nsm.el (nsm-query-user): Restore the window configuration.
8344         Backport:
8346 2016-02-05  Mark Oteiza  <mvoteiza@udel.edu>
8348         * etc/NEWS: Document new mpc.el features
8350 2016-02-04  Leo Liu  <sdl.web@gmail.com>
8352         * lisp/custom.el (defface): Revert indentation change.  (Bug#22524)
8354 2016-02-04  Alan Mackenzie  <acm@muc.de>
8356         Correctly fontify C++ initializations which "look like" functions.
8358         Fixes bug#7579.
8360         lisp/progmodes/cc-engine.el (c-forward-declarator): Add extra optional
8361         parameter to enable handling of "anonymous" declarators in declarations.
8363         lisp/progmodes/cc-fonts.el (c-font-lock-declarators): Check more rigorously
8364         whether a "(" opens a parameter list of a function, or an initialization of a
8365         variable.
8367 2016-02-04  Ulf Jasper  <ulf.jasper@web.de>
8369         Improve newsticker-treeview-selection-face
8371         * lisp/net/newst-treeview.el (newsticker-treeview-selection-face): Improve
8372         readability for dark background.
8374 2016-02-04  Eli Zaretskii  <eliz@gnu.org>
8376         Minor fix in tagging Ruby accessors by etags
8378         * lib-src/etags.c (Ruby_functions): Don't tag accessors whose
8379         names are not literal symbols.  (Bug#22241)
8381 2016-02-04  Paul Eggert  <eggert@cs.ucla.edu>
8383         Spelling fixes
8385 2016-02-04  Dmitry Gutov  <dgutov@yandex.ru>
8387         Remove 'def X' from the example
8389         * test/etags/ruby-src/test1.ru (A::B): Remove 'def X'
8390         (http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00167.html).
8391         * test/etags/CTAGS.good:
8392         * test/etags/ETAGS.good_1:
8393         * test/etags/ETAGS.good_2:
8394         * test/etags/ETAGS.good_3:
8395         * test/etags/ETAGS.good_4:
8396         * test/etags/ETAGS.good_5:
8397         * test/etags/ETAGS.good_6: Adjust accordingly.
8399 2016-02-04  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
8401         Allow sending empty hidden values in eww
8403         * lisp/net/eww.el (eww-tag-input): Allow sending empty hidden
8404         values (bug#22388).
8406         (cherry picked from commit 5898da8210af7953e638ddf7821c05260979c3f0)
8408         Backport:
8410 2016-02-04  David Edmondson  <dme@dme.org>
8412         Make erc work better when encountering unknown prefix chars
8414         * lisp/erc/erc.el (erc-channel-receive-names): Output a warning
8415         instead of erroring out on unknown prefix chars (bug#22380).
8417 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
8419         Make erc completion case-insensitive again
8421         * lisp/erc/erc.el (erc-completion-at-point): Make erc completion
8422         case-insensitive again (bug#11360).
8424 2016-02-04  Carlos Pita  <carlosjosepita@gmail.com>  (tiny change)
8426         Make complection in erc use consistent casing
8428         * lisp/erc/erc-pcomplete.el (pcomplete-erc-all-nicks): Make
8429         case in the complection consistent (bug#18509).
8431 2016-02-04  Francis Litterio  <flitterio@gmail.com>
8433         Make /QUIT in erc more robust
8435         * lisp/erc/erc.el (erc-kill-query-buffers): Don't bug out if we're
8436         issuing /QUIT to disconnected servers (bug#22099).
8438 2016-02-04  Kevin Brubeck Unhammer  <unhammer@fsfe.org>  (tiny change)
8440         Make tracking faces in Emacs work more reliably
8442         * lisp/erc/erc-track.el (erc-faces-in): Always return lists of
8443         faces to avoid later ambiguity (bug#22424).
8445 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
8447         Make shr not bug out on images on non-graphical displays
8449         * lisp/net/shr.el (shr-put-image): Don't bug out on alt-less
8450         images on non-graphical displays (bug#22327).
8452 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
8454         Fix bookmark display widths
8456         * lisp/net/eww.el (eww-list-bookmarks): Pop to the buffer before
8457         preparing it so that the widths are computed correctly (bug#22328).
8459 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
8461         Fix typo in eww-make-unique-file-name
8463         * lisp/net/eww.el (eww-make-unique-file-name): Make this function
8464         actually work.
8466 2016-02-03  Lars Ingebrigtsen  <larsi@gnus.org>
8468         Make it possible to TAB to input fields
8470         * lisp/net/eww.el (eww-tag-input): Make it possible to TAB to
8471         input fields (bug#22540).
8473 2016-02-03  Lars Ingebrigtsen  <larsi@gnus.org>
8475         Insert complete alt texts when images are disabled
8477         * lisp/net/shr.el (shr-tag-img): When images are disabled, insert
8478         the complete alt/title string (bug#22293).
8480 2016-02-03  Lars Ingebrigtsen  <larsi@gnus.org>
8482         Allow eww text fields to grow
8484         * lisp/net/eww.el (eww-process-text-input): Allow text fields to
8485         grow when typing in stuff that's longer than the original width.
8487 2016-02-03  Dima Kogan  <dima@secretsauce.net>
8489         Make erc work when subword-mode is switched on
8491         * lisp/erc/erc-backend.el (erc-forward-word, erc-word-at-arg-p)
8492         (erc-bounds-of-word-at-point): New functions to do word-based
8493         things when subword-mode is switched on.
8495         * lisp/erc/erc-button.el (erc-button-add-nickname-buttons): Use them
8496         (bug#17558).
8498 2016-02-03  Teemu Likonen  <tlikonen@iki.fi>
8500         Fix IMAP doc example
8502         * doc/misc/gnus.texi (Client-Side IMAP Splitting): Fix example.
8504 2016-02-03  Paul Eggert  <eggert@cs.ucla.edu>
8506         Quoting fixes in doc strings and diagnostics
8508         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq, byte-compile-funcall):
8509         * lisp/gnus/mml-smime.el (mml-smime-get-dns-cert)
8510         (mml-smime-get-ldap-cert):
8511         Follow user style preference when quoting diagnostics.
8513 2016-02-03  Noam Postavsky  <npostavs@gmail.com>
8515         Fix warning message in hack-local-variables
8517         * lisp/files.el (hack-local-variables): use 'thisbuf' to reference
8518         the original buffer name in the warning message.  (Bug#21681)
8520 2016-02-03  Eli Zaretskii  <eliz@gnu.org>
8522         Etags: yet another improvement in Ruby tags
8524         * lib-src/etags.c (Ruby_functions): Handle continuation lines in
8525         Ruby accessor definitions.  (Bug#22241)
8527         * test/etags/ruby-src/test1.ru (A::B#X): Add some more tests for
8528         accessors and multiline definitions.
8529         * test/etags/ETAGS.good_1:
8530         * test/etags/ETAGS.good_2:
8531         * test/etags/ETAGS.good_3:
8532         * test/etags/ETAGS.good_4:
8533         * test/etags/ETAGS.good_5:
8534         * test/etags/ETAGS.good_6:
8535         * test/etags/CTAGS.good: Adapt to changes in Ruby tags.
8537 2016-02-03  Eli Zaretskii  <eliz@gnu.org>
8539         Fix x-popup-menu on TTYs without a mouse
8541         * src/menu.c (Fx_popup_menu): Be sure to initialize 'x' and 'y'
8542         for the TTY case without a mouse.  (Bug#22538)
8544 2016-02-03  Nicolas Petton  <nicolas@petton.fr>
8546         * lisp/emacs-lisp/map.el: Improvements to the docstring of the pcase macro
8548 2016-02-02  Lars Ingebrigtsen  <larsi@gnus.org>
8550         Use pop-to-buffer-same-window in eww
8552         * lisp/net/eww.el: pop-to-buffer-same-window throughout instead of
8553         switch-to-buffer (bug#22244).
8555 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
8557         * autogen.sh: Revert all recent changes.
8559 2016-02-02  Glenn Morris  <rgm@gnu.org>
8561         * make-dist: Updates related to nt/.
8563         * make-dist: Add modules/.
8565         * make-dist: Update for super-special file that can't live in etc/.
8567 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
8569         Fix failure to compile ns-win.el in parallel builds
8571         * src/Makefile.in ($(lispsource)/term/ns-win.elc): Add order-only
8572         dependency on $(lispsource)/international/charprop.el.
8573         (Bug#22501)
8575 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
8577         Fix names of tags generated for Ruby accessors
8579         * lib-src/etags.c (Ruby_functions): Don't include the leading
8580         colon ':' in tags for Ruby accessors and aliases.  (Bug#22241)
8582         * test/etags/ETAGS.good_1:
8583         * test/etags/ETAGS.good_2:
8584         * test/etags/ETAGS.good_3:
8585         * test/etags/ETAGS.good_4:
8586         * test/etags/ETAGS.good_5:
8587         * test/etags/ETAGS.good_6:
8588         * test/etags/CTAGS.good: Adapt to changes in Ruby tags.
8590 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
8592         Fix file-name recognition in 'etags'
8594         * lib-src/etags.c (get_language_from_filename): If FILE includes a
8595         leading directory, compare only its basename to the known file
8596         names in lang_names[].
8598         * test/etags/Makefile (RBSRC): Adapt to recent test1.ruby
8599         renaming.
8600         * test/etags/ETAGS.good_1:
8601         * test/etags/ETAGS.good_2:
8602         * test/etags/ETAGS.good_3:
8603         * test/etags/ETAGS.good_4:
8604         * test/etags/ETAGS.good_5:
8605         * test/etags/ETAGS.good_6:
8606         * test/etags/CTAGS.good: Adapt to changes in Ruby file names and
8607         to the results in Makefile due to the above etags.c fix.
8609 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
8611         Change Ruby file names and extensions recognized by 'etags'
8613         * lib-src/etags.c <Ruby_filenames>: New variable, holds names
8614         of Ruby files.
8615         <Ruby_suffixes>: Treat .rb, .ru, and .rbw as Ruby extensions.
8616         <lang_names>: Add Ruby_filenames to the Ruby entry.
8617         * test/etags/ruby-src/test1.ru: Renamed from test1.ruby.
8618         (Bug#22241)
8620 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
8622         More improvements for Ruby support in 'etags'
8624         * lib-src/etags.c (Ruby_functions): Tag Ruby accessors and
8625         alias_method.  Identify constants even if the assignment is not
8626         followed by whitespace.  (Bug#22241)
8628         * test/etags/ruby-src/test1.ru: Add tests for constants,
8629         accessors, and alias_method.
8630         * test/etags/ETAGS.good_1:
8631         * test/etags/ETAGS.good_2:
8632         * test/etags/ETAGS.good_3:
8633         * test/etags/ETAGS.good_4:
8634         * test/etags/ETAGS.good_5:
8635         * test/etags/ETAGS.good_6:
8636         * test/etags/CTAGS.good: Adapt to changes in Ruby tests.
8638 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
8640         Add --git-config option to autogen.sh
8642         * autogen.sh: New options --git-config, --help.
8643         (git_config): New shell var.  Alter function to respect this var.
8645 2016-02-02  Lars Ingebrigtsen  <larsi@gnus.org>
8647         Fix editing undo changes in eww fields
8649         * eww.el (eww-tag-form): Don't overwrite initial form data in text
8650         fields.
8651         (eww-process-text-input): Make `M-t' at the end of text fields work
8652         better (bug#19085).
8654 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
8656         Allow the user more control of popping up the eww window
8658         * eww.el (eww): Use pop-to-buffer-same-window (suggested by
8659         Michael Heerdegen) (bug#22244).
8661 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
8663         Make eww-browse-url with new-window parameter work again
8665         * eww.el (eww-browse-url): Stay in the same buffer if we're
8666         already in a eww mode buffer so that eww-browse-url with a
8667         new-window parameter works (bug#22244).
8669 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
8671         Clean up eww code slightly
8673         * eww.el (eww-browse-url): Clean up code slightly.
8675 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
8677         Don't insert nil faces in shr
8679         * shr.el (shr-insert-table): Don't add nil faces, because that
8680         will show up in *Messages* as "Invalid face reference: nil [32
8681         times]".
8683 2016-02-01  Glenn Morris  <rgm@gnu.org>
8685         Improve the custom type of some user options.
8687         * lisp/autoinsert.el (auto-insert-alist):
8688         * lisp/replace.el (query-replace-from-to-separator):
8689         * lisp/gnus/gnus-art.el (gnus-hidden-properties):
8690         * lisp/gnus/gnus-gravatar.el (gnus-gravatar-properties):
8691         * lisp/gnus/gnus-picon.el (gnus-picon-properties):
8692         * lisp/progmodes/prolog.el (prolog-keywords, prolog-types)
8693         (prolog-mode-specificators, prolog-determinism-specificators)
8694         (prolog-directives, prolog-program-name, prolog-program-switches)
8695         (prolog-consult-string, prolog-compile-string, prolog-eof-string)
8696         (prolog-prompt-regexp): Improve custom type.
8698 2016-02-01  Glenn Morris  <rgm@gnu.org>
8700         Mark some risky calendar variables.
8702         * lisp/calendar/cal-china.el (chinese-calendar-time-zone):
8703         Remove risky setting for deleted obsolete alias.
8704         (calendar-chinese-standard-time-zone-name)
8705         (calendar-chinese-daylight-saving-start)
8706         (calendar-chinese-daylight-saving-end):
8707         * lisp/calendar/calendar.el (calendar-iso-date-display-form)
8708         (calendar-european-date-display-form)
8709         (calendar-american-date-display-form, calendar-date-display-form):
8710         * lisp/calendar/diary-lib.el (diary-remind-message)
8711         (diary-header-line-format):
8712         * lisp/calendar/solar.el (calendar-time-display-form)
8713         (calendar-location-name): Mark as risky.
8715 2016-02-01  Simen Heggestøyl  <simenheg@gmail.com>
8717         Highlight two additional SCSS keywords
8719         * lisp/textmodes/css-mode.el (css-bang-ids): New defconst holding CSS
8720         identifiers on the form !foo.
8721         (scss-bang-ids): New defconst holding SCSS identifiers on the form
8722         !foo.
8723         (css--font-lock-keywords): Highlight the new SCSS bang identifiers in
8724         `font-lock-builtin-face'.
8726         * test/indent/css-mode.css: Add bang rule test case.
8728         * test/indent/scss-mode.scss: Add test cases for the introduced bang
8729         rules.
8731 2016-02-01  Karl Fogel  <kfogel@red-bean.com>
8733         Recommend enabling integrity-checking in git
8735         * admin/notes/git-workflow:  Recommend setting transfer.fsckObjects.
8737         This is related to the autogen.sh changes made by Paul Eggert in
8738         commit d766ca8f (2016-02-01) and commit cedd7cad (2016-02-01), and to
8739         my edits today to http://www.emacswiki.org/emacs/GitForEmacsDevs and
8740         to emacswiki.org/emacs/GitQuickStartForEmacsDevs.  See also the thread
8741         "Recommend these .gitconfig settings for git integrity." at
8742         https://lists.gnu.org/archive/html/emacs-devel/2016-01/threads.html#01802.
8744 2016-02-01  Martin Rudalics  <rudalics@gmx.at>
8746         Some corrections in Elisp manual
8748         * doc/lispref/buffers.texi (Read Only Buffers): Describe optional
8749         argument POSITION.
8750         * doc/lispref/debugging.texi (Error Debugging): `debug-on-signal'
8751         is an option.
8752         * doc/lispref/display.texi (Refresh Screen): Describe optional
8753         argument FRAME of `redraw-frame'.
8754         (Attribute Functions): Describe optional argument CHARACTER of
8755         `face-font'.
8756         (Defining Images): `image-load-path' is an option.
8757         (Beeping): `ring-bell-function' is an option.
8758         * doc/lispref/frames.texi (Size and Position): The PIXELWISE
8759         argument of `set-frame-size' is optional.
8760         (Raising and Lowering): The TERMINAL argument of `tty-top-frame'
8761         is optional.
8762         * doc/lispref/keymaps.texi (Controlling Active Maps): Fix doc of
8763         `set-transient-map'.
8764         * doc/lispref/minibuf.texi (Text from Minibuffer):
8765         `read-regexp-defaults-function' is an option.
8766         (Minibuffer Contents): `delete-minibuffer-contents' is a command.
8767         * doc/lispref/modes.texi (Mode Line Variables):
8768         `mode-line-position' and `mode-line-modes' are variables, not
8769         options.
8770         * doc/lispref/strings.texi (Creating Strings): The START argument
8771         of `substring' is optional.
8772         * doc/lispref/text.texi (Buffer Contents): Describe optional
8773         argument NO-PROPERTIES of `thing-at-point'.
8774         (User-Level Deletion): Both arguments of
8775         `delete-trailing-whitespace' are optional.
8776         (Margins): Use @key{RET} instead of @kbd{RET}.
8777         * doc/lispref/windows.texi (Display Action Functions): Write
8778         non-@code{nil} instead of non-nil.
8779         (Choosing Window Options): The WINDOW arg of
8780         `split-window-sensibly' is optional.
8781         (Choosing Window Options): Write non-@code{nil} instead of
8782         non-nil.
8783         (Window Start and End): Both args of `window-group-end' are
8784         optional.
8786         * src/buffer.c (Fbarf_if_buffer_read_only): Rename argument POS
8787         to POSITION to keep consisteny with doc-string.
8789 2016-02-01  Paul Eggert  <eggert@cs.ucla.edu>
8791         Chatter when autogen.sh changes Git configuration
8793         * autogen.sh (git_config): New function.  Use it instead of ‘git config’.
8795 2016-02-01  Kyle Meyer  <kyle@kyleam.com>
8797         * lisp/org/org-compat.el (org-font-lock-ensure): Fix bogus test (bug#22399)
8799 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
8801         Omit unnecessary history from Lisp intro
8803         * doc/lispintro/emacs-lisp-intro.texi (Review, Digression into C)
8804         (Conclusion): Reword so as not to talk about earlier versions
8805         of Emacs in what should be an intro.
8807 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
8809         * etc/HISTORY: Add some more history, plus git tags.
8811 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
8813         Improve elisp “Security Considerations” doc
8815         * doc/lispref/os.texi (Security Considerations):
8816         Mention call-process and rename-file as opposed to shell commands.
8817         Add some more cross-references.
8819 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
8821         autogen.sh now arranges for git to check hashes
8823         Suggested by Karl Fogel in:
8824         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01802.html
8825         * autogen.sh: Do "git config transfer.fsckObjects true".
8827 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
8829         Fix (c & 040) typo in emergency escapes
8831         * src/keyboard.c (handle_interrupt): Fix recently-introduced
8832         typo (040 should have been ~040) that silently suppressed
8833         auto-saves after emergency escapes.  Redo comparison to avoid
8834         similar problems.
8836 2016-01-31  Eli Zaretskii  <eliz@gnu.org>
8838         Fix display of overlay strings with 'display' and 'box' property
8840         * src/xdisp.c (get_next_display_element): Take the box face from
8841         display stack level that comes from a buffer, not an overlay
8842         string.  (Bug#22499)
8844 2016-01-31  Andreas Schwab  <schwab@linux-m68k.org>
8846         Fix imap-starttls-open
8848         * lisp/net/imap.el (imap-starttls-open): Log imap process
8849         output.  Call imap-parse-greeting.  (Bug#22500)
8851 2016-01-31  Andreas Schwab  <schwab@linux-m68k.org>
8853         Fix return value of imap-starttls-open
8855         * lisp/net/imap.el (imap-starttls-open): Fix return value.
8857 2016-01-31  John Wiegley  <johnw@newartisans.com>
8859         Correct reference to DARWIN_OS preprocessor symbol
8861         * src/alloc.c: Correct a preprocessor reference to DARWIN_OS, which may
8862           not be defined.
8864 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
8866         Spelling fix
8868         Spelling fixes
8870 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
8872         Pacify GCC on C library without glibc API
8874         Without this change, with --enable-gcc-warnings GCC would complain
8875         “error: redundant redeclaration of ‘aligned_alloc’”.
8876         * configure.ac: Simplify aligned_alloc testing.
8877         * src/alloc.c (aligned_alloc): Don’t use if DARWIN_OS,
8878         since the simplified configure.ac no longer checks for that.
8879         Don’t declare if HAVE_ALIGNED_ALLOC.
8880         Correct misspelling of HAVE_ALIGNED_ALLOC in ifdef.
8882 2016-01-30  Artur Malabarba  <bruce.connor.am@gmail.com>
8884         Backport: * lisp/files.el: Remove support for extra .dir-locals file
8886         (dir-locals-file-2, dir-locals--all-files): Remove.
8887         (dir-locals-collect-variables, dir-locals-file, dir-locals-find-file)
8888         (dir-locals-read-from-file, hack-dir-local-variables): Revert changes.
8890         * lisp/files-x.el (modify-dir-local-variable): Revert changes.
8892         * lisp/help-fns.el (describe-variable): Revert changes.
8894         * doc/emacs/custom.texi (Directory Variables): Revert changes.
8896         * etc/NEWS: Revert changes.
8898 2016-01-30  Glenn Morris  <rgm@gnu.org>
8900         * lisp/net/browse-url.el (browse-url-default-browser):
8901         Lower priority of non-free Chrome.
8903 2016-01-30  Glenn Morris  <rgm@gnu.org>
8905         Improve the custom type of some user options.
8907         * lisp/desktop.el (desktop-minor-mode-table):
8908         * lisp/man.el (Man-frame-parameters):
8909         * lisp/midnight.el (midnight-delay):
8910         * lisp/speedbar.el (speedbar-select-frame-method):
8911         * lisp/tooltip.el (tooltip-frame-parameters):
8912         * lisp/tree-widget.el (tree-widget-space-width):
8913         * lisp/type-break.el (type-break-keystroke-threshold):
8914         * lisp/woman.el (woman-imenu-generic-expression):
8915         * lisp/cedet/ede.el (ede-debug-program-function):
8916         * lisp/cedet/ede/project-am.el (project-am-debug-target-function):
8917         * lisp/emulation/viper-keym.el (viper-toggle-key):
8918         * lisp/erc/erc-networks.el (erc-server-alist):
8919         * lisp/gnus/message.el (message-deletable-headers, message-signature):
8920         * lisp/mail/mailalias.el (mail-directory-stream):
8921         * lisp/play/tetris.el (tetris-x-colors):
8922         * lisp/progmodes/gud.el (gud-tooltip-modes): Improve custom type.
8924 2016-01-30  Simen Heggestøyl  <simenheg@gmail.com>
8926         Highlight CSS variables with variable name face
8928         * lisp/textmodes/css-mode.el (css-nmstart-re): Don't match variables.
8929         (css--font-lock-keywords): Highlight variables in
8930         `font-lock-variable-name-face'.
8932 2016-01-30  Glenn Morris  <rgm@gnu.org>
8934         * lisp/gnus/gnus-kill.el (gnus-winconf-kill-file): Not user-serviceable.
8936 2016-01-30  Glenn Morris  <rgm@gnu.org>
8938         Mark some user options that can get evalled as risky.
8940         * lisp/allout.el (allout-title):
8941         * lisp/emacs-lisp/edebug.el (edebug-global-break-condition):
8942         * lisp/gnus/message.el (message-mailer-swallows-blank-line):
8943         * lisp/progmodes/gud.el (gud-tooltip-display):
8944         * lisp/vc/ediff-mult.el (ediff-default-filtering-regexp):
8945         Mark as risky.
8947 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
8949         Disable DebPrint in sys_read on MS-Windows
8951         * src/w32.c (sys_read): Disable a debugging print that is normal
8952         when non-blocking reads are retried.
8954 2016-01-30  Martin Rudalics  <rudalics@gmx.at>
8956         ;Fix ChangeLog entry
8958 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
8960         Fix typos in Introduction to Emacs Lisp manual
8962         * doc/lispintro/emacs-lisp-intro.texi (Emacs Initialization)
8963         (kill-new function, Digression into C)
8964         (Complete forward-sentence, Divide and Conquer, Find a File)
8965         (lengths-list-many-files, Columns of a graph, defcustom)
8966         (recursive-count-words): Fix typos.  Reported by Daniel Bastos
8967         <dbastos@toledo.com>.
8969 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
8971         Bump version to 25.0.90
8973         * README:
8974         * configure.ac:
8975         * msdos/sed2v2.inp: Bump version to 25.0.90.
8977 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
8979         * etc/AUTHORS: Update the AUTHORS file
8981 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
8983         Bump version to 25.0.90
8985         * README:
8986         * configure.ac:
8987         * msdos/sed2v2.inp: Bump version to 25.0.90.
8989 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
8991         * etc/AUTHORS: Update the AUTHORS file
8993 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
8995         authors.el updates
8997         * admin/authors.el (authors-renamed-files-alist): Additions.
8999 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
9001         Make it possible to run make change-history on emacs-25
9003         * Makefile.in: Check if the current branch is emacs-25 instead of
9004           master.
9006 2016-01-30  lu4nx  <lx@shellcodes.org>
9008         Support Go language in 'etags'
9010         * lib-src/etags.c <Ruby_help>: Fix documentation of Ruby tags.
9011         <Go_help>: New help.
9012         <Go_suffixes>: New variable.
9013         (Go_functions): New function.
9014         <lang_names>: Add entry for Go.  (Bug#22370)
9016         * doc/emacs/maintaining.texi (Tag Syntax): Document Go support.
9017         * doc/man/etags.1: Mention Go support.
9019         * etc/NEWS: Mention Go support.
9021         * test/etags/go-src/test.go:
9022         * test/etags/go-src/test1.go: New test files.
9023         * test/etags/Makefile (GOSRC): New variable.
9024         (SRCS): Add $(GOSRC).
9025         * test/etags/ETAGS.good_1:
9026         * test/etags/ETAGS.good_2:
9027         * test/etags/ETAGS.good_3:
9028         * test/etags/ETAGS.good_4:
9029         * test/etags/ETAGS.good_5:
9030         * test/etags/ETAGS.good_6:
9031         * test/etags/CTAGS.good: Adapt to addition of Go tests.
9033 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
9035         Improve Ruby support in 'etags'
9037         * lib-src/etags.c (Ruby_functions): Tag constants.  Don't tag
9038         singleton classes.  Remove class qualifiers from tags generated
9039         for method and constant names.  (Bug#22241)
9041         * doc/emacs/maintaining.texi (Tag Syntax): Mention that constants
9042         are tagged by etags in Ruby.
9044         * etc/NEWS: Mention that constants are tagged by etags in Ruby.
9046         * test/etags/ruby-src/test1.ru: Add more tests.
9047         * test/etags/ETAGS.good_1:
9048         * test/etags/ETAGS.good_2:
9049         * test/etags/ETAGS.good_3:
9050         * test/etags/ETAGS.good_4:
9051         * test/etags/ETAGS.good_5:
9052         * test/etags/ETAGS.good_6:
9053         * test/etags/CTAGS.good: Adapt to the changes in etags and in Ruby
9054         tests.
9056 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
9058         Adjust etags test results to changes in copyright years
9060         * test/etags/CTAGS.good:
9061         * test/etags/ETAGS.good_1:
9062         * test/etags/ETAGS.good_2:
9063         * test/etags/ETAGS.good_3:
9064         * test/etags/ETAGS.good_4:
9065         * test/etags/ETAGS.good_5:
9066         * test/etags/ETAGS.good_6: Adjust to shift in characters and
9067         in line numbers.
9069 2016-01-30  Andreas Schwab  <schwab@linux-m68k.org>
9071         Revert "Re-enable checks in member, memql, delete to complain about non-lists"
9073         This reverts commit f524e8b7f12d9b5a8b92084e5385429fe7b085b9.
9075 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
9077         Make it possible to run make change-history on emacs-25
9079         * Makefile.in: Check if the current branch is emacs-25 instead of
9080           master.
9082 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
9084         Don't fiddle with DEFAULT
9086         * lisp/progmodes/project.el (project--completing-read-strict):
9087         Don't change DEFAULT, whether is has any matches in
9088         COLLECTION, or not.
9090 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
9092         Document xwidget commands and functions
9094         * doc/lispref/display.texi (Xwidgets): New section, describes some
9095         of the xwidget primitives.
9096         * doc/lispref/display.texi (Display): Update the chapter menu.
9097         * doc/emacs/misc.texi (Embedded WebKit Widgets): New section.
9098         * doc/emacs/emacs.texi (Top): Update the master menu to include
9099         the xwidget node.
9101 2016-01-30  Lars Ingebrigtsen  <larsi@gnus.org>
9103         Build fix for shr.el
9105         * shr.el (seq): Require.
9107 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
9109         Improve project-find-file yet again!
9111         * lisp/progmodes/project.el (project--completing-read-strict):
9112         New function.
9113         (project-find-file-in): Use it.
9114         (project-file-completion-table): Move the default
9115         implementation inside the cl-defgeneric form.
9116         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01720.html)
9118 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
9120         Don't pass DIR to 'hg status'
9122         * lisp/vc/vc-hg.el (vc-hg-dir-status-files):
9123         Don't pass DIR to 'hg status' (bug#22481).
9125 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
9127         Fix typo in previous commits
9129         * lisp/progmodes/project.el (project-find-file-in):
9130         * lisp/vc/vc-mtn.el (vc-mtn-find-ignore-file): Fix typo in previous
9131         commit.
9133 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
9135         Improve project-find-file
9137         * lisp/progmodes/project.el (project-file-completion-table): New.
9138         (project-find-file, project-or-external-find-file): Default to filename
9139         at point.
9140         (project-file-completion-table): New, split out from
9141         project--find-file-in.
9142         (project-find-file-in): Renamed from project--find-file-in, use
9143         project-file-completion-table.
9145         * lisp/progmodes/xref.el (ede-minor-mode): New declaration.
9146         (xref--find-ignores-arguments): Add doc string.
9148 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
9150         Implement vc-mtn-find-ignore-file, fix some doc strings
9152         * lisp/cedet/cedet-global.el (cedet-gnu-global-root): Improve doc string.
9154         * lisp/cedet/ede/locate.el (initialize-instance): Improve doc string.
9156         * lisp/vc/vc-git.el (vc-git-find-ignore-file): Fix doc string.
9158         * lisp/vc/vc-mtn.el (vc-mtn-find-ignore-file): New function.
9160 2016-01-29  Vincent Belaïche  <vincentb1@users.sourceforge.net>
9162         Correct a whole bunch of bugs coming with renamed cell relocation.
9164         This is the same change as commit on master branch. See
9165         http://git.savannah.gnu.org/cgit/emacs.git/commit/?id=badcd38aa86ed7973f2be2743c405710973a0bdd
9167         * lisp/ses.el (ses-localvars): rename variable
9168         `ses--renamed-cell-symb-list' into `ses--in-killing-named-cell-list'
9169         and adjust the comment about it.
9170         (ses-plist-delq): new defun.
9171         (ses--ses-buffer-list): new defvar.
9172         (ses--unbind-cell-name): new defun.
9173         (ses-relocate-symbol): Do not relocate symbol when it is a named cell.
9174         (ses-relocate-formula): Undo change of
9175         2011-12-27T19:30:39Z!vincentb1@users.sourceforge.net that was
9176         preventing relocation for named cell --- now doing this is delegated
9177         to function `ses-relocate-symbol'.
9178         (ses-relocate-range): In docstring, undo change of
9179         2016-01-03T07:31:52Z!johnw@newartisans.com, `ses-range' must remain
9180         lower case as it is not a variable.
9181         (ses-relocate-all): Cell name relocation : 1) check that cell is a
9182         renamed cell by testing `ses-cell' property to :ses-named, rather than
9183         comparing name to corresponding standard name. Set rowcol of renamed
9184         cell into the hashmap --- `ses-cell' property must not be used for
9185         that as the same name can be used for different locations in different
9186         SES sheets ; 2) use `local-variable-if-set-p' rather than `boundp' and
9187         `local-variable-p' to check if cell name is already in use in this
9188         sheet or needs initialization.
9189         (ses-relocate-all): Cell value relocation : 1) like for name
9190         relocation use the `ses-cell' property rather than comparing actual
9191         name to corresponding standard name. 2) Correct bug introduced in
9192         2011-12-27T19:30:39Z!vincentb1@users.sourceforge.net, as the test was
9193         made the other way round than the intention --- ie value relocation
9194         was disabled for standard cell, not for renamed cell as was the
9195         intention.
9196         (ses-relocate-all): Add loop for unbinding deleted renamed cells
9197         names.
9198         (ses-killbuffer-hook): new defun.
9199         (ses-mode): Add the ses--ses-buffer-list maintenance mechanism ---
9200         kill buffer hook, plus pushing current buffer if new in list.
9201         (ses-delete-row, ses-delete-column): Collect deleted renamed cells
9202         into `ses--in-killing-named-cell-list'.
9203         (ses-rename-cell): Remove update of variable
9204         `ses--renamed-cell-symb-list', this variable is renamed to
9205         `ses--in-killing-named-cell-list', and its setting is done in
9206         functions `ses-delete-row' and , `ses-delete-column' now.
9207         (ses-rename-cell): Make cell new name a buffer local variable.
9208         (ses-rename-cell): Change correction of
9209         2015-12-30T23:10:37Z!vincentb1@users.sourceforge.net concerning
9210         computation of the range over which `cursor-intangible' property was
9211         to be updated. This correction was ok for non spilling cells, but not
9212         for cells spilling over following blank cells. Simply use
9213         `next-single-property-change' rather than computing the end column
9214         from column widths.
9216 2016-01-29  Andreas Schwab  <schwab@linux-m68k.org>
9218         Re-enable checks in member, memql, delete to complain about non-lists
9220         * src/fns.c (Fmember, Fmemql, Fdelete): Revert 2007-10-16 change.
9222 2016-01-29  Martin Rudalics  <rudalics@gmx.at>
9224         Minor doc(-string) tweaks
9226         * lisp/window.el (window-in-direction): Fix doc-string typo.
9227         * doc/lispref/frames.texi (Frame Font): Mention canonical
9228         character width/height.
9229         * doc/lispref/windows.texi (Windows and Frames): Clarify
9230         handling of minibuffer window for `window-in-direction'.
9231         (Window Sizes): Minor tweaks in descriptions of
9232         `window-max-chars-per-line', `window-min-width' and
9233         `window-min-size'.
9234         (Deleting Windows): Minor tweak in `delete-window' description.
9235         (Selecting Windows): Clarify window use time description.
9236         (Cyclic Window Ordering): Minor tweak.
9237         (Switching Buffers): Clarify description of
9238         `switch-to-buffer-in-dedicated-window'.
9240 2016-01-29  Eli Zaretskii  <eliz@gnu.org>
9242         Minor improvements to 'pcase' documentation
9244         * doc/lispref/control.texi (Pattern matching case statement):
9245         Improve the documentation of 'pcase' per comments.  See two
9246         discussion threads on emacs-devel@gnu.org for the details:
9247         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01335.html
9248         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01336.html.
9250 2016-01-29  Glenn Morris  <rgm@gnu.org>
9252         Don't use eval to quieten prolog.el compilation.
9254         * lisp/progmodes/prolog.el (pltrace-on, pltrace-off): Declare.
9255         (prolog-enable-sicstus-sd, prolog-disable-sicstus-sd): Don't use eval.
9257 2016-01-29  Glenn Morris  <rgm@gnu.org>
9259         Mark some risky prolog variables.
9261         * lisp/progmodes/prolog.el (prolog-system-version)
9262         (prolog-keywords, prolog-types, prolog-mode-specificators)
9263         (prolog-determinism-specificators, prolog-directives)
9264         (prolog-program-name, prolog-program-switches)
9265         (prolog-consult-string, prolog-compile-string)
9266         (prolog-eof-string, prolog-prompt-regexp, prolog-help-function):
9267         Mark anything processed by prolog-find-value-by-system as risky.
9269 2016-01-28  Glenn Morris  <rgm@gnu.org>
9271         * lisp/custom.el (defcustom): Doc fix.
9273         * doc/lispref/customize.texi (Variable Definitions):
9274         Defcustom should always have a type.
9276 2016-01-28  Glenn Morris  <rgm@gnu.org>
9278         * lisp/cedet/semantic/db-file.el (semanticdb-persistent-path):
9279         Fix :type.
9281         * lisp/emacs-lisp/package.el (package-load-list): Improve :type.
9283 2016-01-28  Michael Albinus  <michael.albinus@gmx.de>
9285         Fix Bug#22452
9287         * lisp/net/tramp-adb.el (tramp-adb-maybe-open-connection):
9288         * lisp/net/tramp-gvfs.el (tramp-gvfs-maybe-open-connection):
9289         * lisp/net/tramp-sh.el (tramp-maybe-open-connection):
9290         * lisp/net/tramp-smb.el (tramp-smb-maybe-open-connection):
9291         Mark it as connected.
9293         * lisp/net/tramp.el (tramp-handle-file-remote-p): Check also, if
9294         connection property "connected" is set.  (Bug#22452)
9296 2016-01-27  Glenn Morris  <rgm@gnu.org>
9298         * lisp/xwidget.el (xwidget-query-on-exit-flag): Declare.
9300         * lisp/xwidget.el (xwidget-webkit-browse-url): Give explicit error
9301         if not compiled with xwidgets.
9303 2016-01-27  Paul Eggert  <eggert@cs.ucla.edu>
9305         C-u C-x = example doc fix
9307         * doc/emacs/mule.texi (International Chars):
9308         Adjust example to match current behavior of C-u C-x =.
9310 2016-01-27  Paul Eggert  <eggert@cs.ucla.edu>
9312         malloc.h hygiene
9314         This attempts to future-proof Emacs a bit against possible glibc
9315         changes, by having Emacs use <malloc.h> declarations rather than
9316         coding them up by hand.  Problem noted by Florian Weimer in:
9317         https://sourceware.org/ml/libc-alpha/2016-01/msg00777.html
9318         Implement this mainly by moving malloc.h-related functions from
9319         emacs.c (which does not include <malloc.h>) to alloc.c (which does).
9320         * src/alloc.c (my_heap_start) [DOUG_LEA_MALLOC || GNU_LINUX]:
9321         New function.
9322         The remaining changes to this file apply only if DOUG_LEA_MALLOC.
9323         (alloc_unexec_pre, alloc_unexec_post): New functions.
9324         (malloc_initialize_hook): Use my_heap_start and alloc_unexec_post.
9325         (__MALLOC_HOOK_VOLATILE): New macro, if not already defined.
9326         (__malloc_initialize_hook): Use it.
9327         (malloc_state_ptr, malloc_initialize_hook, __malloc_initialize_hook):
9328         Move here from ...
9329         * src/emacs.c: ... here.
9330         (malloc_get_state, malloc_set_state): Remove extern decls.
9331         (my_heap_start) [DOUG_LEA_MALLOC || GNU_LINUX]: Remove static var.
9332         All uses changed to similarly-named new function.
9333         (Fdump_emacs): Use new functions alloc_unexec_pre, alloc_unexec_post.
9334         * src/lisp.h (my_heap_start, alloc_unexec_pre, alloc_unexec_post):
9335         New decls.
9337 2016-01-26  Eli Zaretskii  <eliz@gnu.org>
9339         * doc/emacs/mark.texi (Using Region): Clarify wording.  (Bug#22467)
9341 2016-01-26  Paul Eggert  <eggert@cs.ucla.edu>
9343         Remove never-set var handle_user_signal_hook
9345         * src/keyboard.c, src/keyboard.h (handle_user_signal_hook):
9346         Remove never-set var.  All uses removed.
9348 2016-01-26  K. Handa  <handa@gnu.org>
9350         Backport:fix previous change of src/ftfont.c (ftfont_shape_by_flt)
9352         * src/ftfont.c (ftfont_shape_by_flt): Fix previous change.  Access the
9353         second glyph only when there are enough glyphs.
9355         (cherry picked from commit 9835757013569673854b692ccbb58bfb3c3ed1f7)
9357 2016-01-26  K. Handa  <handa@gnu.org>
9359         support rendering of wider range of combinging characters by ftfont backend
9361         * lisp/language/hebrew.el (hebrew-shape-gstring): If the font backend
9362         supports rendering of combining characters, call
9363         font-shape-gstring.
9365         * src/font.c (Ffont_get): Handle `combining-capability' property.
9366         (syms_of_font): New symbol ":combining-capability'.
9368         * src/font.h (struct font_driver): New member combining_capability.
9370         * src/ftfont.c: Include "category.h".
9371         (ftfont_driver): Initialize combining_capability to
9372         ftfont_combining_capability.
9373         (ftfont_shape_by_flt): If OTF is null, try to find a suitable
9374         FLT in advance.
9375         (ftfont_combining_capability): New function.
9377         (cherry picked from commit 536f48e9a2251b9e654ea974bd90ff2f40218753)
9379 2016-01-26  Anders Lindgren  <andlind@gmail.com>
9381         Fixed NextStep fullscreen issue (bug#22468)
9383         When in fullscreen mode, `[screen visibleFrame]' sometimes
9384         includes, sometimes excludes the menu bar. This could cause
9385         a frame to be placed too low when in fullscreen mode.
9387         * src/nsterm.m (ns_menu_bar_should_be_hidden): Trace.
9388         (constrain_frame_rect): New parameter, isFullscreen, when true don't
9389         query the height of the menu bar.
9390         (ns_constrain_all_frames): Pass `false' (isFullscreen) to
9391         `constrain_frame_rect'.
9392         ([EmacsView initFrameFromEmacs:]): Trace.
9393         ([EmacsView isFullscreen]): Trace.
9394         ([EmacsWindow constrainFrameRect:toScreen:]): Pass fullscreen
9395         state to `constrain_frame_rect'.
9397 2016-01-26  Artur Malabarba  <bruce.connor.am@gmail.com>
9399         * lisp/files.el: Use a fixed file name for the second dir-locals file
9401         (dir-locals-file): Revert to its original fixed value.
9402         (dir-locals-file-2): New const.
9403         (dir-locals--all-files): Don't use `file-name-all-completions'.
9404         Instead, just check for the 2 dir-locals files and return a list
9405         of the ones that exit (if any).
9407         * etc/NEWS: Document the change.
9409         * doc/emacs/custom.texi (Directory Variables): Document the change.
9411         * doc/lispref/variables.texi (Directory Local Variables): Update
9412         accordingly.
9414 2016-01-26  Artur Malabarba  <bruce.connor.am@gmail.com>
9416         * lisp/files-x.el (modify-dir-local-variable): Small rewrite
9418         Change a variable name to be more meaningful, and reorder some of
9419         the code with no change in behaviour.
9421 2016-01-26  Artur Malabarba  <bruce.connor.am@gmail.com>
9423         * lisp/files.el (dir-locals-find-file): Refactor return values
9425         Returning a cache remains unchanged, but the case of returning a
9426         file (or pattern) is now changed to return the contaning
9427         directory.
9429         (dir-locals-read-from-file): Rename to `dir-locals-read-from-dir'
9430         and make obsolete.
9431         (dir-locals-read-from-dir): Simplify accordingly.
9432         (hack-dir-local-variables): Simplify accordingly and rename a
9433         variable.
9435 2016-01-26  Glenn Morris  <rgm@gnu.org>
9437         * lisp/textmodes/flyspell.el (flyspell--prev-meta-tab-binding):
9438         Declare.
9440         * configure.ac (USE_CAIRO): Rename to more standard HAVE_CAIRO.
9442         * configure.ac (--with-cairo): Say it's experimental.
9444         * lisp/xwidget.el (xwidget-webkit-scroll-behavior):
9445         Rename using American spelling.  Update all uses.
9447 2016-01-26  Glenn Morris  <rgm@gnu.org>
9449         Yet more xwidget doc fixes.
9451         * lisp/xwidget.el (xwidget-webkit-scroll-behaviour)
9452         (xwidget-insert, xwidget-webkit-browse-url)
9453         (xwidget-webkit-scroll-up, xwidget-webkit-scroll-down)
9454         (xwidget-webkit-scroll-forward, xwidget-webkit-scroll-backward)
9455         (xwidget-webkit-insert-string, xwidget-webkit-show-named-element)
9456         (xwidget-webkit-show-id-element)
9457         (xwidget-webkit-show-id-or-named-element)
9458         (xwidget-webkit-adjust-size, xwidget-webkit-current-url)
9459         (xwidget-webkit-execute-script-rv)
9460         (xwidget-webkit-copy-selection-as-kill, xwidget-get)
9461         (xwidget-put):  Doc fixes.
9462         (xwidget-webkit-insert-string, xwidget-webkit-show-named-element)
9463         (xwidget-webkit-show-id-element)
9464         (xwidget-webkit-show-id-or-named-element): Prompt fixes.
9466 2016-01-25  Ted Zlatanov  <tzz@lifelogs.com>
9468         * lisp/gnus/gnus-art.el (gnus-blocked-images):
9469         Add explicit nil choice and tags.
9471 2016-01-25  Paul Eggert  <eggert@cs.ucla.edu>
9473         Spelling fixes
9475 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
9477         (font-lock-ensure-function): Fix bug#22399
9479         * lisp/font-lock.el (font-lock-ensure-function): Fix handling when
9480         font-lock-mode is not enabled (bug#22399).
9482 2016-01-25  Alan Mackenzie  <acm@muc.de>
9484         Expunge "allow" + infinitive from source and doc, part 2.
9486         Do the same for "permit", "enable", "prevent", and (where appropriate)
9487         "require".
9489         doc/misc/reftex.texi:
9490         doc/misc/url.texi:
9491         lib/get-permissions.c:
9492         lib/strftime.c:
9493         lisp/org/org-element.el:
9494         lisp/org/org-mobile.el:
9495         lisp/textmodes/reftex-vars.el:
9496         src/bidi.c:
9497         src/emacs.c:
9498         src/xdisp.c:
9499         test/etags/c-src/emacs/src/lisp.h:
9501         Expunge the likes of "This allows to do something" from the above files.
9503 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
9505         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-mode): Redundant line
9507         `special-mode' is already read-only.
9509 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
9511         * lisp/emacs-lisp/ert.el (ert--results-move): Change error to user-error
9513 2016-01-25  Paul Eggert  <eggert@cs.ucla.edu>
9515         Port "$@" to OpenIndiana ksh93
9517         In http://lists.gnu.org/archive/html/bug-autoconf/2015-12/msg00000.html
9518         Pavel Raiskup reports that ${1+"$@"} runs afoul of a bug in /bin/sh
9519         (derived from ksh 93t+ 2010-03-05).  ${1+"$@"} works around an ancient
9520         bug in long-dead shells, so remove the workaround.
9521         * admin/check-doc-strings, configure.ac, lib-src/rcs2log:
9522         Use plain "$@" rather than ${1+"$@"}.
9524 2016-01-25  Paul Eggert  <eggert@cs.ucla.edu>
9526         * src/xwidget.c (Fxwidget_set_adjustment): Fix doc string quoting typo.
9528 2016-01-25  Paul Eggert  <eggert@cs.ucla.edu>
9530         Improve wording for SMB support
9532         * doc/misc/tramp.texi (External methods): Improve and modernize
9533         wording for discussion of smbclient.  There is no longer any
9534         need to mention the laundry list of old MS Windows implementations
9535         of SMB and CIFS, nor to mention CIFS.  Also, give a URL for Samba.
9537 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
9539         Merge from gnulib
9541         This incorporates:
9542         2016-01-24 openat_proc_name: fix last '/' overwritten on OS/2 kLIBC
9543         2016-01-24 closedir, dirfd, opendir: port to OpenSolaris 5.10
9544         2016-01-15 detect utimes() correctly on OS/2 kLIBC
9545         2016-01-15 openat_proc_name: port to OS/2 kLIBC
9546         2016-01-14 stdint: check _INTPTR_T_DECLARED for intptr_t etc.
9547         2016-01-14 opendir, closedir, dirfd, fdopendir: port to OS/2 kLIBC
9548         2016-01-14 dup, dup2, fcntl: support a directory fd on OS/2 kLIBC
9549         2016-01-14 binary-io: don't put fd in binary mode if a console on EMX
9550         2016-01-14 sig2str: list all signals on FreeBSD >= 7
9551         2016-01-13 acl-permissions: port to USE_ACL==0 platforms
9552         2016-01-12 mktime: rename macro to avoid glibc clash
9553         2016-01-12 Port "$@" to OpenIndiana ksh93
9554         2016-01-12 Port Universal Time settings to strict POSIX
9555         * build-aux/gitlog-to-changelog, build-aux/update-copyright:
9556         * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
9557         * lib/binary-io.h, lib/dirent.in.h, lib/dirfd.c, lib/dup2.c:
9558         * lib/fcntl.c, lib/fdopendir.c, lib/mktime.c, lib/openat-proc.c:
9559         * lib/sig2str.h, lib/stdint.in.h, m4/dirfd.m4, m4/dup2.m4:
9560         * m4/fcntl.m4, m4/utimes.m4:
9561         Copy from gnulib.
9562         * m4/gnulib-comp.m4: Regenerate.
9564 2016-01-24  Alan Mackenzie  <acm@muc.de>
9566         Expunge "allow" + infinitive without direct object from source and doc.
9568         Do the same for "permit", "enable", and "prevent".
9570         * doc/emacs/mule.texi:
9571         * doc/lispref/control.texi:
9572         * doc/lispref/display.texi:
9573         * doc/lispref/frames.texi:
9574         * doc/lispref/functions.texi:
9575         * doc/lispref/nonascii.texi:
9576         * doc/lispref/streams.texi:
9577         * doc/lispref/windows.texi:
9578         * doc/misc/dbus.texi:
9579         * doc/misc/eww.texi:
9580         * doc/misc/flymake.texi:
9581         * doc/misc/octave-mode.texi:
9582         * doc/misc/org.texi:
9583         * doc/misc/reftex.texi:
9584         * doc/misc/tramp.texi:
9585         * doc/misc/wisent.texi:
9586         * etc/NEWS:
9587         * lisp/autorevert.el:
9588         * lisp/cedet/mode-local.el:
9589         * lisp/cedet/semantic/senator.el:
9590         * lisp/cedet/semantic/wisent.el:
9591         * lisp/dos-fns.el:
9592         * lisp/frameset.el:
9593         * lisp/gnus/gnus-agent.el:
9594         * lisp/gnus/mm-util.el:
9595         * lisp/international/characters.el:
9596         * lisp/ldefs-boot.el:
9597         * lisp/mail/mailclient.el:
9598         * lisp/man.el:
9599         * lisp/mh-e/mh-search.el:
9600         * lisp/net/tramp-cmds.el:
9601         * lisp/net/tramp-gvfs.el:
9602         * lisp/org/org-crypt.el:
9603         * lisp/org/org-element.el:
9604         * lisp/org/org-feed.el:
9605         * lisp/org/org.el:
9606         * lisp/org/ox-ascii.el:
9607         * lisp/org/ox-icalendar.el:
9608         * lisp/org/ox-publish.el:
9609         * lisp/org/ox.el:
9610         * lisp/play/gamegrid.el:
9611         * lisp/play/gomoku.el:
9612         * lisp/progmodes/antlr-mode.el:
9613         * lisp/progmodes/python.el:
9614         * lisp/progmodes/vhdl-mode.el:
9615         * lisp/strokes.el:
9616         * lisp/textmodes/ispell.el:
9617         * lisp/tree-widget.el:
9618         * lisp/vc/pcvs.el:
9619         * lisp/window.el:
9620         * src/lisp.h:
9621         * src/w32.c:
9622         * src/w32heap.c:
9623         * src/w32term.c:
9624         * src/window.c:
9625         * src/xfaces.c:
9627         Replace solecisms like "This allow to do something" with a correct
9628         alternative, such as "This allow you to do something", "This allows
9629         something to be done" or "This allows the doing of something".
9631 2016-01-24  l3thal  <kwhite@gnu.org>
9633         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
9635 2016-01-24  Kelvin White  <kwhite@gnu.org>
9637         Add NEWS entry for asynchronous reconnect in ERC
9639 2016-01-24  l3thal  <kwhite@gnu.org>
9641         Add NEWS entry for asynchronous reconnect in ERC
9643 2016-01-24  Kelvin White  <kwhite@gnu.org>
9645         browse-url.el: Add 'google-chrome' to supported browsers.
9647 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
9649         Port Tramp manual to latest Texinfo
9651         Otherwise, 'make pdf' did not work (Bug#22416).
9652         * doc/misc/tramp.texi (xxx, yyy): Remove macros.
9653         (trampfn): Specialize to the case where METHOD is nonempty.
9654         The 2nd argument is now user@host, not 2nd user and 3rd host args.
9655         All uses changed.
9656         (trampf): New macro.
9658 2016-01-24  Lars Ingebrigtsen  <larsi@gnus.org>
9660         * eww.el (eww-render): Protect against empty content-types.
9662 2016-01-24  Nicolas Petton  <nicolas@petton.fr>
9664         authors.el updates
9666         * admin/authors.el (authors-ignored-files, authors-renamed-files-alist):
9667           Additions.
9669 2016-01-24  Dmitry Gutov  <dgutov@yandex.ru>
9671         Rename xref-query-replace to xref-query-replace-in-results
9673         * lisp/progmodes/xref.el(xref-query-replace):
9674         Rename to xref-query-replace-in-results.
9675         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01240.html)
9677         * lisp/progmodes/xref.el (xref--xref-buffer-mode-map):
9678         * lisp/dired-aux.el (dired-do-find-regexp-and-replace):
9679         * doc/emacs/dired.texi (Operating on Files):
9680         * doc/emacs/maintaining.texi (Xref Commands)
9681         (Identifier Search, Identifier Search): Update accordingly.
9683 2016-01-24  Dmitry Gutov  <dgutov@yandex.ru>
9685         Update cl-defgeneric and cl-defmethod docstrings
9687         * lisp/emacs-lisp/cl-generic.el: Remove outdated TODO item.
9688         (cl-defgeneric): Rename BODY to DEFAULT-BODY.
9689         (cl-defmethod): Mention that multiple dispatch arguments are
9690         allowed.  Document supported types.  (Bug#22336)
9692 2016-01-23  Dmitry Gutov  <dgutov@yandex.ru>
9694         Comment out next-error-function integration in xref
9696         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
9697         Comment out next-error-function integration
9698         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01286.html).
9700 2016-01-23  John Wiegley  <johnw@newartisans.com>
9702         Correct a use of "which" in intro.texi
9704 2016-01-23  Alan Mackenzie  <acm@muc.de>
9706         Distinguish the two meanings of Java's keyword "default".  Fixes bug #22358.
9708         * lisp/progmodes/cc-engine.el (c-guess-basic-syntax CASE 14): Check the
9709         context of case labels (including "default") more rigorously.
9710         (c-guess-basic-syntax CASE 15): Consequential amendment.
9712         * lisp/progmodes/cc-langs.el (c-modifier-kwds): Add "default" to Java's value.
9714 2016-01-23  Oscar Fuentes  <ofv@wanadoo.es>
9716         Don't operate on menu bar of nonexistent frame
9718         * src/xfns.c (Fx_hide_tip) [USE_LUCID]: Check that the current frame
9719         is valid before redisplaying its menu. Fixes bug#22438.
9721 2016-01-23  Anders Lindgren  <andlind@gmail.com>
9723         Unbreak the GNUstep build.
9725         * src/nsterm.m ([EmacsBell init]): In GNUstep, don't use the
9726         predefined "caution" image. Add trace.
9727         (x_set_window_size): Remove unused variables `cols' and `rows'.
9728         (ns_draw_fringe_bitmap): Exclude assignment of `fromRect' when
9729         GNUstep is used.
9730         ([EmacsView updateFrameSize:]): Remove unused variable `win'.
9731         ([EmacsWindow zoom:]): Remove unused variable `f'.
9733 2016-01-23  Eli Zaretskii  <eliz@gnu.org>
9734             John Wiegley  <johnw@gnu.org>
9735             Michael Heerdegen  <michael_heerdegen@web.de>
9737         Improve documentation of 'pcase'
9739         * doc/lispref/control.texi (Pattern matching case statement):
9740         Reorganize, expand, and improve wording.
9742         * etc/NEWS: Mention that 'pcase' changes are documented.
9744 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
9746         * etc/NEWS: Say that Cairo is experimental.
9748 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
9750         Report error for PNG under Cairo
9752         * src/image.c (lookup_rgb_color): Signal a file error instead
9753         of dumping core when mishandling an image.
9755 2016-01-23  Arash Esbati  <esbati@gmx.de>
9757         Delete a spurious backquote (tiny change)
9759         * lisp/textmodes/reftex-ref.el (reftex-label): Delete a
9760         spurious backquote which raises an error with emacs 25.
9762 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
9764         Pacify --enable-gcc-warnings --with-cairo
9766         Problem reported by Alexander Kuleshov in:
9767         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01289.html
9768         * src/gtkutil.c (xg_get_page_setup):
9769         Use switch rather than if-then-else.
9770         * src/image.c (COLOR_TABLE_SUPPORT):
9771         Define directly rather than via #define and optional later #undef.
9772         (lookup_rgb_color) [USE_CAIRO && ENABLE_CHECKING]:
9773         Crash when the pixel is undefined, as there is a genuine bug
9774         here (Bug#22442).
9775         * src/image.c (tiff_load, gif_load, svg_load_image)
9776         (x_kill_gs_process) [USE_CAIRO]:
9777         * src/xterm.c (x_draw_fringe_bitmap) [USE_CAIRO]:
9778         Omit unused locals, or move them to where they’re needed.
9779         (x_clear_area1): Now ATTRIBUTE_UNUSED.
9781 2016-01-23  Eli Zaretskii  <eliz@gnu.org>
9783         Update documentation for Dired search and replace
9785         * doc/emacs/dired.texi (Operating on Files): Update descriptions
9786         of 'A' and 'Q' now bound to 'dired-do-find-regexp' and
9787         'dired-do-find-regexp-and-replace'.
9789         * etc/NEWS: Mention xref-related changes in Dired.
9791 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
9793         Port recent xdisp.c fix to picky C compilers
9795         * src/xdisp.c (dump_glyph): Redo the call to fprintf to avoid
9796         putting #if inside the arguments to a standard function, which
9797         the C standard says has undefined behavior.
9799 2016-01-22  Alan Mackenzie  <acm@muc.de>
9801         Prevent spurious recognition of K&R argument declarations.  Fixes bug #2203
9803         * lisp/progmodes/cc-engine.el (c-forward-declarator): New function.
9804         (c-in-knr-argdecl): Before recognizing a K&R argument declaration, check it is
9805         contained in the preceding arg list.
9807         * lisp/progmodes/cc-fonts.el (c-font-lock-declarators): Use the new function
9808         `c-forward-declarator' in place of inline code.
9810 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
9812         Fix the build with --enable-checking=glyphs
9814         * src/xdisp.c (dump_glyph): Don't refer to glyph->u.xwidget in a
9815         build without xwidget support.
9817 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
9819         Document cl-generic.el
9821         * doc/lispref/functions.texi (Generic Functions): New section.
9822         (Bug#22336)
9823         (Functions): Update the chapter menu.
9824         * doc/lispref/elisp.texi: Update the master menu.
9826 2016-01-22  Paul Eggert  <eggert@cs.ucla.edu>
9828         xwidgets style cleanup
9830         Adjust the newly-added Xwidgets code so that it uses a more-typical
9831         Emacs style.  This should not affect behavior, except that in
9832         a few places it adds runtime checks that Lisp arguments are of
9833         the proper type, and in one place it uses more-precise arithmetic.
9834         * src/buffer.c, src/dispnew.c, src/emacs.c, src/emacsgtkfixed.c:
9835         * src/emacs.c, src/print.c, src/window.c, src/xdisp.c, src/xterm.c:
9836         Include xwidget.h unconditionally.
9837         * src/buffer.c (Fkill_buffer):
9838         * src/dispnew.c (update_window):
9839         * src/emacs.c (main):
9840         * src/print.c (print_object):
9841         * src/window.c (Fdelete_window_internal):
9842         * src/xdisp.c (handle_single_display_spec, push_it, pop_it)
9843         (get_next_element, set_iterator_to_next, next_element_from_xwidget)
9844         (dump_glyph, calc_pixel_width_or_height, BUILD_GLYPH_STRINGS_XW)
9845         (BUILD_GLYPH_STRINGS, x_produce_glyphs, get_window_cursor_type):
9846         * src/xterm.c (x_draw_glyph_string, x_draw_bar_cursor):
9847         Call xwidget functions and macros without worrying about
9848         HAVE_XWIDGETS when the code is a no-op on non-xwidget
9849         platforms.
9850         * src/dispextern.h (XWIDGET_GLYPH, struct glyph_string.xwidget)
9851         (IT_XWIDGET, GET_FROM_XWIDGET, struct it.u.xwidget)
9852         (struct it.xwidget):
9853         * src/lisp.h (PVEC_XWIDGET, PVEC_XWIDGET_VIEW):
9854         Always define.
9855         * src/emacsgtkfixed.h: Omit unnecessary comment.
9856         * src/keyboard.c: Fix spacing.
9857         * src/xdisp.c (BUILD_XWIDGET_GLYPH_STRING, produce_xwidget_glyph):
9858         Define to be a no-op if not HAVE_XWIDGETS.
9859         * src/xwidget.c: Include xwidget.h first (after config.h)
9860         to make sure that it can stand by itself.
9861         (Fmake_xwidget, Fxwidget_webkit_execute_script):
9862         Fix typo in doc string.
9863         (Fmake_xwidget): Check type of args.
9864         (Fmake_xwidget, offscreen_damage_event)
9865         (webkit_document_load_finished_cb, webkit_download_cb)
9866         (webkit_new_window_policy_decision_requested_cb)
9867         (webkit_navigation_policy_decision_requested_cb)
9868         (xwidget_osr_draw_cb, xwidget_osr_event_forward)
9869         (xwidget_osr_event_set_embedder, xwidget_init_view):
9870         Omit unnecessary casts.
9871         * src/xwidget.c (Fmake_xwidget, xwidget_hidden)
9872         (xwidget_show_view, xwidget_hide_view)
9873         (x_draw_xwidget_glyph_string, xwidget_start_redisplay, xwidget_touch)
9874         (xwidget_touched):
9875         * src/xwidget.h (struct xwidget.kill_without_query)
9876         (struct xwidget_view.redisplayed, struct xwidget_view.hidden):
9877         Use bool for boolean.
9878         * src/xwidget.c (store_xwidget_event_string, Fxwidget_size_request):
9879         Simplify by using list functions.
9880         (WEBKIT_FN_INIT): Omit unnecessary test for nil.
9881         (Fxwidget_resize): Check type of integer args
9882         before doing any work.  Check that they are nonnegative.
9883         (Fxwidget_set_adjustment): Check type of integer arg.
9884         Avoid redundant call to gtk_scrolled_window_get_vadjustment.
9885         Simplify.  Use double, not float.
9886         (Fxwidget_info, Fxwidget_view_info): Simplify by using CALLN.
9887         (valid_xwidget_spec_p): Simplify.
9888         (xwidget_spec_value): Omit unused arg FOUND.  All callers changed.
9889         * src/xwidget.h: Include lisp.h first, so that includers do
9890         not need to worry about doing that before including this file.
9891         Make this .h file safe to include even on non-HAVE_XWIDGETS
9892         configurations, to simplify the includers.
9893         (x_draw_xwidget_glyph_string, syms_of_xwidget, valid_xwidget_spec_p)
9894         (xwidget_end_redisplay, lookup_xwidget)
9895         (xwidget_view_delete_all_in_window, kill_buffer_xwidgets):
9896         Now a no-op if !HAVE_XWIDGETS, to simplify callers.
9897         (struct glyph_matrix, struct glyph_string, struct xwidget)
9898         (struct xwidget_view, struct window):
9899         New forward or incomplete decls, so that includers need not
9900         assume the corresponding .h files are already included, or that
9901         HAVE_XWIDGETS is defined.
9902         (struct xwidget_type, xwidget_from_id): Remove; unused.
9904 2016-01-22  Michael Albinus  <michael.albinus@gmx.de>
9906         Backport kqueue integration from master
9908         * configure.ac (--with-file-notification): Add kqueue.
9909         (top): Remove special test for "${HAVE_NS}" and
9910         ${with_file_notification}, this is handled inside gfilenotify
9911         tests.  Add kqueue tests.  Use NOTIFY_CFLAGS and NOTIFY_LIBS
9912         instead of library specific variables.  Add error message for
9913         gfile on Nextstep.
9915         * doc/lispref/os.texi (File Notifications): Add kqueue as backend.
9916         Fix some glitches in the example.
9918         * etc/NEWS: Mention kqueue.
9920         * lisp/filenotify.el (file-notify--library)
9921         (file-notify-descriptors, file-notify-callback)
9922         (file-notify-add-watch, file-notify-rm-watch)
9923         (file-notify-valid-p): Add kqueue support.
9924         (file-notify--rm-descriptor): Remove WHAT arg.
9926         * src/Makefile.in: Use NOTIFY_CFLAGS and NOTIFY_LIBS.
9928         * src/emacs.c (main): Call globals_of_kqueue and syms_of_kqueue.
9930         * src/inotify.c (inotifyevent_to_event): Extract file name from
9931         watch_object if the event doesn't provide it.
9932         (Finotify_add_watch): Add file name to watch_object.
9934         * src/keyboard.c (make_lispy_event): Check also for HAVE_KQUEUE.
9936         * src/kqueue.c: New file.
9938         * src/lisp.h: Declare extern globals_of_kqueue and syms_of_kqueue.
9940         * test/automated/file-notify-tests.el
9941         (file-notify--test-expected-events): Remove.
9942         (file-notify--test-cleanup): Do not set that variable.
9943         (file-notify--test-timeout) Use different timeouts for
9944         different libraries.
9945         (file-notify--test-library): New defun.
9946         (file-notify--test-event-test): Make stronger checks.
9947         (file-notify--test-with-events): EVENTS can also be a list of
9948         lists.  Flush outstanding events before running the body.
9949         Make timeout heuristically depend on the number of events.
9950         (file-notify-test01-add-watch, file-notify-test02-events)
9951         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
9952         Rewrite in order to call file monitors but directory monitors.
9953         (file-notify-test02-events, file-notify-test04-file-validity): Do
9954         not skip cygwin tests.  Add additional test for file creation.
9955         Adapt expected result for different backends.
9956         (file-notify-test03-autorevert): Some of the tests don't work for
9957         w32notify.
9958         (file-notify-test06-many-events): New test.
9960 2016-01-22  John Wiegley  <johnw@newartisans.com>
9962         Further corrections to the pcase docstring
9964 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
9966         * doc/emacs/anti.texi (Antinews): Rewrite for Emacs 25.
9968 2016-01-22  Stephen Leake  <stephen_leake@stephe-leake.org>
9970         In xref-collect-references, force backends to respect the 'dir' arg
9972         * lisp/progmodes/xref.el (xref-collect-references): Force symref backends
9973         to use `default-directory'.
9975 2016-01-22  John Wiegley  <johnw@newartisans.com>
9977         Minor correction to pcase docstring
9979 2016-01-22  John Wiegley  <johnw@newartisans.com>
9981         Write a new docstring for the pcase macro
9983         * lisp/emacs-lisp/pcase.el (pcase): Write a new docstring.
9985 2016-01-21  Stephen Berman  <stephen.berman@gmx.net>
9987         Avoid byte-compiler warning in todo-mode (bug#21953)
9989         * lisp/calendar/todo-mode.el (todo-convert-legacy-files): Add limit argument
9990         to looking-back to comply with advertised-calling-convention.
9992 2016-01-21  Stephen Berman  <stephen.berman@gmx.net>
9994         Fix desktop support in todo-mode and doc-view (bug#22377)
9996         * lisp/calendar/todo-mode.el (todo-restore-desktop-buffer):
9997         * lisp/doc-view.el (doc-view-restore-desktop-buffer): Return current buffer.
9999         * lisp/calendar/todo-mode.el (todo-modes-set-2):
10000         * lisp/doc-view.el (doc-view-mode): Set desktop-save-buffer unconditionally.
10002 2016-01-21  Paul Eggert  <eggert@cs.ucla.edu>
10004         No need to configure gobject-introspection
10006         It wasn’t needed for the recently-installed xwidget_mvp code; see:
10007         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01154.html
10008         * configure.ac (DOES_XWIDGETS_USE_GIR, GIR_REQUIRED, GIR_MODULES):
10009         (HAVE_GIR):
10010         * src/Makefile.in (GIR_LIBS, GIR_CFLAGS):
10011         Remove.  All uses removed.
10012         * configure.ac (emacs_config_features): Don’t worry about GIR.
10014 2016-01-20  Paul Eggert  <eggert@cs.ucla.edu>
10016         Don’t export C symbols not used elsewhere
10018         These were recently added, mostly as part of xwidget code.
10019         * src/emacsgtkfixed.c (emacs_fixed_get_type): Now static.
10020         (EMACS_FIXED, EMACS_FIXED_GET_CLASS):
10021         Now static functions here, not macros in emacsgtkfixed.h.
10022         * src/emacsgtkfixed.h (EMACS_TYPE_FIXED):
10023         Remove.  All uses replaced by definiens.
10024         (EMACS_FIXED, EMACS_FIXED_GET_CLASS):
10025         Remove; these are now static functions in emacsgtkfixed.c.
10026         (EMACS_FIXED_CLASS, EMACS_IS_FIXED, EMACS_IS_FIXED_CLASS):
10027         Remove; unused.
10028         (emacs_fixed_get_type): Remove decl; no longer extern.
10029         * src/xwidget.c (offscreen_damage_event)
10030         (webkit_mime_type_policy_typedecision_requested_cb)
10031         (webkit_new_window_policy_decision_requested_cb)
10032         (webkit_navigation_policy_decision_requested_cb)
10033         (xwidget_spec_value, xwidget_view_lookup)
10034         (xwidget_start_redisplay, xwidget_touch):
10035         Now static.
10036         * src/xwidget.h (xwidget_start_redisplay, xwidget_touch):
10037         Remove decls.
10039 2016-01-20  Dmitry Gutov  <dgutov@yandex.ru>
10041         Support squiggly heredocs in ruby-mode
10043         * lisp/progmodes/ruby-mode.el (ruby-here-doc-beg-re):
10044         Support squiggly heredocs added in Ruby 2.3.
10046         * test/indent/ruby.rb: Add squiggly example.
10048 2016-01-20  Glenn Morris  <rgm@gnu.org>
10050         * configure.ac (emacs_config_features): Remove WEBKIT.
10052 2016-01-20  Paul Eggert  <eggert@cs.ucla.edu>
10054         Port to platforms with gtk3 but not webkitgtk3
10056         I ran into this problem on my Fedora 23 installation;
10057         Emacs configured but did not build when --with-xwidgets was specified.
10058         * configure.ac (HAVE_WEBKIT, HAVE_GIR): Omit unnecessary initializations.
10059         (DOES_XWIDGETS_USE_GIR): New var.
10060         If --with-xwidgets is specified, report an error if not
10061         doable, to be consistent with the other --with options.
10062         Require webkitgtk3 to use Xwidgets, as the Xwidgets code does
10063         not work at all without webkitgtk3.  Simplify use of
10064         EMACS_CHECK_MODULES.  Output message about gobject
10065         introspection only if xwidgets are used.
10066         * etc/NEWS: Users need webkitgtk3, not merely webkit.
10067         * src/xwidget.c (syms_of_xwidget): Don’t worry about HAVE_WEBKIT_OSR,
10068         since this file is no longer compiled if webkitgtk3 is not available.
10070 2016-01-20  Eli Zaretskii  <eliz@gnu.org>
10072         Fix doc string of 'isearch-search-fun-function'
10074         * lisp/isearch.el (isearch-search-fun-function)
10075         (isearch-search-string): Doc fixes.  (Bug#22411)
10077 2016-01-20  Stefan Monnier  <monnier@iro.umontreal.ca>
10079         * lisp/xwidget.el: Nitpicks
10081         * lisp/xwidget.el (xwidget-log, xwidget-webkit-callback):
10082         Use with-current-buffer rather than save-excursion + set-buffer.
10084 2016-01-20  Glenn Morris  <rgm@gnu.org>
10086         Don't hard-code 1 as point-min.
10088         * lisp/image-mode.el (image-display-size):
10089         * lisp/xwidget.el (xwidget-webkit-last-session)
10090         (xwidget-webkit-current-session): Don't hard-code 1 as point-min.
10092 2016-01-20  Glenn Morris  <rgm@gnu.org>
10094         * lisp/xwidget.el: Add declarations to silence non-xwidget compilation.
10096 2016-01-20  Glenn Morris  <rgm@gnu.org>
10098         Trivial doc copyedits.
10100         * src/xwidget.c (Fmake_xwidget, Fget_buffer_xwidgets)
10101         (Fxwidget_webkit_get_title, Fxwidget_resize)
10102         (Fxwidget_set_adjustment, Fxwidgetp, Fxwidget_view_p)
10103         (Fxwidget_info, Fxwidget_view_lookup)
10104         (Fset_xwidget_query_on_exit_flag): Trivial doc copyedits.
10106 2016-01-20  Glenn Morris  <rgm@gnu.org>
10108         Avoid advising image-display-size for xwidgets.
10110         * lisp/xwidget.el (xwidget-image-display-size): Remove.
10111         (image-display-size): Remove advice.
10112         * lisp/image-mode.el (xwidget-info, xwidget-at): Declare.
10113         (image-display-size): Incorporate xwidget code directly.
10115 2016-01-20  Glenn Morris  <rgm@gnu.org>
10117         Avoid breaking non-xwidget Emacs that happen to load xwidget.el.
10119         * lisp/xwidget.el (window-configuration-change-hook)
10120         (kill-buffer-query-functions): Only modify these hooks if
10121         compiled with xwidget support.
10123 2016-01-20  Glenn Morris  <rgm@gnu.org>
10125         * lisp/xwidget.el (xwidget-webkit-scroll-behaviour): Fix custom spec.
10127 2016-01-19  Glenn Morris  <rgm@gnu.org>
10129         * configure.ac (WEBKIT, GIR, CAIRO): Use EMACS_CHECK_MODULES, not PKG_.
10131         * configure.ac (emacs_config_features): Add XWIDGETS, WEBKIT, GIR.
10133         * configure.ac (HAVE_WEBKIT_OSR): Remove broken, duplicated gtk3 test.
10135 2016-01-19  Katsumi Yamaoka  <yamaoka@jpl.org>
10137         * lisp/gnus/nnir.el (nnir-request-update-mark):
10138         Default to the original mark.
10139         cf. <http://thread.gmane.org/gmane.emacs.gnus.general/86583>
10140         and <http://thread.gmane.org/gmane.emacs.gnus.general/86640>
10142 2016-01-19  Glenn Morris  <rgm@gnu.org>
10144         * lisp/xwidget.el (report-xwidget-bug): Remove.
10146         (top-level): No longer require reporter.
10148 2016-01-19  Joakim Verona  <joakim@verona.se>
10149             Grégoire Jadi  <daimrod@gmail.com>
10151         Support for the new Xwidget feature.
10153         * configure.ac:
10154         (HAVE_XWIDGETS, WIDGET_OBJ, EMACS_CONFIG_FEATURES):
10155         * src/xterm.c (x_draw_glyph_string, x_draw_bar_cursor):
10156         * src/xdisp.c:
10157         (handle_display_spec, handle_single_display_spec, push_it)
10158         (pop_it, set_iterator_to_next, dump_glyph)
10159         (calc_pixel_width_or_height, fill_xwidget_glyph_string)
10160         (BUILD_XWIDGET_GLYPH_STRING, BUILD_GLYPH_STRINGS)
10161         (produce_xwidget_glyph, x_produce_glyphs)
10162         (get_window_cursor_type):
10163         * src/window.c (Fdelete_window_internal):
10164         * src/termhooks.h (e):
10165         * src/print.c (print_object):
10166         * src/lisp.h (ptrdiff_t):
10167         * src/keyboard.c (kbd_buffer_get_event, make_lispy_event)
10168         (syms_of_keyboard):
10169         * src/emacs.c (main):
10170         * src/dispnew.c (update_window, scrolling_window):
10171         * src/dispextern.h (g, i):
10172         * Makefile.in (XWIDGETS_OBJ, WEBKIT_CFLAGS, WEBKIT_LIBS)
10173         (GIR_LIBS, ALL_CFLAGS, base_obj, LIBES):
10174         * src/keyboard.c (kbd_buffer_get_event):
10175         * src/emacsgtkfixed.c (emacs_fixed_gtk_widget_size_allocate)
10176         (emacs_fixed_class_init): Add case for an xwidget view.
10178         * src/xwidget.c, src/xwidget.h, lisp/xwidget.el: New files for xwidgets
10181         Various improvements to the Xwidget feature.
10182         * src/xwidget.c:
10183         * src/emacsgtkfixed.c:
10184         * lisp/xwidget.el:
10186 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
10188         Improve documentation of 'alist-get'
10190         * doc/lispref/variables.texi (Setting Generalized Variables): Add
10191         'alist-get' to the list of functions that can appear in PLACE
10192         argument of 'setf'.
10194 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
10196         Minor copyedits of doc/emacs/maintaining.texi
10198         * doc/emacs/maintaining.texi (List Identifiers): More accurate
10199         description of "C-M-i" wrt tags tables.
10200         (Tags Tables): Move the definition of "tag" to a footnote.
10202 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
10204         Unbreak the Cygwin-w32 build
10206         * src/w32fns.c (globals_of_w32fns): Move the initialization of
10207         resetstkoflw into a part that isn't compiled on Cygwin.
10208         (Bug#22403)
10210 2016-01-19  Lars Magne Ingebrigtsen  <larsi@gnus.org>
10212         * shr.el (shr-table-body): Allow tables to have text children.
10214 2016-01-19  Phillip Lord  <phillip.lord@russet.org.uk>
10216         Cope with multiple overlapping faces.
10218         * lisp/htmlfontify.el (hfy-face-to-style-i): Treat inheritance right to
10219           left.
10220           (hfy-face-resolve-face): Handle font specification as well as font
10221           name. Documentation update. (Bug#21990)
10223 2016-01-19  Paul Eggert  <eggert@cs.ucla.edu>
10225         Fix spurious escapes in describe-input-method
10227         Problem reported by Vincent Belaïche (Bug#22309).
10228         * lisp/international/mule-cmds.el (describe-language-environment):
10229         * lisp/international/quail.el (quail-help):
10230         Apply substitute-command-keys to doc strings before displaying them.
10232 2016-01-19  Paul Eggert  <eggert@cs.ucla.edu>
10234         Minor improvements to (random t) documentation
10236         * doc/lispref/numbers.texi (Random Numbers):
10237         * src/fns.c (Frandom):
10238         Omit unnecessary details about randomness fallback.
10239         Say that it is a fallback.
10241 2016-01-19  Dmitry Gutov  <dgutov@yandex.ru>
10243         Rename methods in Ruby etags example file
10245         * test/etags/ruby-src/test.rb: Rename the example methods to
10246         correspond to the common terminology used in Ruby.
10247         * test/etags/CTAGS.good:
10248         * test/etags/ETAGS.good_1:
10249         * test/etags/ETAGS.good_2:
10250         * test/etags/ETAGS.good_3:
10251         * test/etags/ETAGS.good_4:
10252         * test/etags/ETAGS.good_5:
10253         * test/etags/ETAGS.good_6: Adjust accordingly.
10255 2016-01-19  Dmitry Gutov  <dgutov@yandex.ru>
10257         Propertize backtick in 'def `(abc)' as symbol constituent
10259         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
10260         Propertize backtick in 'def `(abc)' as symbol constituent.
10261         (ruby-syntax-propertize-function):
10262         Rename to ruby-syntax-propertize.
10264 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
10266         Fix scrolling under scroll-preserve-screen-position on TTY
10268         * src/window.c (window_scroll_line_based): When setting point to
10269         preserve screen coordinates, don't let cursor enter either of the
10270         two scroll margins.  (Bug#22395)
10272 2016-01-18  Lars Magne Ingebrigtsen  <larsi@gnus.org>
10274         Fix shr table rendering of nested tables
10276         * shr.el (shr-table-body): Don't include all tbodies in nested
10277         tables in the levels above.
10279 2016-01-18  Dmitry Gutov  <dgutov@yandex.ru>
10281         * lisp/progmodes/project.el (project--read-regexp): Quote the identifier.
10283 2016-01-18  Dmitry Gutov  <dgutov@yandex.ru>
10285         Add xref-based replacements for Dired search commands
10287         * lisp/dired-aux.el (dired-do-find-regexp)
10288         (dired-do-find-regexp-and-replace): New commands.
10289         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00864.html
10291         * lisp/dired.el (dired-mode-map): Change bindings for `A' and
10292         `Q' to the new commands.
10294         * lisp/progmodes/xref.el (xref-query-replace)
10295         (xref-collect-matches): Add progress reporters.
10296         (xref--find-ignores-arguments): Return nil for zero ignores.
10297         (xref--show-xrefs): Add an optional argument.
10298         (xref-collect-matches): Drop the assert.  'find' accepts a
10299         regular file in place of directory argument, too.
10301 2016-01-18  Alan Mackenzie  <acm@muc.de>
10303         * doc/lispref/frames.texi (Position Parameters): Say they don't exist on TTYs.
10305 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
10307         Improve user documentation of Xref
10309         * doc/emacs/maintaining.texi (Xref, Find Identifiers)
10310         (Looking Up Identifiers, Identifier Search, List Identifiers):
10311         Adjudicate comments by Dmitry Gutov <dgutov@yandex.ru>.  See
10312         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00650.html
10313         for the details.
10315 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
10317         Fix scrolling under scroll-preserve-screen-position and margins
10319         * src/window.c (window_scroll_pixel_based): When setting point to
10320         preserve screen coordinates, don't let cursor enter either of the
10321         two scroll margins.  Fix incorrect usage of
10322         WINDOW_WANTS_HEADER_LINE_P and use WINDOW_HEADER_LINE_HEIGHT
10323         instead of CURRENT_HEADER_LINE_HEIGHT.  (Bug#22395)
10325 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
10327         Unbreak the MS-Windows build
10329         * src/sysdep.c (emacs_gnutls_global_init, gnutls_rnd): Disable for
10330         WINDOWSNT, to avoid link failure.  (Bug#22202)
10332 2016-01-18  Alan Mackenzie  <acm@muc.de>
10334         Desktop: protect users against inadvertant upgrading of desktop file.
10336         An upgraded (version 208) desktop file cannot be read in Emacs < 25.
10338         * etc/NEWS: Add an entry about upgrading a desktop file.
10340         * lisp/desktop.el (desktop-file-version): Amend doc string.
10341         (desktop-native-file-version, desktop-io-file-version): new variables.
10342         (desktop-clear): Set desktop-io-file-version to nil.
10343         (desktop-buffer-info): make the presence of the last item on the list
10344         conditional on (>= desktop-io-file-version 208).
10345         (desktop-save): Add extra parameter VERSION to take user's C-u or C-u C-u.
10346         Amend the doc string.  Add code to determine the output file version.
10347         (desktop-create-buffer): Set desktop-io-file-version to the input file's
10348         version.
10350 2016-01-18  Paul Eggert  <eggert@cs.ucla.edu>
10352         Initialize GnuTLS before calling gnutls_rnd
10354         * src/gnutls.c (emacs_gnutls_global_init): Now extern.
10355         Don’t set gnutls_global_initialized if gnutls_global_init fails.
10356         * src/sysdep.c: Include "gnutls.h", and <gnutls/crypto.h>
10357         if 2.12 or later, which has gnutls_rnd.
10358         (emacs_gnutls_global_init, gnutls_rnd): New fallback
10359         placeholder macros if before 2.12.
10360         (init_random): Initialize gnutls globals before trying to
10361         use gnutls_rnd.
10363 2016-01-18  Andreas Schwab  <schwab@linux-m68k.org>
10365         Don't use GnuTLS before it is initialized
10367                 * src/sysdep.c (init_random): Don't use gnutls_rnd.
10369 2016-01-17  Paul Eggert  <eggert@cs.ucla.edu>
10371         Port cleanup attribute to OpenBSD
10373         The OpenBSD C compiler issues false alarms about strcpy, strcat, and
10374         sprintf, and this messes up 'configure' when it tests for the cleanup
10375         attribute.  Work around the problem by using __has_attribute directly.
10376         Problem reported by Joakim Jalap (Bug#22385).
10377         * configure.ac: Don’t use AX_GCC_VAR_ATTRIBUTE.
10378         * m4/ax_gcc_var_attribute.m4: Remove.
10379         * src/conf_post.h (__has_attribute): Provide a substitute, for
10380         non-GCC or older GCC compilers.  All uses changed to assume
10381         the substitute.  Check for the cleanup attribute.
10382         * src/emacs-module.c (module_has_cleanup): Just use __has_attribute.
10384 2016-01-17  Paul Eggert  <eggert@cs.ucla.edu>
10386         Prefer GnuTLS when acquiring random seed
10388         This attempts to improve on the fix for Bug#22202.
10389         * configure.ac (HAVE_DEV_URANDOM): Remove.
10390         Check /dev/urandom existence at run time, not at build time,
10391         since the device could exist in the former but not the latter.
10392         * src/sysdep.c [HAVE_GNUTLS]: Include gnutls/gnutls.h.
10393         (gnutls_rnd) [GNUTLS_VERSION_NUMBER < 0x020c00]: New fallback macro.
10394         (random_seed): New typedef.
10395         (set_random_seed): New static function.
10396         (seed_random): Use them.
10397         (init_random): Use random_seed instead of uintmax_t, so as to
10398         not consume more entropy than needed.  Prefer gnutls_rnd if it
10399         works; this avoids a redundant open of /dev/urandom on
10400         GNU/Linux with modern GnuTLS.
10402 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10404         Improve documentation of dynamic modules
10406         * doc/lispref/loading.texi (How Programs Do Loading): Update the
10407         description of searching for files in 'load' when Emacs was built
10408         with support for dynamic modules.
10410 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10412         * INSTALL: Document --with-modules.
10414 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10416         Document 'function-put'
10418         * doc/lispref/symbols.texi (Symbol Plists): Document
10419         'function-put'.  Update documentation of 'function-get'.
10421 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10423         Document 'funcall-interactively'
10425         * doc/lispref/commands.texi (Interactive Call): Document
10426         'funcall-interactively'.
10427         * doc/lispref/functions.texi (Calling Functions): Mention
10428         'funcall-interactively' and provide a cross-reference.
10430 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10432         * doc/lispref/lists.texi (Association Lists): Document 'alist-get'.
10434         * doc/lispref/strings.texi (Text Comparison): Document 'string-greaterp'.
10436 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10438         Document renaming of selection-related functions
10440         * doc/lispref/frames.texi (Window System Selections): Rename "x-*"
10441         functions into the corresponding "gui-*" functions.  Make the
10442         description slightly less X-centric.
10444 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10446         * doc/lispref/macros.texi (Expansion): Document 'macroexpand-1'.
10448 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10450         Document 'define-inline'
10452         * doc/lispref/functions.texi (Defining Functions): Document
10453         'define-inline' and related macros.
10455         * lisp/emacs-lisp/inline.el (inline-letevals): Doc fix.
10457 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
10459         * lisp/files.el (dir-locals--all-files): Respect absolute file-names
10461         * lisp/help-fns.el (describe-variable): Fix a left-over parenthesis
10463 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
10465         * lisp/dired-x.el (dired-omit-here-always): Use add-dir-local-variable
10467         instead of manually writing a dir-locals file.
10469 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
10471         * lisp/files.el (dir-locals--all-files): Use completion instead of wildcards
10473         (dir-locals-file)
10474         * lisp/files-x.el (modify-dir-local-variable)
10475         * lisp/dos-fns.el (dosified-file-name)
10476         * lisp/help-fns.el (describe-variable): Change accordingly.
10478 2016-01-16  Jussi Lahdenniemi  <jussi@aprikoodi.fi>  (tiny change)
10480         Fix incompatbilities with MS-Windows 2000 and older
10482         * src/w32.c <multiByteToWideCharFlags>: New global variable.
10483         (filename_to_utf16, filename_from_ansi, check_windows_init_file):
10484         Use it instead of the literal MB_ERR_INVALID_CHARS.
10485         (maybe_load_unicows_dll): Initialize multiByteToWideCharFlags as
10486         appropriate for the underlying OS version.  For details, see
10487         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00835.html.
10488         * src/w32.h: Declare multiByteToWideCharFlags.
10489         * src/w32fns.c (Fx_file_dialog, Fw32_shell_execute)
10490         (add_tray_notification): Use multiByteToWideCharFlags instead of
10491         the literal MB_ERR_INVALID_CHARS.
10492         (_resetstkoflw_proc): New typedef.
10493         (w32_reset_stack_overflow_guard): Call _resetstkoflw via a
10494         pointer, as this function is absent in msvcrt.dll shipped with W2K
10495         and older systems.
10497 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10499         Mention in PROBLEMS an issue with MS-Windows NT4
10501         * etc/PROBLEMS (MS-Windows): Mention the problem with Shell32.dll
10502         on Windows NT4.  For the details, see
10503         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00835.html.
10505 2016-01-16  Jussi Lahdenniemi  <jussi@aprikoodi.fi>  (tiny change)
10507         Ensure 8-byte aligned memory allocation on MS-Windows 9X
10509         * src/w32heap.c (init_heap): Redirect malloc, realloc, and free to
10510         special functions on Windows 9X.  Refuse to dump Emacs on Windows 9X.
10511         (malloc_after_dump_9x, realloc_after_dump_9x)
10512         (free_after_dump_9x): New functions.  (Bug#22379)  See also
10513         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00852.html
10514         for more details about the original problem.
10516         * nt/inc/ms-w32.h (malloc_after_dump_9x, realloc_after_dump_9x)
10517         (free_after_dump_9x): Add prototypes.
10519 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10521         Fix tests for active region in hideif.el
10523         * lisp/progmodes/hideif.el (hif-evaluate-macro, hide-ifdef-block): Use
10524         'use-region-p' to test whether to operate on region, instead of
10525         testing 'mark-active'.
10527 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10529         Fix interactive specs in some hideif.el commands
10531         * lisp/progmodes/hideif.el (hif-evaluate-macro)
10532         (hide-ifdef-undef, show-ifdef-block): Don't use '(interactive "r")'
10533         in commands that should only act on the region if it's active.
10535 2016-01-15  Phillip Lord  <phillip.lord@russet.org.uk>
10537         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
10539 2016-01-15  Phillip Lord  <phillip.lord@russet.org.uk>
10541         Enable test selector from command line
10543         * test/automated/Makefile.in: Change variable manipulation to avoid
10544           over-writing selector.
10546 2016-01-15  Alan Mackenzie  <acm@muc.de>
10548         Don't confuse "::" with ":" when trying to parse member initializers.
10550         * lisp/progmodes/cc-engine.el (c-back-over-member-initializers): Check
10551         more robustly for ":" token when searching backwards for it.
10553         * lisp/progmodes/cc-langs.el (c-:$-multichar-token-regexp): New language
10554         variable.
10556 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
10558         Ensure positive number of glyphs for margins of positive width
10560         * src/dispnew.c (margin_glyphs_to_reserve): Always return a
10561         positive value when a non-zero width of the marginal area was
10562         requested.  (Bug#22356)
10564 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
10566         Fix crashes when mini-window has non-zero margins
10568         * src/window.c (resize_frame_windows): Use 'new_size' to set
10569         minibuffer window's 'total_cols' value, as 'size' might be in
10570         pixels.  (Bug#22356)
10572 2016-01-15  Alan Mackenzie  <acm@muc.de>
10574         In comment-dwim with style `extra-line', respect indent-tabs-mode.
10576         This fixes bug #22369.
10578         * lisp/newcomment.el (comment-make-bol-ws): New function.
10579         (comment-make-extra-lines): Use new function instead of a crude `make-string'.
10581 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
10583         Make 'random' seeds cryptographically secure if possible
10585         * configure.ac: Check for "/dev/urandom".
10587         * src/sysdep.c (init_random) [HAVE_DEV_URANDOM]: Read the stream
10588         for the seed from "/dev/urandom".
10589         [WINDOWSNT]: Obtain the stream for the seed from w32 APIs.
10590         * src/fns.c (Frandom): Update the doc string to indicate that
10591         system entropy is used when available.
10592         * src/w32.c: Include wincrypt.h.
10593         (w32_init_crypt_random, w32_init_random): New functions, use the
10594         CryptGenRandom API.
10595         (globals_of_w32): Initialize w32_crypto_hprov handle to zero.
10596         * src/w32.h (w32_init_random): Add prototype.
10598         * doc/lispref/numbers.texi (Random Numbers): Document more details
10599         about 't' as the argument to 'random'.
10601         * etc/NEWS: Mention that '(random t)' now uses a cryptographically
10602         strong seed if possible.
10604         (Bug#22202)
10606 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
10608         Unhide the --no-line-directive option to 'etags'
10610         * lib-src/etags.c (print_help): Un-undocument the --no-line-directive
10611         option.  (Bug#22306)
10613         * doc/man/etags.1: Document the --no-line-directive option.
10615 2016-01-15  Alan J Third  <alan@idiocy.org>  (tiny change)
10617         Fix picture-mode wrt double-width characters
10619         * lisp/textmodes/picture.el (picture-insert): Check the width of
10620         the character being replaced, not just that of the replacement.
10621         (Bug#1808)
10623 2016-01-15  Eric Abrahamsen  <eric@ericabrahamsen.net>
10625         Honor docstring of gnus-group-get-new-news
10627         * lisp/gnus/gnus-start.el (gnus-get-unread-articles): If the prefix arg is t,
10628         but non-numeric, unconditionally consider all groups to need updating.
10630 2016-01-14  Simen Heggestøyl  <simenheg@gmail.com>
10632         Disallow parenthesis in non-pseudo CSS selectors
10634         * lisp/textmodes/css-mode.el (css--font-lock-keywords): Disallow
10635         parenthesis in selectors except for in the function notation that
10636         might appear right after a pseudo-class.
10637         * test/indent/scss-mode.scss: Add a test for it.
10639 2016-01-14  Katsumi Yamaoka  <yamaoka@jpl.org>
10641         * lisp/gnus/nntp.el (nntp-request-newgroups): Simplify
10643 2016-01-14  Michael Albinus  <michael.albinus@gmx.de>
10645         check-maybe shall run only default tests
10647         * test/automated/Makefile.in (check, check-expensive): Depend on
10648         mostlyclean.
10649         (check-maybe): Re-run only default tests.
10650         (check-doit): Use code of check-maybe.
10651         (mostlyclean): Move *.log files away.
10653 2016-01-14  Mark Oteiza  <mvoteiza@udel.edu>
10655         * lisp/thingatpt.el (thing-at-point-uri-schemes): Add "magnet:"
10657 2016-01-14  Dmitry Gutov  <dgutov@yandex.ru>
10659         Un-obsolete tags-loop-continue
10661         * lisp/progmodes/etags.el (tags-loop-continue): Un-obsolete.
10662         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00682.html
10664 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
10666         Document obsoletion of 'intangible' and 'point-entered/left'
10668         * doc/lispref/text.texi (Special Properties): Document the new
10669         properties 'cursor-intangible' and 'cursor-sensor-functions'.
10670         Document the obsolete status of 'intangible', 'pointer-left',
10671         and 'point-entered' properties, and of 'inhibit-point-motion-hooks'.
10672         * doc/lispref/display.texi (Overlay Properties): Document that
10673         'intangible' overlay property is obsolete.
10675         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor-mode): Doc fix.
10677 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
10679         Updater documentation of 'looking-back'
10681         * doc/lispref/searching.texi (Regexp Search): Update documentation
10682         of 'looking-back'.  Fix markup.
10684 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
10686         Document 'pre-redisplay-functions'
10688         * doc/lispref/hooks.texi (Standard Hooks):
10689         * doc/lispref/display.texi (Forcing Redisplay): Document
10690         'pre-redisplay-functions'.
10692 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
10694         Document the new deafault value of 'load-read-function'
10696         * doc/lispref/loading.texi (How Programs Do Loading): Document the
10697         change in the default value of 'load-read-function'.
10699 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
10701         Document 'bufferpos-to-filepos' and 'filepos-to-bufferpos'
10703         * doc/lispref/nonascii.texi (Text Representations): Document
10704         'bufferpos-to-filepos' and 'filepos-to-bufferpos'.
10706 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
10708         Document the new prefix-command hooks
10710         * doc/lispref/hooks.texi (Standard Hooks): Document
10711         `prefix-command-echo-keystrokes-functions' and
10712         `prefix-command-preserve-state-hook'.
10714 2016-01-13  Paul Eggert  <eggert@cs.ucla.edu>
10716         Fix one more misuse of time-stamp-time-zone
10718         * test/etags/html-src/softwarelibero.html: Use "UTC0" rather
10719         than the unportable "GMT" for time zone.
10721 2016-01-13  Paul Eggert  <eggert@cs.ucla.edu>
10723         Fix NNTP NEWGROUPS off-by-a-few-hours bug
10725         * lisp/gnus/nntp.el (nntp-request-newgroups): Format string
10726         in Universal Time, since we’re telling the server “GMT”.
10728 2016-01-13  Paul Eggert  <eggert@cs.ucla.edu>
10730         Update publicsuffix.txt from upstream
10732         * etc/publicsuffix.txt: Update from
10733         https://publicsuffix.org/list/effective_tld_names.dat
10734         dated 2016-01-12 11:52:01 UTC.
10736 2016-01-13  Glenn Morris  <rgm@gnu.org>
10738         Fix some declarations.
10740         * lisp/descr-text.el (internal-char-font):
10741         * lisp/cedet/mode-local.el (xref-item-location):
10742         * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
10743         (epg-sub-key-capability, epg-sub-key-validity):
10744         * lisp/international/mule-util.el (internal-char-font):
10745         Fix declarations.
10747 2016-01-13  Glenn Morris  <rgm@gnu.org>
10749         Fix some custom types.
10751         * lisp/gnus/gnus-fun.el (gnus-x-face-omit-files, gnus-face-omit-files):
10752         * lisp/gnus/gnus.el (gnus-valid-select-methods):
10753         * lisp/mail/rmail.el (rmail-get-coding-function):
10754         * lisp/net/newst-treeview.el (newsticker-groups-filename):
10755         * lisp/progmodes/hideif.el (hide-ifdef-exclude-define-regexp):
10756         * lisp/textmodes/tildify.el (tildify-space-predicates):
10757         * lisp/url/url-tramp.el (url-tramp-protocols):
10758         Fix custom types.
10760 2016-01-13  Glenn Morris  <rgm@gnu.org>
10762         Add some missing version tags.
10764         * lisp/electric.el (electric-quote-comment)
10765         (electric-quote-string, electric-quote-paragraph):
10766         * lisp/epg-config.el (epg-gpgconf-program):
10767         * lisp/rect.el (rectangle-preview):
10768         * lisp/emacs-lisp/check-declare.el (check-declare-ext-errors):
10769         * lisp/emacs-lisp/package.el (package-selected-packages)
10770         (package-hidden-regexps):
10771         * lisp/erc/erc.el (erc-network-hide-list, erc-channel-hide-list):
10772         * lisp/eshell/em-term.el (eshell-destroy-buffer-when-process-dies):
10773         * lisp/gnus/mml-sec.el (mml1991-signers, mml2015-signers)
10774         (mml-smime-signers, mml1991-encrypt-to-self, mml2015-encrypt-to-self)
10775         (mml-smime-encrypt-to-self, mml2015-sign-with-sender)
10776         (mml-smime-sign-with-sender, mml2015-always-trust)
10777         (mml-secure-fail-when-key-problem, mml-secure-key-preferences):
10778         * lisp/net/browse-url.el (browse-url-conkeror-new-window-is-buffer)
10779         (browse-url-conkeror-arguments):
10780         * lisp/net/newst-reader.el (newsticker-download-logos):
10781         * lisp/progmodes/gud.el (gud-guiler-command-name):
10782         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
10783         * lisp/progmodes/project.el (project-vc):
10784         * lisp/progmodes/python.el (python-indent-guess-indent-offset-verbose)
10785         (python-shell-remote-exec-path, python-shell-first-prompt-hook)
10786         (python-shell-completion-native-disabled-interpreters)
10787         (python-shell-completion-native-enable)
10788         (python-shell-completion-native-output-timeout)
10789         (python-shell-completion-native-try-output-timeout):
10790         * lisp/progmodes/xref.el (xref):
10791         * lisp/term/screen.el (xterm-screen-extra-capabilities):
10792         * lisp/term/xterm.el (xterm-max-cut-length):
10793         Add missing version tags.
10795 2016-01-13  Glenn Morris  <rgm@gnu.org>
10797         * test/automated/core-elisp-tests.el
10798         (core-elisp-tests-1-defvar-in-let): Add a custom type.
10800 2016-01-13  Glenn Morris  <rgm@gnu.org>
10802         * src/buffer.c (syms_of_buffer) <major-mode>: Doc fix.
10804         Remove comments that do not apply since 2005-08-09.  (Bug#22349)
10806 2016-01-12  Paul Eggert  <eggert@cs.ucla.edu>
10808         Merge from gnulib
10810         This mostly just changes "UTC" to "UTC0" for POSIX conformance.
10811         It also updates to the latest version of texinfo.tex.
10812         * build-aux/gitlog-to-changelog, build-aux/move-if-change:
10813         * build-aux/update-copyright, doc/misc/texinfo.tex:
10814         Update from gnulib.
10816 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
10818         Update documentation of 'process-running-child-p'
10820         * doc/lispref/processes.texi (Input to Processes): Document the
10821         changes in return value of 'process-running-child-p'.
10823 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
10825         Update documentation of 'deactivate-mark'.
10827         * doc/lispref/markers.texi (The Mark): Document that
10828         'deactivate-mark' is now buffer-local when set.
10830 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
10832         Update documentation of 'completion-table-dynamic'
10834         * doc/lispref/minibuf.texi (Programmed Completion): Document the
10835         new optional argument to 'completion-table-dynamic'.
10837 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
10839         Document changes in 'read-buffer' and 'read-buffer-function'
10841         * doc/lispref/minibuf.texi (High-Level Completion): Document the
10842         4th argument to 'read-buffer' and 'read-buffer-function'.
10844 2016-01-12  Paul Eggert  <eggert@cs.ucla.edu>
10846         Fix time-stamp-time-zone bugs introduced in July
10848         This fixes a bug introduced when the July changes to
10849         format-time-string installed, as the changes were not
10850         correctly handled in this module (Bug#22302).
10851         Also, document time stamp time zones.
10852         * lisp/time-stamp.el (time-stamp-time-zone): Document values better.
10853         (time-stamp--format): New private function.
10854         (time-stamp-string, time-stamp-string-preprocess)
10855         (time-stamp-do-number): Use it.
10856         * doc/emacs/files.texi (Time Stamps): Mention time zones.
10857         * doc/misc/autotype.texi (Timestamps): Document time-stamp-time-zone.
10859 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
10861         Make piping to subprocesses more robust on MS-Windows
10863         * src/w32.c (sys_write): Don't write to a pipe more stuff than its
10864         buffer can hold.  Don't return -1 if something has been written to
10865         the pipe.  Zero out 'errno' before calling '_write', to avoid
10866         returning a stale value.  (Bug#22344)
10867         * src/w32proc.c (syms_of_ntproc) <w32-pipe-buffer-size>: New variable.
10868         * src/w32.c (pipe2): Use it to request a user-defined size for the
10869         pipe being created.
10871         * etc/NEWS: Mention 'w32-pipe-buffer-size'.
10873         * doc/emacs/msdos.texi (Windows Processes): Document
10874         'w32-pipe-buffer-size'.
10876 2016-01-11  Dmitry Gutov  <dgutov@yandex.ru>
10878         test/automated/vc-hg.el: Support out-of-tree build
10880         * test/automated/vc-hg.el
10881         (vc-hg-annotate-extract-revision-at-line-with-filename)
10882         (vc-hg-annotate-extract-revision-at-line-with-both):
10883         Don't refer to source-directory.
10884         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00755.html
10886 2016-01-11  Michael Albinus  <michael.albinus@gmx.de>
10888         Minor change in tramp-tests.el
10890         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
10891         Use `dired-uncache' instead of a Tramp internal function.
10893 2016-01-11  Peter Feigl  <peter.feigl@nexoid.at>
10895         * etc/HELLO: Add Armenian and Mongolian greetings.
10897         (Bug#22346)
10899 2016-01-11  Alan Mackenzie  <acm@muc.de>
10901         Java Mode: Fontify identifiers in the presence of annotations.
10903         * lisp/progmodes/cc-engine.el (c-forward-annotation): Tidy up the coding:
10904         Don't move point when the defun fails.
10905         (c-forward-decl-or-cast-1): Correct a usage of match data.
10907         * lisp/progmodes/cc-fonts.el (c-font-lock-maybe-decl-faces): Remove.
10908         (c-font-lock-declarations): Use the new c-maybe-decl-faces in place of the
10909         removed variable.
10911         * lisp/progmodes/cc-langs.el (c-maybe-decl-faces): New language variable.
10913 2016-01-11  Eli Zaretskii  <eliz@gnu.org>
10915         Avoid an infloop when we run out of memory
10917         * src/alloc.c (garbage_collect_1): Don't bother saving and
10918         restoring the echo-area message if we are GC'ing after running out
10919         of memory.  This avoids an infloop due to repeated attempts to
10920         allocate memory for the cons cell needed to save the message,
10921         which signals the memory-full error, which attempts to save the
10922         echo-area message, which signals memory-full again, etc.
10924 2016-01-11  Eli Zaretskii  <eliz@gnu.org>
10926         Avoid unnecessary failures of auto-saving after fatal error
10928         * src/w32.c (map_w32_filename): Avoid non-trivial system calls for
10929         the benefit of FAT volumes if we are called as part of shutting
10930         down due to a fatal error, which probably means we are trying to
10931         auto-save the session.
10932         * src/lread.c (check_obarray): Don't bother making the obarray
10933         valid if we are shutting down due to a fatal error.  This avoids
10934         interfering with auto-saving the crashed session.
10936 2016-01-11  Paul Eggert  <eggert@cs.ucla.edu>
10938         Simplify HAVE_MODULES use in mark_maybe_pointer
10940         * src/alloc.c (HAVE_MODULES): Now a constant 0 if not defined,
10941         so that later code can use 'if' rather than '#ifdef'.
10942         (mark_maybe_pointer): Simplify based on HAVE_MODULES now
10943         always working.
10945 2016-01-11  Paul Eggert  <eggert@cs.ucla.edu>
10947         Revert attempt to use 'noexcept' in typedef
10949         This use of 'noexcept' runs afoul of the C++11 standard.
10950         Problem reported by Philipp Stephani in:
10951         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00706.html
10952         * src/emacs-module.c (emacs_finalizer_function):
10953         Move this typedef here ...
10954         * src/emacs-module.h: ... from here, and use only the C
10955         version of the typedef.  The typedef is now private since it
10956         is never used in the .h file now and anyway it seemed to be
10957         causing more confusion than it cured.
10958         (make_user_ptr, get_user_finalizer, set_user_finalizer):
10959         Open-code the type instead.
10961 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
10963         Update documentation of 'indirect-function'
10965         * doc/lispref/eval.texi (Function Indirection): Update the
10966         documentation of 'indirect-function'.
10968 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
10970         Update documentation for obsoleting 'syntax-begin-function'
10972         * doc/lispref/syntax.texi (Position Parse): Undocument
10973         'syntax-begin-function' that is now obsolete.
10975 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
10977         Document new features if Eshell
10979         * doc/misc/eshell.texi (Input/Output): Document the new
10980         '#<bufname>' syntax.
10981         (Input/Output): Document 'eshell-destroy-buffer-when-process-dies'.
10982         Disable "Key Index" generation, as there are no @kindex entries in
10983         this manual.
10985 2016-01-10  Michael Albinus  <michael.albinus@gmx.de>
10987         Handle too long commands in Tramp
10989         * lisp/net/tramp-sh.el (tramp-sh-handle-make-symbolic-link)
10990         (tramp-do-file-attributes-with-ls): Send sequence of commands, in
10991         order to not exceed shell command line limit.
10993         * test/automated/tramp-tests.el (tramp--test-darwin-p): Remove.
10994         (tramp--test-utf8): Include Arabic file name, again.
10996 2016-01-10  Paul Eggert  <eggert@cs.ucla.edu>
10998         * .gitattributes: *.cur and *.pif are binary files too.
11000 2016-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
11002         * src/alloc.c (mark_maybe_pointer): HAVE_MODULES may be undefined
11004 2016-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
11006         * lisp/progmodes/sh-script.el (sh-smie-sh-rules): Improve indentation inside $(...)
11008         * lisp/progmodes/sh-script.el (sh-smie-sh-rules): Improve indentation
11009         within $(...).
11010         * test/indent/shell.sh: Add corresponding test.
11012 2016-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
11014         * src/alloc.c (mark_maybe_pointer): Also check wide-int's emacs_value
11016         (mark_memory): Simplify loop.  Don't assume a pointer-sized word can be
11017         cast to Lisp_Object.
11019 2016-01-10  Dmitry Gutov  <dgutov@yandex.ru>
11021         Use short date for 'hg annotate', and output the author
11023         * lisp/vc/vc-hg.el (vc-hg-annotate-command):
11024         Change '-d' to '-dq'.  (Bug#21805)
11025         (vc-hg-annotate-switches): Default to "-u" "--follow".
11026         (vc-hg-annotate-re): Update to recognize the short date format
11027         and the optional username.
11028         (vc-hg-annotate-time)
11029         (vc-hg-annotate-extract-revision-at-line): Update accordingly.
11031         * test/automated/vc-hg.el: New file.
11033 2016-01-10  Paul Eggert  <eggert@cs.ucla.edu>
11035         Spelling fix
11037 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
11039         Document user-level functions in project.el
11041         * lisp/progmodes/project.el (project-find-file)
11042         (project-or-external-find-file): Add doc strings.
11044 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
11046         Document the user-level features of the Xref package
11048         * doc/emacs/maintaining.texi (Maintaining): Add a list of
11049         described features.
11050         (Xref): New section, made out of thoroughly rewritten "Tags"
11051         section.
11052         (Find Identifiers, Looking Up Identifiers, Xref Commands)
11053         (Identifier Search, List Identifiers): New subsections,
11054         incorporating the old tags commands and the new xref commands.
11055         (Tags Tables, Tag Syntax, Create Tags Table, Etags Regexps):
11056         Section and subsections demoted to a lower level.
11057         * doc/emacs/search.texi (Search):
11058         * doc/emacs/windows.texi (Pop Up Window):
11059         * doc/emacs/frames.texi (Creating Frames):
11060         * doc/emacs/programs.texi (Imenu, Symbol Completion):
11061         * doc/emacs/building.texi (Grep Searching):
11062         * doc/emacs/dired.texi (Operating on Files):
11063         * doc/emacs/glossary.texi (Glossary): All references to tags changed.
11065 2016-01-09  Stefan Monnier  <monnier@iro.umontreal.ca>
11067         * doc/lispref/loading.texi: Add `define-type' entry for load-history
11069         * doc/lispref/loading.texi (Where Defined): Remove incorrect
11070         cl-defmethod description, and add missing define-type entry.
11072 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
11074         Improve doc strings and prompts in xref.el
11076         * lisp/progmodes/xref.el (xref-backend-functions)
11077         (xref-find-definitions): Doc fixes.
11078         (xref-query-replace): Doc fix.  Improve prompts for arguments.
11080 2016-01-09  Alan Mackenzie  <acm@muc.de>
11082         Allow the use of `font-lock-extend-region-multiline' in CC Mode.
11084         * lisp/progmodes/cc-mode.el (c-font-lock-init): Remove
11085         `font-lock-extend-regions-wholelines' from
11086         `font-lock-extend-region-functions' rather than setting the latter to
11087         nil.
11089 2016-01-09  Michael Albinus  <michael.albinus@gmx.de>
11091         Fix coding system for Tramp on OS X.
11093         * lisp/net/tramp-compat.el: Require ucs-normalize.
11095         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
11096         Set coding system to `utf-8-hfs' for Mac OS X.
11098         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
11099         Flush directory properties when needed.
11100         (tramp--test-utf8): Include Chinese file name, again.
11102 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
11104         Update 'load-history' docs
11106         * doc/lispref/loading.texi (Where Defined): Update the list of
11107         forms in 'load-history' by adding the forms created for the
11108         'cl-generic' generics.  (Bug#21422)
11110 2016-01-09  Paul Eggert  <eggert@cs.ucla.edu>
11112         Fix (error ...) error
11114         Problem reported by Glenn Morris in:
11115         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00561.html
11116         * lisp/vc/add-log.el (change-log-goto-source): Fix typos
11117         introduced in my Aug 28 change, where I got confused by the
11118         two meanings of (error ...).
11120 2016-01-08  Alan Mackenzie  <acm@muc.de>
11122         Correctly analyze brace arguments in templated C++ function declarations.
11124         * lisp/progmodes/cc-defs.el (c-go-list-forward, c-go-list-backward): add
11125         POS and LIMIT parameters, like the other c-go-list-* functions have.
11127         * lisp/progmodes/cc-engine.el (c-restore-<>-properties): Check backwards
11128         for a ?\( rather than a ?<.  (c-looking-at-inexpr-block): Handle names
11129         followed by template specifiers.
11131 2016-01-08  Glenn Morris  <rgm@gnu.org>
11133         * lisp/cedet/mode-local.el (describe-function-orig-buffer): Declare.
11135         * lisp/ffap.el (ffap-latex-mode): Avoid free variable.
11137 2016-01-08  Mark Oteiza  <mvoteiza@udel.edu>
11139         * lisp/play/dunnet.el (dun-fix-screen): Avoid `end-of-buffer`.
11141 2016-01-08  Alan Mackenzie  <acm@muc.de>
11143         Respect fontification region calculated by major mode.  Fixes bug #22316.
11145         * lisp/font-lock.el (font-lock-extend-jit-lock-region-after-change): when a
11146         fontification region has been calculated by a function on
11147         font-lock-extend-after-change-region-function use this region rather than
11148         changing the end position to somewhere else.
11150 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
11152         Improve documentation of Delete Selection mode
11154         * lisp/delsel.el (delete-selection-mode)
11155         (delete-selection-helper): Update and expand the doc strings.
11156         (Bug#22296)
11158         * doc/emacs/mark.texi (Using Region): Document the behavior of
11159         delete commands in Delete Selection mode.  (Bug#22296)
11161         * doc/lispref/markers.texi (The Mark): Document how to add the
11162         support for Delete Selection mode to Lisp programs. (Bug#22296)
11164 2016-01-08  Dmitry Gutov  <dgutov@yandex.ru>
11166         Fix two project-find-file issues
11168         * lisp/progmodes/project.el (project--value-in-dir):
11169         Temporarily set enable-local-variables to :all.
11170         (project-find-file, project-or-external-find-file):
11171         All autoloads.
11172         (project--find-file-in): Require xref.
11174 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
11176         Clarify doc string of 'dired-current-directory'
11178         * lisp/dired.el (dired-current-directory): Doc fix: clarify that
11179         the return value might not end in a slash when called with the
11180         optional argument non-nil.  (Bug#6273)
11182 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
11184         Use the face of preceding text for displaying the ellipsis
11186         * src/xdisp.c (setup_for_ellipsis): Use the face of the preceding
11187         text in it->saved_face_id for displaying the ellipsis, and ignore
11188         the face, if any, of the invisible text.  (Bug#22320)
11190 2016-01-08  Michael Albinus  <michael.albinus@gmx.de>
11192         Suppress Chinese file name test for OSX in tramp-tests.el
11194         * test/automated/tramp-tests.el (tramp--test-utf8):
11195         Remove instrumentation.  Suppress Chinese file name test for OSX.
11197 2016-01-08  Glenn Morris  <rgm@gnu.org>
11199         * admin/admin.el (set-version): Also handle the NEWS file.
11201 2016-01-08  Dmitry Gutov  <dgutov@yandex.ru>
11203         apropos-library: Skip obvious duplicates; don't error on generics
11205         * lisp/apropos.el (apropos-library): Skip "was an autoload"
11206         entries, to avoid obvious duplicates.  For each cl-defmethod
11207         entry, take just its function symbol (bug#21422).
11209 2016-01-07  Dmitry Gutov  <dgutov@yandex.ru>
11211         Add project-find-file and project-or-external-find-file
11213         * lisp/minibuffer.el (completion-category-defaults):
11214         Add `project-file' category.
11216         * lisp/progmodes/project.el (project-find-file)
11217         (project-or-external-find-file): New commands.
11218         (project--find-file-in): New private function.
11220         * lisp/progmodes/xref.el (xref-collect-matches): Use
11221         `expand-file-name' on DIR, to expand the tildes.
11222         (xref--find-ignores-arguments): Extract from
11223         `xref--rgrep-command'.
11225 2016-01-07  Leo Liu  <sdl.web@gmail.com>
11227         Add defvar-local to lisp-imenu-generic-expression
11229         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression): Add
11230           defvar-local.
11232 2016-01-07  Leo Liu  <sdl.web@gmail.com>
11234         Revert commit b1e3d14845517bfa9fa5d6d3840f3ab3160306fd
11236         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
11237           Don't declare (indent 1).
11239 2016-01-07  Glenn Morris  <rgm@gnu.org>
11241         * lisp/emacs-lisp/autoload.el (autoload-find-destination): Doc fix.
11243 2016-01-07  Glenn Morris  <rgm@gnu.org>
11245         * lisp/emacs-lisp/autoload.el (autoload-find-destination):
11247         Avoid specifying the length of a time object (it has not been "2"
11248         for some time).
11250 2016-01-06  Andreas Schwab  <schwab@linux-m68k.org>
11252         Properly encode/decode base64Binary data in SOAP
11254                 * lisp/net/soap-client.el (soap-encode-xs-basic-type): Encode
11255                 base64Binary value as utf-8.
11256                 (soap-decode-xs-basic-type): Decode base64Binary value as utf-8.
11258 2016-01-06  Eli Zaretskii  <eliz@gnu.org>
11260         Obey coding-system-for-write when writing stdout/stderr in batch
11262         * src/print.c (printchar_to_stream):
11263         * src/xdisp.c (message_to_stderr): If coding-system-for-write has
11264         a non-nil value, use it to encode output in preference to
11265         locale-coding-system.  See the discussions in
11266         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00048.html
11267         for the details.
11269         * doc/lispref/os.texi (Terminal Output): Document how to send
11270         non-ASCII text via 'send-string-to-terminal'.
11271         (Batch Mode): Document how text written to standard streams is
11272         encoded.  Fix inaccuracy regarding which output streams are used
11273         by output functions in batch mode.
11275 2016-01-06  Xue Fuqiao  <xfq.free@gmail.com>
11277         * doc/misc/efaq.texi (Packages that do not come with Emacs):
11278         Update the URI of MELPA and marmalade-repo.  Reported by CHENG Gao
11279         <chenggao@royau.me> in
11280         https://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00390.html.
11282 2016-01-06  Maksim Golubev  <maksim.golubev72@gmail.com>  (tiny change)
11284         * lisp/progmodes/opascal.el (opascal-mode-syntax-table):
11286         Fix backslash.  (Bug#22224)
11288 2016-01-06  Federico Beffa  <beffa@ieee.org>  (tiny change)
11290         * lisp/progmodes/xscheme.el (xscheme-prompt-for-expression-exit):
11292         Make it actually work.  (Bug#22265)
11294 2016-01-05  Alan Mackenzie  <acm@muc.de>
11296         Remove function wrongly on AWK Mode value of context fontification hook.
11298         * lisp/progmodes/cc-langs.el (c-before-context-fontification-functions):
11299         swap order of entries so that awk's entry isn't superseded by the default.
11301         * lisp/progmodes/cc-mode.el (c-before-context-fl-expand-region): Correct
11302         to handle nil value of c-before-context-fontification-functions.
11304 2016-01-05  Paul Eggert  <eggert@cs.ucla.edu>
11306         * src/buffer.c: Stick with ASCII in doc string.
11308 2016-01-05  Paul Eggert  <eggert@cs.ucla.edu>
11310         Reword transient-mark-mode doc string
11312         * src/buffer.c (syms_of_buffer): Reword doc string to avoid confusion.
11313         The value 'lambda (literally) can be interpreted as (quote lambda),
11314         which is not intended here; we want just the lambda symbol.
11316 2016-01-05  Eli Zaretskii  <eliz@gnu.org>
11318         Update doc string of 'selective-display'
11320         * src/buffer.c (syms_of_buffer) <selective-display>: Say that
11321         using it with the value of 't' is obsolete.  (Bug#1092)
11323 2016-01-05  Alan Mackenzie  <acm@muc.de>
11325         Make C++ buffers writeable when writing their initial text properties.
11327         This is a correction to yesterday's CC Mode patch.
11329         * lisp/progmodes/cc-engine.el (c-before-change-check-<>-operators): Put
11330         c-save-buffer-state around the function rather than a mere `let'.
11332 2016-01-05  Michael Albinus  <michael.albinus@gmx.de>
11334         Additional changes for "make check-expensive"
11336         * CONTRIBUTE : Encourage use of ":tags '(:expensive-test)".
11337         Explain make target `check-expensive'.
11339         * etc/NEWS: Mention new make target `check-expensive'.
11341         * test/automated/Makefile.in (check-doit): New target.
11342         (check, check-expensive): Use it.
11344 2016-01-04  Alan Mackenzie  <acm@muc.de>
11346         Apply text properties for <, > in new after-change function (C++ Java Modes).
11348         These are category/syntax-table properties to give < and > paren syntax.
11349         Also apply certain `c-type' text properties to the insides of <..> constructs
11350         to ensure that identifiers contained by them get fontified.  This patch fixes
11351         bug #681.
11353         * lisp/progmodes/cc-cmds.el (c-electric-lt-gt): Reformulate due to new
11354         after-change action.
11356         * lisp/progmodes/cc-engine.el (c-before-change-check-<>-operators): Expand
11357         change region to include <s and >s which might not be already marked as
11358         parens, rather than just when paren text properties are removed.
11359         (c-restore-<>-properties): New after-change function, which applies text
11360         properties marking < and > with paren syntax.
11362         * lisp/progmodes/cc-fonts.el (c-font-lock-declarations): Ensure `c-type'
11363         properties are applied to the interiors of <...> constructs, to ensure
11364         fontification of identifiers there.
11366         * lisp/progmodes/cc-langs.el (c-before-font-lock-functions): Add
11367         c-restore-<>-properties to this list for C++ and Java.
11369         * lisp/progmodes/cc-mode.el (c-common-init): When invoking
11370         c-before-font-lock-functions, exclude c-restore-<>-properties from the
11371         functions invoked.
11372         (c-before-change): Initialize c-new-BEG/END here (rather than c-after-change)
11373         to allow modification by before-change functions.
11374         (c-after-change): Amend c-new-END here, rather than initializing it and
11375         c-new-BEG.
11377 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
11379         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
11381 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
11383         Introduce check-expensive tests.
11385         * Makefile.in (check-expensive):
11386         * test/automated/Makefile.in (check-expensive): New target.
11388         * test/automated/auto-revert-tests.el
11389         (auto-revert-test01-auto-revert-several-files):
11390         * test/automated/file-notify-tests.el (file-notify--deftest-remote):
11391         * test/automated/tramp-tests.el (tramp-test26-process-file)
11392         (tramp-test27-start-file-process, tramp-test28-shell-command)
11393         (tramp-test29-vc-registered)
11394         (tramp-test31-special-characters-with-stat)
11395         (tramp-test31-special-characters-with-perl)
11396         (tramp-test31-special-characters-with-ls)
11397         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
11398         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
11399         (tramp-test35-unload): Tag the tests as :expensive-test.
11401 2016-01-04  Lars Magne Ingebrigtsen  <larsi@gnus.org>
11403         shr-tag-video bug fix
11405         * shr.el (shr-tag-video): Protect against the `poster' being
11406         empty.
11408 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
11410         Minor fixes in tramp-tests.el
11412         * test/automated/tramp-tests.el (tramp-test26-process-file):
11413         Move point properly.
11414         (tramp-test29-vc-registered): Work with relative file names.
11416 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
11418         Ensure redisplay when 'truncate-lines' is set
11420         * lisp/frame.el (redisplay--variables): Add 'truncate-lines'.
11421         (Bug#22303)
11423 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
11425         Fix a doc string of 'transient-mark-mode'
11427         * src/buffer.c (syms_of_buffer) <transient-mark-mode>: Prevent
11428         "lambda" in doc string from becoming a link to lambda expressions.
11430 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
11432         MS-Windows followup to latest gnulib update
11434         * nt/gnulib.mk (EXTRA_DIST): Add ignore-value.h.
11436 2016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
11438         Spelling fix
11440 2016-01-04  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
11442         Do secure signed Bcc handling
11444         * lisp/gnus/message.el (message-send): Do secure signed Bcc handling
11445         (bug#18718).
11447 2016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
11449         Avoid stdio in SIGINT handler
11451         * admin/merge-gnulib (GNULIB_MODULES): Add ignore-value.
11452         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
11453         * lib/ignore-value.h: New file, from gnulib.
11454         * src/keyboard.c: Include it.
11455         (write_stdout, read_stdin): New functions.
11456         (handle_interrupt): Use them instead of printf and getchar,
11457         and avoid fflush when handling signals.
11459 2016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
11461         * doc/misc/texinfo.tex: Revert unwanted copyright change.
11463 2016-01-03  Artur Malabarba  <bruce.connor.am@gmail.com>
11465         * lisp/align.el (align): Simplify a lambda
11467         * lisp/align.el (align): Fix arg order in call to `align-region'
11469 2016-01-03  Eli Zaretskii  <eliz@gnu.org>
11471         Fix compilation next-error in buffers with selective-display
11473         * lisp/progmodes/compile.el (compilation-beginning-of-line): New
11474         function.
11475         (compilation-internal-error-properties)
11476         (compilation-next-error-function, compilation-set-window): Use
11477         it.  (Bug#1092)
11479 2016-01-03  Lars Magne Ingebrigtsen  <larsi@gnus.org>
11481         * lisp/net/nsm.el (nsm-check-protocol): Fix typo in the message.
11483 2016-01-03  Lars Magne Ingebrigtsen  <larsi@gnus.org>
11485         Add SHA1 warnings for high network security settings
11487         * lisp/net/nsm.el (nsm-check-protocol): When using high security, warn
11488         about SHA1 certificates, which are now believed to be open to
11489         spoofing.
11491 2016-01-03  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
11493         Refactor mml-smime.el, mml1991.el, mml2015.el
11495         (Maybe this is the last merge from Gnus git to Emacs git)
11497         Cf. discussion on ding mailing list, messages in
11498         <http://thread.gmane.org/gmane.emacs.gnus.general/86228>.
11499         Common code from the three files mml-smime.el, mml1991.el, and
11500         mml2015.el is moved to mml-sec.el.  Auxiliary functions are added
11501         to gnus-util.el.
11503         The code is supported by test cases with necessary test keys.
11505         Documentation in message.texi is updated.
11507         * doc/misc/message.texi (Security, Using S/MIME):
11508         Update for refactoring mml-smime.el, mml1991.el, mml2015.el.
11509         (Using OpenPGP): Rename from "Using PGP/MIME"; update contents.
11510         (Passphrase caching, Encrypt-to-self, Bcc Warning): New sections.
11512         * lisp/gnus/gnus-util.el (gnus-test-list, gnus-subsetp, gnus-setdiff):
11513         New functions.
11515         * lisp/gnus/mml-sec.el: Require gnus-util and epg.
11516         (epa--select-keys): Autoload.
11517         (mml-signencrypt-style-alist, mml-secure-cache-passphrase): Doc fix.
11518         (mml-secure-openpgp-signers): New user option;
11519         make mml1991-signers and mml2015-signers obsolete aliases to it.
11520         (mml-secure-smime-signers): New user option;
11521         make mml-smime-signers an obsolete alias to it.
11522         (mml-secure-openpgp-encrypt-to-self): New user option;
11523         make mml1991-encrypt-to-self and mml2015-encrypt-to-self obsolete
11524         aliases to it.
11525         (mml-secure-smime-encrypt-to-self): New user option;
11526         make mml-smime-encrypt-to-self an obsolete alias to it.
11527         (mml-secure-openpgp-sign-with-sender): New user option;
11528         make mml2015-sign-with-sender an obsolete alias to it.
11529         (mml-secure-smime-sign-with-sender): New user option;
11530         make mml-smime-sign-with-sender an obsolete alias to it.
11531         (mml-secure-openpgp-always-trust): New user option;
11532         make mml2015-always-trust an obsolete alias to it.
11533         (mml-secure-fail-when-key-problem, mml-secure-key-preferences):
11534         New user options.
11535         (mml-secure-cust-usage-lookup, mml-secure-cust-fpr-lookup)
11536         (mml-secure-cust-record-keys, mml-secure-cust-remove-keys)
11537         (mml-secure-add-secret-key-id, mml-secure-clear-secret-key-id-list)
11538         (mml-secure-cache-passphrase-p, mml-secure-cache-expiry-interval)
11539         (mml-secure-passphrase-callback, mml-secure-check-user-id)
11540         (mml-secure-secret-key-exists-p, mml-secure-check-sub-key)
11541         (mml-secure-find-usable-keys, mml-secure-select-preferred-keys)
11542         (mml-secure-fingerprint, mml-secure-filter-keys)
11543         (mml-secure-normalize-cust-name, mml-secure-select-keys)
11544         (mml-secure-select-keys-1, mml-secure-signer-names, mml-secure-signers)
11545         (mml-secure-self-recipients, mml-secure-recipients)
11546         (mml-secure-epg-encrypt, mml-secure-epg-sign): New functions.
11548         * lisp/gnus/mml-smime.el: Require epg;
11549         refactor declaration and autoloading of epg functions.
11550         (mml-smime-use): Doc fix.
11551         (mml-smime-cache-passphrase, mml-smime-passphrase-cache-expiry):
11552         Obsolete.
11553         (mml-smime-get-dns-cert, mml-smime-get-ldap-cert):
11554         Use format instead of gnus-format-message.
11555         (mml-smime-epg-secret-key-id-list): Remove variable.
11556         (mml-smime-epg-passphrase-callback, mml-smime-epg-find-usable-key)
11557         (mml-smime-epg-find-usable-secret-key): Remove functions.
11558         (mml-smime-epg-sign, mml-smime-epg-encrypt): Refactor.
11560         * lisp/gnus/mml1991.el (mml1991-cache-passphrase)
11561         (mml1991-passphrase-cache-expiry): Obsolete.
11562         (mml1991-epg-secret-key-id-list): Remove variable.
11563         (mml1991-epg-passphrase-callback, mml1991-epg-find-usable-key)
11564         (mml1991-epg-find-usable-secret-key): Remove functions.
11565         (mml1991-epg-sign, mml1991-epg-encrypt): Refactor.
11567         * lisp/gnus/mml2015.el (mml2015-cache-passphrase)
11568         (mml2015-passphrase-cache-expiry): Obsolete.
11569         (mml2015-epg-secret-key-id-list): Remove variable.
11570         (mml2015-epg-passphrase-callback, mml2015-epg-check-user-id)
11571         (mml2015-epg-check-sub-key, mml2015-epg-find-usable-key)
11572         (mml2015-epg-find-usable-secret-key): Remove functions.
11573         (mml2015-epg-decrypt, mml2015-epg-clear-decrypt, mml2015-epg-sign)
11574         (mml2015-epg-encrypt): Refactor.
11576 2016-01-02  Glenn Morris  <rgm@gnu.org>
11578         * lisp/progmodes/fortran.el (fortran-make-syntax-propertize-function):
11580         Explicitly ignore case.  (Bug#22262)
11582 2016-01-02  Stefan Monnier  <monnier@iro.umontreal.ca>
11584         (semantic-symref-derive-find-filepatterns): Return a list
11586         * lisp/cedet/semantic/symref/grep.el
11587         (semantic-symref-derive-find-filepatterns): Return a list.
11588         (semantic-symref-perform-search): Quote the result here once and for all.
11590 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
11592         Fix xref-find-references on MS-Windows
11594         * lisp/cedet/semantic/symref/grep.el
11595         (semantic-symref-derive-find-filepatterns): Use
11596         'shell-quote-argument' instead of manually quoting in a way that
11597         only works with Posix shells.  (Bug#22289)
11599 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
11601         Document new features of tildify-mode
11603         * lisp/textmodes/tildify.el (tildify-foreach-ignore-environments)
11604         (tildify-mode): Spelling fixes in doc strings.
11606         * etc/NEWS: Reformat the tildify-mode entry.
11608 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
11610         Document new features of Whitespace mode
11612         * doc/emacs/display.texi (Useless Whitespace): Document
11613         'whitespace-toggle-options' and the new 'big-indent' style.
11614         Document 'whitespace-big-indent-regexp'.  Document the Global
11615         Whitespace mode.
11617 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
11619         Improve documentation of new Hide-IfDef features
11621         * etc/NEWS: Expand and reword Hide-IfDef section.
11623 2016-01-02  Leo Liu  <sdl.web@gmail.com>
11625         Fix regression in font-locking cl-assert and cl-check-type
11627         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2): Fix
11628           el-errs-re.
11630 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
11632         Spelling and grammar fixes
11634 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
11636         Fix copyright years by hand
11638         These are dates that admin/update-copyright did not update, or
11639         updated incorrectly.
11641 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
11643         Update copyright year to 2016
11645         Run admin/update-copyright.
11647 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
11649         Merge from gnulib
11651         This mostly just updates copyright dates of gnulib files.
11652         It also updates to the latest version of texinfo.tex.
11654 2015-12-31  Mark Oteiza  <mvoteiza@udel.edu>
11656         lisp/emacs-lisp/chart.el (chart-new-buffer): Move to silence byte compiler.
11658 2015-12-31  Mark Oteiza  <mvoteiza@udel.edu>
11660         Port chart.el methods to cl-generic.
11662         cl-call-next-method cannot be used inside EIEIO's defmethod.
11663         * lisp/emacs-lisp/chart.el: Require cl-generic at compile time.
11664         * lisp/emacs-lisp/chart.el (initialize-instance, chart-draw):
11665         (chart-draw-title, chart-size-in-dir, chart-draw-axis):
11666         (chart-axis-draw, chart-translate-xpos, chart-translate-ypos):
11667         (chart-translate-namezone, chart-draw-data, chart-add-sequence):
11668         (chart-trim, chart-sort): Use cl-defmethod instead of defmethod.
11670 2015-12-31  Brian Burns  <bburns.km@gmail.com>
11672         Add nt/INSTALL.W64 build instructions
11674         * nt/INSTALL.W64: New file.
11675         * nt/INSTALL: Point to INSTALL.W64 for 64-bit build instructions.
11677 2015-12-31  Joakim Jalap  <joakim.jalap@fastmail.com>
11679         Add new input method 'programmer-dvorak'
11681         * lisp/leim/quail/programmer-dvorak.el ("programmer-dvorak"): New
11682         input method.
11684         * etc/NEWS: Mention it.
11686 2015-12-31  Eli Zaretskii  <eliz@gnu.org>
11688         Allow to invoke original M-TAB binding in 'flyspell-prog-mode'
11690         * lisp/textmodes/flyspell.el (flyspell-prog-mode): Record the
11691         original M-TAB binding in a buffer-local variable.
11692         (flyspell-auto-correct-word): Invoke the original binding of M-TAB
11693         if that is recorded, when point is in a place where flyspell
11694         should not be active (e.g., because the user turned on
11695         'flyspell-prog-mode').  (Bug#18533)
11697 2015-12-31  Eli Zaretskii  <eliz@gnu.org>
11699         Fix EWW rendering of long RTL lines
11701         * lisp/net/shr.el (shr-insert-document): Undo any previous hscroll
11702         of the selected window before filling its lines.  (Bug#22250)
11704 2015-12-31  Vincent Belaïche  <vincentb1@users.sourceforge.net>
11706         fix  bug#21054
11708         * lisp/ses.el (ses-check-curcell): Call `ses-set-curcell' unconditionally
11710 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
11712         Clean up cairo printing code
11714         * src/gtkutil.c (xg_get_page_setup): Use listn.
11715         * src/xfns.c (Fx_export_frames, Fx_print_frames_dialog): Doc fix.  Use
11716         decode_window_system_frame and FRAME_VISIBLE_P.
11717         (Fx_print_frames_dialog): Use redisplay_preserve_echo_area instead
11718         of Fdisplay.
11719         * src/xterm.c (x_cr_export_frames): Use redisplay_preserve_echo_area
11720         instead of Fdisplay.  Temporarily unblock_input around QUIT.
11722 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
11724         Move variables to inner loop, preparing for Mac port merge
11726         * src/keyboard.c (command_loop_1): Move variables `cmd',
11727         `keybuf', and `i' to inner loop.
11729 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
11731         Add handle_user_signal_hook
11733         * src/keyboard.h (handle_user_signal_hook): New declaration.
11734         * src/keyboard.c (handle_user_signal_hook): New variable.
11735         (handle_user_signal): Call it.
11737 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
11739         Avoid writing to purespace
11741         * src/alloc.c (Fmake_string): Don't write to empty string contents.
11742         (allocate_vector): Don't write to empty vector size.
11743         * src/character.h (CHECK_CHARACTER_CAR, CHECK_CHARACTER_CDR):
11744         Don't call unnecessary XSETCAR or XSETCDR.
11745         * src/lisp.h (STRING_SET_UNIBYTE, STRING_SET_MULTIBYTE): Don't
11746         write to empty string size_byte.
11748 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
11750         Remove unused variable
11752         * lisp/international/mule-cmds.el: Remove unused variable
11753         `mac-system-coding-system'.
11755 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
11757         * configure.ac: Find libxml2 headers in Xcode SDK dir on Darwin.
11759 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
11761         Use posix_openpt instead of openpty on Darwin
11763         * configure.ac (PTY_ITERATION, FIRST_PTY_LETTER, PTY_OPEN)
11764         (PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF): Remove
11765         Darwin-specific definitions.  Use posix_openpt instead.
11767 2015-12-30  Shakthi Kannan  <shakthimaan@gmail.com>
11769         Document support for ':documentation' in Lisp mode
11771         * lisp/emacs-lisp/lisp-mode.el (lisp-string-in-doc-position-p)
11772         (lisp-string-after-doc-keyword-p)
11773         (lisp-font-lock-syntactic-face-function): Add doc strings.
11775 2015-12-30  Shakthi Kannan  <shakthimaan@gmail.com>
11777         Document new features of TeX mode
11779         * doc/emacs/text.texi (TeX Print): Document
11780         'tex-print-file-extension'.
11781         * doc/emacs/programs.texi (Misc for Programs): Document support
11782         for Prettify Symbols mode in TeX mode.
11784 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
11786         Clarify docs of hscroll in RTL text
11788         * doc/lispref/windows.texi (Horizontal Scrolling): Clarify the
11789         meaning of a window's horizontal scroll amount for RTL paragraphs.
11791 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
11793         Fix rendering of HTML pages that use character composition
11795         * src/indent.c (Fvertical_motion): Fix the case when point starts
11796         in the middle of a composition, as in shr-vertical-motion.
11797         (Bug#22250)
11799 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
11801         Avoid some compiler warnings in w32.c
11803         * src/w32.c (codepage_for_filenames, crlf_to_lf)
11804         (ansi_encode_filename, socket_to_fd, sys_write)
11805         (check_windows_init_file): Avoid compiler warnings about
11806         differences in pointer signedness.
11808 2015-12-30  Dmitry Gutov  <dgutov@yandex.ru>
11810         Undo ill-advised change
11812         * lisp/progmodes/xref.el (xref-collect-matches): Undo
11813         ill-advised change.  The hits come in the order that `find'
11814         produces them in, which isn't alphabetical.
11816 2015-12-30  Dmitry Gutov  <dgutov@yandex.ru>
11818         Unbreak completion in python-mode buffers
11820         * lisp/progmodes/python.el (python-shell-completion-at-point):
11821         Unbreak in python-mode buffers.
11823 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
11825         Fix typos in CC Mode manual
11827         * doc/misc/cc-mode.texi (c-offsets-alist, Style Variables): Fix
11828         typos.  (Bug#22267)
11830 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
11832         Avoid assertion violations in compact_font_cache_entry
11834         * src/alloc.c (compact_font_cache_entry): Don't use VECTORP to
11835         avoid assertion violation in ASIZE.  (Bug#22263)
11837 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
11839         Fix filling text with bidirectional characters in shr.el
11841         * lisp/net/shr.el (shr-insert-document): Bind
11842         bidi-display-reordering to nil while filling lines.  This is
11843         required for when a line includes characters whose bidi
11844         directionality is opposite to the base paragraph direction,
11845         because columns are counted in the logical order.  (Bug#22250)
11847 2015-12-29  Martin Rudalics  <rudalics@gmx.at>
11849         * src/xfns.c (x_create_tip_frame): Process alpha parameter.
11851 2015-12-29  Michael Albinus  <michael.albinus@gmx.de>
11853         Sync with Tramp 2.2.13
11855         * doc/misc/trampver.texi: Change version to "2.2.13.25.1".
11857         * lisp/net/tramp-compat.el (tramp-compat-delete-dups):
11858         Use `tramp-compat-funcall'.
11860         * lisp/net/tramp-gvfs.el (tramp-gvfs-parse-device-names):
11861         Make `split-string' call compatible with older Emacsen.
11863         * lisp/net/trampver.el: Change version to "2.2.13.25.1".
11865 2015-12-29  Lambda Coder  <sjLambda@gmail.com>
11867         * doc/misc/tramp.texi: Editorial revisions to the Tramp manual
11869 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
11871         Mention that tls.el is secure by default, and will fail
11873 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
11875         Make tls.el use trustfiles by default
11877         * lisp/net/tls.el (tls-program): Add a certfile by default (bug#21227).
11878         (open-tls-stream): Insert the trustfile by looking at
11879         `gnutls-trustfiles'.
11881 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
11883         Refactor out gnutls-trustfiles
11885         * lisp/net/gnutls.el (gnutls-trustfiles): Refactor out for reuse by tls.el.
11887 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
11889         Remove --insecure from gnutls-cli invocation
11891         * tls.el (tls-program): Default to using secure TLS
11892         connections (bug#19284).
11894 2015-12-29  Paul Eggert  <eggert@cs.ucla.edu>
11896         Spelling fix
11898 2015-12-29  Paul Eggert  <eggert@cs.ucla.edu>
11900         Port report-emacs-bug to deterministic builds
11902         * lisp/mail/emacsbug.el (report-emacs-bug): Future-proof the
11903         recent "built on" change to deterministic builds where
11904         emacs-build-system will be nil.  See:
11905         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg01369.html
11907 2015-12-29  Jose A. Ortega Ruiz  <jao@gnu.org>  (tiny change)
11909         Fix URL auth error message
11911         * lisp/url/url-http.el (url-http-handle-authentication): Make the error
11912         message more correct (bug#20069).
11914 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
11916         shr link traversal fixup
11918         * shr.el (shr-next-link): Don't bug out on adjacent links.
11920         Backport:
11922         (cherry picked from commit 1efc5f8b09273c359683ce13be95fb5df7a84311)
11924 2015-12-28  Tom Tromey  <tom@tromey.com>
11926         set :safe on css-indent-offset
11928         * lisp/textmodes/css-mode.el (css-indent-offset): Add :safe 'integerp.
11930 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
11932         * eww.el (eww-mode): Remove superfluous bidi reset.
11934 2015-12-28  James Stout  <james.wolf.stout@gmail.com>  (tiny change)
11936         Make chunked encoding trailer detection more compliant
11938         * lisp/url/url-http.el
11939         (url-http-chunked-encoding-after-change-function): Make
11940         trailer detection more compliant (bug#16345).
11942 2015-12-28  Martin Rudalics  <rudalics@gmx.at>
11944         Fix Bug#10873 in `report-emacs-bug'
11946         * lisp/mail/emacsbug.el (report-emacs-bug): If
11947         `report-emacs-bug-no-explanations' is nil, make sure we can show
11948         mail and warnings buffer on this frame (Bug#10873).
11950 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
11952         Always reset the bidi direction
11954         * eww.el (eww-display-html): Always reset the bidi direction
11955         to `left-to-right' (bug#22257).
11957 2015-12-28  Alan Mackenzie  <acm@muc.de>
11959         Allow line comments ending with escaped NL to be continued to the next line.
11961         Use this in C, C++, and Objective C Modes.  Fixes bug#22246
11963         * src/syntax.c (comment-end-can-be-escaped): New buffer local variable.
11964         (forw-comment, back-comment): On encountering an end of comment character,
11965         test whether it is escaped when `comment-end-can-be-escaped' is non-nil.
11967         * doc/lispref/syntax.texi (Control Parsing): Describe
11968         `comment-end-can-be-escaped'.
11970         * etc/NEWS (Lisp Changes): Describe `comment-end-can-be-escaped'.
11972         * lisp/progmodes/cc-langs.el: New c-lang-setvar `comment-end-can-be-escaped'.
11974 2015-12-28  Dmitry Gutov  <dgutov@yandex.ru>
11976         Rename project-library-roots to project-external-roots
11978         * lisp/progmodes/project.el (project-library-roots): Rename to
11979         project-external-roots.
11980         (project-library-roots-function): Rename to
11981         project-vc-external-roots-function.  Only use it in the VC
11982         backend, for now.  Update project-external-roots accordingly.
11983         (project-vc-library-roots): Remove.
11984         (project-or-libraries-find-regexp):
11985         Rename to project-or-external-find-regexp.
11987         * lisp/progmodes/elisp-mode.el (elisp-library-roots):
11988         Rename to elisp-load-path-roots.
11990         * lisp/progmodes/etags.el (etags-library-roots): Remove.  Use
11991         an anonymous function for the default value of
11992         project-vc-external-roots-function.
11994 2015-12-27  Deniz Dogan  <deniz@dogan.se>
11996         Clear erc user list upon disconnection
11998         * lisp/erc/erc-backend.el (erc-process-sentinel): Clear channel user
11999         lists upon disconnection.  This prevents invalid channel
12000         user lists when reconnecting (bug#10947).
12002 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
12004         Don't bug out in erc after waking from sleep
12006         * lisp/erc/erc-backend.el (erc-server-send-ping): If the server has
12007         closed connection, this may already have been detected and
12008         `erc-server-last-received-time' has been set to nil (bug#13608).
12010 2015-12-27  David Edmondson  <dme@dme.org>
12012         Proxy error in erc with multiple clients
12014         * lisp/erc/erc.el (erc-channel-receive-names): Fix errors
12015         generated when multiple IRC clients talk to a single IRC proxy
12016         (bug#19034).
12018         Backport:
12020         (cherry picked from commit 507e98a54d1aa37823c64993d6b59257a82fe8f4)
12022 2015-12-27  Dima Kogan  <dima@secretsauce.net>
12024         Ensure that we don't have several timers in erc
12026         * lisp/erc/erc-backend.el (erc-server-setup-periodical-ping): Checks
12027         for existing timers in the alist before adding new ones.  If a
12028         timer already exists, it is cancelled and
12029         overwritten. (bug#19292).
12031 2015-12-27  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
12033         Fix mml-sec build warnings
12035         * lisp/gnus/mml-sec.el: Fix warnings by adding autoloads
12036         (bug#18718).
12038         Backport:
12040         (cherry picked from commit 3603097f62f5f4aa5451716e9ac380161f6829e2)
12042 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
12044         Don't insert erc logs at the end
12046         * lisp/erc/erc-log.el (erc-log-setup-logging): Insert the previous log
12047         at the start of the buffer, not at the end (bug#20496).
12049 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
12051         (eww-setup-buffer): Restore left-to-right defaults
12053         * eww.el (eww-setup-buffer): Restore left-to-right defaults.
12055         Backport:
12057         (cherry picked from commit 96c874b96b617c124d500a94de761a61f2a08685)
12059 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
12061         Don't join erc channels doubly
12063         * lisp/erc/erc-join.el (erc-autojoin-channels): Don't join channels
12064         more than once (if you have several nicks) (bug#20695).
12066 2015-12-27  Eli Zaretskii  <eliz@gnu.org>
12068         Avoid leaving "ghost" of mouse pointer on MS-Windows
12070         * src/w32term.c (frame_set_mouse_pixel_position):
12071         * src/w32fns.c (Fw32_mouse_absolute_pixel_position): Momentarily
12072         disable "mouse trails" when moving the mouse pointer.  (Bug#22247)
12073         * src/w32term.c (frame_set_mouse_pixel_position): Include
12074         w32common.h.
12076 2015-12-27  Krzysztof Jurewicz  <krzysztof.jurewicz@gmail.com>  (tiny change)
12078         Fix auth source lookups from erc with port numbers
12080         * lisp/erc/erc.el (erc-open): `auth-source' wants strings, not port
12081         numbers (bug#20541).
12083 2015-12-27  Fran Litterio  <flitterio@gmail.com>
12085         Run erc-kill-channel-hook always on exit
12087         * lisp/erc/erc.el (erc-kill-buffer-function): Run erc-kill-channel-hook
12088         when erc-kill-queries-on-quit is set (bug#21187).
12090 2015-12-27  Paul Eggert  <eggert@cs.ucla.edu>
12092         Spelling fix
12094         * test/automated/url-parse-tests.el:
12095         (url-generic-parse-url/same-document-reference):
12096         Rename from url-generic-parse-url/same-decument-reference.
12098 2015-12-27  Paul Eggert  <eggert@cs.ucla.edu>
12100         Reword initial *scratch* for brevity, appearance
12102         * lisp/startup.el (initial-scratch-message):
12103         Reword to avoid apostrophes, and to make it shorter.
12104         See the thread starting in:
12105         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg01241.html
12107 2015-12-26  Leo Liu  <sdl.web@gmail.com>
12109         Add ert-deftest to lisp-mode.el
12111         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression,
12112           lisp-el-font-lock-keywords-1): Add ert-deftest.
12114 2015-12-26  Lars Ingebrigtsen  <larsi@gnus.org>
12116         Mark imap changes as not needing doc changes
12118         * lisp/net/imap.el (imap-ssl-open): Remove
12120 2015-12-26  Lars Ingebrigtsen  <larsi@gnus.org>
12122         Use built-in encryption in imap.el
12124         * lisp/net/imap.el (imap-ssl-program): Remove (bug#21134).
12125         (imap-starttls-open): Use open-network-stream instead of starttls.el.
12126         (imap-tls-open): Use open-network-stream instead of tls.el.
12128 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12130         Don't try using /bin/sh in artist.el on MS-Windows
12132         * lisp/textmodes/artist.el (artist-figlet-get-font-list-windows):
12133         New function.
12134         (artist-figlet-choose-font): Use it on MS-Windows and MS-DOS.
12135         (Bug#20167)
12137 2015-12-26  Wolfgang Jenkner  <wjenkner@inode.at>
12139         Always define gmalloc etc. in src/gmalloc.c
12141         This is a work-around to prevent the compiler from using semantic
12142         knowledge about malloc for optimization purposes.  E.g., gcc 5.2
12143         with -O2 replaces most of calloc's definition by a call to calloc;
12144         see Bug#22085.
12145         * src/gmalloc.c [!HYBRID_MALLOC] (malloc, realloc, calloc)
12146         (aligned_alloc, free): Do not undef.  Instead, define these as
12147         functions (perhaps renamed to gmalloc etc.) in terms of gmalloc etc.
12149 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12151         Fix documentation of browse-url browser-related functions
12153         * lisp/net/browse-url.el (browse-url)
12154         (browse-url-default-browser, browse-url-default-windows-browser)
12155         (browse-url-default-macosx-browser, browse-url-chromium)
12156         (browse-url-kde, browse-url-text-xterm): Clarify the usage of ARGS
12157         and NEW-WINDOW arguments in these functions.  (Bug#19421)
12159 2015-12-26  Paul Eggert  <eggert@cs.ucla.edu>
12161         Propagate Bug#14412 fix to backtrace_eval_unrewind
12163         * src/eval.c (unbind_to): Redo so that the FALLTHROUGH!! comment
12164         becomes accurate again. This shouldn’t affect behavior.
12165         (backtrace_eval_unrewind): Apply the recent unbind_to fix here, too.
12167 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12169         Don't produce non-ASCII characters in *scratch*
12171         * lisp/startup.el (initial-scratch-message): Quote apostrophes to
12172         avoid producing non-ASCII characters in the *scratch* buffer's
12173         commentary.
12175 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12177         Document changes in 'compare-windows'
12179         * lisp/vc/compare-w.el (compare-windows-removed)
12180         (compare-windows-added): Doc fix.
12182         * doc/emacs/files.texi (Comparing Files): Document the changes in
12183         window selection by 'compare-windows'.
12185 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12187         Document 'vc-annotate-background-mode'
12189         * doc/emacs/maintaining.texi (Old Revisions): Document
12190         'vc-annotate-background-mode'.
12192 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12194         Document 'vc-region-history'
12196         * doc/emacs/maintaining.texi (VC Change Log): Document
12197         'vc-region-history'.
12199 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12201         Improve documentation of 'vc-push'
12203         * doc/emacs/maintaining.texi (Pulling / Pushing): Expand and
12204         improve the documentation of 'vc-push'.
12206         * lisp/vc/vc.el (vc-pull, vc-push): Doc fix.
12208 2015-12-26  Alain Schneble  <a.s@realize.ch>
12210         Include the tests for the URL parsing fixes
12212 2015-12-26  Alain Schneble  <a.s@realize.ch>
12214         Make relative URL parsing and resolution consistent with RFC 3986 (bug#22044)
12216         * test/automated/url-parse-tests.el: Add tests covering url-generic-parse-url.
12217         * test/automated/url-expand-tests.el: Add tests covering url-expand-file-name.
12218         * lisp/url/url-parse.el (url-generic-parse-url): Keep empty fragment
12219         information in URL-struct.
12220         * lisp/url/url-parse.el (url-path-and-query): Do not artificially turn empty
12221         path and query into nil path and query, respectively.
12222         * lisp/url/url-expand.el (url-expander-remove-relative-links): Do not turn
12223         empty path into an absolute ("/") path.
12224         * lisp/url/url-expand.el (url-expand-file-name): Properly resolve
12225         fragment-only URIs. Do not just return them unchanged.
12226         * lisp/url/url-expand.el (url-default-expander): An empty path in the relative
12227         reference URI should not drop the last segment.
12229         Backport:
12231         (cherry picked from commit b792ecea1715e080ad8e232d3d154b8a25d2edfb)
12233 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12235         Document 'url-user-agent'.
12237         * lisp/url/url-http.el (url-user-agent): Move from here...
12238         * lisp/url/url-vars.el (url-user-agent): ...to here.  This is to
12239         keep all the URL defcustoms in one place, and also have it defined
12240         whenever the URL library is loaded.
12242         * doc/misc/url.texi (Customization): Document 'url-user-agent'.
12244 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12246         Document protocols supported by URL library via Tramp
12248         * doc/misc/url.texi (Tramp): New node, describes the URL schemes
12249         supported via Tramp.
12250         (Supported URL Types, file/ftp, rlogin/telnet/tn3270): Mention
12251         Tramp.
12253 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12255         Document changes in Shell-script mode
12257         * lisp/progmodes/sh-script.el (sh-mode, sh-set-shell): Document
12258         the 'sh-shell' file-local variable.
12259         (top level): Add an auto-load form to avoid byte-compiler warning
12260         about 'comint-send-string'.
12262 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12264         Fix documentation of 'ses-define-local-printer'
12266         * doc/misc/ses.texi (Printer functions): Fix whitespace between
12267         sentences and punctuation.  Add an index entry for
12268         'ses-define-local-printer'.
12270 2015-12-26  Shakthi Kannan  <shakthimaan@gmail.com>
12272         Document 'ert-summarize-tests-batch-and-exit'
12274         * doc/misc/ert.texi (Running Tests in Batch Mode): Document
12275         'ert-summarize-tests-batch-and-exit'.
12277 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12279         Avoid assertion violation in unbind_to
12281         * src/eval.c (unbind_to) <SPECPDL_LET>: Avoid assertion violation
12282         if we get here with an object that is not a symbol.  (Bug#14412)
12284 2015-12-25  Andreas Schwab  <schwab@linux-m68k.org>
12286         Don't treat /foo/bar:mumble as ange-ftp address
12288                 * lisp/net/browse-url.el (browse-url-filename-alist): Match colons
12289                 only in the first component.  (bug#5362)
12291 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12293         Follow <meta> redirects in eww
12295         Merge conflict, but I think I resolved it.
12297             Follow meta refresh tags in eww
12299             * eww.el (eww-tag-meta): Follow meta refresh tags (bug#22234).
12301         Backport:
12303 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12305         Allow http://user:pass@foo/ URLs again
12307         * lisp/url/url-auth.el (url-basic-auth): Allow explicit
12308         user/passwords in URLs (bug#19046).
12310         Backport:
12312         (cherry picked from commit b563715a2db265517d5a77f165a42afa1e233fdd)
12314 2015-12-25  Samer Masterson  <samer@samertm.com>
12316         Autoload url-insert-buffer-contents
12318         * lisp/url/url-handlers.el: Add autoload cookie so that
12319         `package-list-packages' doesn't bug out (bug#21927) (tiny change)
12321         Backport:
12323         (cherry picked from commit 7a7b5b492ff9929eecd90c4564db6fbf3b192323)
12325 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
12327         Make sure *scratch* etc. use forward slashes in its default-directory
12329         * lisp/startup.el (normal-top-level): On MS-Windows, convert
12330         backslashes to forward slashes while decoding default-directory
12331         of the initially-created buffers.
12333 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12335         More eww file name coding fixes
12337         * eww.el (eww-decode-url-file-name): Use the base coding
12338         system to check for encodability.
12340         Backport:
12342         (cherry picked from commit a8627008abe4ab339df19b417776da28b3ce0fc7)
12344 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12346         Always save eww history
12348         * eww.el (eww-setup-buffer): Always save history, even when
12349         called from outside the eww buffer (bug#19638).
12351         Backport:
12353         (cherry picked from commit 2a0f18d9b6ce0ccce3d9c4a4a3b5743bae71b41e)
12355 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12357         Default web pages to right-to-left
12359         * eww.el (eww-mode): Most web pages are left-to-right, so make
12360         that the default (bug#19801).
12362         * shr.el (shr-tag-html): Respect "dir" attributes
12363         (left-to-right, right-to-left).
12365         Backport:
12367         (cherry picked from commit 9e089ec8a380ec3758fcf1564c5f86dc92c68c2a)
12369 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12371         Make toggling checkboxes work again
12373         * eww.el (eww-update-field): Make toggling checkboxes work
12374         again (bug#21881).
12376         Backport:
12378         (cherry picked from commit 5e56f606952e5e81b4d3a93ea70e791b74b33041)
12380 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12382         Don't store cookies with empty names
12384         * lisp/url/url-cookie.el (url-cookie-store): Refuse to store
12385         cookies with empty names (bug#21936).
12387         Backport:
12389         (cherry picked from commit 9f0fd7cb1aec3eb9e2e0f7b8854c30870286d96c)
12391 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12393         Stop rendering HTML before specdlr exhaustion
12395         Fixes: 22117
12397         * shr.el (shr-descend): Stop rendering before we run out of
12398         specpdl room (bug#22117).
12400         Backport:
12402         (cherry picked from commit 248da292fe46224b0b5a79b632c89cf4de2c2081)
12404 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12406         Use cl-reduce, not reduce.
12408         Backport:
12410         (cherry picked from commit fe4606f93b91ff3d046aee0cf21ecc277af7a786)
12412 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12414         Allow several <tbody> tags in shr
12416         * shr.el (shr-table-body): New function to find the real body
12417         of a table.
12418         (shr-tag-table): Use it to render several <tbody> tags in a
12419         table (bug#22170).
12421         Backport:
12423         (cherry picked from commit cdaf33029d6620073833876d76056045ecfbc7c4)
12425 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12427         Make prettier unique file names in eww
12429         (eww-make-unique-file-name): Make unique file names by making
12430         files like foo(2).jpg instead of foo(1)(2).jpg.
12432         Backport:
12434         (cherry picked from commit edfdd0a6cbdfa9e5e4bd0553e2b489401ca39266)
12436 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12438         Decode hex-encoded URLs before using them as file names
12440         * eww.el (eww-decode-url-file-name): New function.
12441         (eww-download-callback): Use it to decode file names before
12442         saving them.
12444         Backport:
12446         (cherry picked from commit af22a010d87516c2a646572fb27512c03057784f)
12448 2015-12-25  Ashish SHUKLA  <ashish.is@lostca.se>
12450         Add FreeBSD cert bundle
12452         * doc/misc/emacs-gnutls.texi (Help For Users): Document
12453         FreeBSD bundle.
12455         * lisp/net/gnutls.el (gnutls-trustfiles): Add FreeBSD cert bundle.
12457         Backport:
12459         (cherry picked from commit 60c0f1a18ad88d6dc1a8f4ee5d9d18940eaeb6f7)
12461 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12463         Ignore invalid SVG images
12465         * shr.el (shr-tag-svg): Ignore SVG images that have no width
12466         or height, because these can't be displayed by ImageMagick,
12467         anyway.
12469         Backport:
12471         (cherry picked from commit 821107d53c2e390240d25c036b99ebbf9b4a93b6)
12473 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
12475         shr table rendering fix
12477         * shr.el (shr-tag-table): Allow rendering body-less tables
12478         that have headers.
12480         Backport:
12482         (cherry picked from commit b05471e42c17e02c56c87d7599ada0c124a5fe09)
12484 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
12486         Restore info about the build host in bug reports
12488         * lisp/mail/emacsbug.el (report-emacs-bug): Report the system on
12489         which Emacs was built.  This is important information for
12490         investigating bug reports reported by users who don't build their
12491         Emacs.
12493 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
12495         Fix bootstrap broken by changes related to OS X file-name encoding
12497         * lisp/international/ucs-normalize.el (eval-when-compile): Make
12498         sure char-code-property-alist includes elements that allow access
12499         to 'decomposition' and 'canonical-combining-class' Unicode
12500         properties, as compiling ucs-normalize.el requires that.
12501         * lisp/loadup.el (featurep 'ns): Load ucs-normalize and ns-win
12502         only of charprop.el was already loaded.
12504         * src/Makefile.in ($(lispsource)/international/ucs-normalize.elc):
12505         New order-only dependency.
12507 2015-12-25  Leo Liu  <sdl.web@gmail.com>
12509         * lisp/ido.el (ido-add-virtual-buffers-to-list): Use bookmark-get-filename.
12511 2015-12-25  Michael Albinus  <michael.albinus@gmx.de>
12513         Make tramp-test29-vc-registered more robust
12515         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
12516         Move `bzr' case down.  Skip test when `vc-create-repo' fails.
12517         Remove instrumentation.
12519 2015-12-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12521         * lisp/term/x-win.el (x-gtk-stock-map): Fix typo.
12523 2015-12-24  Katsumi Yamaoka  <yamaoka@jpl.org>
12525         Fix `gnus-union' so as to behave like `cl-union'
12527         * lisp/gnus/gnus-group.el (gnus-group-prepare-flat):
12528         Make gnus-union use `equal' to compare items in lists.
12530         * lisp/gnus/gnus-util.el (gnus-union):
12531         Make it behave like cl-union partially.
12533 2015-12-23  Paul Eggert  <eggert@cs.ucla.edu>
12535         Fix dired.c typo with ptrdiff_t vs Lisp_Object
12537         * src/dired.c (file_name_completion): Don't assume Lisp_Object is
12538         an integer type, fixing a problem introduced in the recent fix for
12539         Bug#22169.
12541 2015-12-23  Eli Zaretskii  <eliz@gnu.org>
12543         Document default process sentinel more prominently
12545         * doc/lispref/processes.texi (Asynchronous Processes): Mention the
12546         defaults for process filter and sentinel.  Provide cross-references.
12547         (Process Information): Provide cross-references to where filters
12548         and sentinels are described.
12549         (Filter Functions): Add an index entry for "default filter".
12550         (Sentinels): Add a few status messages not documented previously.
12551         Resolve the "killed" confusion.  Document and describe the default
12552         sentinel.  (Bug#22220)
12554 2015-12-23  Eli Zaretskii  <eliz@gnu.org>
12556         Fix file-name completion on OS X
12558         * src/dired.c (file_name_completion): Reject false matches due to
12559         file-name-coding-systems that decompose characters when encoding
12560         file names, by comparing decoded file names as well.  (Bug#22169)
12561         (syms_of_dired) <Qdecomposed_characters>: New DEFSYM.
12563         * lisp/international/ucs-normalize.el (utf-8-hfs): Give it a
12564         non-nil 'decomposed-characters' property.
12566 2015-12-23  Anders Lindgren  <andlind@gmail.com>
12568         File-name completion of non-ASCII characters on OS X (bug#22169)
12570         The coding system `utf-8-nfd', locally defined in ns-win.el,
12571         didn't provide a :pre-write-conversion method, causing file name
12572         completion of non-ASCII characters to fail.  Solved by using the
12573         `utf-8-hfs' coding system provided by `ucs-normalize'.
12575         * lisp/loadup.el: Load international/ucs-normalize (when building
12576         for ns).
12578         * lisp/term/ns-win.el (utf-8-nfd): Made `utf-8-nfd' as alias for
12579         `utf-8-hfs' and removed the old implementation.  Set `utf-8-hfs'
12580         as the file name coding system.
12582         * src/nsfns.m (ns-convert-utf8-nfd-to-nfc): Removed.
12584 2015-12-23  Tom Tromey  <tom@tromey.com>
12586         Fix bug #18588 by making bug-reference-bug-regexp more lenient
12588         * lisp/progmodes/bug-reference.el (bug-reference-bug-regexp): Accept
12589         "bug NNNN".  (Bug #18588)
12591 2015-12-23  Tom Tromey  <tom@tromey.com>
12593         add some cl-* aliases to lisp-mode imenu
12595         * (lisp-imenu-generic-expression): Add cl-define-compiler-macro,
12596         cl-defgeneric, and cl-defmethod.
12598 2015-12-22  Tom Tromey  <tom@tromey.com>
12600         Make a variable buffer-local
12602         * lisp/generic-x.el (generic-rul-mode-setup-function): Make
12603         font-lock-syntax-table buffer-local.  (Bug #21627)
12605 2015-12-22  Eli Zaretskii  <eliz@gnu.org>
12607         Fix decoding of text in URLs retrieved by EWW
12609         * lisp/net/eww.el (eww-render): Pass 'charset' to
12610         'eww-display-raw'.  Use the value of 'last-coding-system-used', if
12611         non-nil, to set 'buffer-file-coding-system' of the buffer where we
12612         show the URL.
12613         (eww-display-html, eww-display-raw): Decode the text correctly,
12614         using the charset found in the headers, and defaulting to UTF-8.
12615         If the user told us to use a specific encoding, override the
12616         charset from the headers.  (Bug#22222)
12618 2015-12-22  Alan Mackenzie  <acm@muc.de>
12620         Fix a coding error in c-forward-<>-arglist-recur.  Fixes bug#22156
12622         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur): Remove unused
12623         variable `tmp'.
12624         After a failed search for a matching ">", restore point before continuing.
12626 2015-12-22  Michael Albinus  <michael.albinus@gmx.de>
12628         Instrument Tramp tests
12630         * test/automated/tramp-tests.el (tramp-test29-vc-registered)
12631         (tramp--test-utf8): Instrument tests.
12633 2015-12-22  Martin Rudalics  <rudalics@gmx.at>
12635         Fix `display-buffer' call in `display-message-or-buffer' (Bug#22221)
12637         * lisp/simple.el (display-message-or-buffer): Call
12638         `display-buffer' with ACTION instead of NOT-THIS-WINDOW
12639         (Bug#22221).
12641 2015-12-22  Juri Linkov  <juri@linkov.net>
12643         * lisp/saveplace.el (toggle-save-place, save-place-to-alist)
12645         (save-places-to-alist, save-place-dired-hook):
12646         Check for dired-subdir-alist.  (Bug#19851)
12648 2015-12-21  Paul Eggert  <eggert@cs.ucla.edu>
12650         Add FIXME comment re stack overflow and modules
12652 2015-12-21  Paul Eggert  <eggert@cs.ucla.edu>
12654         Revert some recent emacs-module commentary
12656         Most of the recently-added commentary was incorrect, due to the
12657         possibility of stack overflow.
12659 2015-12-21  Paul Eggert  <eggert@cs.ucla.edu>
12661         Spelling fix: prefer "cooperate" to "co-operate"
12663 2015-12-21  Paul Eggert  <eggert@cs.ucla.edu>
12665         Port undo fixes to -fno-common
12667         Port recent fix for Bug#21968 to platforms like 'gcc -fno-common'.
12668         * src/keyboard.c, src/keyboard.h (point_before_last_command_or_undo)
12669         (buffer_before_last_command_or_undo):
12670         Declare in keyboard.h, and define in keyboard.c,
12671         instead of assuming the traditional Unix relaxed ref-def linkage.
12673 2015-12-20  Philipp Stephani  <phst@google.com>
12675         Improve commentary for emacs-module.c
12677         * src/lisp.h: Document emacs-module.c assumptions about EQ and NILP.
12678         * src/emacs-module.c (module_non_local_exit_get): Document that we
12679         cannot use the current implementation.
12680         (module_is_not_nil, module_eq): Document assumptions about EQ and
12681         NILP.
12683 2015-12-20  Michael Albinus  <michael.albinus@gmx.de>
12685         Suppress test on Mac OS X
12687         * test/automated/tramp-tests.el (tramp--test-darwin-p): New defun.
12688         (tramp--test-utf8): Use it.
12690 2015-12-20  Alan Mackenzie  <acm@muc.de>
12692         Merge branch 'scratch/follow' into emacs-25
12694         This allows Isearch, etc., to work well when Follow Mode is active.
12696 2015-12-19  Michael Albinus  <michael.albinus@gmx.de>
12698         * lisp/net/tramp-sh.el (tramp-get-ls-command-with-w-option): Improve check.
12700 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
12702         Fix last commit
12704         * doc/emacs/rmail.texi (Rmail Deletion): Document new behavior of 'u'
12705         with numeric argument.
12707 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
12709         Document new features of Rmail
12711         * doc/emacs/rmail.texi (Rmail Summary Edit, Rmail Deletion):
12712         Document new behavior of 'd' and 'C-d' with numeric argument.
12713         (Rmail Display): Document the rendering of HTML MIME parts.
12715 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
12717         Improve documentation of new cl-lib functions
12719         * doc/misc/cl.texi (Predicates on Numbers, Numerical Functions):
12720         Fix wording.
12722 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
12724         Document the new feature of 'minibuffer-with-setup-hook'
12726         * lisp/files.el (minibuffer-with-setup-hook): Clarify how FUN is
12727         added to `minibuffer-setup-hook'.
12729 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
12731         Document new features of Font Lock
12733         * doc/lispref/modes.texi (Other Font Lock Variables): Document
12734         'font-lock-flush-function' and 'font-lock-ensure-function'.
12735         (Font Lock Basics): Document the basic fontification functions
12736         referenced in "Other Font Lock Variables".
12738         * lisp/font-lock.el (font-lock-flush, font-lock-ensure): Doc fix.
12740 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
12742         Document new features of Rectangle mode
12744         * doc/emacs/killing.texi (Rectangles): Document "C-x C-x" in
12745         rectangle-mark-mode.
12747 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
12749         Manual followup to last change
12751         * doc/lispref/display.texi (Displaying Messages): Sync with the
12752         doc string.  (Bug#22210)
12754 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
12756         Clarify doc string of 'display-message-or-buffer'
12758         * lisp/simple.el (display-message-or-buffer): Doc fix.  Suggested
12759         by Sebastian Wiesner <swiesner@lunaryorn.com>.  (Bug#22210)
12761 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
12763         * doc/emacs/emacs.texi (Top): Update top-level menus.
12765         * doc/lispref/elisp.texi (Top): Update top-level menus.
12767 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
12769         Document how to avoid file-local variables that aren't
12771         * doc/emacs/custom.texi (Specifying File Variables): Describe how
12772         to prevent Emacs from interpreting unrelated text as file-local
12773         variables.  (Bug#22166)
12775 2015-12-19  Dave Thomas  <dave@pragprog.org>  (tiny change)
12777         Fix a typo in eterm-color's termcap entry
12779         * lisp/term.el (term-termcap-format): Fix a typo in the "ue="
12780         entry.  (Bug#22184)
12782 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
12784         Allow 'browse-url-emacs' visit non-existent URLs
12786         * lisp/url/url-handlers.el (url-insert-file-contents): Don't
12787         signal an error if VISIT is non-nil, to more faithfully emulate
12788         the behavior of 'insert-file-contents'.  (Bug#22160)
12790 2015-12-19  Paul Eggert  <eggert@cs.ucla.edu>
12792         Remove SunOS 4.x cruft
12794         Support for SunOS 4.x was removed in Emacs 23 but some cruft was left behind.
12795         * lib-src/pop.c [sun]: Remove no-longer-needed include.
12796         * lwlib/xlwmenu.c (SUNSO41): Remove.
12798 2015-12-19  Paul Eggert  <eggert@cs.ucla.edu>
12800         Merge from gnulib
12802         This mostly commentary fixes.
12803         * doc/misc/texinfo.tex, lib/intprops.h: Copy from gnulib.
12804         * lib/gnulib.mk: Regenerate with new gnulib-tool.
12806 2015-12-18  Michael Albinus  <michael.albinus@gmx.de>
12808         Minor fixes in Tramp
12810         * lisp/net/tramp-sh.el (tramp-do-file-attributes-with-ls):
12811         Reorder ls arguments.
12813         * lisp/net/tramp.el (tramp-dissect-file-name): Fix docstring.
12815 2015-12-18  Michael Albinus  <michael.albinus@gmx.de>
12817         Make tramp a built-in package
12819         * lisp/finder.el (finder-compile-keywords): Update
12820         `package--builtins' also when Version: keyword is available.
12822         * lisp/net/trampver.el: Add Version: keyword.
12823         (tramp-version): Change it to "2.2.13.25.1", in order to be
12824         compatible with `version-to-list'.
12826 2015-12-18  Lele Gaifax  <lele@metapensiero.it>
12828         * etc/tutorials/TUTORIAL.it: Update and fix typos.
12830 2015-12-18  Alan Mackenzie  <acm@muc.de>
12832         Rename `recenter-group' to `recenter-window-group'
12834         * doc/lispref/windows.texi (Textual Scrolling)
12835         * lisp/window.el (top level, recenter-group)
12836         * lisp/follow.el (follow-mode)
12837         * lisp/isearch.el (isearch-back-into-window): Rename `recenter-group' to
12838         `recenter-window-group' and `recenter-group-function' to
12839         `recenter-window-group-function'.
12841 2015-12-18  Eli Zaretskii  <eliz@gnu.org>
12843         Fix vertical-motion in tabulated-list mode
12845         * src/indent.c (Fvertical_motion): When moving from line beginning
12846         to point under line truncation, assume overshoot by one line only
12847         if point actually lies beyond the window's right margin.
12848         (Bug#22194)
12850 2015-12-18  Martin Rudalics  <rudalics@gmx.at>
12852         Don't have help functions call x-display-pixel-width/-height on ttys
12854         * lisp/help.el (temp-buffer-max-height, temp-buffer-max-width):
12855         Don't call x-display-pixel-width/-height on ttys.
12857 2015-12-18  Dmitry Gutov  <dgutov@yandex.ru>
12859         Use 'hg id' in vc-hg-previous-revision
12861         * lisp/vc/vc-hg.el (vc-hg-previous-revision):
12862         Use 'hg id' to retrieve it (bug#22032).
12864 2015-12-17  Alan Mackenzie  <acm@muc.de>
12866         * lisp/follow.el (follow-sit-for): Remove (it's redundant).
12868 2015-12-17  Eli Zaretskii  <eliz@gnu.org>
12870         Fix a typo in the Emacs manual
12872         * doc/emacs/trouble.texi (Sending Patches): Fix a typo.  Reported
12873         by Lele Gaifax <lele@metapensiero.it>.  (Bug#22193)
12875 2015-12-17  Eli Zaretskii  <eliz@gnu.org>
12877         Fix parsing netrc entries with ports
12879         * lisp/gnus/auth-source.el (auth-source-ensure-strings): Don't
12880         make a list out of 't'.  (Bug#22188)
12882         * test/automated/auth-source-tests.el
12883         (auth-source-test-netrc-parse-entry): New test.
12885 2015-12-17  Paul Eggert  <eggert@cs.ucla.edu>
12887         Fix typo in Doug Lea malloc configure log
12889         * configure.ac (emacs_cv_var_doug_lea_malloc):
12890         Fix typo that confused the log output of 'configure'.
12892 2015-12-16  Nicolas Petton  <nicolas@petton.fr>
12894         * etc/NEWS: Mention the new pcase patterns `seq' and `map'.
12896 2015-12-16  Alan Mackenzie  <acm@muc.de>
12898         * etc/NEWS: Move entry on pcase to correct section
12900         (Accidentally omitted from previous commit)
12902 2015-12-16  Alan Mackenzie  <acm@muc.de>
12904         Add documentation for changes to Show Paren mode.
12906         * lisp/paren.el (show-paren-highlight-openparen): Enhance doc string.
12908         * doc/emacs/programs.texi (Matching): Add descriptions of some pertinent user
12909         options, including the new show-paren-when-point-inside-paren and
12910         show-paren-when-point-in-periphery.
12912         * etc/NEWS (.. Specialized Modes ...): Add an entry for Show Paren mode.
12913         Move an entry on pcase to the Lisp Changes section.
12915 2015-12-16  Eli Zaretskii  <eliz@gnu.org>
12917         Document Eldoc changes
12919         * doc/emacs/programs.texi (Lisp Doc): Document Global Eldoc mode.
12921 2015-12-16  Eli Zaretskii  <eliz@gnu.org>
12923         Fix invocation of Python and Guile interpreters from gdb-mi
12925         * lisp/progmodes/gdb-mi.el (gdb-control-commands-regexp): Add
12926         commands for interactive Python and Guile interpreters.
12927         (gdb-send): Recognize various ways of exiting from Python and
12928         Guile interpreters and returning to GDB.  For details, see
12929         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00693.html
12930         and http://stackoverflow.com/questions/31514741.
12932 2015-12-16  Paul Eggert  <eggert@cs.ucla.edu>
12934         Remove attempt to use C11 threads
12936         C11 threads are not needed for Emacs now, and their use is causing
12937         hassles on FreeBSD 10.x.  Problem reported by Ashish SHUKLA in:
12938         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00648.html
12939         * configure.ac: Do not check for C11 threads. Remove unnecessary
12940         fiddling with CPPFLAGS when configuring pthreads.
12941         * src/emacs-module.c (main_thread, check_main_thread)
12942         (module_init): Do not worry about C11 threads.
12944 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
12946         Set utf8 encoding with stty in Tramp
12948         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
12949         Move up uname check.  Handle Mac OS X eol encoding.  Set utf8
12950         encoding with stty.
12952 2015-12-15  Alan Mackenzie  <acm@muc.de>
12954         Tidy up documentation associated with window groups.
12956         * doc/lispref/windows.texi (Basic Windows): Add an @anchor for "Window
12957         Groups".  Correct example function to `window-group-start'.
12958         (Window Start and End, Textual scrolling): Point to the new anchor.  State
12959         that (most of) the args in window group functions have the same meaning as for
12960         the corresponding window primitives.
12962         * doc/lispref/positions.texi (Screen Lines).  Same as above.
12964 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
12966         Complete last commit
12968         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
12969         Move uname check up.  Handle Mac OS X eol encoding.
12971 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
12973         Handle Mac OS X eol encoding in Tramp
12975         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
12976         Handle Mac OS X eol encoding.
12978 2015-12-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12980         Fix variable name typo in compute_tip_xy
12982         * src/w32fns.c (compute_tip_xy):
12983         * src/xfns.c (compute_tip_xy): Modify *root_x instead of *root_y
12984         when `right' is integer.
12986 2015-12-14  foudfou  <foudil.newbie+git@gmail.com>
12988         * lisp/ibuffer.el: Add ability to (un-)mark or delete buffers in the region.
12990 2015-12-14  Tassilo Horn  <tsdh@gnu.org>
12992         Revert "Fix rx matcher overflow without limiting"
12994         This reverts commit fe27e037663d36be3e5741c2ce86ab4ee8017db1.
12996 2015-12-14  Alan Mackenzie  <acm@muc.de>
12998         Ispell: Bind isearch-regexp-function to nil around call to isearch..-new-loop
13000         * lisp/textmodes/ispell.el (ispell-highlight-spelling-error-overlay): bind
13001         isearch-regexp-function to nil around call to isearch-lazy-highligh-new-loop.
13003 2015-12-14  Tassilo Horn  <tsdh@gnu.org>
13005         Fix rx matcher overflow without limiting
13007         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Improve last
13008         change to the regexp without imposing a limit on the length of the
13009         options.
13011 2015-12-14  Alan Mackenzie  <acm@muc.de>
13013         Enhance ispell-skip-region-alist by generating part of it at runtime.
13015         * lisp/textmodes/ispell.el (ispell--\\w-filter, ispell--make-\\w-expression)
13016         (ispell--make-filename-or-URL-re): New functions which generate a regexp.
13017         (ispell-skip-region-alist): Remove the bit that matches a filename/URL, etc.
13018         (ispell-begin-skip-region-regexp, ispell-skip-region-list, ispell-message):
13019         Include the result of ispell--make-filename-or-URL-re in regexps.
13021 2015-12-14  Glenn Morris  <rgm@gnu.org>
13023         * build-aux/gitlog-to-emacslog: Ignore more pointless merge commits.
13025 2015-12-14  Alan Mackenzie  <acm@muc.de>
13027         Replace GROUP argument in six window primitives by new functions.
13029         * doc/lispref/windows.texi (Window Start and End, Textual Scrolling)
13030         * doc/lispref/positions.texi (Screen Lines): Remove optional GROUP argument
13031         from description of six window functions.  Add in description of new functions
13032         window-group-start, window-group-end, set-window-group-start,
13033         pos-visible-in-window-group-p, recenter-group and move-to-window-group-line,
13034         together with the six variables indirecting to the pertinent group
13035         functions.
13037         * src/window.c
13038         * src/keyboard.c: Revert the commit from 2015-11-11 12:02:48, in so far as it
13039         applies to these two files, which added the GROUP argument to six window
13040         primitives.
13042         * lisp/follow.el (follow-mode): Use updated variable names for the indirected
13043         functions.
13045         * lisp/isearch.el (isearch-update, isearch-done, isearch-string-out-of-window)
13046         (isearch-back-into-window, isearch-lazy-highlight-new-loop)
13047         (isearch-lazy-highlight-search, isearch-lazy-highlight-update): Replace calls
13048         to window primitives (e.g. window-start) with a GROUP argument by calls to
13049         new functions (e.g. window-group-start).
13051         * lisp/ispell.el (ispell-command-loop): Replace call to
13052         pos-visible-in-window-p with pos-visible-in-window-group-p.
13054         * lisp/window.el (window-group-start, window-group-end)
13055         (set-window-group-start, recenter-group, pos-visible-in-window-group-p)
13056         (selected-window-group, move-to-window-group-line): New functions.
13057         (window-group-start-function, window-group-end-function)
13058         (set-window-group-start-function, recenter-group-function)
13059         (pos-visible-in-window-group-p-function, selected-window-group-function)
13060         (move-to-window-group-line-function): New variables.
13062 2015-12-14  Vitorio Miguel  <vdrbandeiras@gmail.com>  (tiny change)
13064         * etc/tutorials/TUTORIAL.pt_BR: Fix a typo.  (Bug#22165)
13066 2015-12-13  Eli Zaretskii  <eliz@gnu.org>
13068         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
13070 2015-12-13  Tassilo Horn  <tsdh@gnu.org>
13072         Improve regex to not trigger stack overflow
13074         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Improve regex in
13075         order not to trigger a stack overflow in regex matcher with unbalanced
13076         brackets (bug#22146).
13078 2015-12-13  Eli Zaretskii  <eliz@gnu.org>
13080         Fix visiting files with raw-text
13082         * src/fileio.c (Finsert_file_contents): Fix setting buffer unibyte
13083         when some stuff was actually read.  (Bug#22162)
13085 2015-12-13  Tassilo Horn  <tsdh@gnu.org>
13087         Fix regex matching keyval labels
13089         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Fix regexp
13090         matching keyval labels.
13092 2015-12-13  Michael Albinus  <michael.albinus@gmx.de>
13094         * lisp/ido.el (ido-file-name-all-completions-1): Do not raise an error
13096         ... in case of Tramp.  (Bug#20821)
13098 2015-12-13  Paul Eggert  <eggert@cs.ucla.edu>
13100         Fix performance regression with gcc -O0
13102         This fixes the smaller performance hit that I noted in:
13103         https://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00357.html
13104         * src/alloc.c (macro_XPNTR_OR_SYMBOL_OFFSET, macro_XPNTR):
13105         * src/puresize.h (puresize_h_PURE_P)
13106         (puresize_h_CHECK_IMPURE):
13107         New macros, with the old contents of the functions.
13108         * src/alloc.c (XPNTR_OR_SYMBOL_OFFSET, XPNTR):
13109         * src/puresize.h (PURE_P, CHECK_IMPURE):
13110         Use the new macros.  Also macros, if DEFINE_KEY_OPS_AS_MACROS.
13111         * src/conf_post.h (ATTRIBUTE_UNUSED):
13112         * src/lisp.h (DEFINE_KEY_OPS_AS_MACROS): New macros.
13114 2015-12-12  Artur Malabarba  <bruce.connor.am@gmail.com>
13116         * lisp/emacs-lisp/package.el (package-unpack): Security check
13118         Check that we received the package we were offered.
13120 2015-12-12  Artur Malabarba  <bruce.connor.am@gmail.com>
13122         * lisp/emacs-lisp/package.el (package--compile): Don't activate
13124         `package-unpack' takes care of all activations now (other than
13125         `package-initialize).  `package--compile' now only compiles.
13127 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13129         Document the new bindings of <UP> and <DOWN> in the minibuffer
13131         * doc/emacs/mini.texi (Minibuffer History): Describe the new
13132         bindings of <UP> and <DOWN> in the minibuffer.
13134 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13136         Document new features of Ido
13138         * doc/misc/ido.texi (Misc): Document 'C-S-b'.
13140 2015-12-12  Martin Rudalics  <rudalics@gmx.at>
13142         Fix frame height calculations with added menu bar on Windows (Bug#22105)
13144         * doc/lispref/frames.texi (Parameter Access): Mention pitfalls
13145         when simultaneously specifying multiple parameters for
13146         `modify-frame-parameters' that all may change the frame's size.
13147         * src/w32fns.c (x_set_menu_bar_lines): Don't set
13148         windows_or_buffers_changed here.
13149         (my_create_tip_window, Fx_show_tip): Call AdjustWindowRect
13150         with third argument false.
13151         * src/w32menu.c (set_frame_menubar): Set
13152         windows_or_buffers_changed here.
13153         * src/w32term.c (x_set_window_size): Determine third argument of
13154         AdjustWindowRect from whether the frame has a menu bar and not
13155         from whether it wants one.
13157 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13159         Document the change in interactive shell mode
13161         * doc/emacs/misc.texi (Interactive Shell): Document that the
13162         '*shell*' buffer by default displays in a new window.
13164 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13166         Document new features of package.el
13168         * doc/emacs/package.texi (Package Menu): Document the 'external'
13169         status and the new menu commands.
13170         (Package Installation): Document archive priorities.
13172         * lisp/emacs-lisp/package.el (package-archive-priorities): Doc fix.
13173         (package-menu-hide-low-priority): Doc fix.
13175 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13177         Update and document new features of xterm support
13179         * doc/emacs/frames.texi (Text-Only Mouse): Document that
13180         track-mouse is supported by newer xterm versions.
13182 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13184         Document new features of Prettify Mode
13186         * doc/emacs/programs.texi (Misc for Programs): Document
13187         'prettify-symbols-compose-predicate' and
13188         'prettify-symbols-unprettify-at-point'.
13190         * lisp/progmodes/prog-mode.el (prettify-symbols-alist)
13191         (prettify-symbols-default-compose-p)
13192         (prettify-symbols-compose-predicate)
13193         (prettify-symbols--compose-symbol): Doc fixes.
13195 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13197         Document multi-mode indentation facilities
13199         * doc/lispref/text.texi (Mode-Specific Indent): Document
13200         'prog-indentation-context', 'prog-first-column', and 'prog-widen'.
13202         * lisp/progmodes/prog-mode.el (prog-indentation-context)
13203         (prog-widen): Doc fixes.
13205 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13207         Document 'vc-refresh-state'
13209         * doc/emacs/maintaining.texi (Version Control): Document
13210         'vc-refresh-state'.
13212         * lisp/vc/vc-hooks.el (vc-refresh-state): Doc fix.
13214 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13216         Fix echo for "C-u"
13218         * src/keyboard.c (command_loop_1): Undo last change.  It caused
13219         duplicate echo of C-u.  (Bug#22107)
13221 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
13223         Avoid errors when creating files under SVN in new directory
13225         * lisp/vc/vc-svn.el (vc-svn-registered): Use
13226         file-accessible-directory-p, to avoid cd'ing to a non-existing
13227         directory, which signals an error on some systems.  (Bug#21984)
13228         (vc-svn-checkin): Call log-edit-extract-headers with 2 arguments.
13229         Use declare-function to avoid byte-compiler warnings.
13231 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
13233         Improve Lua support in etags
13235         * lib-src/etags.c (Lua_functions): Skip spaces before looking for
13236         "function".
13238         * etc/NEWS: Mention improved Lua support by 'etags'.
13240         * test/etags/lua-src/test.lua (test): Add tests for indented
13241         function definitions.
13242         * test/etags/ETAGS.good_1:
13243         * test/etags/ETAGS.good_2:
13244         * test/etags/ETAGS.good_3:
13245         * test/etags/ETAGS.good_4:
13246         * test/etags/ETAGS.good_5:
13247         * test/etags/ETAGS.good_6:
13248         * test/etags/CTAGS.good: Adapt to the modified Lua tests.
13250 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
13252         Fix 'this-command-keys' wrt prefix argument
13254         * src/keyboard.c (command_loop_1): Restore the feature whereby C-u
13255         was part of this-command-keys, but not of this-single-command-keys.
13256         (Bug#22107)
13258         * lisp/simple.el (internal-echo-keystrokes-prefix): Add
13259         commentary about the function's return value.
13261 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
13263         * lisp/files.el (load-library): Doc fix.  (Bug#22140)
13265 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
13267         Improve and document Ruby support in 'etags'
13269         * lib-src/etags.c (Ruby_suffixes): Add ".ruby".
13270         (Ruby_functions): Support "module" and overloaded operators.
13271         (Ruby_help): Mention "module".
13273         * test/etags/ruby-src/test.rb:
13274         * test/etags/ruby-src/test1.ru: New files.
13275         * test/etags/Makefile (RBSRC): New tests.
13276         (SRCS): Add ${RBSRC}.
13277         * test/etags/ETAGS.good_1:
13278         * test/etags/ETAGS.good_2:
13279         * test/etags/ETAGS.good_3:
13280         * test/etags/ETAGS.good_4:
13281         * test/etags/ETAGS.good_5:
13282         * test/etags/ETAGS.good_6:
13283         * test/etags/CTAGS.good: Adapt to the new Ruby tests.
13285         * doc/man/etags.1: Mention Ruby support.
13286         * etc/NEWS: Mention Ruby support.
13288 2015-12-11  Xi Lu  <lx@shellcodes.org>
13290         Initial support for Ruby in 'etags'
13292         * lib-src/etags.c <Ruby_suffixes>: New variable.
13293         (lang_names): Add an entry for Ruby.
13294         (Ruby_functions): New function.  (Bug#22116)
13296 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
13298         Clarify documentation of 'modify-frame-parameters'
13300         * doc/lispref/frames.texi (Parameter Access): Clarify what "ignored
13301         PARMs" mean for 'modify-frame-parameters'.
13303         * src/frame.c (Fmodify_frame_parameters): Clarify what "ignored
13304         PARMs" mean for this function.  (Bug#22104)
13306 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
13308         Fix setting buffer unibyte when reading from a device
13310         * src/fileio.c (Finsert_file_contents): Call Fset_buffer_multibyte
13311         to make a (possibly non-empty) buffer unibyte.  (Bug#22096)
13313 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
13315         Clarify documentation of 'values'
13317         * doc/lispref/eval.texi (Eval): Clarify that 'values' are not
13318         updated by any evaluation commands in 'lisp-interaction-mode'.
13319         (Bug#22056)
13321 2015-12-11  Anders Lindgren  <andlind@gmail.com>
13323         Fixed subversion vc error when opening file in new directory (bug#21984).
13325         * lisp/vc/vc-svn.el (vc-svn-registered): Check if directory exists.
13327 2015-12-09  Eli Zaretskii  <eliz@gnu.org>
13329         Yet another fix for when point ends up in invisible text
13331         * src/xdisp.c (redisplay_window): When someone forced
13332         window-start, and honoring that failed to show the cursor, try
13333         moving out of invisible text, before falling back to the middle of
13334         the window.  (Bug#22098)
13336 2015-12-09  Michael Albinus  <michael.albinus@gmx.de>
13338         Fix error in Tramp perl script for cygwin
13340         * lisp/net/tramp-sh.el (tramp-perl-file-truename): Do not raise an
13341         error if file doesn't exist.
13343 2015-12-09  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
13345         Remove font workaround for limited outdated versions
13347         * src/macfont.m (mac_font_descriptor_get_adjusted_weight): Remove
13348         workaround for HiraginoSans-W7 on OS X 10.11 and 10.11.1.
13350 2015-12-09  Anders Lindgren  <andlind@gmail.com>
13352         Don't add "." to load path (bug#21104)
13354         When configured with --enable-locallisppath=no, which is the
13355         default for OS X, the load-path incorrectly was populated with ".".
13357         * src/lread.c (init_lread): Don't call `decode_env_path' when
13358         PATH_SITELOADSEARCH is empty.
13360 2015-12-08  Artur Malabarba  <bruce.connor.am@gmail.com>
13362         * lisp/emacs-lisp/package.el (package--with-response-buffer):
13364         Search for the blank-line in the right buffer.
13366 2015-12-08  Glenn Morris  <rgm@gnu.org>
13368         * test/automated/simple-test.el (undo-auto-boundary-timer): Update
13369         for recent change.
13371 2015-12-08  Glenn Morris  <rgm@gnu.org>
13373         Fix some display-warning usage.
13375         * lisp/files.el (hack-local-variables, hack-dir-local-variables):
13376         * lisp/calendar/diary-lib.el (diary-include-files, diary-sexp-entry):
13377         * lisp/calendar/holidays.el (calendar-holiday-list):
13378         * lisp/mail/rmailout.el (rmail-output-read-file-name):
13379         Fix display-warning usage.
13381 2015-12-08  Glenn Morris  <rgm@gnu.org>
13383         * lisp/calendar/cal-html.el: Require diary-lib.
13385         (cal-html-list-diary-entries): Handle no diary.  (Bug#21994)
13387 2015-12-08  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
13389         Add Obsolete-since header to eudcb-ph.el
13391         * lisp/obsolete/eudcb-ph.el: Add Obsolete-since header.
13393 2015-12-07  Paul Eggert  <eggert@cs.ucla.edu>
13395         Spelling fixes
13397         * doc/misc/calc.texi (Predefined Units): Use the bland modern
13398         scientific style for spelling the units “ampere” and
13399         “angstrom” rather than the older style “Ampere” and
13400         “Ångstrom”.  The latter spelling was wrong anyway (it should
13401         have been “Ångström”).
13402         * lisp/emacs-lisp/ert.el (ert--explain-equal-rec):
13403         Fix misspelling of ‘atom’ in code.
13405 2015-12-07  Eli Zaretskii  <eliz@gnu.org>
13407         Improve documentation of kill commands
13409         * lisp/simple.el (region-extract-function, delete-backward-char)
13410         (delete-forward-char, kill-region, copy-region-as-kill)
13411         (kill-ring-save): Better document the optional argument REGION in
13412         the doc strings.  Mention in the doc strings that text put in the
13413         kill-ring can be filtered by 'filter-buffer-substring'.
13415         * doc/lispref/text.texi (Kill Functions): Mention that functions
13416         described in this subsection can filter text they put in the
13417         kill-ring.  Add a cross-reference to "Buffer Contents" and an
13418         index entry.  Document the optional argument 'region' and its
13419         effect.
13420         (Bug#21315)
13422 2015-12-07  Alan Mackenzie  <acm@muc.de>
13424         Further progress making Isearch, Ispell, Replace work with Follow Mode.
13426         * lisp/follow.el: (follow-mode): Remove references to sit*-for-function, which
13427         no longer exists.  Add follow-post-command-hook to  three special purpose
13428         hooks at setup, and remove them at tear down.
13430         * lisp/isearch.el: (isearch-update): invoke isearch-update-post-hook before
13431         isearch-lazy-highlight-new-loop.
13432         (isearch-lazy-highlight-new-loop): Restore this function to what it previously
13433         was, merging the functionality of isearch-lazy-highlight-maybe-new-loop into
13434         it.
13435         (isearch-lazy-highlight-maybe-new-loop): function removed.
13437         * lisp/replace.el: (replace-update-post-hook): New hook variable.
13438         (perform-replace): Add second (nil) argument to looking-back.  Invoke
13439         replace-update-post-hook before calling replace-highlight.
13441         * lisp/textmodes/ispell.el: (ispell-update-post-hook): New hook variable.
13442         (ispell-command-loop): invoke ispell-update-post-hook.  Add GROUP argument to
13443         call of pos-visible-in-window-p.
13444         (ispell-display-buffer): Place *Choices* window at the top of the last window
13445         in a window group.
13447 2015-12-07  Alan Mackenzie  <acm@muc.de>
13449         Amend doc of `mapconcat': it can take sequences, not merely strings.
13451         * doc/lispref/functions.texi (Mapping Functions): Amend the doc of `mapconcat'
13452         to say that SEPARATOR and the results from FUNCTION may be any character
13453         sequences, not just strings.  Add an @xref to "Sequences Arrays Vectors".
13455 2015-12-07  Michael Albinus  <michael.albinus@gmx.de>
13457         Fix an utf8 problem for Tramp on BSD
13459         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
13460         Make lax check for utf8.
13461         (tramp-get-remote-locale): Add "en_US.UTF-8" as candidate.
13463 2015-12-07  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
13465         Make eudcb-ph.el obsolete
13467         * doc/misc/eudc.texi: Bump version to 1.40.0.
13468         Remove PH/QI sections and mentions.
13469         * lisp/obsolete/eudcb-ph.el: Make obsolete.
13470         * lisp/net/eudc-vars.el (eudc-known-protocols): Remove ph.
13471         (eudc-ph-bbdb-conversion-alist): Make obsolete.
13472         * etc/NEWS: Mention this.  (Bug#21191)
13474 2015-12-07  Paul Eggert  <eggert@cs.ucla.edu>
13476         Remove overenthusiastic eassert
13478         * src/lisp.h (XSYMBOL): Remove eassert incorrectly added in
13479         previous change.  It breaks on MS-Windows --with-wide-int.
13480         Problem reported by Eli Zaretskii in:
13481         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00275.html
13483 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
13485         Pacify gcc -Wparentheses
13487         * src/xdisp.c (row_containing_pos): Reparenthesize.
13489 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
13491         Port mod-test to 32-bit Emacs --without-wide-int
13493         * modules/mod-test/test.el (mod-test-sum-test):
13494         Bring back the 2**29 tests, but port them to 32-bit Emacs
13495         --without-wide-int.
13497 2015-12-06  Michael Albinus  <michael.albinus@gmx.de>
13499         Fix minor Tramp problems found on BSD
13501         * lisp/net/tramp-sh.el (tramp-perl-file-truename): Do not append
13502         trailing slash.  Quote apostrophes.
13503         (tramp-sh-handle-file-truename): Do not append trailing slash in
13504         the "ls" case.
13505         (tramp-get-ls-command-with-w-option): New defun.
13506         (tramp-do-file-attributes-with-ls)
13507         (tramp-do-directory-files-and-attributes-with-stat): Use it.
13509         * test/automated/tramp-tests.el
13510         (tramp-test31-special-characters-with-perl)
13511         (tramp-test31-special-characters-with-ls)
13512         (tramp-test32-utf8-with-perl, tramp-test32-utf8-with-ls):
13513         Suppress also readlink.
13515 2015-12-06  Eli Zaretskii  <eliz@gnu.org>
13517         Fix cursor display when invisible text is at line beginning
13519         * src/xdisp.c (redisplay_window): When scrolling fails to show
13520         point, prefer using the desired matrix if possible for finding the
13521         fallback glyph row for displaying the cursor.  (Bug#22098)
13522         (row_containing_pos): Exit the loop as soon as we hit the first
13523         disabled glyph row.  Otherwise we risk accessing garbled data and
13524         departing to the no-no land.
13526 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
13528         Improve module interface when WIDE_EMACS_INT
13530         * src/emacs-module.c (plain_values): New constant.
13531         (module_nil): Now a constant.
13532         (Finternal_module_call, value_to_lisp_bits, lisp_to_value_bits)
13533         (syms_of_module): Use if, not #ifdef, so that both sides are
13534         checked at compile-time, and so that GCC doesn’t complain
13535         about an unused var in the typical case.  Also, depend on
13536         plain_values, not on WIDE_EMACS_INT; the code shouldn’t assume
13537         that WIDE_EMACS_INT implies !USE_LSB_TAG.
13538         (value_to_lisp_bits, lisp_to_value_bits): New functions.
13539         Sign-extend integers rather than zero-extending them, as small
13540         negative integers are more likely.
13541         (value_to_lisp, lisp_to_value): Rewrite in terms of the new *_bits
13542         functions.
13543         (HAVE_STRUCT_ATTRIBUTE_ALIGNED): Define to 0 if not already defined.
13544         (mark_modules): Remove.  All uses removed.
13545         (lisp_to_value): Don’t assume Fcons returns a pointer aligned
13546         to GCALIGNMENT.
13547         (syms_of_module): Check that module_nil converts to Qnil.
13548         * src/lisp.h (lisp_h_XSYMBOL, XSYMBOL): Use signed conversion, since
13549         we prefer signed to unsigned when either will do.
13550         (TAG_PTR): Sign-extend pointers when USE_LSB_TAG, as this is
13551         a bit better for emacs-module.c.
13553 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
13555         Port mod-test to x86-64 GNU/Linux running 32-bit
13557         * modules/mod-test/test.el (mod-test-sum-test):
13558         Don’t attempt to match descriptions to operating systems.
13559         It didn’t work on Fedora x86-64 running a 32-bit executable,
13560         and it’s not worth the trouble anyway.
13561         Port to 32-bit platforms by removing an assumption about
13562         fixnum widths.
13564 2015-12-06  Michael Albinus  <michael.albinus@gmx.de>
13566         Fix auto-revert-tests.el when filenotify isn't used
13568         * test/automated/auto-revert-tests.el (auto-revert--wait-for-revert):
13569         Make it working also when filenotify isn't used.
13571 2015-12-06  Juri Linkov  <juri@linkov.net>
13573         * lisp/textmodes/ispell.el (ispell-highlight-spelling-error-overlay):
13575         Let-bind isearch-regexp-function to nil.  (Bug#22097)
13577 2015-12-05  Artur Malabarba  <bruce.connor.am@gmail.com>
13579         * lisp/emacs-lisp/package.el: Don't install bad signatures (bug#22089)
13581         (package--with-response-buffer): NOERROR and ERROR-FORM only
13582         handle connection errors.
13583         (bad-signature): New error type.
13584         (package--check-signature-content): Use it.
13585         (package--check-signature): Properly distinguish connection errors
13586         from bad-signature errors.  Do the check for
13587         `package-check-signature' `allow-unsigned' here instead of forcing
13588         the callbacks to do it.  Add a new argument, UNWIND.
13589         (package--download-one-archive, package-install-from-archive):
13590         Update usage of `package--check-signature'.
13592 2015-12-05  Ulf Jasper  <ulf.jasper@web.de>
13594         Fix Bug#22092.
13596         * lisp/calendar/icalendar.el (icalendar--get-unfolded-buffer):
13597           Clean up inconsistent line endings. (Bug#22092)
13598           (icalendar--clean-up-line-endings): New.
13599         * test/automated/icalendar-tests.el (icalendar-real-world): Add test
13600           for Bug#22092.
13602 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
13604         Document 'bookmark-set-no-overwrite'
13606         * doc/emacs/regs.texi (Bookmarks): Document the new command
13607         'bookmark-set-no-overwrite' and its keybinding.
13609 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
13611         Document new binding of 'mouse-buffer-menu'
13613         * doc/emacs/buffers.texi (Buffer Menus): 'mouse-buffer-menu' is
13614         now also on C-F10.
13616 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
13618         Initial documentation of dynamic modules
13620         * doc/lispref/loading.texi (Dynamic Modules): New section with
13621         initial documentation for dynamic modules.
13622         * doc/lispref/elisp.texi (Top): Add "Dynamic Modules" to the
13623         detailed menu
13625         * etc/NEWS: Fix typos in dynamic modules' entry.
13627 2015-12-05  Artur Malabarba  <bruce.connor.am@gmail.com>
13629         Remove copyright statements from trivial test files
13631 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
13633         Add "Preliminaries" section to etc/DEBUG
13635         * etc/DEBUG: Add the "Preliminaries" section for GDB beginners.
13636         Most of the content was suggested by Phillip Lord
13637         <phillip.lord@russet.org.uk>.  Remove the section about debugging
13638         with the Visual Studio, as building Emacs with the Microsoft
13639         compilers is no longer supported.  Minor fixes in some other
13640         sections.
13642 2015-12-05  Alex Dunn  <dunn.alex@gmail.com>  (tiny change)
13644         Improve parsing of version strings
13646         * lisp/subr.el (version-regexp-alist): Allow "." as priority separator
13647         (version-to-list): More helpful error messages.
13648         (version-to-list): ".5" is valid (update docstring).  Make
13649         "22.8X3" invalid, as the doc string says.
13651         * test/automated/subr-tests.el (ert-test-version-parsing): New
13652         tests for version string processing.
13654 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
13656         Fix documentation of 'undo' changes
13658         * doc/lispref/text.texi (Undo): Minor wording changes.  Use US
13659         English conventions for spelling and whitespace between sentences.
13661         * etc/NEWS: Fix wording and spelling of undo-related entries.
13662         Mark them as documented.
13664 2015-12-05  Glenn Morris  <rgm@gnu.org>
13666         * lisp/net/net-utils.el: Small improvements.
13668         (net-utils--executable-find-sbin): New function.
13669         (ifconfig-program): Check sbin directories.
13670         Fallback to "ip".  (Bug#22091)
13671         (ifconfig-program-options): Check the actual program in use.
13672         (arp-program): Check sbin directories.
13674 2015-12-04  (tiny change) Arash Esbati  <esbati@gmx.de>  (tiny change)
13676         Fix wrong-type-argument integer-or-marker-p nil error
13678         * lisp/textmodes/reftex-auc.el (reftex-what-index-tag):
13679         Fix (wrong-type-argument integer-or-marker-p nil) error (bug#22077).
13681 2015-12-04  Alan Mackenzie  <acm@muc.de>
13683         Merge branch 'scratch/follow' of /home/acm/emacs/emacs.git/emacs-25 into scratch/follow
13685         Merge necessitated by a rebase operation.
13687 2015-12-04  Alan Mackenzie  <acm@muc.de>
13689         lisp/isearch.el: Eliminate macro isearch-call-message, replacing with funcall.
13691 2015-12-04  Alan Mackenzie  <acm@muc.de>
13693         First commit to scratch/follow.  Make Isearch work with Follow Mode, etc.
13695         doc/lispref/window.texi (Basic Windows): Add paragraph defining "Group of
13696         Windows" and new @defun selected-window-group.
13697         (Window Start and End): Describe new &optional parameter GROUP and
13698         ...-group-function for window-start, window-end, set-window-start, and
13699         pos-visible-in-window-p.
13700         (Textual Scrolling) Describe the same for recenter.
13701         doc/lispref/positions.texi (Screen Lines): Describe the same for
13702         move-to-window-line.
13704         src/window.c (Fwindow_start, Fwindow_end, Fset_window_start)
13705         (Fpos_visible_in_window_p, Frecenter, Fmove_to_window_line): To each, add ar
13706         new optional parameter "group".  At the beginning of each, check whether the
13707         corresponding ...-group-function is set to a function, and if so execute this
13708         function in place of the normal processing.
13709         (syms_of_window): Define symbols for the six new variables below.
13710         (window-start-group-function, window-end-group-function)
13711         (set-window-start-group-function, recenter-group-function)
13712         (pos-visible-in-window-p-group-function, move-to-window-line-group-function):
13713         New permanent local buffer local variables.
13714         src/keyboard.c (Fposn_at_point): Add extra parameter in call to
13715         Fpos_visible_in_window_p.
13717         lisp/window.el (selected-window-group-function): New permanent local buffer
13718         local variable.
13719         (selected-window-group): New function.
13721         lisp/follow.el (follow-mode): Set the ...-group-function variables at mode
13722         enable, kill them at mode disable.  Add/remove follow-after-change to/from
13723         after-change-functions.
13724         (follow-start-end-invalid): New variable.
13725         (follow-redisplay): Manipulate follow-start-end-invalid.
13726         (follow-after-change, follow-window-start, follow-window-end)
13727         (follow-set-window-start, follow-pos-visible-in-window-p)
13728         (follow-move-to-window-line, follow-sit-for): New functions.
13730         lisp/isearch.el (isearch-call-message): New macro.
13731         (isearch-update, with-isearch-suspended, isearch-del-char)
13732         (isearch-search-and-update, isearch-ring-adjust): Invoke above new macro.
13733         (with-isearch-suspended): Rearrange code such that isearch-call-message is
13734         invoked before point is moved.
13735         (isearch-message): Add comment about where point must be at function call.
13736         (isearch-search): Remove call to isearch-message.
13737         (isearch-lazy-highlight-window-group): New variable.
13738         (isearch-lazy-highlight-new-loop): Unconditionally start idle timer.  Move
13739         the battery of tests to ...
13740         (isearch-lazy-highlight-maybe-new-loop): New function, started by idle timer.
13741         Note: (sit-for 0) is still called.
13742         (isearch-lazy-highlight-update): Check membership of
13743         isearch-lazy-highlight-window-group.  Don't set the `window' overlay
13744         property.
13745         (isearch-update, isearch-done, isearch-string-out-of-window)
13746         (isearch-back-into-window, isearch-lazy-highlight-maybe-new-loop)
13747         (isearch-lazy-highlight-search, isearch-lazy-highlight-update)
13748         (isearch-lazy-highlight-update): Call the six amended primitives (see
13749         src/window.c above) with the new `group' argument set to t, to cooperate
13750         with Follow Mode.
13752 2015-12-04  Stefan Monnier  <monnier@iro.umontreal.ca>
13754         * lisp/emacs-lisp/ert.el: Prefer pcase over cl-typecase
13756         * lisp/emacs-lisp/ert.el (ert--should-error-handle-error)
13757         (ert--explain-format-atom, ert--explain-equal-rec)
13758         (ert--print-backtrace, ert-test-result-type-p, ert-select-tests)
13759         (ert--insert-human-readable-selector): Prefer pcase over cl-typecase.
13761 2015-12-04  Artur Malabarba  <bruce.connor.am@gmail.com>
13763         * lisp/character-fold.el: Remove special case-folding support
13765         (character-fold-to-regexp): Remove special code for
13766         case-folding.  Char-fold search still respects the
13767         `case-fold-search' variable (i.e., f matches F).  This only
13768         removes the code that was added to ensure that f also matched
13769         all chars that F matched.  For instance, after this commit, f
13770         no longer matches 𝔽.
13772         This was necessary because the logic created a regexp with
13773         2^(length of the string) redundant paths.  So, when a very
13774         long string "almost" matched, Emacs took a very long time to
13775         figure out that it didn't.  This became particularly relevant
13776         because isearch's lazy-highlight does a search bounded by (1-
13777         match-end) (which, in most circumstances, is a search that
13778         almost matches).  A recipe for this can be found in bug#22090.
13780 2015-12-04  Stefan Monnier  <monnier@iro.umontreal.ca>
13782         * lisp/emacs-lisp/cl-macs.el (character): Can't be negative
13784         Fixes (bug#21701)
13786 2015-12-04  Daiki Ueno  <ueno@gnu.org>
13788         lisp/gnus/qp.el: Don't replace "from " at bol
13790         * lisp/gnus/qp.el (quoted-printable-encode-region): Bind `case-fold-search'
13791         to nil when looking for "^From ".  Problem reported by Simon Josefsson.
13793 2015-12-03  Phillip Lord  <phillip.lord@russet.org.uk>
13795         Externalize some symbols in undo-auto
13797          * doc/lispref/text.texi: Update symbols.
13798          * lisp/simple.el (undo-auto--amalgamate,
13799            undo-auto--current-boundary-timer): Make symbols public.
13800          * src/cmds.c (Fself_insert_command,Fdelete_char): Call
13801            updated symbol.
13803 2015-12-03  Stefan Monnier  <monnier@iro.umontreal.ca>
13805         * lisp/emacs-lisp/smie.el (smie-next-sexp): Fix BOB "token"
13807 2015-12-03  Michael Albinus  <michael.albinus@gmx.de>
13809         Some error message improvements in tramp-sh.el
13811         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
13812         Suppress error messages for "mesg" and "biff" calls.
13813         (tramp-get-remote-path): Ignore errors when expanding
13814         `tramp-own-remote-path'.  Raise a warning instead.
13816 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
13818         Document 'nacl' value for 'system-type'
13820         * doc/lispref/os.texi (System Environment): Document the 'nacl'
13821         value of 'system-type'.
13823 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
13825         Document 'window-max-chars-per-line'
13827         * doc/lispref/windows.texi (Window Sizes): Document
13828         'window-max-chars-per-line'.
13830 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
13832         Fix some file headers for the purpose of `package--builtins'
13834         * lisp/emacs-lisp/cl-preloaded.el
13835         * lisp/emacs-lisp/eieio-compat.el
13836         * lisp/net/sasl-scram-rfc.el: Add a "Package:" header
13838         * lisp/ielm.el: Fix summary line.
13840 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
13842         * lisp/emacs-lisp/package.el (package-unpack): Load before compiling
13844         Reload any previously loaded package files before compiling
13845         the package (also reload the same files after compiling).
13846         This ensures that we have the most recent definitions during
13847         compilation, and avoids generating bad elc files when a macro
13848         changes and it is used in a different file from the one it's
13849         defined in.
13851 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
13853         * lisp/emacs-lisp/package.el: Refactor package activation code
13855         (package-activate): Move code that activates dependencies into
13856         package-activate-1.
13857         (package--load-files-for-activation): New function.
13858         (package-activate-1): Add code for (optionally) activating
13859         dependencies, and move file-loading code into
13860         `package--load-files-for-activation'.
13862 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
13864         Document new font-related functionality
13866         * doc/lispref/display.texi (Low-Level Font): Document
13867         'default-font-width', 'default-font-height', 'window-font-width',
13868         and 'window-font-height'.
13870         * etc/NEWS: Move entries for 'default-font-width',
13871         'default-font-height', 'window-font-width', and 'window-font-height'
13872         to their place and mark them documented.
13874 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
13876         Fix documentation and implementation of 'directory-name-p'
13878         * lisp/files.el (directory-name-p): Modify to recognize
13879         backslashes on MS-Windows and MS-DOS.  Adjust the doc string
13880         accordingly.  Use '=', not char-equal, for comparison, as
13881         letter-case cannot possibly be an issue here.
13883         * doc/lispref/files.texi (Directory Names): Move the documentation
13884         of directory-name-p here from "Relative File Names".  Update the
13885         description per the changes in implementation.
13887         * etc/NEWS: Move the entry for 'directory-name-p' to its proper
13888         place and mark it documented.
13890 2015-12-02  Eli Zaretskii  <eliz@gnu.org>
13892         Minor copyedit in Emacs manual
13894         * doc/emacs/search.texi (Lax Search): Make wording about character
13895         folding by default less definitive.  (Bug#22043)
13897 2015-12-02  Eli Zaretskii  <eliz@gnu.org>
13899         More emacs-module.c fixes for wide ints
13901         * src/emacs-module.c (value_to_lisp) [WIDE_EMACS_INT]: Use
13902         unsigned data types to manipulate pointers, to avoid sign
13903         extension coming after us with a vengeance.
13905         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
13906         Emacs with wide ints that verify integer values near the critical
13907         value that requires us to switch to a cons cell.
13909 2015-12-02  Stephen Leake  <stephen_leake@stephe-leake.org>
13911         Fix bug#22069 in cl-generic.el
13913         * lisp/emacs-lisp/cl-generic.el (cl-no-method): Remove %S; this string is
13914         not run thru `format'.
13916 2015-12-02  Dmitry Gutov  <dgutov@yandex.ru>
13918         APPEND etags--xref-backend to xref-backend-functions
13920         * lisp/progmodes/xref.el (xref-backend-functions):
13921         Use APPEND when adding the default element
13922         (http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00061.html).
13924 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
13926         More accurate documentation of lax whitespace matching
13928         * lisp/isearch.el (isearch-forward-word, isearch-forward-symbol)
13929         (word-search-backward, word-search-forward)
13930         (word-search-backward-lax, word-search-forward-lax): Mention in
13931         doc strings that toggling lax whitespace matching has no effect on
13932         these commands.
13934         * doc/emacs/search.texi (Word Search, Symbol Search): Clarify that
13935         lax whitespace matching has no effect on these commands.
13937 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
13939         Fix emacs-module.c for wide ints
13941         * src/emacs-module.c (lisp_to_value): Compare the produced value
13942         with the original Lisp object, not with the one potentially
13943         converted into a Lisp_Cons.  Fixes assertion violations when
13944         working with integers larger than fit into a 32-bit value.
13946         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
13947         large integers, to test --with-wide-int.
13949 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
13951         Document 'directory-files-recursively'
13953         * lisp/files.el (directory-files-recursively): Doc fix.  Rename
13954         the argument MATCH to REGEXP, to be more explicit about its form.
13956         * doc/lispref/files.texi (Contents of Directories): Improve the
13957         documentation of 'directory-files-recursively'.  Add
13958         cross-references.
13960         * etc/NEWS: Move the entry for 'directory-files-recursively' to
13961         its place and mark it documented.
13963 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
13965         Document 'inhibit-read-only' property
13967         * doc/lispref/text.texi (Special Properties): Describe the new
13968         'inhibit-read-only' text property.  Add cross-reference to where
13969         read-only buffers are described.
13970         * doc/lispref/buffers.texi (Read Only Buffers): Mention that
13971         'inhibit-read-only' property exempts text from being read-only.
13972         Add cross-reference to "Special Properties".
13974         * etc/NEWS: Move the entry about 'inhibit-read-only' property to
13975         its place and mark it documented.
13977 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
13979         * lisp/emacs-lisp/package.el: Update header comments
13981 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
13983         * lisp/character-fold.el: Add back multi-char matching
13985         (character-fold-to-regexp): Uncomment recently commented code
13986         and make the algorithm "dummer" by not checking every possible
13987         combination.  This will miss some possible matches, but it
13988         greatly reduces regexp size.
13990         * test/automated/character-fold-tests.el
13991         (character-fold--test-fold-to-regexp): Comment out test of
13992         functionality no longer supported.
13994 2015-12-01  Xue Fuqiao  <xfq.free@gmail.com>
13996         * doc/emacs/ack.texi (Acknowledgments): Update.
13998 2015-12-01  Michael Albinus  <michael.albinus@gmx.de>
14000         Check `file-remote-p' over absolute files names in files.el
14002         * lisp/files.el (directory-files-recursively)
14003         (get-free-disk-space): Check `file-remote-p' over absolute files names.
14005 2015-12-01  Andreas Schwab  <schwab@linux-m68k.org>
14007                 * src/lread.c (syms_of_lread): Doc fix.
14009 2015-12-01  Dmitry Gutov  <dgutov@yandex.ru>
14011         Don't mistake certain JS method calls for keywords
14013         * lisp/progmodes/js.el (js--ctrl-statement-indentation):
14014         Braceless keyword can't come after a period (bug#22063).
14016 2015-12-01  David Reitter  <david.reitter@gmail.com>
14018         Read frame_title_format from buffer-local variable for NS port
14020         * src/nsfns.m (x_implicitly_set_name): Read frame-title-format and
14021         icon-title-format variables from buffer in appropriate window.
14022         (Bug#22048)
14024 2015-12-01  Juri Linkov  <juri@linkov.net>
14026         * lisp/replace.el (occur-engine): Count matches in empty lines.
14028         (Bug#22062)
14030 2015-11-30  Aurélien Aptel  <aurelien.aptel@gmail.com>
14032         * src/emacs-module.h: Fix finalizer typedef for C++11
14034         C++11 standard doesn't allow exception-specification in typedef.
14035         The workaround is to declare a dummy function prototype and use
14036         decltype on it.
14038 2015-11-30  Eli Zaretskii  <eliz@gnu.org>
14040         Fix last change
14042         * src/emacs-module.c (lisp_to_value, value_to_lisp)
14043         [WIDE_EMACS_INT]: Avoid compiler warnings.
14045 2015-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
14047         Rely on conservative stack scanning to find "emacs_value"s
14049         * src/emacs-module.c (struct emacs_value_tag)
14050         (struct emacs_value_frame, struct emacs_value_storage): Remove.
14051         (value_frame_size): Remove constant.
14052         (struct emacs_env_private): Use Lisp_Object for non_local_exit info.
14053         (lisp_to_value): Remove first arg.
14054         (module_nil): New constant.
14055         Use it instead of NULL when returning an emacs_value.
14056         (module_make_function): Adjust to new calling convention of
14057         Qinternal_module_call.
14058         (DEFUN): Receive args in an array rather than a list.
14059         Use SAFE_ALLOCA rather than xnmalloc.  Skip the lisp_to_value loop when
14060         we don't have WIDE_EMACS_INT.  Adjust to new type of non_local_exit info.
14061         (module_non_local_exit_signal_1, module_non_local_exit_throw_1):
14062         Adjust to new type of non_local_exit info.
14063         (ltv_mark) [WIDE_EMACS_INT]: New constant.
14064         (value_to_lisp, lisp_to_value): Rewrite.
14065         (initialize_frame, initialize_storage, finalize_storage): Remove functions.
14066         (allocate_emacs_value): Remove function.
14067         (mark_modules): Gut it.
14068         (initialize_environment): Don't initialize storage any more.
14069         Keep the actual env object on Vmodule_environments.
14070         (finalize_environment): Don't finalize storage any more.
14071         (syms_of_module): Initialize ltv_mark and module_nil.
14073         * src/emacs-module.h (emacs_value): Make it more clear that this type
14074         is really opaque, including the fact that NULL may not be valid.
14076         * modules/mod-test/mod-test.c (Fmod_test_signal, Fmod_test_throw):
14077         Don't assume that NULL is a valid emacs_value.
14079 2015-11-30  Eli Zaretskii  <eliz@gnu.org>
14081         Yet another doc improvement for search commands
14083         * doc/emacs/search.texi (Word Search, Symbol Search)
14084         (Regexp Search): Document commands that don't support lax
14085         whitespace matching or character folding.
14086         (Nonincremental Search): Mention the search commands that can be
14087         invoked from the menu bar.
14089         * lisp/isearch.el (isearch-define-mode-toggle-word)
14090         (isearch-define-mode-toggle-symbol)
14091         (isearch-define-mode-toggle-character-fold): Note in the doc
14092         string that turning these on exits the regexp mode.
14093         (isearch-forward-regexp, isearch-forward-word)
14094         (isearch-forward-symbol, isearch-backward-regexp)
14095         (word-search-backward, word-search-forward)
14096         (word-search-backward-lax, word-search-forward-lax): State in the
14097         doc string which commands don't support character folding and/or
14098         lax-whitespace matching.
14100 2015-11-30  Martin Rudalics  <rudalics@gmx.at>
14102         Run `window-size-change-functions' also when reading from minibuffer
14104         * src/xdisp.c (redisplay_internal): Run `window-size-change-functions'
14105         also when reading from minibuffer.
14107 2015-11-30  Ulf Jasper  <ulf.jasper@web.de>
14109         Fix scrambling of html-rendered item buffers
14111         * lisp/net/newst-treeview.el (newsticker--treeview-render-text): Fix
14112           scrambling of contents by wrapping call to html-renderer in
14113           save-selected-window.
14115 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
14117         Fix font typo in previous doc fix.
14119 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
14121         A bit more security doc, esp. file local vars
14123         * doc/emacs/emacs.texi (Top):
14124         * doc/emacs/misc.texi (Miscellaneous Commands):
14125         Refer to new Host Security section.
14126         (Host Security): New section.
14127         * doc/lispref/os.texi (Security Considerations):
14128         Mention file local variables.
14130 2015-11-30  Artur Malabarba  <bruce.connor.am@gmail.com>
14132         * lisp/character-fold.el: Comment out branching code
14134         (character-fold-to-regexp): Comment out code that uses multi-char
14135         table.  The branching caused by this induces absurdly long regexps,
14136         up to 10k chars for as little as 25 input characters.
14138 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
14140         Spelling and grammar fixes
14142 2015-11-30  Dmitry Gutov  <dgutov@yandex.ru>
14144         Make lisp-completion-at-point a wrapper instead of an alias
14146         * lisp/progmodes/elisp-mode.el (lisp-completion-at-point):
14147         Turn into an obsolete wrapper around elisp-completion-at-point
14148         (bug#20455).
14150 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
14152         * lisp/isearch.el (isearch-search-fun-default): Nicer error
14154         message when the search fails.
14156 2015-11-29  Dmitry Gutov  <dgutov@yandex.ru>
14158         Update menu-bar-goto-uses-etags-p for the current xref API
14160         * lisp/menu-bar.el (menu-bar-goto-uses-etags-p): Consult
14161         xref-backend-functions, instead of now-nonexistent
14162         xref-find-function.
14164 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
14166         * lisp/isearch.el (isearch-define-mode-toggle): Advertise binding
14168 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
14170         * lisp/menu-bar.el: Use folding in searches
14172         (nonincremental-search-forward): Use `isearch-search-fun-default'
14173         to determine the search function.
14174         (nonincremental-search-backward)
14175         (nonincremental-repeat-search-forward)
14176         (nonincremental-repeat-search-backward): Use it.
14178 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
14180         * lisp/menu-bar.el (menu-bar-goto-uses-etags-p): Fix a warning
14182 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
14184         * lisp/character-fold.el (character-fold-to-regexp): Be careful
14186         not to return huge regexps.
14188 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
14190         Improve documentation of string-collate-* functions
14192         * doc/lispref/strings.texi (Text Comparison): Improve wording and
14193         indexing of 'string-collate-equalp' and 'string-collate-lessp'.
14195         * etc/NEWS: Move the entry of 'string-collate-equalp' and
14196         'string-collate-lessp' to "Lisp Changes" section and mark it as
14197         documented.
14199 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
14201         Document truncate-string-ellipsis
14203         * doc/lispref/display.texi (Size of Displayed Text): Document
14204         'truncate-string-ellipsis'.
14206         * lisp/international/mule-util.el (truncate-string-ellipsis): Doc fix.
14207         (truncate-string-to-width): Mention in the doc string that the
14208         default for ELLIPSIS comes from 'truncate-string-ellipsis'.
14210         * etc/NEWS: Move the 'truncate-string-ellipsis' entry to the "Lisp
14211         Changes" section.
14213 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
14215         Fix confusion wrt character folding in the Emacs manual
14217         * doc/emacs/search.texi (Nonincremental Search, Regexp Search):
14218         Document that invoking search-forward/backward and
14219         re-search-forward/backward supports only case folding, but not the
14220         rest of the lax-search features.  Reported by Mike Kupfer
14221         <m.kupfer@acm.org>.
14223 2015-11-29  Ken Brown  <kbrown@cornell.edu>
14225         Update mod-test-sum-test
14227         * modules/mod-test/test.el (mod-test-sum-test): Update to
14228         accommodate the lack of dladdr on Cygwin.
14230 2015-11-29  Alan Mackenzie  <acm@muc.de>
14232         Byte compiler: Catch missing argument to `funcall'.  Fixes bug#22051.
14234         * lisp/emacs-lisp/bytecomp.el (byte-compile-funcall): When there's no argument
14235         to `funcall', (i) Output an error message; (ii) Generate code to signal a
14236         `wrong-number-of-arguments' error.
14238 2015-11-29  Martin Rudalics  <rudalics@gmx.at>
14240         * lisp/window.el (split-window): Don't sanitize sizes when SIZE is non-nil.
14242 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
14244         * lisp/character-fold.el (character-fold-to-regexp)
14246         Warn about using long strings.
14248         * test/automated/character-fold-tests.el
14249         (character-fold--test-lax-whitespace)
14250         (character-fold--test-consistency): Reduce string size for tests.
14252 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14254         Document renaming of x-select-enable-* variables
14256         * doc/emacs/killing.texi (Clipboard): Rename
14257         x-select-enable-clipboard to select-enable-clipboard and
14258         x-select-enable-primary to select-enable-primary.  Update index
14259         entries.
14261         * etc/NEWS: Mark entry as documented.
14263 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14265         Document the shorthand hints displayed by M-x
14267         * doc/emacs/m-x.texi (M-x): Document the numeric meaning of
14268         suggest-key-bindings.  Document the shorthand hints for commands
14269         that have no key bindings.  Document that M-x completion ignores
14270         obsolete commands.
14272         * etc/NEWS: Move the M-x entry to "Editing Changes" and mark it as
14273         documented.
14275 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14277         Update docs of character folding
14279         * doc/emacs/search.texi (Lax Search): Update the description of
14280         character folding for the latest changes.
14282 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
14284         * lisp/character-fold.el: Also play nice with case-folding
14286         (character-fold-to-regexp): Take `case-fold-search' into account.
14288 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
14290         * lisp/character-fold.el: Add support for multi-char matches
14292         (character-fold-table): Now has an extra-slot. This is a second
14293         char-table that holds multi-character matches.  See docstring for
14294         details.
14295         (character-fold-to-regexp): Can build branching regexps when a
14296         character's entry the extra slot of `character-fold-table' matches the
14297         characters that succeed it.
14299 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
14301         * lisp/character-fold.el: Code simplifications
14303         (character-fold-table): Reduce the scope of a variable.
14304         (character-fold-to-regexp): Change logic to work directly on the
14305         input string.  It's a little easier to understand, probably
14306         faster, and sets us up for implementing multi-char matches.
14308         * test/automated/character-fold-tests.el
14309         (character-fold--test-fold-to-regexp): New test.
14311 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14313         Document changes in "C-h l"
14315         * doc/emacs/help.texi (Misc Help): Document the changes in "C-h l".
14317         * etc/NEWS: mark "C-h l" changes as documented.
14319 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14321         Finalize documentation of 'custom-prompt-customize-unsaved-options'
14323         * doc/emacs/custom.texi (Saving Customizations): Index the new
14324         function 'custom-prompt-customize-unsaved-options'.
14326         * etc/NEWS: Mention when 'custom-prompt-customize-unsaved-options'
14327         is useful.
14329 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14331         Document 'comment-line'
14333         * doc/emacs/programs.texi (Comment Commands): Document
14334         'comment-line'.
14336         * etc/NEWS: Move the entry for 'comment-line' into "Editing Changes".
14338 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14340         Document new checkdoc features
14342         * doc/lispref/tips.texi (Tips, Library Headers): Document the
14343         keyword-checking features of checkdoc and the commands
14344         'checkdoc-file' and 'checkdoc-current-buffer'.
14346         * etc/NEWS: Move the checkdoc-related entries to their own
14347         section.
14349 2015-11-28  Philipp Stephani  <p.stephani2@gmail.com>
14351         Simplify the prologue of emacs-module.c functions
14353         * src/emacs-module.c (MODULE_FUNCTION_BEGIN): New macro.
14354         (module_make_global_ref)
14355         (module_free_global_ref, module_make_function, module_funcall)
14356         (module_intern, module_type_of, module_extract_integer)
14357         (module_make_integer, module_extract_float, module_make_float)
14358         (module_copy_string_contents, module_make_string)
14359         (module_make_user_ptr, module_get_user_ptr, module_set_user_ptr)
14360         (module_get_user_finalizer, module_set_user_finalizer)
14361         (module_vec_set, module_vec_get, module_vec_size): Use new helper
14362         macro MODULE_FUNCTION_BEGIN.
14364 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14366         Don't reject module calls with no arguments
14368         * src/emacs-module.c (Finternal_module_call): Allow ARGLIST be nil.
14370 2015-11-28  Philipp Stephani  <p.stephani2@gmail.com>
14372         Make module-call be visible from Lisp
14374         * src/emacs-module.c (module_make_function): Use internal--module-call.
14375         (Finternal_module_call): Renamed from Fmodule_call.  Add safety
14376         checks.
14377         (syms_of_module): DEFSYM save-value-p and save-pointer-p.  Do
14378         defsubr internal--module-call.
14380 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14382         Add etags tests for the recent Lua-related bugfix
14384         * test/etags/lua-src/test.lua: New file, tests the issues raised
14385         by bug#21934.
14386         * test/etags/Makefile (LUASRC): Add test.lua.
14387         * test/etags/ETAGS.good_1:
14388         * test/etags/ETAGS.good_2:
14389         * test/etags/ETAGS.good_3:
14390         * test/etags/ETAGS.good_4:
14391         * test/etags/ETAGS.good_5:
14392         * test/etags/ETAGS.good_6:
14393         * test/etags/CTAGS.good: Adapt to the new Lua test.  Also, an old
14394         regression fix, resolved around 25 May 2015, required changes to
14395         the "good" ETAGS files.
14397 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14399         Fix Lua tags when a function name includes '.' or ':'
14401         * lib-src/etags.c (Lua_functions): Add a tag for the last element
14402         of a function name after a dot or a colon.  (Bug#21934)
14404 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14406         Improve documentation of search and replace commands
14408         * doc/emacs/search.texi (Replacement and Lax Matches): Document
14409         which commands are affected by 'replace-character-fold'.
14410         (Lax Search): Add a cross reference to "Replacement and Lax
14411         Matches".  Improve wording.  Fix lost extra whitespace.
14412         (Search Customizations): Improve wording.  (Bug#22036)
14413         See also comments in
14414         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02376.html.
14416         * lisp/replace.el (query-replace, query-replace-regexp)
14417         (query-replace-regexp-eval, replace-string, replace-regexp):
14418         Mention 'replace-character-fold' in the doc strings.
14420 2015-11-28  Paul Eggert  <eggert@cs.ucla.edu>
14422         Fix minor problems found by static checking
14424         * src/undo.c (prepare_record): Add proper prototype for C.
14426 2015-11-27  Stefan Monnier  <monnier@iro.umontreal.ca>
14428         * src/emacs-module.c (struct env_storage): Delete
14430         (struct emacs_runtime_private): Keep an emacs_env instead.
14431         (Fmodule_load, Fmodule_call): Declare emacs_env_private separately.
14432         (initialize_environment): Split the arg in two.  Adjust all callers.
14433         Only store the private part in Vmodule_environments.
14434         (finalize_environment): Change the arg to only be the private env.
14435         Adjust all callers.
14437 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
14439         Improve documentation of 'replace-character-fold'
14441         * lisp/replace.el (replace-character-fold): Clarify which commands
14442         are affected by this variable.
14444 2015-11-27  Mark Oteiza  <mvoteiza@udel.edu>
14446         Backport: Add interactive seek command.
14448         * lisp/mpc.el (mpc-cmd-seekcur): New function.
14449         (mpc-seek-current): New command.
14450         (mpc-mode-menu): Add entry for mpc-seek-current
14451         (mpc-mode-map): Bind mpc-seek-current to "g"
14453 2015-11-27  Dmitry Gutov  <dgutov@yandex.ru>
14455         Autoload etags when using its xref backend
14457         * lisp/progmodes/xref.el (xref--etags-backend):
14458         Rename to etags--xref-backend.  Move to etags.el.  Autoload.
14459         (Bug#22026)
14461 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
14463         * lisp/character-fold.el: Allow complex chars to match their decomposition
14465         (character-fold-table): When a character's decomposition does not
14466         involve a formatting tag (i.e., if it has an "exact" description via
14467         other characters), then this character is allowed to match the
14468         decomposition.
14470 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
14472         * lisp/character-fold.el: More descriptive variable names
14474         (character-fold-table): Rename a lot of the lexical variables to
14475         make the code easier to read.
14477 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
14479         * lisp/isearch.el: Ensure we still support `isearch-new-word'
14481         (isearch-new-regexp-function): Define variable.
14482         (isearch-new-word): Define as an obsolete alias. (Bug#22018)
14484 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
14486         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
14488 2015-11-27  Lee Bochicchio  <lboc.home@gmail.com>
14490         * test/automated/abbrev-tests.el: Define more tests
14492         (abbrev-table-name-test, kill-all-abbrevs-test)
14493         (clear-abbrev-table-test): New tests.
14495 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
14497         Add module tests for wrong-type-argument
14499         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
14500         wrong-type-argument.
14502 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
14504         Improve handling of signals and 'throw' in modules
14506         * src/emacs-module.c: Add commentary explaining how to write
14507         functions in this file.
14508         (module_make_global_ref, module_free_global_ref)
14509         (module_non_local_exit_signal, module_non_local_exit_throw)
14510         (module_make_function, module_funcall, module_intern)
14511         (module_type_of, module_is_not_nil, module_eq)
14512         (module_extract_integer, module_make_integer)
14513         (module_extract_float, module_make_float)
14514         (module_copy_string_contents, module_make_string)
14515         (module_make_user_ptr, module_get_user_ptr, module_set_user_ptr)
14516         (module_get_user_finalizer, module_set_user_finalizer)
14517         (module_vec_set, module_vec_get, module_vec_size)
14518         (module_non_local_exit_signal_1, module_non_local_exit_throw_1):
14519         Do nothing and return with failure indication immediately, if some
14520         previous module call signaled an error or wants to throw.  See
14521         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02133.html
14522         for the relevant discussions.
14524 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
14526         Add ':version' tag to 'checkdoc-package-keywords-flag'
14528         * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag):
14529         Add a ':version' tag.
14531 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
14533         Improve documentation of 'eval-buffer' and 'eval-region'
14535         * src/lread.c (Feval_buffer, Feval_region): Doc fixes.  (Bug#22023)
14537         * doc/lispref/eval.texi (Eval): Mention narrowing to clarify
14538         "accessible portion of buffer".
14540 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
14542         Unbreak the Cygwin w32 build
14544         * src/emacs.c (main): Call w32_init_main_thread in the Cygwin w32
14545         build as well.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
14547 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
14549         Improve commentary in character-fold.el
14551         * lisp/character-fold.el (character-fold-to-regexp): Move detailed
14552         description from commit log message to comments.  (Bug#22019)
14554 2015-11-26  Alan Mackenzie  <acm@muc.de>
14556         Byte Compiler: generate code to adjust stack count after call to `signal'.
14558         Corrects change from earlier today.
14560         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): supply the current value of
14561         `byte-compile--for-effect' as argument to `byte-compile-form'.
14563 2015-11-26  Eli Zaretskii  <eliz@gnu.org>
14565         Improve commentary of prepare_to_modify_buffer_1
14567         * src/insdel.c (prepare_to_modify_buffer_1): Mention in commentary
14568         that this function runs Lisp.  Suggested by Richard Stallman
14569         <rms@gnu.org>.
14571 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
14573         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
14575 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
14577         Fix regression after merge.
14579          * src/undo.c (prepare_record): Remove call to run_undoable_change.
14581 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
14583         After delete, record point location in undo.
14585         Addresses Bug #21968.
14587                 * lisp/simple.el (undo-auto--add-boundary): Clean up code to
14588                 better support intercalating calls.
14589                 * src/keyboard.c, src/keyboard.h (command_loop_1): Store value of
14590                 point and current buffer before each command.
14591                 * src/undo.c (record_point): Now only record the point.
14592                 * src/undo.c (prepare_record): Functionality removed form
14593                 record_point.
14594                 * src/undo.c (record_delete): Check if point needs recording.
14595                 * src/undo.c (undo-boundary): Record value of point before each
14596                 boundary.
14597                 * test/automated/simple-test.el: New tests.
14599         Conflicts:
14600                 src/undo.c
14602 2015-11-26  Eli Zaretskii  <eliz@gnu.org>
14604         Fix compiler warnings in w32.c
14606         * src/w32.c (sys_socket): In case of error, use -1 as return
14607         value, not INVALID_SOCKET, which causes compiler warnings.
14608         (maybe_load_unicows_dll): Cast the return value of GetProcAddress
14609         to the appropriate function signature, to avoid compiler errors.
14610         Reported by Andy Moreton <andrewjmoreton@gmail.com>.  (Bug#21953)
14612 2015-11-26  Dmitry Gutov  <dgutov@yandex.ru>
14614         Check if the file exists on disk before producing the revert diff
14616         * lisp/vc/vc-dispatcher.el (vc-buffer-sync): Check if the file
14617         exists on disk (bug#20558).
14619 2015-11-26  Alan Mackenzie  <acm@muc.de>
14621         Byte compiler: on setq with an odd number of arguments, generate a `signal'
14623         * lisp/emacs-lisp/cconv.el (cconv-convert): Don't transform `setq' form when
14624         it has an odd number of arguments, to allow bytecomp to handle the error.
14626         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): In a `setq' form with an
14627         odd number of arguments, generate a `signal' instead of the normal code.
14629 2015-11-26  Dmitry Gutov  <dgutov@yandex.ru>
14631         Use find-tag-default for xref-backend-identifier-at-point
14633         * lisp/progmodes/etags.el (find-tag-tag)
14634         (tags-completion-at-point-function): Extract common code as
14635         find-tag--default.
14636         (xref-backend-identifier-at-point): Define in terms of the new
14637         function.
14639 2015-11-26  Paul Eggert  <eggert@cs.ucla.edu>
14641         * src/undo.c (record_property_change): Remove now-unused local.
14643 2015-11-25  Phillip Lord  <phillip.lord@russet.org.uk>
14645         run_undoable_changes now called from insdel.
14647         The original calls from inside undo.c are not always at a safe position
14648         to call lisp, as they originate in varied positions within insdel.c.
14649         Calling them directly from prepare_to_modify_buffer_1 ensures that they
14650         are always run at the same point.
14652          * src/undo.c (run_undoable_changes,syms_of_undo): Remove function
14653          and symbol used.
14654          * src/insdel.c (run_undoable_changes): Add function and symbol.
14656 2015-11-25  Eli Zaretskii  <eliz@gnu.org>
14658         Improve and update documentation of search commands
14660         * doc/emacs/search.texi (Lax Search): Renamed from "Search Case";
14661         all references changed.  Move the description of lax-whitespace
14662         here.  Add description of the new character folding features and
14663         additional customizable options.
14664         (Isearch Yank): Move before "Error in Search".
14665         (Basic Isearch): Improve wording.  Add index entries.  Add short
14666         description of how to abandon search, making this subsection a
14667         complete introduction to search basics.
14668         (Repeat Isearch): Add index entries.  Describe additional
14669         customizable options.  Describe mouse clicks.
14670         (Isearch Yank): Add index entries.  Describe mouse-2 click in echo
14671         area.  Describe more customizable options.
14672         (Error in Isearch): Add index entries.
14673         (Special Isearch): Move actual description of some isearch
14674         commands to other sections, leaving here just the summary of the
14675         commands.  Add command that toggles character folding.  Describe
14676         commands, like "C-h C-h", that were previously omitted for some
14677         reason.
14678         (Not Exiting Isearch): Describe search-exit-option.  Add index
14679         entries.
14680         (Word Search): Describe eww-search-word and eww-search-prefix.
14681         (Symbol Search): Add index entries.
14682         (Regexp Search): Describe regexp-search-ring-max.
14683         (Replacement and Lax Matches): Renamed from "Replacement and
14684         Case"; all references changed.  Describe lax-whitespace matching
14685         in replace commands and related options.  Describe character
14686         folding in replace commands and related options.
14687         (Query Replace): Describe query-replace-from-to-separator and the
14688         new history features.  Add index entries for highlighted text.
14689         Describe query-replace-skip-read-only.  Describe more keys
14690         accepted by query-replace.
14691         (Other Repeating Search): More index entries for Occur.  Describe
14692         list-matching-lines-default-context-lines.
14693         (Search Customizations): New section, documents customizable
14694         options that were not documented until now.
14695         * doc/emacs/glossary.texi (Glossary): Add "Case Folding" and
14696         "Character Folding".
14698         * etc/NEWS: Move search- and replace-related entries to a single
14699         parent section.
14701         * lisp/replace.el (query-replace-show-replacement): Doc fix.
14702         * lisp/isearch.el (search-nonincremental-instead)
14703         (isearch-hide-immediately): Doc fixes.
14705 2015-11-25  Katsumi Yamaoka  <yamaoka@jpl.org>
14707         Remove nnml-retrieve-groups that is unnecessary and somewhat problematic
14709         * lisp/gnus/nnml.el (nnml-retrieve-groups): Remove.  See:
14710         <http://thread.gmane.org/gmane.emacs.gnus.general/86308> and
14711         <http://thread.gmane.org/gmane.emacs.gnus.general/86321>
14713 2015-11-25  Paul Eggert  <eggert@cs.ucla.edu>
14715         Fix module_format_fun_env when dynlib_addr fails
14717         * src/emacs-module.c (module_format_fun_env):
14718         exprintf doesn’t support %p, so use %x.  Reported by Eli Zaretskii in:
14719         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02122.html
14721 2015-11-25  Paul Eggert  <eggert@cs.ucla.edu>
14723         Disambiguate variable help a bit better
14725         * lisp/help-fns.el (describe-variable): Quote the
14726         variable’s value if it is a symbol other than t or nil.
14727         See: T.V Raman in:
14728         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02147.html
14730 2015-11-25  Dmitry Gutov  <dgutov@yandex.ru>
14732         Pass SVN commit message through log-edit-extract-headers
14734         * lisp/vc/vc-svn.el (vc-svn-checkin): Pass COMMENT through
14735         log-edit-extract-headers (bug#18954).
14737 2015-11-24  Alan Mackenzie  <acm@muc.de>
14739         CC Mode: Eliminate compiler warning messages.
14741         * lisp/progmodes/cc-mode.el (top level): remove compile time declaration of
14742         `font-lock-syntactic-keywords' (which CC Mode doesn't use).
14743         * lisp/progmodes/cc-awk.el (awk-mode-syntax-table)
14744         (c-awk-set-syntax-table-properties): Clarify comments about
14745         `font-lock-syntactic-keywords'.
14747         * lisp/progmodes/cc-bytecomp.el (cc-bytecomp-load): Create a dummy declaration
14748         of this before the real (interpreted) one, to satisfy the byte compiler.
14750 2015-11-24  Simen Heggestøyl  <simenheg@gmail.com>
14752         Extend the test suite for json.el
14754         * lisp/json.el (json-plist-p): Clarify docstring.
14756         * test/automated/json-tests.el (json-tests--with-temp-buffer): New
14757         macro.
14758         (test-json-join, test-json-alist-p)
14759         (test-json-plist-p, test-json-advance, test-json-peek)
14760         (test-json-pop, test-json-skip-whitespace)
14761         (test-json-read-keyword, test-json-encode-keyword)
14762         (test-json-read-number, test-json-encode-number)
14763         (test-json-read-escaped-char, test-json-read-string)
14764         (test-json-encode-string, test-json-encode-key)
14765         (test-json-new-object, test-json-add-to-object)
14766         (test-json-read-object, test-json-encode-list)
14767         (test-json-read-array, test-json-encode-array)
14768         (test-json-read, test-json-read-from-string)
14769         (test-json-encode): New tests.
14770         (json-read-simple-alist): Merged into `test-json-read-object'.
14771         (json-encode-string-with-special-chars): Merged into
14772         `test-json-encode-string'.
14773         (json-read-string-with-special-chars): Split into
14774         `test-json-encode-string' and `test-json-read-from-string'.
14776 2015-11-24  Anders Lindgren  <andlind@gmail.com>
14778         Fixed bug#18283: Enable applescript in NextStep.
14780         * nextstep/templates/Info.plist.in: Set NSAppleScriptEnabled to YES.
14782 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
14784         Allow completion on dynamic module files in load-library
14786         * lisp/files.el (load-library): Bind completion-ignored-extensions
14787         to nil, to allow completion on dynamic modules typed as file
14788         names.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
14790 2015-11-24  Alan Mackenzie  <acm@muc.de>
14792         CC Mode: eliminate almost all byte compilation warnings
14794         * lisp/progmodes/cc-bytecomp.el (cc-bytecomp-noruntime-functions): Remove.
14795         (cc-require): Remove the crude hack that saved and restored
14796         byte-compile-noruntime-functions.
14797         (cc-conditional-require, cc-conditional-require-after-load): New macros.
14799         * lisp/progmodes/cc-defs.el (top level): Reformulate code which loaded
14800         cc-fix.el using the new macros in cc-bytecomp.el.
14802         * lisp/progmodes/cc-langs.el (c++-template-syntax-table)
14803         (c-no-parens-syntax-table): Add extra "(eval ..)"s around "'(lambda ..)"
14804         forms to remove the superflous quotes.
14806 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
14808         Add one more mod-test test
14810         * modules/mod-test/test.el (mod-test-sum-test): Test the error
14811         signaled when the function is invoked with a wrong number of
14812         arguments.
14814 2015-11-24  Philipp Stephani  <phst@google.com>
14816         * modules/mod-test/mod-test.c (Fmod_test_sum): Verify there are 2 args.
14818 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
14820         Implement dynlib_addr for MS-Windows
14822         * src/dynlib.c [WINDOWSNT]: Include w32common.h.
14823         <g_b_init_get_module_handle_ex> [WINDOWSNT]: New static variable.
14824         (GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS)
14825         (GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT) [WINDOWSNT]: Define
14826         if undefined.
14827         (dynlib_reset_last_error): Reset g_b_init_get_module_handle_ex to
14828         zero.
14829         (dynlib_addr) [WINDOWSNT]: Non-trivial implementation to report
14830         the full file name of the module for a given address.
14832 2015-11-24  Alan Mackenzie  <acm@muc.de>
14834         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
14836 2015-11-24  Alan Mackenzie  <acm@muc.de>
14838         Squashed commit of the following:
14840         commit e1ecf76585bef2eb87995f7a7f92cc12003a6f70
14841         Author: Alan Mackenzie <acm@muc.de>
14842         Date:   Tue Nov 24 16:50:09 2015 +0000
14844             Byte compile: minor amendments.
14846             * lisp/emacs-lisp/bytecomp.el (byte-compile-initial-macro-environment):
14847             add a comment to explain the binding of variables around a subsidiary
14848             compilation.
14849             (byte-compile-new-defuns): Amend the doc string.
14851         commit c537bfed1dda1593d218956ff00c6105a3ff0316
14852         Author: Alan Mackenzie <acm@muc.de>
14853         Date:   Sat Nov 21 18:43:57 2015 +0000
14855             Byte compiler: fix spurious warnings "might not be defined at runtime".
14857             Also initialize byte-compile-noruntime-functions between runs.
14859             * lisp/emacs-lisp/bytecomp.el (byte-compile-new-defuns): New variable.
14860             (byte-compile-initial-macro-environment): For eval-when-compile: bind
14861             byte-compile-unresolved-functions and byte-compile-new-defuns around
14862             byte-compile-top-level, to prevent spurious entries being made.
14863             (byte-compile-warn-about-unresolved-functions): Check whether function is
14864             in byte-compile-new-defuns before emitting a warning about it.
14865             (byte-compile-from-buffer): Initialize new variable and
14866             byte-compile-noruntime-functions to nil.
14867             (byte-compile-file-form-require): record all new functions defined by a
14868             `require' in byte-compile-new-defuns.
14869             (byte-compile-file-form-defmumble): record the new alias in
14870             byte-compile-new-defuns.
14872 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
14874         Fix crash at startup related to GC of font entities
14876         * src/font.h (GC_FONT_SPEC_P, GC_FONT_ENTITY_P)
14877         (GC_FONT_OBJECT_P, GC_XFONT_SPEC, GC_XFONT_ENTITY)
14878         (GC_XFONT_OBJECT): New macros, for use in garbage collector.
14879         * src/alloc.c (compact_font_cache_entry, compact_font_caches):
14880         Don't ifdef away font cache compaction on NT_GUI, as the problems
14881         which led to that seem to have been solved.
14882         (compact_font_cache_entry): Use GC_FONT_SPEC_P, GC_XFONT_SPEC,
14883         GC_XFONT_ENTITY, and GC_XFONT_OBJECT, instead of their non-GC_
14884         cousins.  (Bug#21999)
14886 2015-11-24  Alan Mackenzie  <acm@muc.de>
14888         Byte compile: Output an error, not a warning, for odd number of args to setq
14890         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): Amend.
14892 2015-11-24  Ken Raeburn  <raeburn@raeburn.org>
14894         Fix kbd_buffer iteration loop in readable_events
14896         * src/keyboard.c (readable_events): Wrap the event pointer back to the
14897         start of the kbd_buffer array inside the top of the loop instead of
14898         right before checking the loop condition, since kbd_fetch_ptr and
14899         kbd_store_ptr point past the end of the array to mean that element 0
14900         is next. (bug#21935)
14902 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
14904         Improve text-quoting-style doc again
14906         * doc/lispref/help.texi (Keys in Documentation):
14907         Omit overkill discussion of ‘setq’.  Mention Emacs versions
14908         where ‘grave’ style was standard.
14910 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
14912         Improve text-quoting-style doc
14914 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
14916         Simplify module_make_function
14918         * src/emacs-module.c (module_make_function):
14919         Simplify by calling build_unibyte_string.
14921 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
14923         Port better to FreeBSD’s dlfunc vs dlsym
14925         This avoids warnings when converting between void * and
14926         function pointers, which strict C11 does not allow.
14927         * configure.ac (dlfunc): Check for existence.
14928         * src/dynlib.c (dlfunc) [!HAVE_DLFUNC]: New macro.
14929         (dynlib_func): New function.
14930         * src/dynlib.h (dynlib_function_ptr, dynlib_func): New decls.
14931         * src/emacs-module.c (Fmodule_load): Use dynlib_func, not
14932         dynlib_sym, for function pointers.
14934 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
14936         Simplify use of emacs_finalizer_function type
14938         * src/emacs-module.h (emacs_finalizer_function):
14939         Now EMACS_NOEXCEPT.  All users simplified to omit EMACS_NOEXCEPT.
14940         (struct emacs_env_25): Use emacs_finalizer_function where applicable.
14942 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
14944         module_format_fun_env fixes
14946         * src/doprnt.c (exprintf) [HAVE_MODULES]: Also define in this case.
14947         * src/emacs-module.c (module_format_fun_env):
14948         Convert path and sym to UTF-8.
14949         Don’t use VLAs, as the C11 standard says they’re optional,
14950         and anyway they can cause core dumps with large allocations.
14951         Use exprintf rather than snprintf, as exprintf handles arbitrarily
14952         long strings.  Simplify the code a bit.
14954 2015-11-23  Dmitry Gutov  <dgutov@yandex.ru>
14956         Don't use package-user-dir in elisp-library-roots if it's not bound
14958         * lisp/progmodes/elisp-mode.el (elisp-library-roots): Don't
14959         use package-user-dir if it's not bound (bug#19759).
14961 2015-11-23  Anders Lindgren  <andlind@gmail.com>
14963         New visible-bell for NextStep (OS X El Capitan compatible).
14965         Instead of inverting a rectangle in the middle of the frame, use
14966         the standard NextStep image "caution", represented using an
14967         warning sign with an exclamation mark.  (Bug#21662)
14969         Implemented based on a suggestion drafted by Mustafa Kocaturk.
14971         * src/nsterm.m (EmacsBell): New class for managing the caution
14972         image.  Support multiple active bells, the image is removed once
14973         all bells have timed out.
14974         (ns_timeout): Removed, no longer used.
14975         (ns_ring_bell): Reimplemented to use EmacsBell.
14977 2015-11-23  Johan Bockgård  <bojohan@gnu.org>
14979         * lisp/emacs-lisp/nadvice.el (add-function): Fix debug spec.
14981         (remove-function): Ditto. (Bug#20376)
14983 2015-11-23  Mark Oteiza  <mvoteiza@udel.edu>
14985         * lisp/leim/quail/tamil-dvorak.el: Add necessary escapes.
14987 2015-11-23  Eli Zaretskii  <eliz@gnu.org>
14989         Improve how non-ASCII strings are accepted from modules
14991         * src/emacs-module.c (module_make_function, module_make_string):
14992         Build a unibyte Lisp string and then decode it by UTF-8, instead
14993         of building a multibyte string without decoding.  This is more
14994         tolerant to deviations from UTF-8.
14996 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
14998         Port recent module changes to pickier compilers
15000         * src/emacs-module.c (module_make_function)
15001         (module_make_string): Add casts to fix pointer signedness issues.
15003 2015-11-23  Philipp Stephani  <phst@google.com>
15005         Fix how strings are accepted from modules
15007         * src/emacs-module.c (module_make_function, module_make_string): Use
15008         make_multibyte_string.
15009         (module_copy_string_contents): Encode before reading the byte
15010         size.  Return false if and only if an error occurred.
15012 2015-11-23  Eli Zaretskii  <eliz@gnu.org>
15014         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
15016 2015-11-23  Shakthi Kannan  <shakthimaan@gmail.com>
15018         Add the tamil-dvorak input method
15020         * lisp/leim/quail/tamil-dvorak.el: New file.  (Bug#21768)
15022         * etc/NEWS: Mention the new input method.
15024 2015-11-23  Martin Rudalics  <rudalics@gmx.at>
15026         Move setting FRAME_WINDOW_SIZES_CHANGED to resize_frame_windows.
15028         * src/frame.c (adjust_frame_size): Don't set
15029         FRAME_WINDOW_SIZES_CHANGED here ...
15030         * src/window.c (resize_frame_windows): ... but here, as suggested
15031         by Stefan Monnier.  Also remove some dead code along the way.
15033 2015-11-23  Alan Mackenzie  <acm@muc.de>
15035         * etc/NEWS (Incompatible Lisp Changes): Also `setf' needs an even # of args.
15037 2015-11-23  Alan Mackenzie  <acm@muc.de>
15039         Signal an error when `setf' gets an odd number of arguments.
15041         * lisp/emacs-lisp/gv.el (setf): Amend.
15043 2015-11-23  Stefan Monnier  <monnier@iro.umontreal.ca>
15045         * lisp/emacs-lisp/smie.el (smie-backward-sexp): Handle BOB better.
15047 2015-11-23  Alan Mackenzie  <acm@muc.de>
15049         * etc/NEWS (Incompatible Lisp Changes): Document new restriction on `setq'.
15051 2015-11-23  Alan Mackenzie  <acm@muc.de>
15053         Expunge occurrences of `setq' with an odd number of arguments.
15055         * lisp/apropos.el (apropos-documentation):
15056         * lisp/obsolete/complete.el (PC-include-file-all-completions):
15057         * lisp/progmodes/compile.el (compilation-goto-locus):
15058         * lisp/vc/vc-cvs.el (vc-cvs-parse-root): (twice)
15059         Insert missing nil at end of `setq' forms.
15061         * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-autoload): Remove an
15062         erroneous trailing variable name from a setq, thus allowing a compilation
15063         properly to track functions not defined at runtime.
15065 2015-11-23  John Wiegley  <johnw@newartisans.com>
15067         Add a note about a questionable use of bool in xdisp.c
15069 2015-11-23  Alan Mackenzie  <acm@muc.de>
15071         Issue a warning from the byte compiler on a malformed `setq' form.
15073         Partly fixes bug#20241.
15074         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): Issue a warning when a
15075         `setq' form with an odd number of arguments is compiled.
15077 2015-11-23  Alan Mackenzie  <acm@muc.de>
15079         Don't let cconv_convert insert a nil argument into a `setq' form.
15081         Fixes bug#21983.
15082         * lisp/emacs-lisp/cconv.el (cconv-convert): Don't silently insert a nil last
15083         argument into a `setq' when there're an odd number of args.  This enables the
15084         byte compiler to issue a message in this case.
15086 2015-11-23  Alan Mackenzie  <acm@muc.de>
15088         Signal an error when `setq' has an odd number of arguments.  Fixes bug#20241.
15090         * src/eval.c (Fsetq): Signal an error on an odd number of arguments.
15091         (syms_of_eval): Add a DEFSYM for Qsetq.
15093 2015-11-23  Martin Rudalics  <rudalics@gmx.at>
15095         * doc/lispref/windows.texi (Window Sizes): Fix indices and references.
15097         * src/frame.c (adjust_frame_size): Set FRAME_WINDOW_SIZES_CHANGED (Bug#21975).
15099 2015-11-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
15101         Add EUDC BBDB 3 entry in NEWS
15103         * NEWS: Mention EUDC BBDB backend support for BBDB 3.
15105 2015-11-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
15107         Improve EUDC to BBDB 3 export
15109         * lisp/net/eudc-vars.el (eudc-ldap-bbdb-conversion-alist): Change phone
15110         entry to single item.  Add company conversion.
15111         * lisp/net/eudc-export.el (eudc-bbdbify-company): New function.
15112         (bbdb-parse-phone): Declare function.
15113         (eudc-bbdbify-phone): Add BBDB 3 support.
15114         (Bug#21971)
15116 2015-11-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
15118         Add BBDB 3 support for EUDC export
15120         * lisp/net/eudc.el: Add bbdb-version defvar.
15121         (eudc--using-bbdb-3-or-newer-p): New function.
15122         * lisp/net/eudc-export.el (eudc-create-bbdb-record): Add support for
15123         bbdb-create-internal argument list changes introduced in BBDB 3.
15124         * lisp/net/eudcb-bbdb.el: Remove bbdb-version defvar.
15125         (eudc-bbdb-field): Call eudc--using-bbdb-3-or-newer-p.
15126         (Bug#21971)
15128 2015-11-22  Eli Zaretskii  <eliz@gnu.org>
15130         Allow loading modules by 'load-file'
15132         * src/lread.c (Fload): Call 'unbind_to' with 'Fmodule_load' as the
15133         2nd arg, to avoid the "binding stack not balanced" error.
15134         (syms_of_lread) <module-file-suffix>: New Lisp variable.
15136         * lisp/files.el (module-file-suffix): Declare.
15137         (load-file): Remove 'module-file-suffix' from
15138         'completion-ignored-extensions', to allow completion on modules.
15140         * etc/NEWS: Mention 'module-file-suffix'.
15142 2015-11-22  Eli Zaretskii  <eliz@gnu.org>
15144         Fix unoptimized builds
15146         * src/lisp.h (XTYPE): Move before XSYMBOL, to fix unoptimized
15147         builds.
15149 2015-11-22  Dmitry Gutov  <dgutov@yandex.ru>
15151         Work around the asynchronous-empty-diff problem
15153         * lisp/vc/vc-rcs.el (vc-rcs-diff):
15154         * lisp/vc/vc-mtn.el (vc-mtn-diff):
15155         * lisp/vc/vc-hg.el (vc-hg-diff):
15156         * lisp/vc/vc-git.el (vc-git-diff): Ignore the ASYNC argument,
15157         do a synchronous process call (bug#21969).
15159 2015-11-22  Karl Fogel  <kfogel@red-bean.com>
15161         Finish excising electric indent from `open-line'
15163         * lisp/simple.el (open-line): Remove INTERACTIVE argument.
15165         * test/automated/simple-test.el (open-line-indent, open-line-hook):
15166           Adjust accordingly.
15168         This change finishes what my commit of Thu Nov 19 17:32:37 2015 -0600
15169         (git commit c59353896) started.  It turns out that having INTERACTIVE
15170         cause `post-self-insert-hook' to run (via `newline') meant `open-line'
15171         still had the electric indent behavior, as `post-self-insert-hook'
15172         normally contains `electric-indent-post-self-insert-function' ever
15173         since `electric-indent-mode' has been on by default.  Tracing the code
15174         change in `open-line' is mildly twisty, because Artur Malabarba's
15175         earliest two commits of 24 Oct 2015 first removed the `interactive'
15176         form entirely (git commit 6939896e2) and then restored it with the new
15177         extra "p" already added (git commit bd4f04f86), such that there is no
15178         single-commit diff in which one sees the second "p" appear.  Thus this
15179         change is effectively a reversion of parts of each of those commits.
15181         This could close bug#21884, at least until further discussion.
15183 2015-11-22  Dmitry Gutov  <dgutov@yandex.ru>
15185         Adhere closer to the "implicit tag name" definition
15187         * lisp/progmodes/etags.el (etags-tags-completion-table):
15188         Adhere closer to the "implicit tag name" definition.  Simplify
15189         the regexp.  Search for the explicit tag name first, and when
15190         not found, search locally for the implicit one.  (Bug#21934)
15192 2015-11-22  Stefan Monnier  <monnier@iro.umontreal.ca>
15194         Unrevert most of regexp reentrancy abort patch
15196         The problem was in:
15197           * src/syntax.c (update_syntax_table_forward): Propertize even when truncated
15198         which is hence not unreverted.
15199         The rest is:
15200         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
15201         (UPDATE_SYNTAX_TABLE_FAST): Re-introduce.
15202         All callers in regex.c changed back to the _FAST versions.
15204         * test/automated/message-mode-tests.el: Tweak the test to rely on auto
15205         propertization in backward-sexp.
15207 2015-11-21  Paul Eggert  <eggert@cs.ucla.edu>
15209         Revert regexp reentrancy abort patch
15211         Although the patch does fix Bug#21688 and prevents a core dump,
15212         it also makes the message-mode-propertize test fail; see:
15213         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01667.html
15214         Perhaps someone else can come up with a better fix some day.
15215         * src/syntax.c (update_syntax_table_forward):
15216         Propertize even when truncated.
15217         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
15218         (UPDATE_SYNTAX_TABLE_FAST): Remove.
15219         All callers changed back to the non-_FAST versions.
15221 2015-11-21  Paul Eggert  <eggert@cs.ucla.edu>
15223         Add a few safety checks when ENABLE_CHECKING
15225         This was motivated by the recent addition of module code,
15226         which added some ENABLE_CHECKING-enabled checks that are
15227         useful elsewhere too.
15228         * src/alloc.c (compact_font_cache_entry):
15229         * src/fns.c (sweep_weak_table):
15230         * src/lread.c (oblookup):
15231         Use gc_asize rather than doing it by hand.
15232         * src/emacs-module.c (module_make_global_ref)
15233         (module_free_global_ref, module_vec_size):
15234         Omit assertions that lisp.h now checks.
15235         * src/lisp.h (XFASTINT, ASIZE): In functional implementations,
15236         check that the result is nonnegative.  Use eassume, as this
15237         info can help a bit when optimizing production code.
15238         (XSYMBOL) [!USE_LSB_TAG]: Assert that argument is a symbol,
15239         to be consistent with the USE_LSB_TAG case.
15240         (gc_asize): New function, when ASIZE is needed in the gc.
15241         (gc_aset): Use it.
15242         (HASH_TABLE_P): Move definition up, so that it can be used ...
15243         (XHASH_TABLE): ... here, to assert that the arg is a hash table.
15245 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
15247         Simplify recording of main thread's ID on MS-Windows
15249         * src/w32term.c (w32_initialize):
15250         * src/w32console.c (initialize_w32_display):
15251         * src/w32fns.c (globals_of_w32fns): Don't record the main thread
15252         ID independently for each type of session (GUI, TTY, batch).
15253         * src/w32term.c (w32_init_main_thread): New function, records the
15254         main thread's thread ID.
15255         * src/w32term.h: Add prototype for w32_init_main_thread.
15256         * src/emacs.c (main) [WINDOWSNT]: Call w32_init_main_thread.
15258         * src/emacs-module.c [WINDOWSNT]: Rename main_thread_id to
15259         main_thread, for consistency with other threading libraries.  All
15260         users changed.  Include w32term.h.
15261         (check_main_thread) [WINDOWSNT]: Simplify the test: no need to
15262         make sure the main thread is alive, as we hold a handle on it
15263         opened by w32_init_main_thread.
15264         (module_init) [WINDOWSNT]: Reuse the thread ID recorded by
15265         w32_init_main_thread, instead of calling the requisite APIs once
15266         more.
15268 2015-11-21  Mark Oteiza  <mvoteiza@udel.edu>
15270         Backport: Fix issue where a new tempfile was created every refresh
15272         * lisp/mpc.el (mpc-format): Leave dir as relative path
15274 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
15276         Call 'window-size-change-functions' for mini-windows
15278         * src/window.c (grow_mini_window, shrink_mini_window): Set the
15279         frame's 'window_sizes_changed' flag.
15280         * src/xdisp.c (redisplay_internal): Call the hooks on
15281         'window-size-change-functions' if the call to 'echo_area_display'
15282         sets the frame's 'window_sizes_changed' flag.
15283         (syms_of_xdisp) <window-size-change-functions>:
15284         Update doc string to indicate the mini-window resizes trigger a
15285         call to the hooks, and don't promise that will happen "before
15286         redisplay".  (Bug#19576, Bug#21333)
15288         * doc/lispref/windows.texi (Window Hooks): Update the description
15289         of 'window-size-change-functions'.
15291 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
15293         Improve documentation of dynamic modules
15295         * src/fns.c (Frequire): Doc fix to include the dynamic module
15296         support.
15297         * src/lread.c (Fload, Vload_suffixes): Doc fixes to include the
15298         dynamic module support.
15299         (Fload): Treat the module suffix the same as '*.el' and '*.elc'
15300         wrt the MUST-SUFFIX argument.
15302         * etc/NEWS: Expand documentation of dynamically loaded modules.
15304 2015-11-21  Philipp Stephani  <phst@google.com>  (tiny change)
15306         Initial documentation for dynamic modules
15308         * etc/NEWS: Mention the new support for dynamically loaded modules.
15310 2015-11-21  Dmitry Gutov  <dgutov@yandex.ru>
15312         Add xref--etags-backend to xref-backing-functions using add-hook
15314         * lisp/progmodes/xref.el (xref-backend-functions): Move the
15315         default value into a separate `add-hook' call (bug#21964).
15317         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
15318         Don't declare the xref-backend-functions variable.
15319         It doesn't make any difference.
15321 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15323         Fix double-decrement bug when freeing global refs
15325         * src/emacs-module.c (module_free_global_ref): Add a FIXME
15326         comment about error reporting.  Fix a recently-introduced typo
15327         that double-decremented the refcount.
15329 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15331         Declare emacs_module_init in the module API
15333         * src/emacs-module.h (emacs_module_init): New decl.
15334         Without it, GCC might complain about a module that defines
15335         emacs_module_init without using it.  This also checks the
15336         API better.
15338 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15340         Fix module test to use ptrdiff_t nargs too
15342         * modules/mod-test/mod-test.c (Fmod_test_return_t)
15343         (Fmod_test_sum, Fmod_test_signal, Fmod_test_throw)
15344         (Fmod_test_non_local_exit_funcall, Fmod_test_globref_make)
15345         (Fmod_test_string_a_to_b, Fmod_test_userptr_make)
15346         (Fmod_test_userptr_get, Fmod_test_vector_fill)
15347         (Fmod_test_vector_eq): Arg counts are ptrdiff_t, not int.
15348         (finalizer): Remove; no longer used.
15350 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15352         Fix reindent-introduced typo in module code
15354         * src/emacs-module.c (MODULE_SETJMP_1): Fix typo that I
15355         introduced while reindenting the code earlier, and add a
15356         comment explaining the unusual use of do-while here.
15358 2015-11-20  Anders Lindgren  <andlind@gmail.com>
15360         Fixed bug#19576: `write-file' saves wrong buffer.
15362         If a function on the hook `window-size-change-functions' doesn't
15363         restore the current buffer, functions that save and restore the
15364         current window configuration (like `y-or-no-p') could silently
15365         change the current buffer.  When `write-file' asked the user
15366         confirmation to overwrite a file, `y-or-no-p' changed the current
15367         buffer, and the wrong buffer was saved to the file.
15369         * lisp/follow.el (follow-windows-start-end): Call `select-frame'
15370         using the `norecord' parameter.
15371         (follow-window-size-change): Restore current buffer. Call
15372         `select-frame' using the `norecord' parameter. Cleanup.
15374 2015-11-20  John Wiegley  <johnw@newartisans.com>
15376         Correct a documentation error in frames.texi
15378 2015-11-20  Stephen Leake  <stephen_leake@stephe-leake.org>
15380         * lisp/cedet/mode-local.el: Delete obsolete comment
15382 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15384         Module function arg counts are ptrdiff_t, not int
15386         * src/emacs-module.c (struct module_fun_env)
15387         (module_make_function, module_funcall, Fmodule_call):
15388         * src/emacs-module.h (struct emacs_runtime, struct emacs_env_25):
15389         Use ptrdiff_t, not int, for arg counts.
15390         * src/emacs-module.c (module_make_function): Don’t bother
15391         checking arity against MOST_POSITIVE_FIXNUM, as that’s
15392         unnecessary here.  Make the checking clearer by negating it.
15393         (module_make_function, Fmodule_call): No need to use xzalloc
15394         since the storage doesn’t need to be cleared.
15395         (module_funcall): Don’t use VLA, since C11 doesn’t guarantee support
15396         for it, and many implementations are buggy with large VLAs anyway.
15397         Use SAFE_ALLOCA_LISP instead.
15398         (module_vec_set): Don’t crash if i < 0.
15399         (module_vec_get): Don’t crash if i < MOST_NEGATIVE_FIXNUM.
15400         (module_vec_set, module_vec_get): Do fixnum checks only when
15401         i is out of array bounds, for efficiency in the usual case.
15402         (Fmodule_load): Simplify fixnum range check.
15403         (Fmodule_call): Simplify arity check.  Use xnmalloc to detect
15404         integer overflow in array allocation size.
15406 2015-11-20  Eli Zaretskii  <eliz@gnu.org>
15408         Minor improvements in module test
15410         * modules/mod-test/mod-test.c: Include stdlib.h, to avoid warnings
15411         about missing prototype of malloc.
15412         * modules/mod-test/Makefile (CFLAGS): Add -std=gnu99, to avoid
15413         compiler warnings.
15415 2015-11-20  Eli Zaretskii  <eliz@gnu.org>
15417         Improve MS-Windows implementation in dynlib.c
15419         * src/dynlib.c [WINDOWSNT]: Include errno.h, lisp.h, and w32.h.
15420         No need to include windows.h, as w32.h already does that.
15421         <dynlib_last_err>: New static variable.
15422         (dynlib_reset_last_error): New function.
15423         (dynlib_open): Convert forward slashes to backslashes.  Convert
15424         file names from UTF-8 to either UTF-16 or the current ANSI
15425         codepage, and call either LoadLibraryW or LoadLibraryA.  If the
15426         argument is NULL, return a handle to the main module, like
15427         'dlopen' does.  Record the error, if any, for use by dynlib_error.
15428         (dynlib_sym): Check the handle for validity. Record the error, if
15429         any, for use by dynlib_error.
15430         (dynlib_error): Call w32_strerror to produce the error string, and
15431         zero out the last error code, like dlerror does.
15432         (dynlib_close): Check the handle for validity.  Record the error,
15433         if any, for use by dynlib_error.  Don't call FreeLibrary with a
15434         handle for the main module.
15435         * src/w32.c (globals_of_w32): Call dynlib_reset_last_error.
15437 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15439         Include-file tweaks for modules
15441         * src/dynlib.c, src/emacs-module.c: Include <config.h> first.
15442         * src/dynlib.h: Do not include config.h.
15443         It’s every .c file’s responsibility to include config.h first.
15444         * src/emacs-module.c: Include emacs-module.h immediately after
15445         config.h, to test that emacs-module.h doesn’t depend on
15446         include files other than config.h.
15448 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15450         Simplify push_handler and profile its malloc
15452         * src/lisp.h (PUSH_HANDLER): Remove.
15453         All callers changed to use push_handler directly.
15454         * src/eval.c (internal_condition_case)
15455         (internal_condition_case_1, internal_condition_case_2)
15456         (internal_condition_case_n):
15457         Use same pattern as for other invokers of push_handler.
15458         (push_handler, push_handler_nosignal): Use call-by-value
15459         instead of call-by-reference.  All uses changed.
15460         (push_handler): Simplify by rewriting in terms of
15461         push_handler_nosignal.
15462         (push_handler_nosignal): Profile any newly allocated memory.
15464 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15466         * src/emacs-module.h: Include stddef.h, not stdlib.h.
15468 2015-11-20  Juanma Barranquero  <lekktu@gmail.com>
15470         Discover repository version in linked worktrees (bug#21930)
15472         * lisp/version.el (emacs-repository--version-git-1): Do not assume
15473         HEAD is at .git/HEAD, it can also be at .git/worktrees/<branch>/HEAD.
15474         (emacs-repository-get-version): Grok linked worktrees when EXTERNAL
15475         is nil too.
15477 2015-11-20  Juri Linkov  <juri@linkov.net>
15479         * lisp/replace.el (occur-regexp-descr): New function.
15480         (occur-1, occur-engine): Use it.
15482         * lisp/isearch.el (isearch-occur): Propertize regexp with
15483         isearch-string and isearch-regexp-function-descr for
15484         occur-regexp-descr to display the correct description
15485         message in the header (bug#21176, bug#21180).
15487 2015-11-20  Karl Fogel  <kfogel@red-bean.com>
15489         Revert `open-line' electric-indent sensitivity
15491         * lisp/simple.el (open-line): Remove electric indent code.
15492           (electric-indent-just-newline): Don't declare.
15494         * test/automated/simple-test.el (open-line-indent): Adjust test.
15496         This partly reverts Artur Malabarba's change that added electric
15497         indent sensitivity to `open-line' (Oct 24 22:26:27 2015 +0100, git
15498         commit bd4f04f86), and adjusts a new test he added right afterwards
15499         (Sat Oct 24 23:43:06 2015 +0100, git commit 207f235e3) accordingly.
15500         However, the new INTERACTIVE argument to `open-line', which he also
15501         added in the first commit, is not reverted here.
15503         See the thread "Questioning the new behavior of `open-line'." on the
15504         Emacs Devel mailing list, and in particular this message:
15506           From: Artur Malabarba
15507           Subject: Re: Questioning the new behavior of `open-line'.
15508           To: Karl Fogel
15509           Cc: David Kastrup, Pierpaolo Bernardi, emacs-devel
15510           Date: Wed, 18 Nov 2015 21:03:58 +0000
15511           Message-ID: \
15512             <CAAdUY-KN06pvCMy5bt3+Buk3yeKjf6n9iB2FaSTTOPpCqPwyhA@mail.gmail.com>
15514           https://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01707.html
15516 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15518         Omit unnecessary clear in Fmodule_load
15520         * src/emacs-module.c (Fmodule_load):
15521         Simplify and avoid unnecessary initialization of priv member to 0.
15523         * src/emacs-module.c: (module_vec_set, module_vec_get, module_vec_size)
15525 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15527         Prefer signed integer types in module code
15529         Generally speaking, at the C level the Emacs source code prefers
15530         signed types like ‘ptrdiff_t’ to unsigned types like ‘size_t’,
15531         partly to avoid the usual signedness confusion when comparing values.
15532         Change the module API to follow this convention.
15533         Use ‘int’ for small values that can’t exceed INT_MAX.
15534         * modules/mod-test/mod-test.c (Fmod_test_globref_make)
15535         (Fmod_test_string_a_to_b, Fmod_test_vector_fill)
15536         (Fmod_test_vector_eq):
15537         * src/emacs-module.c (struct emacs_value_frame)
15538         (module_make_global_ref, module_free_global_ref)
15539         (module_copy_string_contents, module_make_string)
15540         (module_vec_set, module_vec_get, module_vec_size):
15541         * src/emacs-module.h (struct emacs_runtime, struct emacs_env_25):
15542         * src/lread.c (suffix_p):
15543         Prefer signed to unsigned integer types.
15545 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
15547         Omit ‘const’ on locals
15549         Remove ‘const’ qualifier from locals that were newly added.
15550         We don’t normally bother declaring locals with ‘const’ even
15551         though they are not modified, for the same reason we don’t
15552         bother declaring them with ‘register’ even though their
15553         addresses are not taken; the advantage in compile-time
15554         checking isn’t worth the loss of readability.
15555         * modules/mod-test/mod-test.c (Fmod_test_non_local_exit_funcall)
15556         (Fmod_test_vector_fill, Fmod_test_vector_eq):
15557         * src/emacs-module.c (MODULE_SETJMP_1)
15558         (module_make_global_ref, module_free_global_ref)
15559         (module_non_local_exit_get, module_make_function)
15560         (module_extract_integer, module_extract_float)
15561         (module_get_user_ptr, module_set_user_ptr)
15562         (module_get_user_finalizer, module_set_user_finalizer)
15563         (module_vec_get, Fmodule_call)
15564         (module_non_local_exit_signal_1)
15565         (module_non_local_exit_throw_1, lisp_to_value)
15566         (finalize_storage, allocate_emacs_value, mark_modules)
15567         (module_handle_signal, module_handle_throw)
15568         (module_format_fun_env):
15569         * src/eval.c (push_handler, push_handler_nosignal)
15570         (init_handler):
15571         * src/lread.c (suffix_p):
15572         Omit unnecessary ‘const’.
15574 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
15576         Prefer intmax_t to int64_t in module code
15578         * modules/mod-test/mod-test.c (sum, Fmod_test_sum):
15579         * src/emacs-module.c (module_extract_integer)
15580         (module_make_integer):
15581         * src/emacs-module.h (struct emacs_env_25):
15582         Prefer intmax_t to int64_t.  This doesn’t change the generated
15583         code on any of the machines Emacs currently ports to, but it’s
15584         at least in theory more future-proof as C99 doesn’t guarantee
15585         that int64_t exists.
15587 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
15589         Rename module.c to emacs-module.c, etc.
15591         * src/emacs-module.c: Rename from src/module.c.
15592         * src/emacs-module.h: Rename from src/module.h.
15593         All uses changed.
15595 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
15597         Fix minor module problems found by static checking
15599         * src/dynlib.c (dynlib_close): #ifdef out for now, as it’s not used.
15600         * src/eval.c, src/lisp.h (lisp_eval_depth): Now static.
15601         * src/emacs-module.c (Fmodule_load): Fix pointer signedness bug.
15602         (Fmodule_call): Tell GCC that the default case is unreachable.
15604 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
15606         Style fixes for indenting etc. in module code
15608         This is mostly indenting and spacing changes.  Also, remove
15609         some unnecessary static decls instead of bothering to reindent them.
15610         * src/emacs-module.h (EMACS_EXTERN_C_BEGIN): Remove, and do this inline,
15611         as most other Emacs files do for this sort of thing.
15613 2015-11-19  Eli Zaretskii  <eliz@gnu.org>
15615         Minor improvements in modules testing Makefile
15617         * modules/mod-test/Makefile (EMACS, SO): New variables.
15618         (CFLAGS): When SO = dll, don't use -fPIC.
15619         (check): New target, runs the test.
15621 2015-11-19  Eli Zaretskii  <eliz@gnu.org>
15623         * .gitignore: Add "*.dll".
15625 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
15627         Migrate modules/.gitignore into .gitignore
15629         * .gitignore: Add former contents of modules/.gitignore.
15630         * modules/.gitignore: Remove.
15632 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
15634         Add copyright notices to module code
15636         Put them in the usual format for GNU Emacs copyright notices.
15638 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
15640         Rename emacs_module.h to module.h
15642         * src/module.h: Rename from src/emacs_module.h.
15643         All uses changed.
15645 2015-11-19  Juanma Barranquero  <lekktu@gmail.com>
15647         * src/module.c (Fmodule_load): Remove unused vars `doc_name', `args'
15649         * src/lread.c (Fload): Remove unused variable `size'
15651 2015-11-19  Alan Mackenzie  <acm@muc.de>
15653         src/keyboard.c (pre-command-hook): Fix typo in doc string: "pre" -> "post".
15655 2015-11-19  Dmitry Gutov  <dgutov@yandex.ru>
15657         Prioritize looking inside vc-parent-buffer over log-view-mode fallback
15659         * lisp/vc/vc.el (vc-deduce-fileset): Prioritize looking inside
15660         vc-parent-buffer over log-view-mode fallback (bug#21955).
15662 2015-11-18  Alan Mackenzie  <acm@muc.de>
15664         lisp/isearch.el: Eliminate macro isearch-call-message, replacing with funcall.
15666 2015-11-18  Ken Brown  <kbrown@cornell.edu>
15668         * configure.ac (LIBMODULES): Don’t define on Cygwin
15670 2015-11-18  Eli Zaretskii  <eliz@gnu.org>
15672         Fix MS-Windows build --with-modules
15674         * src/module.c: Reformat copyright commentary.
15675         (module_vec_get): Use explicit cast to size_t to avoid compiler
15676         warning in 32-bit builds.
15677         (check_main_thread) [WINDOWSNT]: Fix letter-case in Windows APIs.
15678         Compare thread IDs directly, as GetThreadId is not available
15679         before Windows Vista.
15680         (check_main_thread) [WINDOWSNT]: Duplicate the thread handle
15681         without using APIs and constants not available on XP and older
15682         systems.  Obtain and store the thread ID as well.
15684 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
15685             Philipp Stephani  <phst@google.com>
15687         Add dynamic module test and helper script
15689         Add 'modhelp.py' script (python2) to automate module testing and
15690         module generation.
15692         To build and test all modules in the modules/ dir
15693           $ ./modhelp.py test
15695         To generate a module from template code (good starting point)
15696           $ ./modhelp init mynewtestmodule
15698         See the script -h option for more documentation.
15700         * modules/modhelp.py: New module helper script.
15701         * modules/mod-test/Makefile: New file. Makefile for the test module.
15702         * modules/mod-test/mod-test.c: New file. Test module source file.
15703         * modules/mod-test/test.el: New file. ert test suite for the test module.
15704         * modules/.gitignore: New file. Local .gitignore file.
15706 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
15708         Make 'Fload' look for modules
15710         'Fload' can now load dynamic modules. This also makes 'require' work.
15712         * src/lread.c:
15713           (suffix_p): New function.
15714           (Fload): Use 'suffix_p'.  Call 'Fmodule_load' when we try to load a file
15715           with a module suffix.
15716           (syms_of_lread): Append module suffix to 'Vload_suffixes'.
15718 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
15719             Philipp Stephani  <phst@google.com>
15721         Add dynamic module module support
15723         * configure.ac: Add '--with-modules' option.  Conditionally add
15724           dynlib.o and module.o to the list of objects.  Add any system
15725           specific flags to the linker flags to support dynamic libraries.
15726         * m4/ax_gcc_var_attribute.m4: Add autoconf extension to test gcc
15727           attributes.
15728         * src/Makefile.in: Conditionally add module objects and linker flags.
15729         * src/alloc.c (garbage_collect_1): protect module local values from
15730           GC.
15731         * src/lisp.h: Add 'module_init' and 'syms_of_module' prototypes.
15732         * src/emacs-module.h: New header file included by modules.  Public
15733           module API.
15734         * src/emacs-module.c: New module implementation file.
15736 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
15738         Add new User Pointer (User_Ptr) type
15740         * src/lisp.h: Add new Lisp_Misc_User_Ptr type.
15741         (XUSER_PTR): New User_Ptr accessor.
15742         * src/alloc.c (make_user_ptr): New function.
15743         (mark_object, sweep_misc): Handle Lisp_Misc_User_Ptr.
15744         * src/data.c (Ftype_of): Return 'user-ptr' for user pointer.
15745         (Fuser-ptrp): New user pointer type predicate function.
15746         (syms_of_data): New 'user-ptrp', 'user-ptr' symbol.  New 'user-ptrp'
15747         subr.
15748         * src/print.c (print_object): Add printer for User_Ptr type.
15750 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
15751             Philipp Stephani  <phst@google.com>
15753         Add portable layer for dynamic loading
15755         * src/dynlib.h: New file.
15756         * src/dynlib.c: New file.
15758 2015-11-18  Philipp Stephani  <phst@google.com>
15760         Add catch-all & no-signal version of PUSH_HANDLER
15762         Ground work for modules. Add a non-signaling version of PUSH_HANDLER and
15763         a new "catch-all" handler type.
15765         * src/eval.c (init_handler, push_handler, push_handler_nosignal): New
15766           functions.
15767         * src/fns.c (hash_remove_from_table): Expose function public.
15768         * src/lisp.h: New handler type, define macro to push_handler call.
15770 2015-11-18  Ken Brown  <kbrown@cornell.edu>
15772         Silence byte-compiler warning
15774         * lisp/server.el (server-process-filter): Silence byte-compiler
15775         warning.
15777 2015-11-18  Paul Eggert  <eggert@cs.ucla.edu>
15779         Quote symbols in docstrings using `'
15781         Be more systematic about quoting symbols `like-this' rather than
15782         `like-this or 'like-this' in docstrings.  This follows up Artur
15783         Malabarba's email in:
15784         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01647.html
15786 2015-11-18  Peder O. Klingenberg  <peder@klingenberg.no>
15788         Fix savegames in dunnet
15790         * lisp/play/dunnet.el (dun-rot13): Use the standard rot13-region instead
15791           of separate implementation.
15793 2015-11-18  Artur Malabarba  <bruce.connor.am@gmail.com>
15795         * lisp/emacs-lisp/package.el (package--with-response-buffer):
15797         Ensure we're at the start of the buffer before searching for
15798         the end of headers.
15800 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
15802         * admin/release-process: Improve wording.
15804 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
15806         Backport: * CONTRIBUTE: Remove information about feature freeze.
15808         (cherry picked from commit ae0653b5ab9ee223751ec389b87011963e1cbbef)
15810 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
15812         Backport: Document the release process
15814         * admin/notes/versioning: Add information about RC releases.
15815         * admin/release-process: Document the release process.
15816         * admin/authors.el (authors-ignored-files):
15817         * admin/README: Change FOR-RELEASE to release-process.
15818         * CONTRIBUTE:
15819         * admin/notes/bugtracker: Don't mention FOR-RELEASE.
15821         (cherry picked from commit 9a4aa0f5945a03611ae29c516025dbd353bd26ab)
15823 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
15825         Backport: * admin/release-process: Rename from admin/FOR-RELEASE.
15827         (cherry picked from commit f8cc14b59700e51a4e31139c0a65c8154995e055)
15829 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
15831         Backport: Mention CONTRIBUTE in README
15833         Mention CONTRIBUTE in README, since it was moved from etc/ to root.
15834         * etc/TODO: Remove the reference to `etc/CONTRIBUTE'.
15835         * README: Mention CONTRIBUTE.
15837         (cherry picked from commit ed2e7e20ae0945288c98091f308f5460c3453873)
15839 2015-11-18  Paul Eggert  <eggert@cs.ucla.edu>
15841         Fix docstring quoting problems with ‘ '’
15843         Problem reported by Artur Malabarba in:
15844         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01513.html
15845         Most of these fixes are to documentation; many involve fixing
15846         longstanding quoting glitches that are independent of the
15847         recent substitute-command-keys changes.  The changes to code are:
15848         * lisp/cedet/mode-local.el (mode-local-augment-function-help)
15849         (describe-mode-local-overload):
15850         Substitute docstrings before displaying them.
15851         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
15852         Quote the generated docstring for later substitution.
15854 2015-11-17  Eli Zaretskii  <eliz@gnu.org>
15856         Improve configure --help text for wide ints
15858         * configure.ac (wide-int): Clarify user-level advantages and
15859         disadvantages.
15861 2015-11-17  Stephen Leake  <stephen_leake@stephe-leake.org>
15863         Improve doc string
15865         * lisp/progmodes/xref.el (xref-backend-references): Improve doc string.
15867 2015-11-17  Paul Eggert  <eggert@cs.ucla.edu>
15869         eval_sub followed dangling pointer when debugging
15871         Problem reported by Pip Cet (Bug#21245).
15872         This bug could occur in eval_sub if the C compiler reused
15873         storage associated with the ‘argvals’ local after ‘argvals’
15874         went out of scope, and if the Elisp debugger stopped on Elisp
15875         function exit and accessed ‘argvals’.  It could also occur if
15876         a variadic function was called with so many arguments (over
15877         2048 args on x86-64) that SAFE_ALLOCA_LISP called malloc, then
15878         SAFE_FREE freed the arguments, then the memory manager used
15879         the storage for other purposes, then the debugger accessed the
15880         arguments.
15881         * src/eval.c (eval_sub): Declare ‘argvals’ at top level of
15882         function body.  Simplify local decls.
15883         When allocating args via SAFE_ALLOCA, call
15884         debugger before invoking SAFE_FREE, as the debugger needs
15885         access to the args.
15886         (eval_sub, apply_lambda): Rework to avoid need for
15887         set_backtrace_debug_on_exit hack.  This is cleaner,
15888         and should work better with buggy custom debuggers.
15890 2015-11-17  Daiki Ueno  <ueno@gnu.org>
15892         * lisp/image-mode.el: Support encrypted file
15894         (image-toggle-display-image): Read content from the buffer instead
15895         of the file, if the buffer holds a decrypted data.  (Bug#21870)
15897 2015-11-17  Paul Eggert  <eggert@cs.ucla.edu>
15899         ELF unexec: align section header
15901         This ports the recent unexelf.c changes to Fedora x86-64
15902         when configured with GCC’s -fsanitize=undefined option.
15903         * src/unexelf.c (unexec): Align new_data2_size to a multiple
15904         of ElfW (Shdr)’s alignment, so that NEW_SECTION_H returns a
15905         pointer aligned appropriately for its type.
15907 2015-11-17  Andreas Schwab  <schwab@linux-m68k.org>
15909         Do more checks on bytecode objects (Bug#21929)
15911         * src/eval.c (funcall_lambda): Check size of compiled function
15912         object.
15913         (Ffetch_bytecode): Likewise.
15915 2015-11-16  Johan Bockgård  <bojohan@gnu.org>
15917         pcase.el: Fix edebugging of backquoted cons patterns
15919         * lisp/emacs-lisp/pcase.el (pcase-QPAT): Fix edebugging of backquoted
15920         cons patterns. (Bug#21920)
15922 2015-11-16  Paul Eggert  <eggert@cs.ucla.edu>
15924         Improve fix for regex reentrancy abort
15926         Suggested by Stefan Monnier (Bug#21688).
15927         * src/syntax.c (update_syntax_table_forward):
15928         Remove recently-added PROPERTIZE arg, and assume it is true.
15929         All callers changed.
15930         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
15931         Invoke update_syntax_table directly.
15933 2015-11-16  Artur Malabarba  <bruce.connor.am@gmail.com>
15935         * lisp/faces.el (faces--attribute-at-point): Use `face-list-p'
15937         * lisp/emacs-lisp/package.el (package--with-response-buffer): Missing require
15939         * lisp/emacs-lisp/nadvice.el (add-function): Escape quote
15941 2015-11-16  Vasily Korytov  <vasily.korytov@yahoo.com>
15943         Recognize .rbw and .pyw files (bug#18753)
15945         * lisp/progmodes/python.el (auto-mode-alist):
15946         Recognize .pyw files.
15948         * lisp/progmodes/ruby-mode.el (auto-mode-alist):
15949         Recognize .rbw files.
15951 2015-11-16  Dmitry Gutov  <dgutov@yandex.ru>
15953         Fix ruby-mode auto-mode-alist entry
15955         * lisp/progmodes/ruby-mode.el (auto-mode-alist): Add grouping
15956         around the extensions (bug#21257).
15958 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
15960         Fix etags completion near eob
15962         * lisp/progmodes/etags.el (tags-completion-at-point-function):
15963         Use `goto-char', to avoid the end-of-buffer error (bug#20061).
15965 2015-11-15  Alan Mackenzie  <acm@muc.de>
15967         De-pessimize detection of C++ member initialization lists.
15969         list/progmodes/cc-engine.el (c-back-over-list-of-member-inits): New macro.
15970         (c-back-over-member-initializers): Reformulate such that c-at-toplevel-p
15971         is only called when a construct "looks right" rather than continually.
15972         (c-guess-basic-syntax, CASE 5R): Add a check for the mode being C++ Mode.
15974 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
15976         Backport: * lisp/emacs-lisp/package.el: Fix a decoding issue.
15978         * lisp/url/url-handlers.el (url-insert-file-contents): Move some code to
15979         `url-insert-buffer-contents'.
15980         (url-insert-buffer-contents): New function
15982         (package--with-response-buffer): Use `url-insert-buffer-contents'.
15983         The previous code had some issues with decoding. Refactoring that
15984         function allows us to use the decoding from url-handlers while still
15985         treating both sync and async requests the same.
15987 2015-11-15  Stephen Leake  <stephen_leake@stephe-leake.org>
15989         Improve a few doc strings, comments
15991         * lisp/cedet/cedet-global.el (cedet-gnu-global-expand-filename):
15992         * lisp/cedet/ede/locate.el (ede-locate-base):
15993         * lisp/cedet/semantic/symref.el (semantic-symref-calculate-rootdir):
15994         * src/fns.c (Fdelq): Improve doc string.
15996         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions): Add FIXME.
15998 2015-11-15  Anders Lindgren  <andlind@gmail.com>
16000         Enhance NSTRACE (trace output for NextStep).
16002         Trace can be disabled for groups of functions. By default, event
16003         functions and functions that generate lots of output are disabled.
16005         Trace output of Objective-C functions now use the "[ClassName
16006         parameter:]" form.
16008         * src/nsterm.h (NSTRACE_ALL_GROUPS, NSTRACE_GROUP_EVENTS)
16009         (NSTRACE_GROUP_UPDATES, NSTRACE_GROUP_FRINGE, NSTRACE_GROUP_COLOR)
16010         (NSTRACE_GROUP_GLYPHS, NSTRACE_GROUP_FOCUS): New macros,
16011         controlling in which function groups trace should be active.
16012         (NSTRACE_WHEN): Support for silencing a function, this also
16013         silencing all called functions.
16014         (NSTRACE_UNSILENCE): New macro, used to re-enable trace.
16015         (NSTRACE_FMT_FSTYPE, NSTRACE_ARG_FSTYPE): New macros, used to
16016         print the full screen state in NSTRACE functions.
16018         * src/nsterm.m (nstrace_depth, nstrace_num): Made volatile as they
16019         can be accessed from multiple threads.
16020         (nstrace_enabled_global): New variable, when FALSE, trace is
16021         silenced.
16022         (nstrace_restore_global_trace_state): New function, used to
16023         restore `nstrace_enabled_global' at end of block.
16024         ([EmacsView setFrame:], [EmacsWindow setFrame:display:])
16025         ([EmacsWindow setFrame:display:animation:])
16026         ([EmacsWindow setFrameTopLeftPoint:]): New functions, print trace
16027         and call corresponding super function.
16028         (Many functions): Add or enhance trace output.
16030         * src/nsimage.m (ns_image_from_file): Enhanced trace output.
16032         * src/nsfns.m (x_set_tool_bar_lines): Add trace output.
16034         * src/nsmenu.m ([EmacsToolbar setVisible:]): New function, print trace
16035         and call corresponding super function.
16037 2015-11-15  Anders Lindgren  <andlind@gmail.com>
16039         Fixed a toolbar related issue on OS X.
16041         Earlier, when toggling the tool-bar in a maximized frame, the
16042         frame size didn't match the number of text lines, leaving an
16043         unused area at the bottom of the frame.
16045         * src/nsfns.m (x_set_tool_bar_lines): Exit maximized and full height
16046         fullscreen modes when tool bar is disabled.
16048 2015-11-15  Anders Lindgren  <andlind@gmail.com>
16050         Fixed OS X 10.6.8 build issue (bug#21862).
16052         * src/nsterm.h (EmacsView): Add missing declarations.
16053         * src/nsterm.m ([EmacsView windowDidBecomeKey]): New method, like
16054         the standard method but without the notification parameter.
16055         Intended to be used for direct calls.
16056         ([EmacsView windowDidEnterFullScreen]): Call the non-notification
16057         version of `windowDidBecomeKey'. Made the notification method call
16058         the non-notification method instead of the vice versa.
16059         (NSWindowDidEnterFullScreenNotification): Deleted, no longer
16060         needed.
16062 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
16064         * lisp/faces.el (faces--attribute-at-point): Fix an issue
16066         Previous code would signal an error when the face at point was
16067         a manually built list of attributes such as '(:foregroud "white").
16069         * test/automated/faces-tests.el (faces--test-color-at-point): Add a test
16071 2015-11-15  Paul Eggert  <eggert@cs.ucla.edu>
16073         Fix regex abort when it tries to reenter itself
16075         Problem reported by Ken Raeburn.
16076         Solution suggested by Stefan Monnier (Bug#21688).
16077         * src/regex.c (re_match_2_internal):
16078         Use new _FAST functions to avoid regex code reentering itself.
16079         * src/syntax.c (update_syntax_table_forward): New arg PROPERTIZE.
16080         All callers changed.
16081         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST)
16082         (UPDATE_SYNTAX_TABLE_FAST): New inline functions.
16084 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
16086         Improve Ruby 1.9-style keyword keys highlighting
16088         * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords):
16089         Handle required keyword arguments (bug#21367).
16090         And highlight the colon together with the name.
16092 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
16094         Unify the absolutely equal xref-backend-references implementations
16096         * lisp/progmodes/elisp-mode.el (xref-backend-references):
16097         Remove.
16099         * lisp/progmodes/etags.el (xref-backend-references):
16100         Remove.
16102         * lisp/progmodes/xref.el (xref-backend-references):
16103         Define the default implementation.
16105 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
16107         Update project-find-regexp for the new xref API
16109         * lisp/progmodes/project.el (project--read-regexp):
16110         Update to use the new xref API methods.
16112         * lisp/progmodes/xref.el (xref-find-backend): Autoload.
16114 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
16116         Fix replacing a match with a shorter string
16118         In effect, partially reverting fe973fc.
16120         * lisp/progmodes/xref.el (xref-query-replace): Store the end
16121         of each match as a marker again, instead of length.
16122         (xref--query-replace-1): Update accordingly.
16124 2015-11-14  Artur Malabarba  <bruce.connor.am@gmail.com>
16126         * lisp/progmodes/xref.el (xref-pop-marker-stack): Downgrade errors
16128         Signal user-errors instead.
16130 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
16132         Document 'describe-symbol'
16134         * doc/emacs/help.texi (Help Summary): Mention "C-h o".
16135         (Name Help): Document "C-h o" and describe-symbol.
16137         * lisp/help-fns.el (describe-symbol): Doc fix.
16139 2015-11-14  Paul Eggert  <eggert@cs.ucla.edu>
16141         Change test name to avoid spellcheck issue.
16143 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
16145         Avoid signaling an error in 'describe-symbol'
16147         * lisp/help-fns.el (describe-symbol): Avoid errors when the symbol
16148         exists as a function/variable/face/etc., but is undocumented.
16150         * test/automated/help-fns.el (help-fns-test-describe-symbol): New
16151         test.
16153 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
16155         * INSTALL (--with-cairo): Document this new configure option.
16157 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
16159         Document that GNU Make >= 3.81 is required to build Emacs
16161         * doc/lispref/internals.texi (Building Emacs): Document that GNU
16162         Make 3.81 or later is now required.
16164 2015-11-14  Artur Malabarba  <bruce.connor.am@gmail.com>
16166         Backport: * lisp/emacs-lisp/package.el: Refactor -with-work-buffer-async.
16168         (package--with-work-buffer-async): Reimplement as
16169         `package--with-response-buffer'.
16170         (package--with-work-buffer): Mark obsolete.
16171         (package--with-response-buffer): New macro. This is a more self
16172         contained and less contrived version of
16173         `package--with-work-buffer-async'.  It uses keyword arguments,
16174         doesn't have async on the name, doesn't fallback on
16175         `package--with-work-buffer', and has _much_ simpler error
16176         handling.  On master, this macro will soon be part of another
16177         library (either standalone or inside url.el), which is why this
16178         commit is not to be merged back.
16180         (package--check-signature, package--download-one-archive)
16181         (package-install-from-archive, describe-package-1): Use it.
16183         (package--download-and-read-archives): Let
16184         `package--download-one-archive' take care of calling
16185         `package--update-downloads-in-progress'.
16187 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
16189         * CONTRIBUTE (Branches): Improve wording for back-ported commits.
16191 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
16193         Merge branch 'master' into emacs-25
16195 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
16197         Use generic dispatch for xref backends
16199         * lisp/progmodes/xref.el (xref-backend-functions):
16200         New variable.
16201         (xref-find-function): Remove.
16202         (xref-find-backend)
16203         (xref--etags-backend): New functions.
16204         (xref-identifier-at-point-function)
16205         (xref-identifier-completion-table-function): Remove.
16206         (xref-backend-definitions, xref-backend-references)
16207         (xref-backend-apropos, xref-backend-identifier-at-point)
16208         (xref-backend-identifier-completion-table):
16209         New generic functions.
16211         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
16212         Add `elisp--xref-backend' to the beginning of
16213         `xref-backend-functions', locally.  Delete references to
16214         removed functions and vars.
16215         (elisp-xref-find): Remove.
16216         (elisp--xref-backend): New function.
16217         (elisp--xref-find-references, elisp--xref-find-apropos)
16218         (elisp--xref-identifier-completion-table):
16219         Turn into appropriately named generic methods.
16221         * lisp/progmodes/etags.el (etags-xref-find): Remove.
16222         (xref-backend-identifier-completion-table)
16223         (xref-backend-references, xref-backend-definitions)
16224         (xref-backend-apropos): New generic methods.
16226 2015-11-14  Juri Linkov  <juri@linkov.net>
16228         Support rectangular regions for more commands
16230         * lisp/simple.el (region-extract-function): Handle the arg
16231         value ‘bounds’.
16232         (region-insert-function): New function.
16233         (shell-command-on-region): Add arg ‘region-noncontiguous-p’.
16234         If non-nil, operate on multiple chunks.
16235         (region-noncontiguous-p): New function.
16237         * lisp/rect.el: Add function rectangle--insert-region
16238         around region-insert-function.
16239         (extract-rectangle-bounds): New function.
16240         (rectangle--extract-region): Handle the arg value ‘bounds’.
16241         (rectangle--insert-region): New function.
16243         * lisp/emulation/cua-rect.el: Add function cua--insert-rectangle
16244         around region-insert-function.
16245         (cua--extract-rectangle-bounds): New function.
16246         (cua--rectangle-region-extract): Handle the arg value ‘bounds’.
16248         * lisp/replace.el (query-replace, query-replace-regexp): Add arg
16249         ‘region-noncontiguous-p’.  Use ‘use-region-p’.
16250         (query-replace-regexp-eval, map-query-replace-regexp)
16251         (replace-string, replace-regexp): Use ‘use-region-p’.
16252         (keep-lines, flush-lines, how-many): Use ‘use-region-p’.
16253         (perform-replace): Add arg ‘region-noncontiguous-p’.
16254         If non-nil, operate on multiple chunks.
16256         * src/casefiddle.c (Fdowncase_region): Add arg ‘region-noncontiguous-p’.
16257         If non-nil, operate on multiple chunks.  (Bug#19829)
16259 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
16261         Handle multiple matches on the same line; add highlighting
16263         * lisp/progmodes/xref.el (xref-location-marker): Interpret the
16264         column value in characters.
16265         (xref--collect-matches): Rename from `xref--collect-match'.
16266         Search for all matches in the hit line.  Add `highlight' face to
16267         the matched region in the summary.  Update both callers.
16269 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
16271         Replace xref-match-bounds with xref-match-length
16273         Relying on xref-location-marker to point to the beginning of the match
16275         * lisp/progmodes/xref.el (xref-match-bounds): Remove.
16276         (xref-match-length): Add.
16277         (xref-make-match): Change the arguments.
16278         (xref--match-buffer-bounds): Remove.
16279         (xref-match-item): Store length, instead of end-column.
16280         (xref-pulse-momentarily)
16281         (xref--collect-match)
16282         (xref--query-replace-1): Update accordingly.
16283         (xref-query-replace): Ditto.  And check that the search results
16284         are up-to-date.
16286 2015-11-13  John Wiegley  <johnw@newartisans.com>
16288         Merge remote-tracking branch 'origin/master' into emacs-25
16290 2015-11-13  l3thal  <kwhite@gnu.org>
16292         Merge branch 'erc-async-reconnect' into emacs-25
16294         Reconnect asynchronously.
16296 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
16298         Merge from gnulib
16300         This incorporates:
16301         2015-11-13 xalloc-oversized: improve performance with GCC 5
16302         * lib/xalloc-oversized.h: Copy from gnulib.
16304 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
16306         Spruce up ftfont.c memory allocation
16308         * src/ftfont.c (setup_otf_gstring):
16309         Avoid O(N**2) behavior when reallocating.
16310         (ftfont_shape_by_flt): Prefer xpalloc to xrealloc when
16311         reallocating buffers; this simplifies the code.  Do not trust
16312         mflt_run to leave the output areas unchanged on failure, as
16313         this isn’t part of its interface spec.
16315 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16317         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
16319 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
16321         Port recent XCB changes to 64-bit ‘long int’
16323         For historical reasons, libX11 represents 32-bit values like Atoms as
16324         ‘long int’ even on platforms where ‘long int’ is 64 bits.  XCB doesn’t
16325         do that, so adapt the recent XCB code to behave properly on 64-bit
16326         platforms.  Also, fix what appears to be a bug in the interpretation
16327         of xcb_get_property_value_length, at least on my Fedora platform
16328         which is running libxcb-1.11-5.fc21.
16329         * src/xfns.c (x_real_pos_and_offsets):
16330         * src/xterm.c (get_current_wm_state):
16331         xcb_get_property_value_length returns a byte count, not a word count.
16332         For 32-bit quantities, xcb_get_property_value returns a vector
16333         of 32-bit words, not of (possibly 64-bit) long int.
16335         Backport.
16337 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
16339         * src/undo.c (run_undoable_change): Now static.
16341         Backport.
16343 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16345         Remove support for ':timeout' from w32 tray notifications
16347         * src/w32fns.c (Fw32_notification_notify): Delete the code that
16348         supports ':timeout'.
16349         (syms_of_w32fns): Don't DEFSYM ':timeout'.  This avoids clashes
16350         with dbusbind.c when D-Bus is compiled in.
16352         * doc/lispref/os.texi (Desktop Notifications): Don't mention
16353         ':timeout'.
16355         Backport.
16357 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
16359         * test/automated/simple-test.el: Add test for bug#20698 (bug#21885)
16361         (simple-test--transpositions): New macro.
16362         (simple-transpose-subr): New test.
16364         Backport.
16366 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
16368         * lisp/progmodes/elisp-mode.el: Declare function `project-roots'
16370         Backport.
16372 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
16374         * src/undo.c: Small fixes for previous change
16376         (run_undoable_change): Mark void argument list.
16377         (record_property_change): Remove unused variable `boundary'.
16379         Backport.
16381 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16383         Add a few more variables to redisplay--variables
16385         * lisp/frame.el (redisplay--variables): Add bidi-paragraph-direction
16386         and bidi-display-reordering to the list.
16388         Backport.
16390 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16392         * lisp/loadup.el: Enlarge the size of the hash table to 80000.
16394         Backport.
16396 2015-11-13  Eli Barzilay  <eli@barzilay.org>
16398         Fix point positioning after transposing with negative arg
16400         * lisp/simple.el (transpose-subr): When invoked with a negative
16401         argument, move point to after the transposed text, like we do
16402         when invoked with a positive argument.  (Bug#21885)
16404         Backport.
16406 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16408         Fix last change in shr.el
16410         * lisp/net/shr.el (shr--have-one-fringe-p): Rename from
16411         have-fringes-p.  All callers changed.  Doc fix.  (Bug#21895)
16413         Backport.
16415 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16417         Fix last change
16419         * src/w32fns.c (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]:
16420         Don't DEFSYM tray notification symbols if D-Bus is being used.
16422         Backport.
16424 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16426         Another fix for MinGW64 and Cygwin builds due to notifications
16428         * src/w32fns.c: Ifdef away tray notification code if D-Bus is
16429         being compiled into Emacs.
16430         (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]: Don't defsubr
16431         Sw32_notification_notify and Sw32_notification_close if the code
16432         is not compiled.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
16434         Backport.
16436 2015-11-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
16438         Remove intern calls and XXX comments from Fx_export_frames
16440         * src/xfns.c (Fx_export_frames): Use Qpdf, Qpng, Qpostscript, and
16441         Qsvg instead of intern calls.  Use "postscript" instead of "ps"
16442         for consistency with image types.  Remove XXX comments.
16443         (syms_of_xfns) <Qpdf>: DEFSYM it.
16445         Backport.
16447 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
16449         Port recent XCB changes to 64-bit ‘long int’
16451         For historical reasons, libX11 represents 32-bit values like Atoms as
16452         ‘long int’ even on platforms where ‘long int’ is 64 bits.  XCB doesn’t
16453         do that, so adapt the recent XCB code to behave properly on 64-bit
16454         platforms.  Also, fix what appears to be a bug in the interpretation
16455         of xcb_get_property_value_length, at least on my Fedora platform
16456         which is running libxcb-1.11-5.fc21.
16457         * src/xfns.c (x_real_pos_and_offsets):
16458         * src/xterm.c (get_current_wm_state):
16459         xcb_get_property_value_length returns a byte count, not a word count.
16460         For 32-bit quantities, xcb_get_property_value returns a vector
16461         of 32-bit words, not of (possibly 64-bit) long int.
16463 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
16465         * src/undo.c (run_undoable_change): Now static.
16467 2015-11-13  Michael Albinus  <michael.albinus@gmx.de>
16469         Adapt Tramp version, do not merge with master
16471         * doc/misc/trampver.texi (trampver):
16472         * lisp/net/trampver.el (tramp-version): Set to "2.2.13-25.1".
16474 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16476         Remove support for ':timeout' from w32 tray notifications
16478         * src/w32fns.c (Fw32_notification_notify): Delete the code that
16479         supports ':timeout'.
16480         (syms_of_w32fns): Don't DEFSYM ':timeout'.  This avoids clashes
16481         with dbusbind.c when D-Bus is compiled in.
16483         * doc/lispref/os.texi (Desktop Notifications): Don't mention
16484         ':timeout'.
16486 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
16488         * test/automated/simple-test.el: Add test for bug#20698 (bug#21885)
16489         (simple-test--transpositions): New macro.
16490         (simple-transpose-subr): New test.
16492 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
16494         * lisp/progmodes/elisp-mode.el: Declare function `project-roots'
16496 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
16498         * src/undo.c: Small fixes for previous change
16499         (run_undoable_change): Mark void argument list.
16500         (record_property_change): Remove unused variable `boundary'.
16502 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16504         Add a few more variables to redisplay--variables
16506         * lisp/frame.el (redisplay--variables): Add bidi-paragraph-direction
16507         and bidi-display-reordering to the list.
16509 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16511         * lisp/loadup.el: Enlarge the size of the hash table to 80000.
16513 2015-11-13  Eli Barzilay  <eli@barzilay.org>
16515         Fix point positioning after transposing with negative arg
16517         * lisp/simple.el (transpose-subr): When invoked with a negative
16518         argument, move point to after the transposed text, like we do
16519         when invoked with a positive argument.  (Bug#21885)
16521 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16523         Fix last change in shr.el
16525         * lisp/net/shr.el (shr--have-one-fringe-p): Rename from
16526         have-fringes-p.  All callers changed.  Doc fix.  (Bug#21895)
16528 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16530         Fix last change
16532         * src/w32fns.c (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]:
16533         Don't DEFSYM tray notification symbols if D-Bus is being used.
16535 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
16537         Another fix for MinGW64 and Cygwin builds due to notifications
16539         * src/w32fns.c: Ifdef away tray notification code if D-Bus is
16540         being compiled into Emacs.
16541         (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]: Don't defsubr
16542         Sw32_notification_notify and Sw32_notification_close if the code
16543         is not compiled.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
16545 2015-11-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
16547         Remove intern calls and XXX comments from Fx_export_frames
16549         * src/xfns.c (Fx_export_frames): Use Qpdf, Qpng, Qpostscript, and
16550         Qsvg instead of intern calls.  Use "postscript" instead of "ps"
16551         for consistency with image types.  Remove XXX comments.
16552         (syms_of_xfns) <Qpdf>: DEFSYM it.
16554 2015-11-13  Eric Hanchrow  <eric.hanchrow@gmail.com>
16556         shr: don't invoke unbound function (Bug#21895)
16558         * lisp/net/shr.el (have-fringes-p): New function.
16559         (shr-insert-document, shr-fill-text): Use it.
16561 2015-11-12  Juanma Barranquero  <lekktu@gmail.com>
16563         * test/automated/keymap-tests.el: Fix test to make it repeatable
16565         (keymap-store_in_keymap-FASTINT-on-nonchars): Reset Buffer-menu-mode-map
16566         entry to its initial value to make the test repeatable in interactive
16567         sessions (assuming it doesn't fail and crashes Emacs, of course).
16569 2015-11-13  Artur Malabarba  <bruce.connor.am@gmail.com>
16571         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors): Small fix
16573 2015-11-12  Phillip Lord  <phillip.lord@russet.org.uk>
16575         : Tests for undo-auto functionality.
16577 2015-11-12  Phillip Lord  <phillip.lord@newcastle.ac.uk>
16579         The heuristic that Emacs uses to add an `undo-boundary' has been
16580         reworked, as it interacts poorly with functions on `post-command-hook'
16581         or `after-change-functions'.
16583         * lisp/simple.el: New section added.
16584         * src/cmds.c (remove_excessive_undo_boundaries): Now in lisp.
16585         (self_insert_command): Calls simple.el to amalgamate.
16586         (delete_char): Calls simple.el to amalgamate.
16587         * src/keyboard.c (last_undo_boundary): Removed.
16588         * src/undo.c (run_undoable_change): New function.
16590 2015-11-12  Juri Linkov  <juri@linkov.net>
16592         Bind [?\S-\ ] to previous line command in Dired-like modes.
16594         * lisp/arc-mode.el (archive-mode-map):
16595         * lisp/dired.el (dired-mode-map):
16596         * lisp/proced.el (proced-mode-map):
16597         * lisp/vc/vc-dir.el (vc-dir-mode-map):
16598         Bind [?\S-\ ] to previous line command.
16599         (Bug#20790)
16601 2015-11-12  Eli Zaretskii  <eliz@gnu.org>
16603         Fix the MinGW64 and Cygwin-w32 builds
16605         * src/w32fns.c (MYNOTIFYICONDATAW_V1_SIZE)
16606         (MYNOTIFYICONDATAW_V2_SIZE, MYNOTIFYICONDATAW_V3_SIZE): Define and
16607         use instead of the corresponding NOTIFYICONDATAW_Vn_SIZE macros,
16608         which cause trouble with MinGW42 headers.  Ifdef away tray
16609         notifications code for Cygwin.  Reported by Andy Moreton
16610         <andrewjmoreton@gmail.com>.
16612 2015-11-12  Simen Heggestøyl  <simenheg@gmail.com>
16614         Enable sorting of JSON object keys when encoding
16616         * lisp/json.el (json-encoding-object-sort-predicate): New variable
16617         for specifying a sorting predicate for JSON objects during encoding.
16618         (json--plist-to-alist): New utility function.
16619         (json-encode-hash-table): Re-use `json-encode-alist' when object keys
16620         are to be sorted.
16621         (json-encode-alist): Sort output by
16622         `json-encoding-object-sort-predicate, when set.
16623         (json-encode-plist): Re-use `json-encode-alist' when object keys are
16624         to be sorted.
16625         (json-pretty-print-buffer-ordered): New command to pretty print the
16626         buffer with object keys sorted alphabetically.
16627         (json-pretty-print-ordered): New command to pretty print the region
16628         with object keys sorted alphabetically.
16630         * test/automated/json-tests.el (test-json-plist-to-alist)
16631         (test-json-encode-plist, test-json-encode-hash-table)
16632         (test-json-encode-alist-with-sort-predicate)
16633         (test-json-encode-plist-with-sort-predicate): New tests.
16635         * etc/NEWS: Add an entry for the new commands.
16637 2015-11-12  Juanma Barranquero  <lekktu@gmail.com>
16639         * test/automated/keymap-tests.el: New test file.
16641 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
16643         Speed up x_real_pos_and_offsets using XCB
16645         * src/xfns.c (x_real_pos_and_offsets) [USE_XCB]: Add XCB flavors of
16646         all X calls, and pipeline requests when possible, collecting results
16647         later.  Eliminate use of x_catch_errors (and thus XSync) in XCB case.
16649 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
16651         Enable use of XCB for checking window manager state
16653         * src/xterm.c (get_current_wm_state) [USE_XCB]: Use XCB calls instead
16654         of XGetWindowProperty plus error-catching, since we can explicitly
16655         check for errors in the XCB version.  This eliminates 3 XSync calls on
16656         top of the round-trip actually fetching the information.
16658 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
16660         Detect XCB and save a connection handle
16662         * configure.ac: If using X11, check for XCB libraries and header.
16663         * src/Makefile.in (XCB_LIBS): Define.
16664         (LIBX_EXTRA): Include it.
16666         * src/xterm.h [USE_XCB]: Include X11/Xlib-xcb.h.
16667         (struct x_display_info) [USE_XCB]: Add an XCB connection handle field.
16668         * src/xterm.c (x_term_init) [USE_XCB]: Initialize the new field.
16670 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
16672         Reduce some data dependencies between X calls
16674         Gains nothing in the traditional-Xlib code, but more closely aligns
16675         with how the XCB version will work.
16677         * src/xfns.c (x_real_pos_and_offsets): When translating coordinates,
16678         send coordinates (0,0) to the X server and add in the real coordinates
16679         after getting the response.  Move XGetGeometry for outer window inside
16680         error-trapping block.  Use DPY variable more, since it's available.
16682 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
16684         Use color cache for creating bitmap
16686         * src/image.c (x_create_bitmap_from_xpm_data) [ALLOC_XPM_COLORS]:
16687         Set attributes to use the caching color allocator.  Initialize and
16688         free the cache.
16690 2015-11-12  Eli Barzilay  <eli@barzilay.org>
16692         Add "^" to the interactive specs of `dired-next/previous-line'
16694         * lisp/dired.el (dired-next-line, dired-previous-line): It makes sense
16695         to bind these commands to the arrow keys, and that means that they work
16696         better with a "^" in the `interactive' declaration so selection works
16697         as expected.
16699 2015-11-12  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
16701         Sync with soap-client repository, version 3.0.2
16703         * lisp/net/soap-client.el: Bump version to 3.0.2.
16705         * lisp/net/soap-client.el (soap-warning): Use format, not format-message.
16707         * lisp/net/soap-client.el: Add cl-lib to Package-Requires.  Require cl-lib.
16708         (soap-validate-xs-simple-type): Use cl-labels instead of cl-flet.
16710         * lisp/net/soap-client.el: Support Emacs versions that do not have
16711         define-error.
16713         * lisp/net/soap-inspect.el: Remove version header.
16715         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Fix first line header
16716         format.
16718 2015-11-11  Alan Mackenzie  <acm@muc.de>
16720         CC Mode: Respect users' settings of open-paren-in-column-0-is-defun-start.
16722         * lisp/progmodes/cc-engine.el (c-backward-single-comment)
16723         (c-backward-comments, c-invalidate-state-cache-1, c-parse-state-1)
16724         (c-guess-basic-syntax):
16725         Remove bindings of open-paren-in-column-0-is-defun-start to nil.
16726         (c-get-fallback-scan-pos): "New" function (existed several years ago).
16727         (c-parse-state-get-strategy): Reintroduce the 'BOD strategy, using
16728         c-get-fallback-scan-pos.
16729         (c-parse-state-1): Handle 'BOD strategy.
16731         * lisp/progmodes/cc-mode.el (c-before-change, c-after-change)
16732         (c-font-lock-fontify-region): Remove bindings of
16733         open-paren-in-column-0-is-defun-start to nil.
16735         * doc/misc/cc-mode.texi (Performance Issues)
16736         (Limitations and Known Bugs): Fix mix up between @chapter and @appendix.
16738 2015-11-11  Artur Malabarba  <bruce.connor.am@gmail.com>
16740         * lisp/obarray.el: Fix shadowed variables.
16741         (obarray-map, obarray-remove, obarray-put, obarray-get):
16742         Change OBARRAY arg to OB to avoid shadowing ‘obarray’.
16744 2015-11-11  Eli Zaretskii  <eliz@gnu.org>
16746         Avoid error in submitting a form with EWW
16748         * lisp/gnus/mm-url.el (mm-url-form-encode-xwfu): Allow argument
16749         CHUNK to be nil.  (Bug#21881)
16751 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
16753         Rename seq-p and map-p to seqp and mapp
16755         * lisp/emacs-lisp/seq.el (seqp): New name.
16756         * lisp/emacs-lisp/map.el (mapp): New name.
16757         * doc/lispref/sequences.texi: Update the documentation for seqp.
16758         * test/automated/map-tests.el: Update the tests for mapp.
16760 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
16762         Rename obarray-p to obarrayp
16764         * lisp/obarray.el (obarrayp): New name.
16765         * test/automated/obarray-tests.el: Update the tests.
16767 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
16769         Rename obarray-foreach to obarray-map
16771         * lisp/obarray.el (obarray-map): New name.
16772         * test/automated/obarray-tests.el: Update the corresponding tests.
16774 2015-11-11  Przemysław Wojnowski  <esperanto@cumego.com>
16776         New file with obarray functions.
16778         * lisp/obarray.el: Basic obarray functions extracted from abbrev.el.
16779         * test/automated/obarray-tests.el: New file.
16781 2015-11-11  Eli Zaretskii  <eliz@gnu.org>
16783         Implement tray notifications for MS-Windows
16785         * src/w32fns.c (MY_NOTIFYICONDATAW): New typedef.
16786         (NOTIFYICONDATAW_V1_SIZE, NOTIFYICONDATAW_V2_SIZE)
16787         (NOTIFYICONDATAW_V3_SIZE, NIF_INFO, NIIF_NONE, NIIF_INFO)
16788         (NIIF_WARNING, NIIF_ERROR, EMACS_TRAY_NOTIFICATION_ID)
16789         (EMACS_NOTIFICATION_MSG): New macros.
16790         (NI_Severity): New enumeration.
16791         (get_dll_version, utf8_mbslen_lim, add_tray_notification)
16792         (delete_tray_notification, Fw32_notification_notify)
16793         (Fw32_notification_close): New functions.
16794         (syms_of_w32fns): Defsubr functions exposed to Lisp.  DEFSYM
16795         keywords used by w32-notification-notify.
16797         * doc/lispref/os.texi (Desktop Notifications): Describe the native
16798         w32 tray notifications.
16800 2015-11-11  Alan Mackenzie  <acm@muc.de>
16802         First commit to scratch/follow.  Make Isearch work with Follow Mode, etc.
16804         doc/lispref/window.texi (Basic Windows): Add paragraph defining "Group of
16805         Windows" and new @defun selected-window-group.
16806         (Window Start and End): Describe new &optional parameter GROUP and
16807         ...-group-function for window-start, window-end, set-window-start, and
16808         pos-visible-in-window-p.
16809         (Textual Scrolling) Describe the same for recenter.
16810         doc/lispref/positions.texi (Screen Lines): Describe the same for
16811         move-to-window-line.
16813         src/window.c (Fwindow_start, Fwindow_end, Fset_window_start)
16814         (Fpos_visible_in_window_p, Frecenter, Fmove_to_window_line): To each, add ar
16815         new optional parameter "group".  At the beginning of each, check whether the
16816         corresponding ...-group-function is set to a function, and if so execute this
16817         function in place of the normal processing.
16818         (syms_of_window): Define symbols for the six new variables below.
16819         (window-start-group-function, window-end-group-function)
16820         (set-window-start-group-function, recenter-group-function)
16821         (pos-visible-in-window-p-group-function, move-to-window-line-group-function):
16822         New permanent local buffer local variables.
16823         src/keyboard.c (Fposn_at_point): Add extra parameter in call to
16824         Fpos_visible_in_window_p.
16826         lisp/window.el (selected-window-group-function): New permanent local buffer
16827         local variable.
16828         (selected-window-group): New function.
16830         lisp/follow.el (follow-mode): Set the ...-group-function variables at mode
16831         enable, kill them at mode disable.  Add/remove follow-after-change to/from
16832         after-change-functions.
16833         (follow-start-end-invalid): New variable.
16834         (follow-redisplay): Manipulate follow-start-end-invalid.
16835         (follow-after-change, follow-window-start, follow-window-end)
16836         (follow-set-window-start, follow-pos-visible-in-window-p)
16837         (follow-move-to-window-line, follow-sit-for): New functions.
16839         lisp/isearch.el (isearch-call-message): New macro.
16840         (isearch-update, with-isearch-suspended, isearch-del-char)
16841         (isearch-search-and-update, isearch-ring-adjust): Invoke above new macro.
16842         (with-isearch-suspended): Rearrange code such that isearch-call-message is
16843         invoked before point is moved.
16844         (isearch-message): Add comment about where point must be at function call.
16845         (isearch-search): Remove call to isearch-message.
16846         (isearch-lazy-highlight-window-group): New variable.
16847         (isearch-lazy-highlight-new-loop): Unconditionally start idle timer.  Move
16848         the battery of tests to ...
16849         (isearch-lazy-highlight-maybe-new-loop): New function, started by idle timer.
16850         Note: (sit-for 0) is still called.
16851         (isearch-lazy-highlight-update): Check membership of
16852         isearch-lazy-highlight-window-group.  Don't set the `window' overlay
16853         property.
16854         (isearch-update, isearch-done, isearch-string-out-of-window)
16855         (isearch-back-into-window, isearch-lazy-highlight-maybe-new-loop)
16856         (isearch-lazy-highlight-search, isearch-lazy-highlight-update)
16857         (isearch-lazy-highlight-update): Call the six amended primitives (see
16858         src/window.c above) with the new `group' argument set to t, to cooperate
16859         with Follow Mode.
16861 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
16863         Optimize `file-equal-p' and `file-in-directory-p' in Tramp
16865         * lisp/net/tramp.el (tramp-handle-file-equal-p)
16866         (tramp-handle-file-in-directory-p): New defuns.  Suggested by
16867         Harvey Chapman <hchapman@3gfp.com>.
16869         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
16870         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
16871         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist):
16872         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist): Use them.
16874 2015-11-10  Karl Fogel  <kfogel@red-bean.com>
16876         * CONTRIBUTE: Encourage adding tests.
16878         Based on this post from John Wiegley:
16880           From: "John Wiegley" <johnw@newartisans.com>
16881           Subject: Re: [Emacs-diffs] master 1f02cbe: Fix bug#21766 and add test
16882           To: Juanma Barranquero <lekktu@gmail.com>
16883           Cc: emacs-diffs@gnu.org, bruce.connor.am@gmail.com,
16884               emacs-devel <emacs-devel@gnu.org>
16885           Date: Wed, 28 Oct 2015 18:45:29 -0700
16886           Message-ID: <m2y4emqwg6.fsf@newartisans.com>
16888           https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02372.html
16890 2015-11-10  David Reitter  <david.reitter@gmail.com>
16892         Avoid creating notification objects when possible
16894         * src/nsterm.m (windowWillEnterFullScreen, windowWillExitFullScreen:)
16895         (windowDidEnterFullScreen, windowDidExitFullScreen): Provide convenience
16896         functions that do not require a notification object.  When needed,
16897         define NSWindowDidEnterFullScreenNotification to allow for compilation
16898         on OS X 10.6.8.
16900 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
16902         Move INTEGER_TO_CONS body out of .h file
16904         * src/data.c (INTBIG_TO_LISP): New macro, with most
16905         of the contents of the old INTEGER_TO_CONS.
16906         (intbig_to_lisp, uintbig_to_lisp): New functions.
16907         * src/lisp.h (INTEGER_TO_CONS):
16908         Simplify by using EXPR_SIGNED and the new functions.
16909         This shrinks code size a bit, and makes it easier to
16910         put a breakpoint on handling of large integers.
16912 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
16914         Merge from gnulib
16916         This incorporates:
16917         2015-11-10 intprops: new public macro EXPR_SIGNED
16918         2015-11-10 intprops: fix typo in clang port
16919         * lib/intprops.h: Copy from gnulib.
16921 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
16923         Spelling fixes
16925         * lisp/net/soap-inspect.el (soap-inspect-xs-simple-type):
16926         Fix misspelling in output.
16928 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
16930         * doc/lispref/variables.texi (Directory Local Variables):
16931         Document dir-locals wildcards.
16933         * lisp/files.el (dir-locals-file): Point to Info node.
16935         * doc/emacs/custom.texi (Directory Variables):
16936         Document dir-locals wildcards.
16938         * etc/NEWS: Document new functionality.
16940 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
16942         * lisp/files.el: Don't allow customization of dir-locals sorting.
16943         In retrospect, this is not a good idea for the same reason that
16944         `dir-locals-file' is a defconst, because it is important that this
16945         behavior be "uniform across different environments and users".
16946         Sure, the user can still change the sorting with a hack, but we
16947         shouldn't encourage them to change it.
16948         (dir-locals--all-files): Return list in the order returned by
16949         `file-expand-wildcards'.
16950         (file-expand-wildcards): Document the sorting predicate used.
16951         (dir-locals-sort-predicate): Delete variable.
16953 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
16955         * lisp/files.el (dir-locals-read-from-file): Better handle errors.
16957         * lisp/isearch.el (search-default-regexp-mode): Change default value.
16959 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
16961         * lisp/files.el (dir-locals-find-file): Don't stop at unreadable files.
16962         `locate-dominating-file' will now keep looking if the files it finds in
16963         a given directory are unreadable (or not files).
16965 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
16967         * lisp/files.el (dir-locals-file): Allow wildcards.
16968         (dir-locals-find-file, dir-locals-collect-variables)
16969         (dir-locals-read-from-file): Update accordingly.
16970         (hack-dir-local-variables): Rename a local variable.
16972         * lisp/files-x.el (modify-dir-local-variable): Update accordingly.
16974         * lisp/help-fns.el (describe-variable): Update accordingly.
16976         * .gitignore: Add .dir-locals?.el.
16978 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
16980         * lisp/emacs-lisp/map.el (map-merge-with): New function.
16982         * test/automated/map-tests.el (test-map-merge-with): New test.
16984 2015-11-10  Karl Fogel  <kfogel@red-bean.com>
16986         Fix some recently-perturbed bookmark autoloads
16988         * lisp/bookmark.el (bookmark-set-internal): Remove unnecessary autoload.
16989         (bookmark-set): Restore autoload.
16990         (bookmark-set-no-overwrite): Add autoload.
16992         Thanks to Juanma Barranquero for noticing the autoload problems
16993         introduced by my recent commit adding/changing the above functions
16994         (Sun Nov 8 14:16:43 2015 -0500, git commit 3812e17978).
16996 2015-11-09  Noah Friedman  <friedman@splode.com>
16998         * etc/emacs-buffer.gdb (ydump-buffer): Handle case where gap is at
16999         the start of buffer.  I don't recall if older versions of gdb were
17000         less strict but you cannot dump a 0-length range in gdb 7.9.1.
17002 2015-11-10  Dmitry Gutov  <dgutov@yandex.ru>
17004         * lisp/progmodes/project.el: Update Commentary.
17006         Merge branch 'project-next'
17008 2015-11-10  Dmitry Gutov  <dgutov@yandex.ru>
17010         Fold `project-ask-user' into `project-current'
17012         * lisp/progmodes/project.el (project-find-functions): Remove
17013         `project-ask-user'.
17014         (project-ask-user): Remove function and the corresponding
17015         `project-roots' implementation.
17016         (project-current): Add a new argument, MAYBE-PROMPT.  Prompt the
17017         user in case there's no project in the current directory.  Update
17018         all callers.
17020 2015-11-09  Karl Fogel  <kfogel@red-bean.com>
17022         When VC detects a conflict, specify which file
17024         * lisp/vc/vc.el (vc-message-unresolved-conflicts): New function.
17025         * lisp/vc/vc-svn.el (vc-svn-find-file-hook):
17026         * lisp/vc/vc-hg.el (vc-hg-find-file-hook):
17027         * lisp/vc/vc-bzr.el (vc-bzr-find-file-hook):
17028         * lisp/vc/vc-git.el (vc-git-find-file-hook): Use above new function
17029           to display a standard message that specifies the conflicted file.
17031         Before this change, the message VC used for indicating a conflicted
17032         file was just "There are unresolved conflicts in this file" without
17033         naming the file (and this language was duplicated in several places).
17034         After this change, it's "There are unresolved conflicts in file FOO"
17035         (and this language is now centralized in one function in vc.el).
17037         Justification: It's important for the message to name the conflicted
17038         file because the moment when VC realizes a file is conflicted does not
17039         always come interactively.  For example, some people automatically
17040         find a set of Org Mode files on startup, and may keep those .org files
17041         under version control.  If any of the files are conflicted, the user
17042         just sees some messages fly by, and might later check the "*Messages*"
17043         buffer to find out what files were conflicted.  I'm not saying this
17044         happened to me or anything; it's a purely hypothetical example.
17046 2015-11-09  Eli Zaretskii  <eliz@gnu.org>
17048         Fix assertion violation in define-key
17050         * src/keymap.c (store_in_keymap): Don't use XFASTINT on non-character
17051         objects.  Reported by Drew Adams <drew.adams@oracle.com>
17052         and Juanma Barranquero <lekktu@gmail.com>.
17054 2015-11-09  Dima Kogan  <dima@secretsauce.net>
17056         Fix a memory leak in GC of font cache
17058         * src/alloc.c (compact_font_cache_entry): Don't GC unmarked font
17059         entities if some of the fonts it references are marked.  This
17060         plugs a memory leak.  (Bug#21556)
17062 2015-11-09  Paul Eggert  <eggert@cs.ucla.edu>
17064         Use INT_ADD_WRAPV etc. to check integer overflow
17066         * src/alloc.c (xnmalloc, xnrealloc, xpalloc, Fmake_string):
17067         * src/buffer.c (record_overlay_string, overlay_strings):
17068         * src/casefiddle.c (casify_object):
17069         * src/ccl.c (Fccl_execute_on_string):
17070         * src/character.c (char_width, c_string_width, lisp_string_width)
17071         (count_size_as_multibyte, string_escape_byte8):
17072         * src/coding.c (coding_alloc_by_realloc, produce_chars):
17073         * src/data.c (arith_driver):
17074         * src/dispnew.c (realloc_glyph_pool, init_display):
17075         * src/editfns.c (styled_format):
17076         * src/fns.c (Ffillarray):
17077         * src/ftfont.c (ftfont_shape_by_flt):
17078         * src/gnutls.c (gnutls_hex_string):
17079         * src/gtkutil.c (get_utf8_string):
17080         * src/image.c (x_to_xcolors, x_detect_edges, png_load_body):
17081         * src/keymap.c (Fkey_description):
17082         * src/lisp.h (SAFE_ALLOCA_LISP):
17083         * src/term.c (encode_terminal_code):
17084         * src/tparam.c (tparam1):
17085         * src/xselect.c (x_property_data_to_lisp):
17086         * src/xsmfns.c (smc_save_yourself_CB):
17087         * src/xterm.c (x_term_init):
17088         When checking for integer overflow, prefer INT_MULTIPLY_WRAPV to
17089         more-complicated code involving division and/or
17090         INT_MULTIPLY_OVERFLOW, and similarly for INT_ADD_WRAPV and
17091         subtraction and/or INT_ADD_OVERFLOW.
17092         * src/casefiddle.c (casify_object): Simplify multibyte size check.
17093         * src/character.c: Remove some obsolete ‘#ifdef emacs’s.
17094         * src/data.c (arith_driver): Also check for division overflow,
17095         as that’s now possible given that the accumulator can now contain
17096         any Emacs integer.
17097         * src/lisp.h (lisp_word_count): Remove; no longer used.
17099 2015-11-09  Dmitry Gutov  <dgutov@yandex.ru>
17101         Make sure that the ignore file exists
17103         * lisp/vc/vc.el (vc-default-ignore-completion-table):
17104         Make sure that the ignore file exists.
17106 2015-11-09  Michael Sperber  <mike@xemacs.org>
17108         * lisp/gnus-sum.el (gnus-summary-backend-map): Bind B-backspace to
17109         `gnus-summary-delete-article` in a way that also works on XEmacs.
17111 2015-11-08  Simen Heggestøyl  <simenheg@gmail.com>
17113         Add support for retrieving paths to JSON elements
17115         Add support for retrieving the path to a JSON element. This can for
17116         instance be useful to retrieve paths in deeply nested JSON
17117         structures.
17119         * lisp/json.el (json-pre-element-read-function)
17120         (json-post-element-read-function): New variables to hold pre- and post
17121         read callback functions for `json-read-array' and `json-read-object'.
17122         (json--path): New variable used internally by `json-path-to-position'.
17123         (json--record-path, json--check-position): New functions used
17124         internally by `json-path-to-position'.
17125         (json-path-to-position): New function for retrieving the path to a
17126         JSON element at a given position.
17127         (json-read-object, json-read-array): Call
17128         `json-pre-element-read-function' and `json-post-element-read-function'
17129         when set.
17131         * test/automated/json-tests.el (test-json-path-to-position-with-objects)
17132         (test-json-path-to-position-with-arrays)
17133         (test-json-path-to-position-no-match): New tests for
17134         `json-path-to-position'.
17136 2015-11-08  Karl Fogel  <kfogel@red-bean.com>
17138         * etc/NEWS: Mention new `bookmark-set-no-overwrite'.
17140         This really should been part of my previous commit
17141         (Sun Nov 8 14:16:43 2015 -0500, git commit 3812e17978).
17143 2015-11-08  Karl Fogel  <kfogel@red-bean.com>
17145         Offer non-overwrite bookmark setter (Bug#15746)
17147         * lisp/bookmark.el (bookmark-set-internal): New helper function to do
17148         what `bookmark-set' used to do, but with more choices for overwrite
17149         vs push, and with minor changes to the interactive prompt format.
17150         (bookmark-set): Rewrite as wrapper around above.
17151         If overwriting, inform the user of that in the prompt.
17152         (bookmark-set-no-overwrite): New function, also done as wrapper.
17153         Bind to "M" in `ctl-x-r-map' autoloads.
17154         (bookmark-map): Similarly bind "M" here.
17156 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
17158         * src/unexelf.c (NEW_PROGRAM_H): Remove unused macro (Bug#20614).
17160 2015-11-08  Alan Modra  <amodra@gmail.com>
17162         ELF unexec: Don't insert a new section
17164         Reuse the .bss section instead, making it SHT_PROGBITS.  This way we
17165         don't need to mess with symbol st_shndx, or section sh_link and
17166         sh_info.
17168         This does lead to eu-elflint complaints about symbols defined in .bss
17169         with a needed version, because normally it is undefined symbols that
17170         have needed versions;  Defined symbols have version definitions.
17171         The exception is symbols defined by the linker in .dynbss for
17172         variables copied from a shared library in order to avoid text
17173         relocations, with copy relocs to copy their initial values from the
17174         shared library.  These symbols are both defined and have needed
17175         versions, and eu-elflink only expects to see them in SHT_NOBITS
17176         sections.  Of course there is no real problem with having such symbols
17177         in SHT_PROGBITS sections.  glibc ld.so handles them fine.
17179         * src/unexelf.c: Delete outdated comments.
17180         (PATCH_INDEX): Delete.
17181         (find_section): Delete.
17182         (unexec): Don't add a new section.  Instead reuse the last bss
17183         section, extending it to cover dumped data.  Make bss sections
17184         SHT_PROGBITS.  Remove all patching of sh_link, sh_info and
17185         st_shndx.  Rename bss sections.
17187 2015-11-08  Alan Modra  <amodra@gmail.com>
17189         ELF unexec: Drive from PT_LOAD header rather than sections
17191         This rewrites bss handling in the ELF unexec code.  Finding bss
17192         sections by name results in complicated code that
17193         - does not account for all names of possible bss sections,
17194         - assumes specific ordering of bss sections,
17195         - can wrongly choose a SHT_NOBITS section not in the bss segment,
17196         - incorrectly calculates bss size (no accounting for alignment gaps),
17197         - assumes .data and .bss are in the same segment.
17199         All of these problems and more are solved by finding the bss segment
17200         in PT_LOAD headers, ie. the address range included in p_memsz but not
17201         p_filesz of the last PT_LOAD header, then matching SHT_NOBITS sections
17202         in that address range.
17204         * src/unexelf.c: Delete old ppc comment.
17205         (OLD_PROGRAM_H): Define.
17206         (round_up): Delete.
17207         (unexec): Don't search for bss style sections by name.  Instead,
17208         use the last PT_LOAD header address range covered by p_memsz
17209         but not p_filesz and match any SHT_NOBITS section in that
17210         address range.  Simplify initialization of section header vars.
17211         Don't assume that section headers are above bss segment.  Move
17212         copying of bss area out of section loop.  Align .data2 section
17213         to 1, since it now covers the entire bss area.  For SHT_NOBITS
17214         sections in the bss segment, leave sh_addr and sh_addralign
17215         unchanged, but correct sh_offset.  Clear memory corresponding
17216         to SHT_NOBITS .plt section.  Delete comment and hacks for
17217         sections partly overlapping bss range now that the full range
17218         is properly calculated.  Delete now dead .sbss code.
17219         (Bug#20614)
17221 2015-11-08  Alan Modra  <amodra@gmail.com>
17223         ELF unexec: R_*_NONE relocs
17225         These should be ignored on all targets.
17227         * src/unexelf.c (unexec): Ignore R_*_NONE relocs for any target,
17228         not just Alpha.  Comment on reloc size assumption.
17230 2015-11-08  Alan Modra  <amodra@gmail.com>
17232         ELF unexec: _OBJC_ symbols in bss sections
17234         This code assumed that there was only one bss section.  Rather than
17235         checking for a particular index, check the section type.  Also, handle
17236         the possibility that the section was SHT_NOBITS originally and is
17237         unchanged, in which case no clearing is needed (and sh_offset isn't
17238         necessarily valid, which can lead to a wild memset).
17240         * src/unexelf.c (unexec): Properly handle _OBJC_ symbols in
17241         bss sections.
17243 2015-11-08  Alan Modra  <amodra@gmail.com>
17245         ELF unexec: Symbol table patching
17247         No st_shndx value larger than SHN_LORESERVE should be changed.
17248         * src/unexelf.c (unexec): Don't adjust any st_shndx larger than
17249         SHN_LORESERVE.  Error on SHN_XINDEX.
17251 2015-11-08  Alan Modra  <amodra@gmail.com>
17253         ELF unexec: Merge Alpha and MIPS COFF debug handling
17255         * src/unexelf.c (unexec): Merge Alpha and MIPS COFF debug handling.
17256         Don't find .mdebug section index, find the section in the loop.
17257         Allow for unlikely possibility that .mdebug is located at sh_offset
17258         before bss segment, by calculating move from difference in
17259         sh_offset rather than just assuming new_data2_size.  Simplify
17260         cbLineOffset handling.
17262 2015-11-08  Alan Modra  <amodra@gmail.com>
17264         ELF unexec: Tidy code
17266         Separate out some of the more mechanical changes so following patches
17267         are smaller.
17269         * src/unexelf.c (unexec): Rearrange initialization of program
17270         header vars.  Use pointer vars in loops rather than indexing
17271         section header array via macros.  Simplify _OBJC_ sym code
17272         and reloc handling code.
17274 2015-11-08  Alan Modra  <amodra@gmail.com>
17276         ELF unexec: Correct section header index
17278         First a small fix.  The code incorrectly uses "NEW_SECTION_H (n)" when
17279         it should have been using "NEW_SECTION_H (nn)" to find the name of the
17280         section currently being processed.  Of course, before the bss
17281         sections, n and nn have the same value, so this doesn't matter except
17282         in the case of .sbss.  For .sbss this probably meant .bss (most likely
17283         the next section) was copied from memory.  A later patch removes the
17284         bogus .sbss handling anyway.
17286         * src/unexelf.c (unexec): Use correct index to look up names.
17288 2015-11-08  Michael Albinus  <michael.albinus@gmx.de>
17290         Fix Bug#21841
17292         * lisp/filenotify.el (file-notify--rm-descriptor):
17293         Use `descriptor' instead of computing its value.
17294         (file-notify--descriptor): Additional argument FILE.  Adapt all callees.
17295         (file-notify-rm-watch): Use `descriptor' when calling file name handler.
17296         (Bug#21841)
17298 2015-11-08  Dmitry Gutov  <dgutov@yandex.ru>
17300         Remove dirs in vc project roots from the the vc project library roots
17302         * lisp/progmodes/project.el (project-library-roots):
17303         Remove directories inside the project roots from the result.
17304         (http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg00536.html)
17306 2015-11-08  Dmitry Gutov  <dgutov@yandex.ru>
17308         Move and rename xref-find-regexp to the project package
17310         * lisp/progmodes/project.el (project-find-regexp)
17311         (project--read-regexp)
17312         (project--find-regexp-in): New functions.
17314         * lisp/progmodes/xref.el (xref--find-xrefs): Extract from
17315         xref--show-xrefs.  Use in existing callers in place of that
17316         function.
17317         (xref--show-xrefs): Only do the "show" part.
17318         (xref-find-regexp): Rename, more or less, to
17319         project-or-libraries-find-regexp.
17321 2015-11-06  Dmitry Gutov  <dgutov@yandex.ru>
17323         Abolish temporary buffer management for xref
17325         * lisp/progmodes/xref.el (xref--temporary-buffers)
17326         (xref--current)
17327         (xref--inhibit-mark-current)
17328         (xref--mark-selected): Remove.  Remove all references.
17329         (xref--show-xrefs): Do not construct the
17330         list of the temporary buffers, nor pass it along.
17332 2015-11-06  Dmitry Gutov  <dgutov@yandex.ru>
17334         Rename "search path" to "library roots"
17336         * lisp/emacs-lisp/cl-seq.el (cl-set-difference): Retain the order
17337         of the elements from CL-LIST1.
17339         * test/automated/cl-lib-tests.el (cl-lib-test-set-functions):
17340         Update WRT to the above change.
17342         * lisp/progmodes/project.el (project-search-path-function): Rename
17343         to project-library-roots-function, update the documentation and
17344         references.
17345         (project-search-path): Likewise, to project-library-roots.
17346         (project-roots): Clarify documentation.
17347         (project-vc-search-path): Likewise, to project-vc-library-roots.
17348         (project-library-roots): In addition to the renames, thread the
17349         results through file-name-as-directory.
17350         (project-prune-directories): Accept a variable number of
17351         arguments.  Rename to project-combine-directories.
17352         (project-subtract-directories): New function.
17354         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
17355         Append project-roots and project-library-roots together.
17357         * lisp/progmodes/etags.el (etags--xref-find-references): Ditto.
17359 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
17361         Prefer xpalloc to doubling buffers by hand
17363         * src/lread.c (grow_read_buffer): New function, which uses xpalloc.
17364         (read1): Use it for simplicity.
17365         * src/macros.c (store_kbd_macro_char):
17366         * src/minibuf.c (read_minibuf_noninteractive):
17367         * src/term.c (encode_terminal_code):
17368         * src/xrdb.c (magic_db):
17369         Prefer xpalloc to growing buffers by hand.
17370         This doesn’t fix any bugs, but simplifies the code a bit.
17372 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
17374         Merge from gnulib
17376         This incorporates:
17377         2015-11-05 timespec-sub: fix overflow bug; add tests
17378         2015-11-04 intprops: revise _WRAPV macros, revert _OVERFLOW
17379         2015-11-03 intprops: add parentheses
17380         * lib/intprops.h, lib/timespec-add.c, lib/timespec-sub.c:
17381         Copy from gnulib.
17383 2015-11-07  David Reitter  <david.reitter@gmail.com>
17385         Provide NS notification objects where required to eliminate warnings
17387         * src/nsterm.m (windowDidResize:, toggleFullScreen:):
17388         Call notification functions with notification objects
17389         as per delegate APIs.
17391 2015-11-07  Noam Postavsky  <npostavs@users.sourceforge.net>
17393         Add test for bug #21824
17395         * test/automated/buffer-tests.el: New file.
17396         (overlay-modification-hooks-message-other-buf): New test.
17398 2015-11-07  Kelvin White  <kwhite@gnu.org>
17400         * lisp/erc/erc-pcomplete.el (pcomplete-erc-nicks): Fix bug#18771.
17402 2015-11-07  David Reitter  <david.reitter@gmail.com>
17404         Ignore fullscreen exit notifications on NS when frame is dead
17406         * src/nsterm.m (windowDidResize:, windowWillExitFullScreen:)
17407         (windowDidExitFullScreen:): Return if frame is dead.
17408         These functions may be called when a fullscreen frame
17409         is closed; they are called before, not after.
17411         May address Bug#21428.
17413 2015-11-07  Eli Zaretskii  <eliz@gnu.org>
17415         Speed up lookup in redisplay--variables
17417         * lisp/frame.el (redisplay--variables): Make it a hash-table.
17419         * src/xdisp.c (maybe_set_redisplay): Access redisplay--variables
17420         as a hash-table.  This speeds up this function by an order of
17421         magnitude: where previously a setq was slowed down by 100% by
17422         introducing the maybe_set_redisplay test, it is now only 5%
17423         slower.
17424         (syms_of_xdisp) <redisplay--variables>: Doc fix.
17426 2015-11-07  Artur Malabarba  <bruce.connor.am@gmail.com>
17428         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Fix a bug.
17430         The defsubst was being created as:
17431             (cl-defsubst name (args) ("DOC") ...)
17433         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors):
17434         Add test.
17436 2015-11-07  Mihai Olteanu  <mihai_olteanu@fastmail.fm>  (tiny change)
17438         Update doc string of hexl-mode
17440         * lisp/hexl.el (hexl-mode): Doc fix.  (Bug#21800)
17442 2015-11-07  Eli Zaretskii  <eliz@gnu.org>
17444         Fix error in copy-abbrev-table
17446         * lisp/abbrev.el (define-abbrev): Don't erase the :abbrev-table-modiff
17447         property of the abbrev-table.  (Bug#21828)
17449         * test/automated/abbrev-tests.el: New file.
17451 2015-11-07  Michael Albinus  <michael.albinus@gmx.de>
17453         Add test to auto-revert-tests.el for Bug#21841
17455         * test/automated/auto-revert-tests.el
17456         (auto-revert-test01-auto-revert-several-files): New test.
17457         (auto-revert-test02-auto-revert-tail-mode)
17458         (auto-revert-test03-auto-revert-mode-dired): Rename them.
17460 2015-11-07  Martin Rudalics  <rudalics@gmx.at>
17462         * doc/lispref/windows.texi (Coordinates and Windows): Fix typo.
17464 2015-11-07  Martin Rudalics  <rudalics@gmx.at>
17466         In x_consider_frame_title don't set title of tooltip frames
17468         * src/xdisp.c (x_consider_frame_title): Return immediately for
17469         tooltip frames to avoid displaying empty tooltips.
17471 2015-11-06  Anders Lindgren  <andlind@gmail.com>
17473         Fixed NextStep fullscreen problem (bug#21770).
17475         * src/nsterm.m (ns_constrain_all_frames): Don't constrain
17476         fullscreen frames.
17478 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
17480         Ensure redisplay after evaluation
17482         * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp):
17483         Revert last change.
17484         * lisp/frame.el (redisplay--variables): Populate the
17485         redisplay--variables list.
17486         * src/xdisp.c (maybe_set_redisplay): New function.
17487         (syms_of_xdisp) <redisplay--variables>: New variable.
17488         * src/window.h (maybe_set_redisplay): Declare prototype.
17489         * src/data.c (set_internal): Call maybe_set_redisplay.  (Bug#21835)
17491 2015-11-06  Artur Malabarba  <bruce.connor.am@gmail.com>
17493         * test/automated/subr-tests.el (subr-test-when): Fix again.
17495 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
17497         Don't invoke overlay modification hooks in wrong buffer
17499         * src/buffer.c (report_overlay_modification): When called with
17500         AFTER non-zero, don't invoke overlay modification hooks if the
17501         buffer recorded in last_overlay_modification_hooks is different
17502         from the current buffer.  (Bug#21824)
17504 2015-11-06  Juanma Barranquero  <lekktu@gmail.com>
17506         * admin/notes/repo: Fix a few obsolete references to Bazaar.
17508 2015-11-06  Artur Malabarba  <bruce.connor.am@gmail.com>
17510         * test/automated/subr-tests.el (subr-test-when): Fix test.
17512 2015-11-06  Martin Rudalics  <rudalics@gmx.at>
17514         Avoid division by zero crash observed by Yuan MEI
17516         See http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg00194.html.
17518         * src/dispnew.c (required_matrix_height, required_matrix_width):
17519         Avoid division by zero.
17520         * src/xterm.c (x_term_init): Init dpyinfo->smallest_font_height and
17521         dpyinfo->smallest_char_width to 1.
17523 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
17525         Ensure redisplay after "C-x C-e"
17527         * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp): Make sure
17528         redisplay happens to account for any side effects of the evaluated
17529         sexp.  (Bug#21835)
17531 2015-11-06  Michael Albinus  <michael.albinus@gmx.de>
17533         Skip some file notification tests for cygwin
17535         * test/automated/file-notify-tests.el (file-notify--test-with-events):
17536         Remove argument TIMEOUT.  Adapt all callees.
17537         (file-notify-test02-events, file-notify-test04-file-validity):
17538         Skip for cygwin.  (Bug#21804)
17540 2015-11-05  Stephen Leake  <stephen_leake@stephe-leake.org>
17542         * lisp/progmodes/xref.el: Require semantic/symref during compilation.
17544 2015-11-05  Daiki Ueno  <ueno@gnu.org>
17546         Suppress redundant Pinentry startup messages
17548         * lisp/net/pinentry.el (pinentry-start): Add optional QUIET argument.
17549         * lisp/epg.el: Declare `pinentry-start'.
17550         (epg--start): Call `pinentry-start' with QUIET argument set.
17552 2015-11-05  Xue Fuqiao  <xfq.free@gmail.com>
17554         * doc/emacs/ack.texi (Acknowledgments): Updates.
17556 2015-11-05  Juanma Barranquero  <lekktu@gmail.com>
17558         * test/automated/elisp-mode-tests.el: Silence some run-time warnings.
17559         (xref-elisp-deftest): Bind `find-file-suppress-same-file-warnings' to t.
17561 2015-11-05  Tassilo Horn  <tsdh@gnu.org>
17563         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
17564         Add prettification support for \times.
17566 2015-11-05  Juanma Barranquero  <lekktu@gmail.com>
17568         * test/automated/process-tests.el: Skip tests when bash is unavailable.
17569         (process-test-sentinel-accept-process-output)
17570         (process-test-sentinel-sit-for): skip-unless bash executable found.
17572 2015-11-05  Eli Zaretskii  <eliz@gnu.org>
17574         Add test for bug #21831
17576         * test/automated/process-tests.el
17577         (start-process-should-not-modify-arguments): New test.  (Bug#21831)
17578         Suggested by Nicolas Richard <youngfrog@members.fsf.org>
17580 2015-11-04  Stefan Monnier  <monnier@iro.umontreal.ca>
17582         * lisp/emacs-lisp/eieio-compat.el: Typo caught by tests.
17584         (eieio--generic-static-object-generalizer): Fix typo.
17585         * test/automated/eieio-tests.el: Byte-compile it again.  It looks
17586         like the underlying cause of bug#17852 was fixed in the mean time.
17588 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
17590         Revert "* lisp/subr.el (when): Use `macroexp-progn'"
17592         This reverts commit 8e843831eaf271801836b7a3e4dd3b4fb0bb72b8.
17593         It breaks bootstrapping (duh).
17595 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
17597         * lisp/files.el (report-errors): Obsolete.
17599         (normal-mode, hack-local-variables, dir-locals-find-file):
17600         Use `with-demoted-errors' instead.
17602 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
17604         * lisp/subr.el (when): Use `macroexp-progn'.
17606         * test/automated/subr-tests.el (subr-test-when): New test.
17608 2015-11-04  Juanma Barranquero  <lekktu@gmail.com>
17610         * lisp/progmodes/xref.el: Doc fixes.
17611         (xref-make-file-location, xref-make-buffer-location, xref-make)
17612         (xref-make-bogus-location, xref-make-match): Add cross-references.
17613         (xref--insert-xrefs): Fix typo in docstring.
17615 2015-11-04  Anders Lindgren  <andlind@gmail.com>
17617         Render fringe bitmaps correctly on NextStep (bug#21301)
17619         The fringe bitmaps were inverted, the background was not transparent,
17620         the image data was horizontally mirrored, and periodic fringe bitmaps
17621         were not supported.
17623         * src/nsimage.m ([EmacsImage initFromXBM:width:height:fg:bg:]):
17624         When both background and foreground colors are 0, set the background
17625         alpha channel to 0 (making the background transparent).  When
17626         copying the image data, do this from the most significant bit
17627         (leftmost) to the least (rightmost), to avoid mirroring.
17628         * src/nsterm.m (ns_draw_fringe_bitmap): Don't invert the image bits.
17629         Add support for periodic images (e.g. the empty line indicator).
17631 2015-11-03  Michael Heerdegen  <michael_heerdegen@web.de>
17633         * lisp/emacs-lisp/pcase.el (pcase): Tweak docstring.
17635 2015-11-03  Nicolas Petton  <nicolas@petton.fr>
17637         * admin/MAINTAINERS: Add seq-tests.el, map-tests.el, and thunk-tests.el.
17639         * admin/MAINTAINERS: Add thunk.el.
17641 2015-11-03  Jay Belanger  <jay.p.belanger@gmail.com>
17643         * lisp/calc/calc.el (calc-bug-address): Change maintainer address.
17645 2015-11-03  Michael Albinus  <michael.albinus@gmx.de>
17647         Fix a stupid error in gfilenotify.c
17649         * src/gfilenotify.c (dir_monitor_callback): Cancel monitor only,
17650         if we've got a `deleted' signal AND the file name is the watched one.
17652 2015-11-03  Stephen Leake  <stephen_leake@stephe-leake.org>
17654         Fix Bug#21816; case insensitive file system in elisp-mode-tests.el
17656         * test/automated/elisp-mode-tests.el (xref-elisp-test-run):
17657         Use case-insensitive string compare for file names.
17658         (emacs-test-dir): Add 'downcase' to cause case differences (at
17659         least on my system).
17661 2015-11-02  Juanma Barranquero  <lekktu@gmail.com>
17663         flymake-tests.el (warning-predicate-rx-gcc): Fix check
17665         * test/automated/flymake-tests.el (warning-predicate-rx-gcc):
17666         Also check that "make" is available, not just "gcc".
17668 2015-11-02  Ken Brown  <kbrown@cornell.edu>
17670         Document behavior of collation on Cygwin
17672         * test/automated/fns-tests.el (fns-tests-collate-sort): Mark as
17673         expected failure on Cygwin.
17674         * doc/lispref/strings.texi (Text Comparison): Document that
17675         punctuation and whitespace are not ignored for sorting on Cygwin.
17677 2015-11-02  Dani Moncayo  <dmoncayo@gmail.com>
17679         * build-aux/msys-to-w32: Prevent double slashes in w32 path list.
17681 2015-11-01  Glenn Morris  <rgm@gnu.org>
17683         * lisp/progmodes/f90.el (f90-no-block-limit): Add associate.
17684         (Bug#21794)
17685         * test/automated/f90.el (f90-test-bug21794): New test.
17687 2015-11-01  Juanma Barranquero  <lekktu@gmail.com>
17689         Fix incompatibility with TCC in test for bug#18745
17691         * test/automated/process-tests.el (process-test-quoted-batfile):
17692         Remove spaces unrelated to the bug being tested.
17694 2015-11-01  Michael Albinus  <michael.albinus@gmx.de>
17696         Improve completion in tramp-gvfs.el
17698         * lisp/net/tramp-gvfs.el (tramp-zeroconf-parse-device-names):
17699         Rename from `tramp-zeroconf-parse-service-device-names'.
17700         (tramp-zeroconf-parse-webdav-device-names): Remove.  Code merged
17701         with `tramp-zeroconf-parse-device-names'.
17702         (tramp-gvfs-parse-device-names): New defun.
17703         (top): Use it when `tramp-zeroconf-parse-device-names' is not
17704         applicable.
17706         * lisp/net/tramp.el (tramp-set-completion-function): The argument
17707         could also be a zeroconf service type.
17709 2015-10-31  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
17711         * lisp/net/ntlm.el: Change version to 2.0.0.
17713 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
17715         Fix bug#21762
17716         * lisp/progmodes/python.el (python-syntax-closing-paren-p): Check with
17717         `eql' instead of `=' to accommodate the case that (syntax-after (point))
17718         returns nil.
17719         * test/automated/python-tests.el (python-indent-inside-paren-7):
17720         New test.
17722 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
17724         * test/automated/python-tests.el: Avoid warnings.
17725         (python-tests-with-temp-buffer, python-tests-with-temp-file):
17726         Bind `python-indent-guess-indent-offset' to nil.
17728 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
17730         * src/alloc.c: Silence compiler warnings.
17731         (pointers_fit_in_lispobj_p, mmap_lisp_allowed_p): #ifdef DOUG_LEA_MALLOC.
17733 2015-10-31  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
17735         * etc/NEWS: Fix js-jsx-mode entry punctuation.
17737 2015-10-31  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
17739         Add JSX indentation via js-jsx-mode  (Bug#21799)
17741         * lisp/progmodes/js.el: Add JSX indentation support.
17742         (js--jsx-end-tag-re)
17743         (js--jsx-after-tag-re): New variables.
17744         (js--jsx-find-before-tag)
17745         (js--jsx-indented-element-p)
17746         (js--as-sgml)
17747         (js--expression-in-sgml-indent-line)
17748         (js-jsx-indent-line)
17749         (js-jsx-mode): New functions.
17750         * test/indent/js-jsx.js: New file.
17751         * etc/NEWS: Add information about js-jsx-mode.
17753 2015-10-31  Michael Albinus  <michael.albinus@gmx.de>
17755         Minor fix in filenotify.el
17757         * lisp/filenotify.el (file-notify--event-file-name)
17758         (file-notify--event-file1-name): Normalize result with
17759         `directory-file-name'.
17761 2015-10-31  Eli Zaretskii  <eliz@gnu.org>
17763         Avoid errors in redisplay--pre-redisplay-functions
17765         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect): Don't
17766         use 'bobp', instead compare window-point with 1.  (Bug#21730)
17768 2015-10-30  Paul Eggert  <eggert@cs.ucla.edu>
17770         Merge from gnulib
17772         This incorporates:
17773         2015-10-30 intprops: add WRAPV and const flavors for GCC 5
17774         2015-10-25 stdalign: port to Sun C 5.9
17775         * doc/misc/texinfo.tex, lib/intprops.h, lib/stdalign.in.h:
17776         Copy from gnulib.
17778 2015-10-30  Eli Zaretskii  <eliz@gnu.org>
17780         * src/w32proc.c (_NLSCMPERROR): Fix a typo in the name of this macro.
17781         (w32_compare_strings): Adjust for the correction.
17783 2015-10-30  Michael Albinus  <michael.albinus@gmx.de>
17785         * test/automated/vc-tests.el (vc-test--state)
17786         (vc-test--working-revision, vc-test--checkout-model):
17787         Add result messages.
17789 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
17791         * test/automated/faces-tests.el: Add another test
17793 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
17795         * lisp/faces.el (faces--attribute-at-point): Fix bug
17796         introduced by previous commit.
17798 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
17800         * test/automated/faces-tests.el: New file.
17802 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
17804         * lisp/faces.el: Refactor common code and fix a bug.
17805         (faces--attribute-at-point): New function.  Fix a bug when the
17806         face at point is a list of faces and the desired attribute is not
17807         on the first one.
17808         (foreground-color-at-point, background-color-at-point): Use it.
17810 2015-10-30  Przemysław Wojnowski  <esperanto@cumego.com>
17812         * etc/tutorials/TUTORIAL.translators: Fix PL names.
17814 2015-10-30  Juanma Barranquero  <lekktu@gmail.com>
17816         * lisp/character-fold.el: Provide `character-fold'.
17818 2015-10-30  Tassilo Horn  <tsdh@gnu.org>
17820         * etc/themes/tsdh-dark-theme.el (tsdh-dark): Add more faces
17821         for Gnus and ivy.
17823 2015-10-30  Michael Albinus  <michael.albinus@gmx.de>
17825         Some minor fixes for tramp-gvfs.el
17827         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
17828         An attribute returned by gvfs-info might be empty.  In case of
17829         undetermined uid or gid, return "UNKNOWN" or -1, respectively.
17830         (tramp-zeroconf-parse-service-device-names): New defun.
17831         Derived from `tramp-zeroconf-parse-workstation-device-names'.
17832         (top): Add completion functions for "afp" and "smb" methods.
17834 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
17836         * test/automated/character-fold-tests.el: New file
17838 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
17840         * test/automated/sort-tests.el: New file.
17841         Tests in this file are randomly generated and then tested with
17842         regular, reverse, and case-fold sorting.
17844 2015-10-30  Eli Zaretskii  <eliz@gnu.org>
17846         Describe known problems with pinning Emacs to taskbar
17848         * etc/PROBLEMS: Describe the problem with pinning Emacs to taskbar
17849         on Windows 10.  For the details, see the discussion starting at
17850         http://lists.gnu.org/archive/html/help-emacs-windows/2015-09/msg00000.html.
17852 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
17854         * lisp/isearch.el: Avoid an error that blocks isearch.
17855         (isearch-update): Don't error if `isearch--current-buffer' has
17856         been killed.
17858         * test/automated/isearch-tests.el (isearch--test-update):
17859         New file.
17861 2015-10-30  Phil Sainty  <psainty@orcon.net.nz>
17863         Fix documentation of 'beginning/end-of-buffer'
17865         * lisp/simple.el (beginning-of-buffer, end-of-buffer): Clarify
17866         conditions under which the mark will be pushed at the previous
17867         position.  (Bug#21748)
17869 2015-10-30  Tassilo Horn  <tsdh@gnu.org>
17871         Add RefTeX feature idea: editing RefTeX TOC buffers
17873         More face defs for ivy, swiper, ace-window, eshell
17875 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
17877         * lisp/gnus/auth-source.el: Silence lexical-binding warnings.
17878         (auth-source-netrc-use-gpg-tokens): Simplify (symbol-value 'VAR) to
17879         just VAR.
17880         (auth-source-backend-parse): Use make-instance.
17881         (auth-source-search): Remove unused key args.
17882         Remove unused vars `accessor-key' and `backend'.  Avoid `eval'.
17883         (auth-source-search-backends): Use slot names rather than their initarg.
17884         (auth-source-netrc-create):
17885         (auth-source-delete):
17886         (auth-source-secrets-create, auth-source-plstore-search)
17887         (auth-source-macos-keychain-create, auth-source-macos-keychain-search)
17888         (auth-source-plstore-create, auth-source-netrc-search)
17889         (auth-source-netrc-parse): Remove unused key args.
17890         (auth-source-forget+): Simplify the arglist.
17891         (auth-source-macos-keychain-search-items)
17892         (auth-source-token-passphrase-callback-function): Mark unused args.
17893         (auth-source-epa-extract-gpg-token): Remove unused var `plain'.
17894         (pp-escape-newlines): Declare.
17895         (auto-source--symbol-keyword): New function.
17896         (auth-source-plstore-create, auth-source-netrc-create)
17897         (auth-source-netrc-normalize): Use it.
17898         (auth-source-netrc-search): Don't pass :delete to
17899         auth-source-netrc-parse since it doesn't use it.
17900         (auth-source-plstore-create, auth-source-netrc-create): Use plist-get
17901         symbol-value to index in keyword args.
17902         (auth-source-macos-keychain-result-append): Avoid setq.
17903         (auth-source-netrc-create): Remove unused vars `file' and `add'.
17904         (auth-source-user-or-password): Remove unused var `cname'.
17906 2015-10-29  Juri Linkov  <juri@linkov.net>
17908         * lisp/dired.el (dired-unmark-all-files-query): Declare.
17909         (dired-unmark-all-files): Let-bind it and use instead of ‘query’.
17910         (Bug#21746)
17912 2015-10-29  Juri Linkov  <juri@linkov.net>
17914         * lisp/ielm.el (ielm-indent-line): Use non-nil arg of comint-bol
17915         to go to the beginning of text line instead of command line.
17916         http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02360.html
17918 2015-10-29  Eli Zaretskii  <eliz@gnu.org>
17920         Fix encoding of saving *Help* buffers
17922         * lisp/help-fns.el (describe-function-1): If we use curved quotes,
17923         set help buffer's buffer-file-coding-system to UTF-8.  (Bug#21780)
17925 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
17927         * lisp/emacs-lisp/cl-generic.el: Add (major-mode MODE) context.
17928         (cl--generic-derived-specializers): New function.
17929         (cl--generic-derived-generalizer): New generalizer.
17930         (cl-generic-generalizers): New specializer (derived-mode MODE).
17931         (cl--generic-split-args): Apply the rewriter, if any.
17932         (cl-generic-define-context-rewriter): New macro.
17933         (major-mode): Use it to define a new context-rewriter, so we can write
17934         `(major-mode MODE)' instead of `(major-mode (derived-mode MODE))'.
17936         * lisp/frame.el (window-system): New context-rewriter so we can write
17937         `(window-system VAL)' instead of (window-system (eql VAL)).
17938         (cl--generic-split-args): Apply the rewriter, if any.
17939         (frame-creation-function): Use the new syntax.
17941         * lisp/term/x-win.el (window-system-initialization)
17942         (handle-args-function, frame-creation-function)
17943         (gui-backend-set-selection, gui-backend-selection-owner-p)
17944         (gui-backend-selection-exists-p, gui-backend-get-selection):
17945         * lisp/term/w32-win.el (window-system-initialization)
17946         (handle-args-function, frame-creation-function)
17947         (gui-backend-set-selection, gui-backend-get-selection)
17948         (gui-backend-selection-owner-p, gui-backend-selection-exists-p):
17949         * lisp/term/pc-win.el (gui-backend-get-selection)
17950         (gui-backend-selection-exists-p, gui-backend-selection-owner-p)
17951         (gui-backend-set-selection, window-system-initialization)
17952         (frame-creation-function, handle-args-function):
17953         * lisp/term/ns-win.el (window-system-initialization)
17954         (handle-args-function, frame-creation-function)
17955         (gui-backend-set-selection, gui-backend-selection-exists-p)
17956         (gui-backend-get-selection):
17957         * lisp/startup.el (handle-args-function):
17958         * lisp/term/xterm.el (gui-backend-get-selection)
17959         (gui-backend-set-selection): Use the new syntax.
17961 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
17963         * test/indent/css-mode.css: Add tests for url(...) syntax.
17965 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
17967         * lisp/emacs-lisp/smie.el: Use `declare' for `pure'.
17968         (smie-precs->prec2, smie-merge-prec2s, smie-bnf->prec2)
17969         (smie-prec2->grammar): Use `declare'.
17971 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
17973         * lisp/emacs-lisp/cl-generic.el: Accommodate future changes.
17974         (cl--generic-generalizer): Add `name' field.
17975         (cl-generic-make-generalizer): Add corresponding `name' argument.
17976         (cl-generic-define-generalizer): New macro.
17977         (cl--generic-head-generalizer, cl--generic-eql-generalizer)
17978         (cl--generic-struct-generalizer, cl--generic-typeof-generalizer)
17979         (cl--generic-t-generalizer): Use it.
17980         (cl-generic-ensure-function): Add `noerror' argument.
17981         (cl-generic-define): Use it so we don't follow aliases.
17982         (cl-generic-define-method): Preserve pre-existing ordering of methods.
17983         (cl--generic-arg-specializer): New function.
17984         (cl--generic-cache-miss): Use it.
17985         (cl-generic-generalizers): Only fset a temporary definition
17986         during bootstrap.
17987         (cl--generic-struct-tag, cl--generic-struct-specializers):
17988         Allow extra arguments.
17990         * lisp/emacs-lisp/eieio-compat.el
17991         (eieio--generic-static-symbol-generalizer)
17992         (eieio--generic-static-object-generalizer):
17993         Use cl-generic-define-generalizer.
17994         (eieio--generic-static-symbol-specializers): Allow extra arguments.
17996         * lisp/emacs-lisp/eieio-core.el (eieio--generic-generalizer)
17997         (eieio--generic-subclass-generalizer):
17998         Use cl-generic-define-generalizer.
17999         (eieio--generic-subclass-specializers): Allow extra arguments.
18001 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
18003         * lisp/emacs-lisp/bytecomp.el (compile-defun): Add defvars in scope.
18005 2015-10-29  Michael Albinus  <michael.albinus@gmx.de>
18007         Add "afp" method to Tramp
18009         * doc/misc/tramp.texi (GVFS based methods): Describe `afp' method.
18011         * lisp/net/tramp-gvfs.el (tramp-gvfs-methods): Add "afp" method.
18012         (tramp-gvfs-handle-expand-file-name)
18013         (tramp-gvfs-handler-mounted-unmounted)
18014         (tramp-gvfs-connection-mounted-p, tramp-gvfs-mount-spec)
18015         (tramp-gvfs-maybe-open-connection): Support also "afp".
18016         (tramp-gvfs-handle-file-attributes): Handle the case of empty
18017         "owner::user" and "owner::group" entries.
18019 2015-10-29  Andy Moreton  <andrewjmoreton@gmail.com>
18021         Handle negative coordinates in ‘x_calc_absolute_position’
18023         * src/w32term.c (x_calc_absolute_position): Find display origin to
18024         allow for negative coordinates.
18026 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
18028         (internal--syntax-propertize): Save match-data here (bug#21766)
18030         * lisp/emacs-lisp/syntax.el (internal--syntax-propertize): Save match-data.
18031         * lisp/simple.el (delete-trailing-whitespace): Undo last change.
18033 2015-10-28  Dmitry Gutov  <dgutov@yandex.ru>
18035         Don't require default-directory to end with a slash
18037         * doc/lispref/files.texi (Magic File Names): Document the change
18038         in unhandled-file-name-directory.
18040         * lisp/url/url-handlers.el
18041         (url-handler-unhandled-file-name-directory): Update accordingly.
18043         * src/buffer.c (default-directory): Update the docsting.
18045         * src/fileio.c (unhandled-file-name-directory): Default to calling
18046         `file-name-as-directory'
18047         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02294.html).
18049 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
18051         * lisp/isearch.el: Delete some outdated comments.
18053 2015-10-28  Vibhav Pant  <vibhavp@gmail.com>
18055         Fix eshell/clear not working if the output has a small line count
18057         * lisp/eshell/esh-mode.el (eshell/clear): Use (window-size) as the
18058         number of newlines to be inserted. This fixes the issue where
18059         eshell/clear wouldn't work if the prompt was not at the bottom of the
18060         window, and the output wasn't too long.
18062 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
18064         * lisp/files.el (write-file): Use vc-refresh-state.
18066         * lisp/autorevert.el (auto-revert-handler): Use vc-refresh-state.
18068         * lisp/vc/pcvs.el (cvs-revert-if-needed): Use vc-refresh-state.
18070 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
18072         * lisp/emacs-lisp/macroexp.el: Tweak macroexp-if optimizations.
18073         (macroexp-unprogn): Make sure we never return an empty list.
18074         (macroexp-if): Remove unused (and unsafe) optimization.
18075         Optimize (if A T (if B T E)) into (if (or A B) T E) instead, which does
18076         occur occasionally.
18078 2015-10-28  Juanma Barranquero  <lekktu@gmail.com>
18080         Fix bug#21766 and add test
18081         * lisp/simple.el (delete-trailing-whitespace): Save match data when
18082         calling `skip-syntax-backward'.
18083         * test/automated/simple-test.el (simple-delete-trailing-whitespace):
18084         New test.
18086 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
18088         * doc/lispref/sequences.texi (Sequence Functions): Fix typo.
18090 2015-10-28  Paul Eggert  <eggert@cs.ucla.edu>
18092         * src/dispnew.c (init_display): Simplify overflow checking.
18094 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
18096         * lisp/character-fold.el (character-fold-to-regexp): Fix case
18097         where string ends in space
18099 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
18101         * lisp/emacs-lisp/seq.el (seq-mapn): New function.
18103         * doc/lispref/sequences.texi (Sequence Functions): Document seq-mapn.
18105 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
18107         * lisp/character-fold.el: Make compatible with lax-whitespace.
18108         (character-fold-to-regexp): Rework internals to play nice with
18109         lax-whitespacing.
18111         When the user types a space, we want to match the table entry for
18112         ?\s, which is generally a regexp like "[ ...]".  However, the
18113         `search-spaces-regexp' variable doesn't "see" spaces inside these
18114         regexp constructs, so we need to use "\\( \\|[ ...]\\)" instead (to
18115         manually expose a space).
18117         Furthermore, the lax search engine acts on a bunch of spaces, not
18118         on individual spaces, so if the string contains sequential spaces
18119         like "  ", we need to keep them grouped together like this:
18120         "\\(  \\|[ ...][ ...]\\)".
18122 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
18124         * lisp/isearch.el: Refactor momentary messages.
18125         (isearch--momentary-message): New function.
18126         (isearch-toggle-lax-whitespace, isearch-toggle-case-fold)
18127         (isearch-toggle-invisible): Use it.
18129 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
18131         * lisp/isearch.el: Define all toggles with `isearch-define-mode-toggle'.
18132         (isearch-define-mode-toggle): New macro.
18133         (isearch-toggle-invisible): Rename to
18134         `isearch-define-mode-toggle'.
18135         (isearch-toggle-case-fold, isearch-toggle-invisible)
18136         (isearch-toggle-regexp, isearch-toggle-lax-whitespace): Define
18137         with `isearch-define-mode-toggle'.
18139 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
18141         Avoid using `add-to-list' on a let-local var in tramp-smb.el
18143         * lisp/net/tramp-compat.el (tramp-compat-delete-dups): New defun.
18144         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files): Use it.
18146 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
18148         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files):
18149         Revert 692bce5b9eccfae19ae2a5a23a9ccd8d6bf86076, `delete-dups'
18150         does not exist in XEmacs 21.4.
18152 2015-10-28  Anders Lindgren  <andlind@gmail.com>
18154         Fixed OS X startup crash
18156         Input events started to arrive before ns_term_init() was finished.
18157         Solved by blocking input.  This also seems to correct the "You
18158         can't open the application "Emacs" because it may be damaged or
18159         incomplete" error issued when double-clicking on the Emacs
18160         application.
18162         * src/nsterm.m (ns_constrain_all_frames, ns_init_term): Block input.
18163         * src/nsterm.m (ns_send_appdefined, EmacsApp): Trace output.
18165 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
18167         * src/process.c (Fget_buffer_process): Improve docstring.
18168         Document the fact that it doesn't return dead processes.
18170 2015-10-28  Anders Lindgren  <andlind@gmail.com>
18172         Fix incorrect NextStep tool-bar-mode -- wrong number of rows in frame.
18174         * src/nsterm.h (struct ns_output): New flag, in_animation.
18175         * src/nsfns.m (Fx_create_frame): Initialize in_animation flag.
18176         * src/nsmenu.m (free_frame_tool_bar, update_frame_tool_bar): Set
18177         in_animation flag around call to "setVisible". Set new tool bar
18178         height before call to setVisible.
18179         * src/nsterm.m (x_set_window_size): Don't call [view setRow:
18180         andColumns:] as this fools the subsequent call to updateFrameSize
18181         from performing the real resize.
18182         (windowDidResize): Don't update anything when in_animation is
18183         non-zero.
18185         Trace output.
18187         * src/nsmenu.m (free_frame_tool_bar, update_frame_tool_bar)
18188         (EmacsToolbar):
18189         * src/nsterm.m (x_set_window_size, updateFrameSize)
18190         ([EmacsView setRows: andColumns:])
18192 2015-10-28  Nicolas Petton  <nicolas@petton.fr>
18194         * lisp/emacs-lisp/thunk.el (thunk-delay): Fix the macro.
18196 2015-10-28  Tassilo Horn  <tsdh@gnu.org>
18198         Prettify TeX macros not ending in a word char
18200         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
18201         Prettify macros which don't end in a word character.
18203 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
18205         Pipe Hg commit descriptions through 'tabindent'
18207         * lisp/vc/vc-hg.el (vc-hg-log-format): Pipe commit description
18208         through 'tabindent'.
18209         (vc-hg-log-view-mode): Set tab-width to 2 locally.
18210         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02259.html)
18212 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
18214         * lisp/net/tramp-smb.el: Avoid using `add-to-list' on a let-local var.
18215         (tramp-smb-handle-directory-files): Use `delete-dups'.
18217         * lisp/net/tramp.el (auto-save-file-name-transforms): Declare.
18219 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
18221         * lisp/international/ccl.el: Use lexical-binding.
18222         (ccl-compile-if): Remove unused var `false-ic'.
18223         (ccl-compile-write-repeat): Remove unused var `i'.
18224         (ccl-compile-map-single): Remove unused var `id'.
18225         (ccl-dump, ccl-dump-binary): Use explicit let-binding to bind the
18226         dynamic var `ccl-code'.
18228 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
18230         * lisp/json.el (json-new-object): Optimize trivial `list' call.
18232 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
18234         * lisp/help.el: Fix bug with incorrect arglist string.
18235         (help-add-fundoc-usage): Don't mistake a mis-formatted string
18236         for a list.
18238 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
18240         * lisp/gnus/gnus-topic.el: Silence some warnings.
18241         (gnus-topic-prepare-topic): Remove unused var `topic'.
18242         (gnus-topic-remove-topic): Mark unused arg `hide'.
18243         (gnus-tmp-header): Declare.
18244         (gnus-topic-goto-missing-group): Remove unused var `entry'.
18245         (gnus-topic-unmark-topic): Mark unused arg `dummy'.
18246         (gnus-topic-copy-matching): Mark unused arg `copyp'.
18247         Move initialization of `topic' into its declaration.
18249 2015-10-27  Stephen Leake  <stephen_leake@stephe-leake.org>
18251         Minor CEDET fixes
18253         * lisp/cedet/cedet-global.el (cedet-gnu-global-gtags-call):
18254         Handle warnings from gtags about invalid options.
18255         (cedet-gnu-global-create/update-database): Do incremental update
18256         properly.
18258         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
18259         Get monotone root right.
18261 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
18263         Fall back to polling in autorevert when needed
18265         * lisp/autorevert.el (auto-revert-notify-handler): When a
18266         `stopped' event arrives from file notification, fall back to polling.
18268         * test/automated/file-notify-tests.el
18269         (file-notify-test03-autorevert): Extend test for polling when file
18270         notification ceases to work.
18272 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
18274         Show full commit messages in 'hg log' when appropriate
18276         * lisp/vc/vc-hg.el (vc-hg-log-format): New variable.
18277         (vc-hg-print-log, vc-hg-expanded-log-entry): Use it.
18278         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02191.html)
18280 2015-10-27  Nicolas Petton  <nicolas@petton.fr>
18282         Use a plain SVG file for the icon
18284         * etc/images/icons/hicolor/scalable/apps/emacs.svg: Use a plain SVG
18285           format instead of the Inkscape SVG format.
18287 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
18289         Fix subtle bug in auto-revert-tests.el
18291         * test/automated/auto-revert-tests.el
18292         (auto-revert-test02-auto-revert-mode-dired): Narrow *Messages*
18293         buffer where it belongs to.  (Bug#21668)
18295 2015-10-26  Nicolas Petton  <nicolas@petton.fr>
18297         * lisp/emacs-lisp/map.el: Better docstrings.
18299         * lisp/emacs-lisp/seq.el: Better docstrings.
18301         * lisp/emacs-lisp/seq.el: Rename all seq arguments to sequence.
18303 2015-10-26  Phillip Lord  <phillip.lord@russet.org.uk>
18305         * lisp/emacs-lisp/ert.el: Print results without newline escaping.
18307 2015-10-26  Stephen Leake  <stephen_leake@stephe-leake.org>
18309         Clarify that load-path contents should be directory file names
18311         * doc/lispref/files.texi (Directory Names): Define and use "directory
18312         file name".  Recommend `expand-file-name'.
18314         * src/lread.c (load-path): Fix doc string; elements are directory file
18315         names.
18317 2015-10-26  Eli Zaretskii  <eliz@gnu.org>
18319         Fix simple-test.el test
18321         * test/automated/simple-test.el (simple-test--dummy-buffer):
18322         Make sure indentation doesn't use TABs, otherwise the 6th test
18323         might fail.
18325 2015-10-26  Mark Oteiza  <mvoteiza@udel.edu>
18327         * lisp/net/eww.el (eww-bookmark-prepare): Use truncate-string-to-width.
18328         `substring' does not account for full width characters.
18330 2015-10-26  Michael Albinus  <michael.albinus@gmx.de>
18332         Further work on `stopped' events in filenotify.el
18334         * doc/lispref/os.texi (File Notifications): Rework examples.
18336         * lisp/filenotify.el (file-notify--rm-descriptor): Optional parameter.
18337         (file-notify--rm-descriptor, file-notify-callback): Improve check
18338         for sending `stopped' event.
18339         (file-notify-add-watch): Check for more events for `inotify'.
18341         * test/automated/file-notify-tests.el
18342         (file-notify--test-expected-events): New defvar.
18343         (file-notify--test-with-events): Use it.
18344         (file-notify--test-cleanup): Make it more robust when deleting
18345         directories.
18346         (file-notify--test-event-test): Check also for watched directories.
18347         (file-notify--test-event-handler): Suppress temporary .#files.
18348         (file-notify-test02-events, file-notify-test04-file-validity):
18349         Rework `stopped' events.
18350         (file-notify-test05-dir-validity): Wait for events when appropriate.
18352 2015-10-26  Artur Malabarba  <bruce.connor.am@gmail.com>
18354         * src/keyboard.c (post-command-hook): Shorten docstring.
18356 2015-10-26  Tassilo Horn  <tsdh@gnu.org>
18358         Fix infinite loop in sh-script's SMIE code
18360         * lisp/progmodes/sh-script.el (sh-smie-sh-forward-token): Fix infinite
18361         loop (bug#21747).
18363 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
18365         * lisp/isearch.el (search-default-regexp-mode): Revert to nil.
18366         Character-fold search _still_ doesn't play well with
18367         lax-whitespace.  So disable it by default (again) for now.
18369 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
18371         * lisp/isearch.el: No visual feedback for default search mode.
18372         During an isearch where character-folding is the default, we don't
18373         want to take up minibuffer space just to tell the user that
18374         "Char-fold " is on.  The same goes for other modes, if the user
18375         changes the default.  In contrast, if the user toggles OFF the
18376         default mode, they should see "Literal", to distinguish it from
18377         the default mode.
18378         (isearch--describe-regexp-mode): Return "" if describing the
18379         default mode, and return "literal " if describing a plain search
18380         and it is not default.
18382 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
18384         * test/automated/simple-test.el: New file.
18385         Define tests for `newline' and `open-line'.
18387 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
18389         * lisp/simple.el (open-line): Integrate with electric-indent-mode.
18390         Also run `post-self-insert-hook' when called interactively.
18392 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
18394         * lisp/simple.el (open-line): Fix docstring.
18395         Also explain apparently redundant line.
18397 2015-10-25  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
18398             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
18400         Sync with soap-client repository, version 3.0.1
18402         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
18403         Bump version to 3.0.1.
18405         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Update home page.
18407 2015-10-25  Eli Zaretskii  <eliz@gnu.org>
18409         * lisp/progmodes/grep.el (grep): Doc fix.  (Bug#21754)
18411 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
18413         * src/keyboard.c (post-command-hook): Extend the docstring.
18414         Mainly, explain how to use it without hanging Emacs, or giving the
18415         impression that it is hanging.  Also mention `pre-command-hook'.
18416         (pre-command-hook): Mention `post-command-hook'.
18418 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
18420         * lisp/custom.el (custom-declare-variable): Shorten code again.
18421         Without using pcase this time.  We can't use pcase because it is
18422         loaded after custom in loadup.el.  Also add a comment explaining
18423         this to future dummies like me.
18425 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
18427         * doc/lispref/os.texi (File Notifications): Document `stopped event'.
18429 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
18431         Introduce `stopped' event in file notification
18433         * lisp/filenotify.el (file-notify--rm-descriptor): New defun.
18434         (file-notify-rm-watch): Use it.
18435         (file-notify-callback): Implement `stopped' event.
18436         (file-notify-add-watch): Mention `stopped' in the docstring.
18437         Check, that upper directory exists.
18439         * test/automated/file-notify-tests.el (file-notify-test01-add-watch):
18440         Add two test cases.
18441         (file-notify-test02-events): Handle also `stopped' event.
18442         (file-notify-test04-file-validity): Add another test case.
18444 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
18446         Revert commit that broke 'make bootstrap'
18448         * lisp/custom.el (custom-declare-variable): Revert commit
18449         79fac080d277fed07b3c192890ad59d36d9f83b6.  custom.el needs to work
18450         even when pcase has not been defined yet, when doing bootstrapping.
18452 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
18454         Port recent inline functions fix to Standard C
18456         * src/lisp.h (LISP_MACRO_DEFUN, LISP_MACRO_DEFUN_VOID): Remove.
18457         All uses rewritten to define the function directly rather than to
18458         use a macro to define the function.  This conforms to Standard C,
18459         which does not allow stray semicolons at the top level.  I hope it
18460         also avoids the problems with TAGS.  Those macros, though clever,
18461         were pretty confusing anyway, and it wasn’t clear they were worth
18462         the aggravation even without the TAGS problem.
18464 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
18466         * lisp/isearch.el: Make character-fold search the default again.
18468 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
18470         * lisp/character-fold.el: Many improvements.
18471         (character-fold-search-forward, character-fold-search-backward):
18472         New command.
18473         (character-fold-to-regexp): Remove lax-whitespace hack.
18474         (character-fold-search): Remove variable.  Only isearch and
18475         query-replace use char-folding, and they both have their own
18476         variables to configure that.
18478 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
18480         * lisp/isearch.el: Generalize definition of regexp-function toggles.
18481         (isearch-specify-regexp-function): New macro for specifying
18482         possible values of `isearch-regexp-function'.
18483         (isearch-toggle-character-fold, isearch-toggle-symbol)
18484         (isearch-toggle-word): Define with `isearch-specify-regexp-function'.
18486 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
18488         * lisp/isearch.el (search-default-regexp-mode): New variable.
18489         (isearch-mode): Use it.
18491 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
18493         * lisp/isearch.el (search-exit-option, search-slow-window-lines)
18494         (search-slow-speed, search-upper-case)
18495         (search-nonincremental-instead, search-whitespace-regexp)
18496         (search-invisible, isearch-hide-immediately)
18497         (isearch-resume-in-command-history, search-ring-max)
18498         (regexp-search-ring-max, search-ring-update, search-highlight)
18499         (isearch-fail): Delete :group entries.
18501 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
18503         * lisp/custom.el (custom-declare-variable): Shorten code a bit.
18505 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
18507         addpm.c: Silence some warnings.
18509         * nt/addpm.c (DdeCommand): Cast pData argument of DdeClientTransaction
18510         to LPBYTE.
18511         (add_registry): Pass NULL to optional lpClass argument of
18512         RegCreateKeyEx, not an empty string.
18514 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
18516         addpm.c: Do not add obsolete GTK libraries to the path.
18518         * nt/addpm.c (REG_GTK, REG_RUNEMACS_PATH): Delete.
18519         (add_registry): Remove variables `size' and `gtk_key'.
18520         Do not add the GTK DLL directory to the library search path; it is
18521         confusing behavior (in particular, the same Emacs version with and
18522         without invoking addpm will use a different path), and the GTK image
18523         libraries are obsolete anyway.
18525 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
18527         addpm.c: Replace existing registry entries, but do not create new ones
18529         * nt/addpm.c (add_registry): If the Emacs registry key exists, replace
18530         existing values from previous versions, but do not add new ones; the
18531         key could exist for other reasons unrelated to old Emacsen, like X-style
18532         resources, or to set some environment variables like HOME or LANG, and
18533         in that case we don't want to populate it with obsolete values.
18535 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
18537         * nt/addpm.c (add_registry): Do not compute unused return value.
18539 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
18541         addpm.c: Don't pass REG_OPTION_NON_VOLATILE to RegOpenKeyEx
18543         * nt/addpm.c (add_registry): Pass 0 to ulOptions argument of
18544         RegOpenKeyEx, not REG_OPTION_NON_VOLATILE.  This doesn't change
18545         current behavior because REG_OPTION_NON_VOLATILE is defined to
18546         be 0L anyway, but that option is actually documented only for
18547         RegCreateKeyEx.
18549 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
18551         * src/w32notify.c (Fw32notify_add_watch): Fix version check.
18553 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
18555         Update frame title when redisplay scrolls selected window
18557         * src/xdisp.c (redisplay_window): Reconsider the frame's title
18558         when the mode-line of the frame's selected window needs to be
18559         updated.
18561 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
18563         Update frame title when scrolling the selected window
18565         * src/window.c (wset_update_mode_line): New function, sets either
18566         the window's update_mode_line flag or the global update_mode_lines
18567         variable.
18568         (Fset_window_start, set_window_buffer, window_scroll_pixel_based)
18569         (window_scroll_line_based): Call it instead of only setting the
18570         window's update_mode_line flag.
18572 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
18574         An even better fix for bug#21739
18576         * src/window.c (set_window_buffer): If the window is the frame's
18577         selected window, set update_mode_lines, not the window's
18578         update_mode_line flag.
18579         * src/buffer.c (Fkill_buffer): Undo last change.
18580         (set_update_modelines_for_buf): Function deleted.
18582 2015-10-24  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
18583             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
18585         Sync with soap-client repository, version 3.0.0
18587         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
18588         Bump version to 3.0.0.
18590         * lisp/net/soap-inspect.el: Merge in changes from Emacs master branch.
18592         * lisp/net/soap-client.el: Merge in changes from Emacs master branch.
18594         * lisp/net/soap-inspect.el: Shorten first line description.
18596         * lisp/net/soap-client.el: Make a small whitespace fix.
18598         * lisp/net/soap-inspect.el: Update copyright years.
18600         * lisp/net/soap-client.el (soap-encoded-namespaces): Move above
18601         first use in soap-encode-xs-element.
18603         * lisp/net/soap-client.el (soap-type-is-array?): new defun
18604         (soap-encode-xs-element): handle array elements in this function
18605         (soap-encode-xs-complex-type): flag error if asked to encode an
18606         array type, this is handled in `soap-encode-xs-element'
18608         * lisp/net/soap-inspect.el (soap-inspect-xs-attribute-group):
18609         Do not print type for attribute group.
18611         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute-group)
18612         New function.
18613         (soap-inspect-xs-attribute-group): Likewise.
18615         * lisp/net/soap-inspect.el
18616         (soap-resolve-references-for-xs-attribute-group): Resolve
18617         references of attributes in an attribute group.
18619         * lisp/net/soap-client.el (soap-decode-xs-attributes): Process attribute
18620         type directly, not through soap-wsdl-get.
18622         * lisp/net/soap-client.el (soap-xs-parse-attribute): Leave reference
18623         nil if reference attribute is nil.
18625         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
18626         Convert XML schema attributes to xsd:string.
18628         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute):
18629         New function.
18630         (soap-sample-value-for-xs-simple-type): Prepend attributes to result.
18631         (soap-sample-value-for-xs-complex-type): Likewise.
18632         (soap-inspect-xs-attribute): New function.
18633         (soap-inspect-xs-simple-type): Print attributes.
18634         (soap-inspect-xs-complex-type): Likewise.
18636         * lisp/net/soap-inspect.el (soap-resolve-references-for-xs-simple-type):
18637         Resolve references for attributes.
18638         (soap-resolve-references-for-xs-complex-type): Likewise.
18640         * lisp/net/soap-client.el (soap-xml-node-find-matching-child):
18641         Rename from soap-xml-node-first-child.
18642         (soap-xs-parse-attribute): Call soap-xml-node-find-matching-child.
18643         (soap-xs-parse-simple-type): Likewise.
18645         * lisp/net/soap-client.el (soap-invoke-async): Add error checking.
18647         * lisp/net/soap-client.el (soap-invoke-internal): New function.
18648         (soap-invoke-async): Call soap-invoke-internal.
18649         (soap-invoke): Likewise.
18651         * lisp/net/soap-client.el (soap-invoke-async): Ensure buffer passed to
18652         url-retrieve callback is killed.
18654         * lisp/net/soap-client.el (soap-parse-wsdl-phase-validate-node):
18655         Rename function.
18656         (soap-parse-wsdl-phase-fetch-imports): Likewise.
18657         (soap-parse-wsdl-phase-parse-schema): Likewise.
18658         (soap-parse-wsdl-phase-fetch-schema): Likewise.
18659         (soap-parse-wsdl-phase-finish-parsing): Likewise.
18660         (soap-parse-wsdl): Update calls.
18662         * lisp/net/soap-client.el (soap-invoke-async): Fix callback invocation.
18664         * lisp/net/soap-client.el (soap-invoke-async): New function.
18665         (soap-invoke): Reimplement using soap-invoke-async.
18667         * lisp/net/soap-client.el (soap-parse-server-response):
18668         Improve docstring.
18669         (soap-invoke): Inline call to soap-parse-server-response.
18671         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
18672         Prevent incorrect warning.
18674         * lisp/net/soap-client.el (soap-parse-server-response):
18675         Rename soap-process-url-response.  Destroy the mime part.
18676         (soap-invoke): Call soap-parse-server-response.
18678         * lisp/net/soap-client.el: Update copyright date.
18680         * lisp/net/soap-client.el: Fix checkdoc issues.
18682         * lisp/net/soap-client.el: Fix indentation and long lines.
18684         * lisp/net/soap-client.el (soap-time-format): Remove variable.
18685         (soap-encode-xs-basic-type): Simplify date-time format detection.
18686         (soap-decode-xs-basic-type): Remove soap-time-format support.
18688         * lisp/net/soap-client.el (soap-process-url-response): New function.
18689         (soap-fetch-xml-from-url): Call soap-process-url-response.
18690         (soap-parse-wsdl-phase-1): New function.
18691         (soap-parse-wsdl-phase-2): Likewise.
18692         (soap-parse-wsdl-phase-3): Likewise.
18693         (soap-parse-wsdl-phase-4): Likewise.
18694         (soap-parse-wsdl-phase-5): Likewise.
18695         (soap-parse-wsdl): Call phase functions.
18697         * lisp/net/soap-client.el (soap-decode-xs-basic-type):
18698         Remove one-argument and call.
18700         * lisp/net/soap-client.el (soap-decode-date-time): Improve docstring.
18702         * lisp/net/soap-client.el (soap-xmlschema-imports): Remove variable.
18703         (soap-parse-schema): Add wsdl argument.  Look up XML schema
18704         imports from wsdl.
18705         (soap-load-wsdl): Do not set soap-xmlschema-imports.
18706         (soap-parse-wsdl): Get XML schema imports from wsdl.
18708         * lisp/net/soap-client.el (soap-current-file): Remove variable.
18709         (soap-wsdl): Add current-file slot.
18710         (soap-fetch-xml-from-url): Add wsdl argument.  Look up current
18711         file from wsdl.
18712         (soap-fetch-xml-from-file): Likewise.
18713         (soap-fetch-xml): Likewise.
18714         (soap-load-wsdl): Always create wsdl object first.
18715         (soap-parse-wsdl): Pass wsdl to soap-fetch-xml.
18717         * lisp/net/soap-client.el (soap-xs-element): Add is-group slot.
18718         (soap-xs-parse-element): Set is-group slot.
18719         (soap-resolve-references-for-xs-element): Skip is-group elements.
18720         (soap-xs-complex-type): Add is-group slot.
18721         (soap-xs-parse-complex-type): Set is-group slot.
18722         (soap-xs-parse-sequence): Parse xsd:group elements.
18723         (soap-resolve-references-for-xs-complex-type): Inline elements
18724         from referenced xsd:group nodes.
18725         (soap-parse-schema): Parse xsd:group nodes.
18727         * lisp/net/soap-client.el (soap-invoke):
18728         Don't set url-http-version to 1.0.
18730         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
18731         Allow choice nodes to accept multiple values.
18733         * lisp/net/soap-client.el (soap-encode-body): Check parameters argument
18734         for extra header values.
18736         * lisp/net/soap-client.el (soap-well-known-xmlns):
18737         Add wsa and wsaw tags.
18738         (soap-operation): Add input-action and output-action slots.
18739         (soap-parse-operation): Parse wsaw:Action nodes.
18740         (soap-encode-body): Encode service-url for WS-Addressing.
18741         (soap-create-envelope): Likewise.
18742         (soap-invoke): Update soap-create-envelope call to provide
18743         service-url argument.
18745         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
18746         Support xsi:type override attribute.
18747         (soap-decode-array): Likewise.
18749         * lisp/net/soap-client.el (soap-parse-schema):
18750         Handle location attribute.
18752         * lisp/net/soap-client.el (soap-decode-type): Check that multiRef
18753         matched validation regexp.
18755         * lisp/net/soap-client.el (soap-encode-xs-simple-type):
18756         Encode xsd:list nodes.
18757         (soap-decode-xs-simple-type): Decode xsd:list nodes.
18759         * lisp/net/soap-client.el (soap-get-candidate-elements):
18760         Fix reference handling.
18762         * lisp/net/soap-client.el (soap-xs-simple-type): Add is-list slot.
18763         (soap-xs-parse-simple-type): Call soap-xs-add-list for xsd:list nodes.
18764         (soap-xs-add-list): New function.
18766         * lisp/net/soap-client.el (soap-encode-xs-element): When a boolean is
18767         expected, interpret nil as "false".
18769         * lisp/net/soap-client.el (soap-make-xs-basic-types): Add gYearMonth,
18770         gYear, gMonthDay, gDay and gMonth.
18772         * lisp/net/soap-client.el (soap-time-format): New variable.
18773         (soap-encode-xs-basic-type): Handle dateTime, time, date,
18774         gYearMonth, gYear, gMonthDay, gDay and gMonth.
18775         (soap-decode-date-time): New function.
18776         (soap-decode-xs-basic-type): Use soap-decode-date-time.
18778         * lisp/net/soap-client.el (soap-encode-xs-basic-type): Validate value
18779         after encoding.
18780         (soap-decode-xs-basic-type): Validate value before decoding.
18782         * lisp/net/soap-client.el (soap-validate-xs-basic-type): New function.
18783         (soap-validate-xs-simple-type): Call soap-validate-xs-basic-type.
18785         * lisp/net/soap-client.el (soap-xs-add-union): Append result to base
18786         instead of overwriting it.
18787         (soap-validate-xs-simple-type): Add union support.
18789         * lisp/net/soap-client.el (soap-xs-add-restriction): Translate pattern
18790         to Emacs regexp using xsdre-translate.
18791         (soap-validate-xs-simple-type): Validate value against pattern.
18793         * lisp/net/soap-client.el (soap-xs-add-union): Preserve WSDL order of
18794         inline simpleType nodes.
18795         (soap-decode-type): Handle union types.
18797         * lisp/net/soap-client.el (soap-decode-xs-attributes): Decode basic-type
18798         attributes.
18800         * lisp/net/soap-client.el (soap-get-xs-attributes-from-groups): Rename
18801         from soap-xs-attribute-group-consolidate, all callers updated
18802         (soap-get-xs-attributes): Rename from
18803         soap-xs-attributes-consolidate, all callers updated
18805         * lisp/net/soap-client.el (soap-xs-type): Add attribute-group slot.
18806         (soap-xs-attribute-group): New type.
18807         (soap-xs-parse-attribute-group): New function.
18808         (soap-resolve-references-for-xs-attribute-group): Likewise.
18809         (soap-xs-add-extension): Handle attribute groups.
18810         (soap-resolve-references-for-xs-simple-type): Likewise.
18811         (soap-xs-parse-complex-type): Likewise.
18812         (soap-xs-parse-extension-or-restriction): Likewise.
18813         (soap-resolve-references-for-xs-complex-type): Likewise.
18814         (soap-xs-attribute-group-consolidate): New function.
18815         (soap-xs-attributes-consolidate): Handle attribute groups.
18816         (soap-parse-schema): Likewise.
18818         * lisp/net/soap-client.el (soap-encode-xs-basic-type):
18819         Fix boolean encoding.
18821         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Print ref
18822         element names in warnings.
18824         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Fix splicing.
18826         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
18827         Eliminate invalid warnings for choice types.
18829         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
18830         Also encode base type attributes.
18832         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Fix compilation
18833         warning.  Print e-name in warnings, or element if e-name is nil.
18835         * lisp/net/soap-client.el (soap-xs-element): Add alternatives slot.
18836         (soap-xs-parse-element): Set substitution-group.
18837         (soap-resolve-references-for-xs-element): Populate alternatives slot.
18838         (soap-get-candidate-elements): New function.
18839         (soap-encode-xs-complex-type): Iterate through all candidate elements.
18840         Handle types with nil type indicator.  Fix warning logic.
18842         * lisp/net/soap-client.el (soap-current-wsdl): Move declaration
18843         earlier in the file to prevent compiler warning.
18845         * lisp/net/soap-client.el (soap-node-optional): New function.
18846         (soap-node-multiple): Likewise.
18847         (soap-xs-parse-element): Call soap-node-optional and
18848         soap-node-multiple.
18849         (soap-xs-complex-type): Add optional? and multiple? slots.
18850         (soap-xml-get-children-fq): New function.
18851         (soap-xs-element-get-fq-name): Likewise.
18852         (soap-xs-complex-type-optional-p): Likewise.
18853         (soap-xs-complex-type-multiple-p): Likewise.
18854         (soap-xs-attributes-consolidate): Likewise.
18855         (soap-decode-xs-attributes): Likewise.
18856         (soap-decode-xs-complex-type): Decode types with nil type indicator.
18857         Support children that use local namespaces.  Decode attributes.
18858         Add type considerations to optional? and multiple? warnings.
18860         * lisp/net/soap-client.el (soap-xs-parse-extension-or-restriction):
18861         Store parsed attributes.
18862         (soap-encode-xs-complex-type-attributes): Encode custom attributes.
18864         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
18865         Don't add the xsi:type attribute (Exchange refuses requests which have
18866         this attribute).
18868         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Convert to lexical binding,
18869         correct compiler warnings about unused function arguments and
18870         local variables.
18872         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Handle nil
18873         type indicator.
18874         (soap-parse-envelope): Handle response headers.
18875         (soap-parse-response): Likewise.  Only return non-nil decoded values.
18877         * lisp/net/soap-client.el (soap-validate-xs-simple-type):
18878         Return validated value.
18880         * lisp/net/soap-client.el (soap-xs-parse-element)
18881         (soap-xs-parse-simple-type)
18882         (soap-xs-parse-complex-type)
18883         (soap-parse-message)
18884         (soap-parse-operation): Add the current namespace to the element
18885         being created.
18886         (soap-resolve-references-for-xs-element)
18887         (soap-resolve-references-for-xs-simple-type)
18888         (soap-resolve-references-for-xs-complex-type)
18889         (soap-resolve-references-for-operation): Resolve the namespace to
18890         the namespace tag.
18891         (soap-make-wsdl): specify a namespace tag when creating the xsd
18892         and soapenc namespaces
18893         (soap-wsdl-resolve-references): don't update namespace tags in
18894         elements here
18895         (soap-parse-port-type): bind the urn: to soap-target-xmlns
18896         (soap-encode-body): don't add nil namespace tags to
18897         soap-encoded-namespaces
18899         * lisp/net/soap-inspect.el: Use `soap-make-wsdl` to construct the object
18900         for registering the soap-inspect method.  Make debbugs tests pass.
18901         * lisp/net/soap-client.el (soap-decode-any-type): Use soap-l2fq on the
18902         type name, also skip string only nodes when decoding a structure.
18903         (soap-xs-parse-complex-type): (BUG) Dispatch parsing for choice
18904         types too.
18905         (soap-encode-body): Grab the header value from the param table.
18907         * lisp/net/soap-client.el (soap-should-encode-value-for-xs-element):
18908         New function.
18909         (soap-encode-xs-element): Don't encode nil value unless needed.
18911         * lisp/net/soap-client.el (soap-bound-operation): New slot `soap-body`.
18912         (soap-parse-binding): Parse the message parts required in the body.
18913         (soap-encode-body): Encode only the parts that are declared to be
18914         part of the body.
18916         * lisp/net/soap-client.el (soap-encode-xs-element): use the fq name
18917         when writing out the tag.
18918         (soap-encode-body): Remove hack that inserts the xmlns in the
18919         element attributes list.
18921         * lisp/net/soap-client.el (soap-xs-attribute): Add "default" slot.
18922         (soap-xs-parse-attribute): Default slot is set from the XML
18923         "fixed" attribute.
18924         (soap-encode-xs-complex-type-attributes): Encode any attributes
18925         that have a default value.  Also, don't put the xsi:nil attribute
18926         when the complex type has no content anyway.
18928         * lisp/net/soap-client.el (soap-well-known-xmlns):
18929         Add the xml namespace.
18930         (soap-local-xmlns): Start with the xml namespace.
18931         (soap-xml-node-first-child): Skip xsd:annotation nodes too.
18932         (soap-make-xs-basic-types): More xsd types added.
18933         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
18934         Handle "language", "time", "date", "nonNegativeInteger".
18935         (soap-resolve-references-for-xs-element): Don't signal an error if
18936         the element does not have a type.
18937         (soap-xs-parse-simple-type): Subtypes are handled with ecase,
18938         added stum for xsd:list.
18939         (soap-xs-add-union): Call soap-l2fq on all union members.
18940         (soap-xs-add-extension): Call soap-l2fq on the base member.
18941         (soap-resolve-references-for-xs-simple-type): Don't signal an
18942         error if the simple type has no base.
18943         (soap-resolve-references-for-xs-simple-type): Bugfix, call
18944         soap-wsdl-get on each type of the base.
18946         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
18947         Referenced type can be eiher a simple type or a basic type.
18948         (soap-xs-add-restriction)
18949         (soap-xs-parse-extension-or-restriction): Use `soap-l2fq' on base.
18950         (soap-make-xs-basic-types)
18951         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
18952         Add support for more XMLSchema basic types.
18953         (soap-current-file, soap-xmlschema-imports): New defvars.
18954         (soap-parse-schema): Add locations from xsd:import tags to
18955         `soap-xmlschema-imports'.
18956         (soap-wsdl): Make destructor private.
18957         (soap-make-wsdl): New defun, SOAP-WSDL object constructor.
18958         (soap-wsdl-add-alias): Check if we try to replace aliases.
18959         (soap-fetch-xml-from-url, soap-fetch-xml-from-file)
18960         (soap-fetch-xml): New defuns.
18961         (soap-load-wsdl): Update to load the WSDL from either a file or
18962         an url.
18963         (soap-load-wsdl-from-url): Now an alias to `soap-load-wsdl'.
18964         (soap-parse-wsdl): Process wsdl:import tags and imports from
18965         `soap-xmlschema-imports'.
18966         * lisp/net/soap-client.el (soap-l2wk): Bugfix: call symbolp instead of
18967         symbol-name.
18968         (soap-l2fq): Make the name part always a string.
18969         (soap-name-p): New defun, used for name tests.
18971         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-complex-type):
18972         Supply sample values for choice types with a special tag.
18973         * lisp/net/soap-client.el (soap-encode-xs-complex-type):
18974         Handle anonymous elements correctly.
18975         (soap-encode-value): Accept nodes that have no namespace tag.
18977         * lisp/net/soap-client.el (soap-invoke): Encode the string for
18978         `url-request-data' as UTF-8.  Fixes issue 16.
18980 2015-10-24  Nicolas Petton  <nicolas@petton.fr>
18982         Update the new icon
18984         Move the E slightly to the right in the circle.
18986         * etc/images/icons/hicolor/128x128/apps/emacs.png:
18987         * etc/images/icons/hicolor/16x16/apps/emacs.png:
18988         * etc/images/icons/hicolor/24x24/apps/emacs.png:
18989         * etc/images/icons/hicolor/32x32/apps/emacs.png:
18990         * etc/images/icons/hicolor/48x48/apps/emacs.png:
18991         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
18992         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
18993         * nt/icons/emacs.ico: New icom update.
18995 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
18997         Avoid missing inline functions from lisp.h in TAGS
18999         * src/lisp.h (LISP_MACRO_DEFUN): Mention in the commentary the
19000         need to end each invocation with a semi-colon.
19001         Add a semi-colon at the end of each invocation of LISP_MACRO_DEFUN
19002         and LISP_MACRO_DEFUN_VOID.  This is to avoid missing in TAGS
19003         inline functions defined immediately after each invocation, and
19004         also avoid tagging every invocation of these macros.
19006 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
19008         A better fix for bug#21739
19010         * src/buffer.c (set_update_modelines_for_buf): New function.
19011         (Fkill_buffer): Use it to set the global variable
19012         update_mode_lines if the killed buffer was displayed in some
19013         window.  Don't set windows_or_buffers_changed.  This is a better
19014         fix for bug#21739 than the previous fix, since it will cause only
19015         redisplay of mode lines, not of entire windows, but will still
19016         catch attention of x_consider_frame_title in xdisp.c, which
19017         redraws the frame title.
19019 2015-10-24  Tassilo Horn  <tsdh@gnu.org>
19021         * lisp/dired-aux.el (dired-compress-files-alist): Add support for
19022         tar.bz2 and tar.xz archives.
19024 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
19026         Fix infloop in redisplay introduced by a recent change
19028         * src/xdisp.c (redisplay_internal): Avoid inflooping when
19029         redisplaying the selected window sets the selected frame's
19030         redisplay flag.  (Bug#21745)
19032 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
19034         * lisp/emacs-lisp/thunk.el: Better documentation.
19036 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
19038         Replace the old icon for Windows and Mac OSX
19040         * nt/icons/emacs.ico:
19041         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
19042         Use the new icons.
19044 2015-10-23  Stephen Leake  <stephen_leake@stephe-leake.org>
19046         * lisp/emacs-lisp/package.el (package-autoload-ensure-default-file):
19047         `load-path' should contain only directory names.
19049 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
19051         New library thunk.el
19053         thunk.el is extracted from stream.el in ELPA, with additional tests.
19055         * lisp/emacs-lisp/thunk.el: New file.
19056         * test/automated/thunk-tests.el: New file.
19057         * etc/NEWS: Add information about thunk.el
19059 2015-10-23  Michael Albinus  <michael.albinus@gmx.de>
19061         Fix bug#21669
19063         * lisp/filenotify.el (file-notify-rm-watch): Improve check for
19064         calling low-level functions.
19066         * test/automated/file-notify-tests.el (file-notify--test-timeout):
19067         Decrase to 6 seconds for remote directories.
19068         (file-notify-test02-events): Expect different number of
19069         `attribute-changed' events for the local and remote cases.  Apply
19070         short delays between the operations, in order to receive all
19071         events in the remote case.  Combine `attribute-change' tests.
19072         (Bug#21669)
19074 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
19076         Decode the HTML source when displaying it in EWW
19078         * lisp/net/eww.el (eww-view-source): Decode the HTML source
19079         according to its headers.
19081 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
19083         New default icon
19085         * etc/images/icons/hicolor/128x128/apps/emacs23.png:
19086         * etc/images/icons/hicolor/16x16/apps/emacs23.png:
19087         * etc/images/icons/hicolor/24x24/apps/emacs23.png:
19088         * etc/images/icons/hicolor/32x32/apps/emacs23.png:
19089         * etc/images/icons/hicolor/48x48/apps/emacs23.png:
19090         * etc/images/icons/hicolor/scalable/apps/emacs23.svg:
19091         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document23.svg:
19092         Move the old logo files to emacs23.*.
19093         * etc/images/icons/hicolor/128x128/apps/emacs.png:
19094         * etc/images/icons/hicolor/16x16/apps/emacs.png:
19095         * etc/images/icons/hicolor/24x24/apps/emacs.png:
19096         * etc/images/icons/hicolor/32x32/apps/emacs.png:
19097         * etc/images/icons/hicolor/48x48/apps/emacs.png:
19098         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
19099         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document.svg:
19100         New files.
19101         * etc/images/icons/README: Update the copyright information.
19103 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
19105         Fix redisplay of frame title when current buffer is killed
19107         * src/buffer.c (Fkill_buffer): Set windows_or_buffers_changed to a
19108         non-zero value, to redisplay more than just the affected windows.
19109         (Bug#21739)
19111 2015-10-23  Anders Lindgren  <andlind@gmail.com>
19113         NextStep maximization and NSTRACE rewrite
19115         Full-height, full-width, and maximized windows now cover the
19116         entire screen (except the menu bar), including the part where the
19117         system dock is placed.  The system zoom animation is no longer
19118         used.
19120         Made NonMaximized->FullWidth->FullHeight->NonMaximized restore the
19121         original size.
19123         * src/nsterm.m (ns_menu_bar_height): New function, return height of
19124         the menu bar, or 0 when it's hidden.
19125         (constrain_frame_rect): New function for constraining a frame.
19126         (ns_constrain_all_frames): Set frame size explicitly rather than
19127         relying on the system doing it for us by writing back the current
19128         frame size.
19129         (windowWillUseStandardFrame): Register non-maximized width or
19130         height as new user size.  When entering full width or height,
19131         the other size component is taken from the user size.
19132         (fullscreenState): New method for accessing the fullscreen state.
19133         (constrainFrameRect): Restrict frame to be placed under the menu bar,
19134         if present.  The old version, sometimes, restricted the height of a
19135         frame to the screen, this version never does this.
19136         (zoom): Perform zoom by setting the frame to the full size of the
19137         screen (minus the menu bar).  The default system function, with the
19138         zoom animation, is no longer used, as the final frame size doesn't
19139         cover the entire screen.
19141         Rework how to constrain resizing to the character grid.  The old
19142         system used "resizeIncrements" in NSWindows.  However, once a frame
19143         was resized so that it was not aligned to the text grid, it
19144         remained unaligned even after a resize.  In addition, it conflicted
19145         when resizing a fullheight window.
19147         * src/nsterm.m (windowWillResize): Restrict frame size to text grid,
19148         unless when pixelwise frame resizing is enabled.
19149         (updateFrameSize, initFrameFromEmacs)
19150         (toggleFullScreen, handleFS): Don't set resizeIncrements.
19152         Redesign the NS trace system.  The call structure is represented
19153         using indentations and vertical lines.  The NSTRACE macro accepts
19154         printf-style arguments.  New macros for printing various
19155         information.
19157         * src/nsterm.h (NSTRACE_ENABLED): Macro to enable trace system.
19158         (NSTRACE, NSTRACE_WHEN, NSTRACE_UNLESS): Macros to start a new
19159         block (typically a function), accept printf-style arguments.
19160         (NSTRACE_MSG): Macro for extra information, accepts
19161         printf-style arguments.
19162         (NSTRACE_what): Macros for printing various types.
19163         (NSTRACE_FMT_what): Macro with printf format string snippets.
19164         (NSTRACE_ARG_what): Macros for passing printf-style arguments,
19165         corresponds to NSTRACE_FMT_what.
19166         (NSTRACE_RETURN): Macro to print return value, accept
19167         printf-style arguments.
19168         (NSTRACE_RETURN_what): Macros to print return value for
19169         various types.
19171         * src/nsterm.m: Remove old NSTRACE macro
19172         * src/nsterm.m (nstrace_num): Trace counter.
19173         (nstrace_depth): Current call depth.
19174         (nstrace_leave): NSTRACE support function, called when the
19175         local variable "nstrace_enabled" goes out of scope using the
19176         "cleanup" extension.
19177         (ns_print_fullscreen_type_name): NSTRACE_FSTYPE support function.
19178         (constrain_frame_rect, ns_constrain_all_frames)
19179         (ns_update_auto_hide_menu_bar, ns_update_begin)
19180         (ns_update_window_begin, update_window_end, ns_update_end)
19181         (ns_focus, ns_unfocus, ns_ring_bell, ns_frame_raise_lower)
19182         (ns_frame_rehighlight, x_make_frame_visible)
19183         (x_make_frame_invisible, x_iconify_frame, x_free_frame_resources)
19184         (x_destroy_window, x_set_offset, x_set_window_size)
19185         (ns_fullscreen_hook, ns_lisp_to_color, ns_color_to_lisp)
19186         (ns_defined_color, frame_set_mouse_pixel_position)
19187         (note_mouse_movement, ns_mouse_position, ns_frame_up_to_date)
19188         (ns_define_frame_cursor, x_get_keysym_name, ns_redraw_scroll_bars)
19189         (ns_clear_frame, ns_clear_frame_area, ns_scroll_run)
19190         (ns_after_update_window_line, ns_shift_glyphs_for_insert)
19191         (dumpcursor, ns_draw_vertical_window_border)
19192         (ns_draw_window_divider, ns_draw_relief)
19193         (ns_dumpglyphs_box_or_relief, ns_maybe_dumpglyphs_background)
19194         (ns_dumpglyphs_image, ns_draw_glyph_string, ns_send_appdefined)
19195         (ns_read_socket, ns_select, ns_set_vertical_scroll_bar)
19196         (ns_set_horizontal_scroll_bar, ns_condemn_scroll_bars)
19197         (ns_redeem_scroll_bar, ns_judge_scroll_bars, ns_delete_terminal)
19198         (ns_create_terminal, ns_term_init, sendEvent)
19199         (applicationDidFinishLaunching, applicationDidBecomeActive)
19200         (timeout_handler, fd_handler, EmacsView_dealloc, changeFont)
19201         (acceptsFirstResponder, resetCursorRects, keyDown, mouseDown)
19202         (deltaIsZero, rightMouseDown, otherMouseDown, mouseUp)
19203         (rightMouseUp, otherMouseUp, scrollWheel, mouseMoved)
19204         (mouse_autoselect_window, in_window, mouseDragged)
19205         (rightMouseDragged, otherMouseDragged, windowShouldClose)
19206         (updateFrameSize, windowWillResize, windowDidResize)
19207         (windowDidBecomeKey, windowDidResignKey, windowWillMiniaturize)
19208         (initFrameFromEmacs, windowDidMove, windowDidDeminiaturize)
19209         (windowDidExpose, windowDidMiniaturize, windowWillEnterFullScreen)
19210         (windowDidEnterFullScreen, windowWillExitFullScreen)
19211         (windowDidExitFullScreen, toggleFullScreen, handleFS, setFSValue)
19212         (mouseEntered, mouseExited, menuDown, toolbarClicked, drawRect)
19213         (draggingEntered, performDragOperation, validRequestorForSendType)
19214         (setMiniwindowImage, constrainFrameRect, performZoom, zoom)
19215         (EmacsScroller_initFrame, EmacsScroller_setFrame)
19216         (EmacsScroller_dealloc, condemn, reprieve, judge)
19217         (resetCursorRects, setPosition, EmacsScroller_mouseDown)
19218         (EmacsScroller_mouseDragged, syms_of_nsterm): Use new trace system.
19220         * src/nsfns.m: Remove old NSTRACE macro
19221         * src/nsfns.m (x_set_icon_name, ns_set_name, x_explicitly_set_name)
19222         (x_implicitly_set_name, x_set_title, ns_set_name_as_filename)
19223         (ns_implicitly_set_icon_type, x_set_icon_type): Use new trace system.
19225         * src/nsimage.m: Remove old NSTRACE macro
19226         * src/nsimage.m (ns_image_from_XBM, ns_image_for_XPM)
19227         (ns_image_from_bitmap_file, ns_load_image): Use new trace system.
19229         * src/nsmenu.m: Remove old NSTRACE macro
19230         * src/nsmenu.m (ns_update_menubar, ns_menu_show, ns_popup_dialog):
19231         Use new trace system.
19233 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
19235         No need to use eval-and-compile
19237         * lisp/gnus/auth-source.el: Do require epg (when compiling) before
19238         autoload epg functions.
19240 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
19242         Fix auth-source-epa-make-gpg-token compilation (bug#21724)
19244         * lisp/gnus/auth-source.el: Add eval-and-compile to autoloads for
19245         epg-context-set-passphrase-callback, epg-decrypt-string, and
19246         epg-encrypt-string; require epg when compiling for the setf-method
19247         for epg-context-armor. (bug#21724)
19249 2015-10-22  Eli Zaretskii  <eliz@gnu.org>
19251         Include file cleanup for w32 files in src directory
19253         * src/w32xfns.c: Don't include keyboard.h, window.h, charset.h,
19254         fontset.h, blockinput.h.
19255         * src/w32uniscribe.c: Don't include dispextern.h, character.h,
19256         charset.h, fontset.h.
19257         * src/w32term.c: Don't include systty.h, systime.h, charset.h,
19258         character.h, ccl.h, dispextern.h, disptab.h, intervals.h,
19259         process.h, atimer.h, keymap.h, w32heap.h.  Include bitmap/gray.xbm
19260         in an ifdef-ed away block.
19261         Include fcntl.h for CYGWIN.
19262         (set_frame_param): Remove unused function.
19263         * src/w32select.c: Don't include charset.h and composite.h.
19264         (setup_config, Fw32_get_clipboard_data): Avoid compiler warnings
19265         due to pointer signedness mismatches.
19266         * src/w32reg.c (w32_get_string_resource): Avoid compiler warnings
19267         due to pointer signedness mismatches.
19268         * src/w32proc.c: Include unistd.h.  Don't include systime.h,
19269         process.h, dispextern.h.
19270         (sys_spawnve, Fw32_short_file_name, Fw32_long_file_name)
19271         (Fw32_application_type): Avoid compiler warnings due to pointer
19272         signedness mismatches.
19273         * src/w32menu.c: Don't include keymap.h, termhooks.h, window.h,
19274         character.h, charset.h, dispextern.h.
19275         (simple_dialog_show, add_menu_item): Avoid compiler warnings due
19276         to pointer signedness mismatches.
19277         * src/w32inevt.c: Don't include dispextern.h, window.h,
19278         termhooks.h, w32heap.h.
19279         * src/w32font.c: Don't include dispextern.h, character.h,
19280         charset.h, fontset.h, font.h.
19281         (intern_font_name, add_font_entity_to_list)
19282         (registry_to_w32_charset, w32_to_x_charset, fill_in_logfont)
19283         (list_all_matching_fonts): Avoid compiler warnings due to pointer
19284         signedness mismatches.
19285         * src/w32fns.c: Don't include character.h, intervals.h,
19286         dispextern.h, epaths.h, charset.h, ccl.h, fontset.h, systime.h,
19287         termhooks.h, w32heap.h, bitmap/gray.xbm, font.h, w32font.h.
19288         (w32_color_map_lookup, add_system_logical_colors_to_map)
19289         (x_decode_color, x_set_name, FPRINTF_WM_CHARS, Fxw_color_defined_p)
19290         (Fxw_color_values, x_display_info_for_name, Fset_message_beep)
19291         (x_create_tip_frame, Fx_file_dialog, Fsystem_move_file_to_trash)
19292         (w32_parse_hot_key, Ffile_system_info, w32_kbd_patch_key): Avoid
19293         compiler warnings, mainly due to pointer signedness mismatches.
19294         (unwind_create_frame_1): Remove unused function.
19295         * src/w32console.c: Don't include character.h, disptab.h, frame.h,
19296         window.h, termhooks.h, dispextern.h.
19297         (w32con_write_glyphs, w32con_write_glyphs_with_face): Fix pointer
19298         signedness mismatch.
19299         * src/w32.c: Include c-strcase.h and systty.h.  Don't include
19300         w32heap.h.
19302 2015-10-22  Tassilo Horn  <tsdh@gnu.org>
19304         Improve doc-view wrt. auto-revert-mode
19306         * lisp/doc-view.el (doc-view-revert-buffer): Don't revert when file
19307         is corrupted (bug#21729).
19308         (doc-view-mode): Set doc-view-revert-buffer as revert-buffer-function.
19310 2015-10-22  Oleh Krehel  <ohwoeowho@gmail.com>
19312         Describe dired-do-compress-to in the manual
19314         * etc/NEWS: Update.
19316         * lisp/dired-aux.el: Fix typo.
19318         * doc/emacs/dired.texi: Add entry.
19320 2015-10-22  Jürgen Hötzel  <juergen@archlinux.org>
19322         Further fix for proper locale handling in tramp-gvfs.el
19324         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
19325         Just suppress LC_MESSAGES locale category settings.
19327 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
19329         New lispref section “Security Considerations”
19331         This attempts to document some of the issues recently discussed
19332         on emacs-devel, and to indicate other such issues.  The section
19333         could be a lot longer.
19334         * doc/lispref/os.texi (Security Considerations):
19335         New node.
19336         * doc/lispref/elisp.texi (Top):
19337         * doc/lispref/processes.texi (Shell Arguments):
19338         * lisp/subr.el (shell-quote-argument):
19339         * src/callproc.c (syms_of_callproc):
19340         Reference it.
19342 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
19344         Merge from gnulib
19346         This incorporates:
19347         2015-10-18 stdalign: work around pre-4.9 GCC x86 bug
19348         2015-10-18 time_rz: avoid warning from bleeding-edge gcc's -Wnonnull
19349         * doc/misc/texinfo.tex, lib/stdalign.in.h, lib/time_rz.c:
19350         Copy from gnulib.
19352 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
19354         * lisp/gnus/mailcap.el (mailcap-mime-data): Remove fboundp checks.
19355         (mailcap-viewer-passes-test): Do it instead.  Thanks to Stefan Monnier.
19357 2015-10-21  Ken Brown  <kbrown@cornell.edu>
19359         Further include-file cleanup
19361         * src/sheap.c: Include stdlib.h.
19362         * src/unexcw.c: Include string.h.
19364 2015-10-21  Eli Zaretskii  <eliz@gnu.org>
19366         Fix logic in 'server-kill-emacs-query-function'
19368         * lisp/server.el (server-kill-emacs-query-function): Correct the
19369         logic that controls whether the user is asked for confirmation.
19370         (Bug#21723)
19372 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
19374         * lisp/isearch.el (isearch-search-fun-default): Simplify logic.
19375         (isearch--lax-regexp-function-p): New function.
19377 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
19379         * lisp/isearch.el: Support lax-whitespace in regexp-function searches.
19380         (isearch-search-fun-default): Let-bind `search-spaces-regexp'
19381         around `isearch-regexp-function'.
19383 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
19385         * lisp/isearch.el: Rename word search to regexp-function search.
19386         `isearch-word' went well beyond its original purpose, and the name
19387         no longer makes sense.  It is now called
19388         `isearch-regexp-function', and its value should always be a function
19389         that converts a string to a regexp (though setting it to t is still
19390         supported for now).
19391         (isearch-word): Make obsolete.
19392         (isearch-regexp-function): New variable.
19393         (isearch-mode, isearch-done, isearch--state, isearch--set-state)
19394         (with-isearch-suspended, isearch-toggle-regexp)
19395         (isearch-toggle-word, isearch-toggle-symbol)
19396         (isearch-toggle-character-fold, isearch-query-replace)
19397         (isearch-occur, isearch-highlight-regexp)
19398         (isearch-search-and-update, isearch-message-prefix)
19399         (isearch-search-fun-default, isearch-search)
19400         (isearch-lazy-highlight-new-loop, isearch-lazy-highlight-search):
19401         Use it.
19402         (isearch-lazy-highlight-regexp-function): New var.
19403         (isearch-lazy-highlight-word): Make obsolete.
19404         (isearch--describe-regexp-mode): New function.
19405         (isearch--describe-word-mode): Make obsolete.
19407         * lisp/info.el (Info-isearch-search):
19408         * lisp/replace.el (replace-search, replace-highlight):
19409         * lisp/obsolete/longlines.el (longlines-search-function):
19410         * lisp/hexl.el (hexl-isearch-search-function):
19411         * lisp/cedet/semantic/senator.el (senator-isearch-search-fun):
19412         Use the new var.
19414 2015-10-21  Oleh Krehel  <ohwoeowho@gmail.com>
19416         Add dired-do-compress-to command bound to "c"
19418         * lisp/dired-aux.el (dired-shell-command): Use the caller's
19419           `default-directory', return the result of `process-file'.
19420         (dired-compress-file-suffixes): Add comment on why "tar -zxf" isn't
19421         used by default.
19422         (dired-compress-files-alist): New defvar.
19423         (dired-do-compress-to): New command.
19425         * lisp/dired.el (dired-mode-map): Bind `dired-do-compress-to' to "c".
19426         (dired-do-compress-to): Add an autoload entry.
19428         * etc/NEWS: Add two entries.
19430 2015-10-21  Tassilo Horn  <tsdh@gnu.org>
19432         Make RefTeX work with LaTeX subfiles package
19434         * lisp/textmodes/reftex.el (reftex-TeX-master-file): Recognize subfiles
19435         document class argument as master file for referencing purposes.
19437 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
19439         * lisp/gnus/mailcap.el (mailcap-mailcap-entry-passes-test): Doc fix.
19441 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
19443         Include-file cleanup for src directory
19445         Omit ‘#include "foo.h"’ unless the file needs foo.h (Bug#21707).
19446         In a few cases, add ‘#include "foo.h"’ if the file needs foo.h
19447         but does not include it directly.  As a general rule, a source
19448         file should include foo.h if it needs the interfaces that foo.h
19449         defines.
19450         * src/alloc.c: Don’t include process.h.  Include dispextern.h,
19451         systime.h.
19452         * src/atimer.c: Don’t include blockinput.h.
19453         * src/buffer.c: Include coding.h, systime.h.  Don’t include
19454         keyboard.h, coding.h.
19455         * src/callint.c: Don’t include commands.h, keymap.h.
19456         * src/callproc.c: Don’t include character.h, ccl.h, composite.h,
19457         systty.h, termhooks.h.
19458         * src/casetab.c: Don’t include character.h.
19459         * src/category.c: Don’t include charset.h, keymap.h.
19460         * src/ccl.h: Don’t include character.h.
19461         * src/character.c: Don’t include charset.h.
19462         * src/charset.c: Don’t include disptab.h.
19463         * src/chartab.c: Don’t include ccl.h.
19464         * src/cm.c: Don’t include frame.h, termhooks.h.
19465         * src/cmds.c: Don’t include window.h, dispextern.h.
19466         * src/coding.c: Don’t include window.h, frame.h.
19467         * src/composite.c: Include composite.h.  Don’t include window.h,
19468         font.h.
19469         * src/data.c: Don’t include syssignal.h, termhooks.h, font.h.
19470         * src/dbusbind.c: Don’t include frame.h.
19471         * src/decompress.c: Don’t include character.h.
19472         * src/dired.c: Don’t include character.h, commands.h, charset.h.
19473         * src/dispnew.c: Don’t include character.h, indent.h, intervals.h,
19474         process.h, timespec.h.  Include systime.h.
19475         * src/doc.c: Include coding.h.  Don’t include keyboard.h.
19476         * src/editfns.c: Include composite.h.  Don’t include frame.h.
19477         * src/emacs.c: Include fcntl.h, coding.h.  Don’t include
19478         commands.h, systty.h..
19479         * src/fileio.c: Don’t include intervals.h, dispextern.h.
19480         Include composite.h.
19481         * src/filelock.c: Don’t include character.h, systime.h.
19482         * src/fns.c: Don’t include time.h, commands.h, keyboard.h,
19483         keymap.h, frame.h, blockinput.h, xterm.h.  Include composite.h.
19484         * src/font.c: Include termhooks.h.
19485         * src/font.h: Don’t include ccl.h, frame.h.  Add forward decls of
19486         struct composition_it, struct face, struct glyph_string.
19487         * src/fontset.c: Don’t include buffer.h, ccl.h, keyboard.h,
19488         intervals.h, window.h, termhooks.h.
19489         * src/frame.c: Don’t include character.h, commands.h, font.h.
19490         * src/frame.h: Don’t include dispextern.h.
19491         * src/fringe.c: Don’t include character.h.
19492         * src/ftcrfont.c: Don’t include dispextern.h, frame.h,
19493         character.h, charset.h, fontset.h.
19494         * src/ftfont.c: Don’t include frame.h, blockinput.h, coding.h,
19495         fontset.h.
19496         * src/ftxfont.c: Don’t include dispextern.h, character.h,
19497         charset.h, fontset.h.
19498         * src/gfilenotify.c: Don’t include frame.h, process.h.
19499         * src/gtkutil.c: Include dispextern.h, frame.h, systime.h.
19500         Don’t include syssignal.h, buffer.h, charset.h, font.h.
19501         * src/gtkutil.h: Don’t include frame.h.
19502         * src/image.c: Include fcntl.h and stdio.h instead of sysstdio.h.
19503         Don’t include character.h.
19504         * src/indent.c: Don’t include keyboard.h, termchar.h.
19505         * src/inotify.c: Don’t include character.h, frame.h.
19506         * src/insdel.c: Include composite.h.  Don’t include blockinput.h.
19507         * src/intervals.c: Don’t include character.h, keyboard.h.
19508         * src/intervals.h: Don’t include dispextern.h, composite.h.
19509         * src/keyboard.c: Don’t include sysstdio.h, disptab.h, puresize.h.
19510         Include coding.h.
19511         * src/keyboard.h: Don’t incldue systime.h.
19512         * src/keymap.c: Don’t include charset.h, frame.h.
19513         * src/lread.c: Include dispextern.h and systime.h.
19514         Don’t include frame.h.  Include systime.h.
19515         * src/macros.c: Don’t include commands.h, character.h, buffer.h.
19516         * src/menu.c: Include character.h, coding.h.  Don’t include
19517         dispextern.h.
19518         * src/menu.h: Don’t include systime.h.
19519         * src/minibuf.c: Don’t include commands.h, dispextern.h, syntax.h,
19520         intervals.h, termhooks.h.
19521         * src/print.c: Include coding.h.  Don’t include keyboard.h,
19522         window.h, dispextern.h, termchar.h, termhooks.h, font.h.
19523         Add forward decl of struct terminal.
19524         * src/process.c: Don’t include termhooks.h, commands.h,
19525         dispextern.h, composite.h.
19526         * src/region-cache.c: Don’t include character.h.
19527         * src/scroll.c: Don’t include keyboard.h, window.h.
19528         * src/search.c: Don’t include category.h, commands.h.
19529         * src/sound.c: Don’t include dispextern.h.
19530         * src/syntax.c: Don’t include command.h, keymap.h.
19531         * src/sysdep.c: Don’t include window.h, dispextern.h.
19532         * src/systime.h: Use ‘#ifdef emacs’, not ‘#ifdef EMACS_LISP_H’,
19533         * src/term.c: Don’t include systty.h, intervals.h, xterm.h.
19534         * src/terminal.c: Include character.h.
19535         Don’t include charset.h, coding.h.
19536         * src/textprop.c: Don’t include character.h.
19537         * src/undo.c: Don’t include character.h, commands.h, window.h.
19538         * src/unexsol.c: Don’t include character.h, charset.h.
19539         * src/widget.c: Include widget.h.  Don’t include keyboard.h,
19540         window.h, dispextern.h, blockinput.h, character.h, font.h.
19541         * src/widgetprv.h: Don’t include widget.h.
19542         * src/window.c: Don’t include character.h, menu.h, intervals.h.
19543         * src/xdisp.c: Include composite.h, systime.h.  Don’t include
19544         macros.h, process.h.
19545         * src/xfaces.c: Don’t include charset.h, keyboard.h, termhooks.h,
19546         intervals.h.
19547         * src/xfns.c: Don’t include menu.h, character.h, intervals.h,
19548         epaths.h, fontset.h, systime.h, atimer.h, termchar.h.
19549         * src/xfont.c: Don’t include dispextern.h, fontset.h, ccl.h.
19550         * src/xftfont.c: Don’t include dispextern.h, character.h, fontset.h.
19551         * src/xgselect.c: Don’t include timespec.h, frame.h.
19552         Include systime.h.
19553         * src/xgselect.h: Don’t include time.h.
19554         Use a forward decl to struct timespec instead.
19555         * src/xmenu.c: Don’t include keymap.h, character.h, charset.h,
19556         dispextern.h.  Include systime.h.
19557         * src/xml.c: Don’t include character.h.
19558         * src/xrdb.c [USE_MOTIF]: Don’t include keyboard.h.
19559         * src/xselect.c: Don’t include dispextern.h, character.h,
19560         buffer.h, process.h.
19561         * src/xsmfns.c: Don’t include systime.h, sysselect.h.
19562         * src/xterm.c: Don’t include syssignal.h, charset.h, disptab.h,
19563         intervals.h process.h, keymap.h, xgselect.h.  Include composite.h.
19565 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
19567         (/ N) now returns the reciprocal of N
19569         This is more compatible with Common Lisp and XEmacs (Bug#21690).  See:
19570         http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg01053.html
19571         * lisp/color.el (color-hue-to-rgb, color-hsl-to-rgb)
19572         (color-xyz-to-srgb, color-xyz-to-lab):
19573         * lisp/emacs-lisp/cl-extra.el (cl-float-limits):
19574         * lisp/net/shr-color.el (shr-color-hue-to-rgb)
19575         (shr-color-hsl-to-rgb-fractions):
19576         Exploit the change to simplify the code a bit.
19577         * lisp/emacs-lisp/bytecomp.el (byte-compile-quo):
19578         Don’t complain about single-argument calls to ‘/’.
19579         * src/data.c (arith_driver, float_arith_driver):
19580         Implement the change.
19582 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
19584         Call vc-dir-refresh after stash operations
19586         * lisp/vc/vc-git.el (vc-git-stash-apply-at-point)
19587         (vc-git-stash-pop-at-point): Call vc-dir-refresh (bug#13960).
19589         * lisp/vc/vc-dir.el (vc-dir-resynch-file): Expand FNAME as well,
19590         since it can be abbreviated (as returned by vc-find-root).
19592 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
19594         * lisp/vc/vc-svn.el:
19595         * lisp/vc/vc-mtn.el:
19596         * lisp/vc/vc-hg.el:
19597         * lisp/vc/vc-cvs.el:
19598         * lisp/vc/vc-git.el:
19599         * lisp/vc/vc-bzr.el: Don't declare vc-exec-after anymore.
19600         Its usages have been replaced with vc-run-delayed.
19602 2015-10-20  Dima Kogan  <dima@secretsauce.net>
19604         Fix memory leak in fontset handling
19606         * src/font.c (copy_font_spec): Make a deep copy of the input
19607         argument FONT.  (Bug#21651)
19609 2015-10-20  Michael Sperber  <mike@xemacs.org>
19611         * lisp/gnus/mailcap.el (mailcap-mime-data):
19612         Conditonalize `doc-view-mode', which does not exist on XEmacs.
19614 2015-10-20  Oleh Krehel  <ohwoeowho@gmail.com>
19616         Update the way directories are compressed
19618         * lisp/dired-aux.el (dired-compress-file-suffixes): Update the recipe
19619         for *.tar.gz decompression to use a pipe.
19620         Add an entry for the default directory compression (to *.tar.g).
19621         (dired-compress-file): Update.
19623         See https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg00949.html.
19625 2015-10-20  Michael Sperber  <mike@xemacs.org>
19627         Unbreak `group' option for `mail-sources'
19629         * lisp/gnus/nnml.el (nnml-retrieve-groups, nnml-request-scan):
19630         * lisp/gnus/nnmail.el (nnmail-get-new-mail-per-group)
19631         (nnmail-get-new-mail-1): Unbreak `group' option for `mail-sources'.
19633 2015-10-19  Nicolas Petton  <nicolas@petton.fr>
19635         New function seq-position
19637         * lisp/emacs-lisp/seq.el (seq-position): New function.
19638         * test/automated/seq-tests.el: New tests for seq-position.
19639         * doc/lispref/sequences.texi: Add documentation for `seq-position'.
19641 2015-10-19  Ken Brown  <kbrown@cornell.edu>
19643         Enable --with-wide-int build on 32-bit Cygwin
19645         * src/sheap.c (STATIC_HEAP_SIZE): Remove distinction between x86
19646         and x86_64 to enable --with-wide-int build on 32-bit Cygwin.
19648 2015-10-19  Glenn Morris  <rgm@gnu.org>
19650         * doc/emacs/ack.texi (Acknowledgments): Small, sad, update.
19652 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
19654         Resurrect image loading under auto-image-file-mode
19656         * src/image.c (x_find_image_fd): Handle the case of -2 returned by
19657         'openp' specially.  This special case was lost in the changes on
19658         2015-08-18.  (Bug#21685)
19660 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
19662         Fix return value of 'set-file-extended-attributes'
19664         * lisp/files.el (set-file-extended-attributes): Return non-nil
19665         when setting either ACLs or SELinux context succeeds.  Document
19666         the return value.  (Bug#21699)
19668         * doc/lispref/files.texi (Changing Files): Document the return
19669         value of set-file-extended-attributes.
19671 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
19673         Improve documentation of functions that change files
19675         * doc/lispref/files.texi (Changing Files): Document that these
19676         functions signal an error on failure.
19678 2015-10-18  Eli Zaretskii  <eliz@gnu.org>
19680         Fix doc string of 'shell-quote-argument'
19682         * lisp/subr.el (shell-quote-argument): Doc fix.  (Bug#21702)
19684 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
19686         Some minor Tramp changes
19688         * doc/misc/tramp.texi (Obtaining Tramp): Add http git cloning.
19690         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
19691         Expand `tramp-auto-save-directory'.
19693 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
19695         Minor edits in Tramp
19697         * lisp/net/tramp-adb.el (directory-listing-before-filename-regexp):
19698         Declare it.
19700         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
19701         Remove declaration.
19703 2015-10-17  Mark Oteiza  <mvoteiza@udel.edu>
19705         * lisp/emacs-lisp/eldoc.el: Add back-to-indentation to the command list.
19707 2015-10-17  Eli Zaretskii  <eliz@gnu.org>
19709         Avoid crashes when redisplayng a window changes faces or fonts
19711         * src/xdisp.c (redisplay_internal): If redisplaying the selected
19712         window or one of the frames turns on the frame's 'redisplay' flag,
19713         redisplay again.  (Bug#21428)
19715         * src/frame.c (x_set_font): Set the frame's 'fonts_changed' flag.
19717 2015-10-17  Michael Albinus  <michael.albinus@gmx.de>
19719         Solve timimg issues in file-notify-tests.el
19721         * test/automated/file-notify-tests.el (file-notify-test02-events):
19722         Rectify `attribute-change' tests.  There are timing issues with
19723         gfilenotify.  (Bug#21669)
19725 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
19727         Fix quoting of data within htmlfontify doc
19729         * doc/misc/htmlfontify.texi (Data Structures, Customization):
19730         Fix quoting of data structures.  A Lisp quote is needed only
19731         when data appears within Lisp code.
19733 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
19735         * lisp/emacs-lisp/package.el: Reload archive-contents if
19736         priorities change.
19737         (package--old-archive-priorities): New variable.
19738         (package-read-all-archive-contents, package-menu--refresh): Use it
19739         to decide when the `package-archive-contents' needs to be read
19740         again.
19742 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
19744         Make src headers idempotent and standalone
19746         Redo src/*.h so that each include file is idempotent (that is, can
19747         be included multiple times with the latter inclusions having no
19748         effect) and standalone (that is, can be included by itself,
19749         with no include file other than config.h needed as a prerequisite).
19750         This is standard practice in GNU programs nowadays.
19751         * lwlib/lwlib-widget.h, src/buffer.h, src/category.h, src/character.h:
19752         * src/charset.h, src/coding.h, src/commands.h, src/disptab.h:
19753         * src/fontset.h, src/gnutls.h, src/indent.h, src/keymap.h, src/macros.h:
19754         * src/regex.h [emacs]:
19755         * src/syntax.h, src/systty.h, src/termhooks.h:
19756         Include lisp.h, for Lisp_Object.
19757         * src/buffer.h, src/category.h, src/cm.h, src/commands.h, src/disptab.h:
19758         * src/indent.h, src/intervals.h, src/keyboard.h, src/macros.h:
19759         * src/process.h, src/puresize.h, src/region-cache.h, src/syntax.h:
19760         * src/syssignal.h, src/sysstdio.h, src/systty.h, src/termchar.h:
19761         * src/termopts.h, src/tparam.h, src/unexec.h:
19762         Protect against multiple inclusion.
19763         * src/buffer.h: Include character.h, for STRING_CHAR.
19764         * src/emacsgtkfixed.h (struct frame):
19765         * src/fontset.h (struct face):
19766         * src/region-cache.h (struct buffer):
19767         * src/termhooks.h (struct glyph):
19768         * src/xsettings.h (struct x_display_info):
19769         Add possibly-forward decl.
19770         * src/syntax.h: Include buffer.h, for BVAR.
19771         * src/sysselect.h: Include lisp.h, for eassume.
19772         * src/termchar.h: Include <stdio.h>, for FILE.
19773         * src/widget.h: Include <X11/IntrinsicP.h>, for Widget.
19774         * src/xsettings.h: Include <X11/Xlib.h>, for XEvent.
19776 2015-10-16  Jürgen Hötzel  <juergen@archlinux.org>
19778         Handle symlink targets containing spaces in tramp-gvfs.el
19780         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
19781         Handle symlink targets containing spaces.
19783 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
19785         * lisp/custom.el (custom-theme-load-path): Demote to defvar.
19787         `custom-theme-load-path' was a defcustom, but it shouldn't be for the
19788         same reason that `load-path' shouldn't.  Setting it via the customize
19789         interface is a trap for the user.
19791         Installed themes commonly add themselves to this variable, which means
19792         its value is not fit for being saved (it will permanently remember dirs
19793         that don't exist anymore).
19795         This is aggravated by the fact that Emacs always applies the `user'
19796         theme on top of any theme that's loaded, since this will apply the old
19797         variable value and remove any new directories that had been recently
19798         added by themes themselves.
19800         Not to mention, we already have `custom-theme-directory', which is safe
19801         to customize.
19803 2015-10-16  Stefan Monnier  <monnier@iro.umontreal.ca>
19805         * lisp/mpc.el: Rename the new toggling commands.
19806         (mpc-toggle-consume, mpc-toggle-repeat, mpc-toggle-single)
19807         (mpc-toggle-shuffle): Add "-toggle" in the name.
19809 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
19811         Improve the doc string of 'completion-boundaries'
19813         * lisp/minibuffer.el (completion-boundaries): Rename the argument
19814         TABLE to COLLECTION, for consistency with other high-level
19815         completion functions.  Document how COLLECTION is called if it
19816         is a function.  (Bug#21644)
19818 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
19820         * lisp/dired-aux.el (dired-shell-command): Fix compile warning.
19822 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
19824         Make dired-do-compress work for *.zip files
19826         * lisp/dired-aux.el (dired-check-process): Transform the top-level
19827           comment into a docstring.
19828         (dired-shell-command): New command.  This mirrors
19829         `dired-check-process', but is more user-friendly for passing
19830         arguments.
19831         (dired-compress-file-suffixes): Allow to specify the command switches
19832         along with input (%i) and output (%o) inside the PROGRAM part.
19833         Add an entry for *.zip files, and update the entry for *.tar.gz files
19834         to the new style.  Update the docstring.
19835         (dired-compress-file): When PROGRAM matches %i or %o, use the new
19836         logic.
19837         (dired-update-file-line): Avoid an error when at end of buffer.
19839         Fixes bug#21637.
19841 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
19843         Minor improvement in documentation of internals
19845         * doc/lispref/internals.texi (Writing Emacs Primitives): Document QUIT.
19847 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
19849         Improve documentation of COLLECTION in completion functions
19851         * doc/lispref/minibuf.texi (Minibuffer Completion): Add a
19852         cross-reference to "Programmed Completion".
19854         * src/minibuf.c (Fcompleting_read): Improve the doc string.
19855         (Bug#21644)
19857 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
19859         Add more release info to etc/HISTORY
19861         * etc/HISTORY: Add more release information about 19.x and 20.x
19862         versions.
19864 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
19866         New file etc/HISTORY
19868         * admin/FOR-RELEASE: Procedure for etc/HISTORY.
19869         * etc/HISTORY: New file.
19870         * etc/NEWS: Mention it.
19872 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
19874         js-mode: Don't misindent generator methods
19876         * lisp/progmodes/js.el (js--looking-at-operator-p): Distinguish
19877         generator methods from multiplication operator
19878         (https://github.com/mooz/js2-mode/issues/275).
19880 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
19882         Fix animation timeout delay calculation
19884         * lisp/image.el (image-animate-timeout):
19885         Don’t assume speed is floating-point.
19887 2015-10-15  Mark Oteiza  <mvoteiza@udel.edu>
19889         Add commands for controlling MPD modes
19891         * lisp/mpc.el (mpc-cmd-consume, mpc-cmd-random, mpc-cmd-repeat)
19892         (mpc-cmd-single): New functions.
19893         (mpc-consume, mpc-repeat, mpc-single, mpc-shuffle): New commands.
19894         (mpc-mode-menu): Add new commands as menu items.
19896 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
19898         Refer to `(elisp)Basic Completion' in completing-read docstring
19900         * src/minibuf.c (Fcompleting_read): Refer to `(elisp)Basic
19901         Completion' in the docstring (bug#21644).
19903 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
19905         * lisp/mpc.el (mpc-format): Always push form to pred
19907 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
19909         Spelling fixes
19911         * configure.ac (bitmapdir): Fix misspelling of bmd_acc.
19912         * test/automated/coding-tests.el (ert-test-coding-bogus-coding-systems):
19913         Fix misspelling of nonexistent file name.
19915 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
19917         * lisp/mpc.el (mpc-mode-menu, mpc-toggle-play): Fix docstrings
19919 2015-10-14  Michael Albinus  <michael.albinus@gmx.de>
19921         Some editing fixes in Tramp
19923         * lisp/net/tramp-gvfs.el:
19924         * doc/misc/tramp.texi: "customer option" -> "custom option".
19926         * lisp/net/tramp.el (tramp-completion-function-alist): Fix docstring.
19928 2015-10-14  Jürgen Hötzel  <juergen@archlinux.org>
19930         Use proper localization in tramp-gvfs.el
19932         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
19933         Suppress localized settings in order to proper parse gfvs output.
19935 2015-10-14  Warren Lynn  <wrn.lynn@gmail.com>  (tiny change)
19937         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band):
19938         Quote argument in proper order.  (Bug#21562)
19940 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
19942         Fix typos in docstrings
19944         * lisp/emacs-lisp/map.el:
19945         * lisp/emacs-lisp/seq.el: Fix typos in the docstrings of the pcase
19946           macros.
19948 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
19950         * lisp/mpc.el (mpc-volume-refresh): Check if buffer is live.
19952 2015-10-14  Oleh Krehel  <ohwoeowho@gmail.com>
19954         Make dired-jump work with tar-subfile-mode
19956         * lisp/dired-x.el (dired-jump): When in `tar-subfile-mode', instead of
19957           emitting an error, switch to `tar-superior-buffer'.
19959 2015-10-14  Juanma Barranquero  <lekktu@gmail.com>
19961         * .gitignore: Add build-aux/ar-lib.
19963 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
19965         Better docstrings in seq.el and map.el
19967         * lisp/emacs-lisp/map.el:
19968         * lisp/emacs-lisp/seq.el: Improve the docstring for the pcase patterns.
19970 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
19972         Merge from gnulib
19974         This incorporates:
19975         2015-10-13 binary-io, u64, unistd: port to strict C
19976         2015-09-26 c-ctype: do not worry about EBCDIC + char signed
19977         2015-09-25 c-ctype: port better to z/OS EBCDIC
19978         2015-09-25 gnulib-common.m4: fix gl_PROG_AR_RANLIB/AM_PROG_AR clash
19979         * doc/misc/texinfo.tex, lib/binary-io.c, lib/c-ctype.h, lib/u64.c:
19980         * lib/unistd.c, m4/gnulib-common.m4, m4/gnulib-comp.m4:
19981         Copy from gnulib.
19983 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
19985         Take XPNTR private
19987         * src/alloc.c (PURE_POINTER_P): Remove.
19988         All uses replaced with PURE_P.
19989         (XPNTR_OR_SYMBOL_OFFSET): New function.
19990         (XPNTR): Move here from lisp.h.
19991         Reimplement in terms of XPNTR_OR_SYMBOL_OFFSET.
19992         (mark_maybe_object, valid_lisp_object_p, survives_gc_p):
19993         Remove unnecessary cast.
19994         (purecopy): Use XPNTR_OR_SYMBOL_OFFSET instead of XPNTR,
19995         to avoid an unnecessary runtime test for symbols.
19996         * src/lisp.h (lisp_h_XPNTR, XPNTR): Remove, moving XPNTR to alloc.c.
19997         Only alloc.c needs XPNTR now.
19999 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
20001         Add MPC play/pause command
20003         * lisp/mpc.el (mpc-toggle-play): New command.
20004         (mpc-mode-map): Bind it to "s".
20005         (mpc-mode-menu): Add corresponding menu item.
20007 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
20009         Add bindings and menu items for prev and next tracks
20011         * lisp/mpc.el (mpc-mode-map): Bind ">" to mpc-next,
20012         "<" to mpc-prev.
20013         (mpc-mode-menu): Add corresponding menu items
20015 2015-10-13  Ken Raeburn  <raeburn@raeburn.org>
20017         Reduce face-related consing during frame creation.
20019         * lisp/faces.el (face--attributes-unspecified): Compute the "unspecified"
20020         attribute list once.
20021         (face-spec-reset-face): Use it instead of building the list.
20023 2015-10-13  Ken Raeburn  <raeburn@permabit.com>
20025         Do process ConfigureNotify events indicating size changes.
20027         * src/xterm.c (handle_one_xevent): If consecutive ConfigureNotify
20028         events don't have the same size, process each one.
20030 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
20032         Derive mpc-mode from special-mode
20034         lisp/mpc.el (mpc-mode-map): Make from sparse keymap.  Unbind g.
20035         (mpc-mode): Derive from special mode.
20036         (mpc-songs-mode-map): Don't set parent keymap.
20038 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
20040         Fix error messages for when covers are not found.
20042         The last change to mpc-format let the binding to file call
20043         mpc-file-local-copy with nil argument.  Instead, employ if-let here
20044         so nil bindings don't result in needless computation and errors.
20045         * lisp/mpc.el: Require 'subr-x at compile time.
20046         * lisp/mpc.el (mpc-format): Use if-let.
20048 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
20050         Make dired-do-compress work for *.tar.gz files
20052         * lisp/dired-aux.el (dired-compress-file-suffixes): Associate
20053           "tar -zxvf" to *.tar.gz; update docstring.
20055         (dired-compress-file): Allow to specify switches after the command in
20056         `dired-compress-file-suffixes'.
20058 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
20060         Make dired-do-compress work for directories
20062         * lisp/dired-aux.el (dired-compress-file): When FILE is a directory,
20063           instead of emitting an error, call "tar -czf FILE.tar.gz FILE".
20064         Also convert the top comment into a docstring.
20066 2015-10-13  Stefan Monnier  <monnier@iro.umontreal.ca>
20068         * lisp/mpc.el (mpc-songs-refresh): Don't side-effect `active'
20070         ... since it might come straight from the memoizing table.
20072 2015-10-13  Juanma Barranquero  <lekktu@gmail.com>
20074         * src/w32fns.c (x_change_tool_bar_height): Remove unused variable frame.
20076 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
20078         Use special-mode in eww list modes
20080         * lisp/net/eww.el (eww-bookmark-mode, eww-history-mode)
20081         (eww-buffers-mode): Derive from special-mode and remove redundant
20082         setting of buffer-read-only.
20083         (eww-mode-map): Remove redundant keymap parent setting.
20084         (eww-bookmark-mode-map, eww-history-mode-map, eww-buffers-mode-map):
20085         Remove redundant keymap suppressions and mappings.
20087 2015-10-13  Martin Rudalics  <rudalics@gmx.at>
20089         Allow setting frame pixel sizes from frame parameters (Bug#21415)
20091         Also fix some misfeatures in frame (re-)sizing code, add more
20092         debugging information and remove some dead code.
20094         * lisp/frame.el (frame-notice-user-settings, make-frame): Change
20095         parameter names when setting `frame-size-history'.
20096         (frame--size-history): New function.
20098         * src/frame.c (frame_inhibit_resize): If frame has not been made
20099         yet, return t if inhibit_horizontal_resize or
20100         inhibit_vertical_resize bit have been set.
20101         (adjust_frame_size): Simplify.
20102         (make_frame): Initialize inhibit_horizontal_resize,
20103         inhibit_vertical_resize, tool_bar_redisplayed, tool_bar_resized.
20104         (Fframe_after_make_frame): Reset inhibit_horizontal_resize and
20105         inhibit_vertical_resize slots.
20106         (x_set_frame_parameters): Handle `text-pixels' specification for
20107         width and height parameters.  Don't consider new_height or
20108         new_width changes.  Call adjust_frame_size instead of
20109         Fset_frame_size.
20110         (x_figure_window_size): Two new arguments x_width and y_width
20111         returning frame's figures width and height.  Calculate tool bar
20112         height before frame sizes so SET_FRAME_HEIGHT can pick it up.
20113         Handle `text-pixels' specification for width and height
20114         parameters.
20115         (Qtext_pixels, Qx_set_frame_parameters, Qset_frame_size)
20116         (Qx_set_window_size_1, Qx_set_window_size_2)
20117         (Qx_set_window_size_3, Qx_set_menu_bar_lines)
20118         (Qupdate_frame_menubar, Qfree_frame_menubar_1)
20119         (Qfree_frame_menubar_2): New symbols.
20120         * src/frame.h (structure frame): New booleans
20121         tool_bar_redisplayed, tool_bar_resized,
20122         inhibit_horizontal_resize, inhibit_vertical_resize.
20123         (x_figure_window_size): Update external declaration.
20124         * src/gtkutil.c (xg_frame_set_char_size): Set size hints before
20125         calling gtk_window_resize.
20126         (update_frame_tool_bar): Make inhibiting of frame resizing more
20127         discriminative.  Set tool_bar_resized bit.
20128         * src/nsfns.m (x_set_tool_bar_lines): Make inhibiting of frame
20129         resizing more discriminative.  Call adjust_frame_size instead of
20130         x_set_window_size.
20131         (Fx_create_frame): Handle x_width and x_height if
20132         set by x_figure_window_size.
20133         * src/nsterm.m (x_set_window_size): For GNUSTEP build don't
20134         subtract 3 from tool bar height.
20135         (x_set_window_size): Add frame_size_history_add call.
20136         (x_new_font): Call adjust_frame_size instead of
20137         x_set_window_size.
20138         * src/w32fns.c (x_change_tool_bar_height): Reset
20139         tool_bar_redisplayed and tool_bar_resized bits when adding tool
20140         bar.  Make inhibiting of frame resizing more discriminative.
20141         (w32_wnd_proc): Remove dead code in WM_WINDOWPOSCHANGING case.
20142         (Fx_create_frame): Handle x_width and x_height if set by
20143         x_figure_window_size.  Set size hints before adjusting frame size.
20144         (x_create_tip_frame): Adjust x_figure_window_size call.
20145         * src/w32term.c (x_set_window_size): Add frame_size_history_add
20146         call.
20147         * src/widget.c (set_frame_size): Remove dead code.  Add
20148         frame_size_history_add call.  When frame_resize_pixelwise is t
20149         use FRAME_PIXEL_WIDTH and FRAME_PIXEL_HEIGHT instead of
20150         pixel_width and pixel_height.
20151         (update_various_frame_slots): Remove dead code.
20152         (EmacsFrameResize): Add more information in
20153         frame_size_history_add call.
20154         (EmacsFrameQueryGeometry): Round only when frame_resize_pixelwise
20155         is not set.
20156         * src/xdisp.c (redisplay_tool_bar): Set tool_bar_redisplayed bits.
20157         * src/xfns.c (x_set_menu_bar_lines): Change argument name.
20158         (x_change_tool_bar_height): Reset tool_bar_redisplayed and
20159         tool_bar_resized bits when adding tool bar.  Make inhibiting of
20160         frame resizing more discriminative.
20161         (Fx_create_frame): Handle x_width and x_height if set by
20162         x_figure_window_size.  Set size hints before adjusting frame size.
20163         (x_create_tip_frame): Adjust x_figure_window_size call.
20164         * src/xmenu.c (update_frame_menubar): Don't handle Lucid specially.
20165         (set_frame_menubar): On Lucid never add core-border-width to
20166         avoid that adding XtNinternalBorderWidth adds it again.
20167         (free_frame_menubar): Handle frame_inhibit_resize true for Motif.
20168         * src/xterm.c (x_new_font): In non-toolkit case handle size
20169         change of menu bar.
20170         (x_set_window_size_1): Fix calls to frame_size_history_add.
20171         (x_wm_set_size_hint): Remove dead code.  Set
20172         size_hints.min_width and size_hints.min_height to base_width and
20173         base_height.
20175 2015-10-13  Michael Albinus  <michael.albinus@gmx.de>
20177         * test/automated/file-notify-tests.el (file-notify--test-timeout):
20178         Add docstring.  Increase to 10 seconds for remote
20179         directories.  (Bug#21669)
20181 2015-10-12  Paul Eggert  <eggert@cs.ucla.edu>
20183         Unmacroize ebrowse.c and etags.c a bit
20185         * lib-src/ebrowse.c (READ_CHUNK_SIZE): Now an enum constant.
20186         (streq, filename_eq, set_flag, has_flag): Now inline functions.
20187         (set_flag): First arg is now an address, not an lvalue.
20188         All callers changed.
20189         (filename_eq, set_flag, has_flag):
20190         Rename from FILENAME_EQ, SET_FLAG, HAS_FLAG.
20191         All callers changed.
20192         * lib-src/etags.c (streq, strcaseeq, strneq, strncaseeq):
20193         Now inline functions.  Remove asserts that are unnecessary these
20194         days (and in some cases were too-generous anyway).
20196 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
20198         Use highlight for current items
20200         * lisp/mpc.el (mpc-select-make-overlay, mpc-tagbrowser-all-select):
20201         Apply highlight face instead of region face.
20203 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
20205         Search for more cover image names in MPC
20207         * lisp/mpc.el (mpc-format): Also look for .folder.jpg or folder.jpg
20208         case insensitively
20210 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
20212         Remove or comment out unused variables
20214         * src/w32fns.c (x_set_mouse_color): Comment out variables cursor,
20215         nontext_cursor, mode_cursor, hand_cursor and count.
20216         (x_change_tool_bar_height): Remove variable old_text_height.
20217         (deliver_wm_chars): Remove variable strip_Alt.
20218         (Fw32_shell_execute): Remove variable document_a.
20219         (Fw32_frame_geometry): Remove variable fullboth.
20220         * src/w32term.c (w32_setup_relief_color): Comment out variable
20221         w32_display_info.
20222         (w32_horizontal_scroll_bar_handle_click): Remove variables start, end.
20223         (w32_read_socket): Comment out variables rows, columns.
20224         * src/w32uniscribe.c (uniscribe_check_otf_1): Remove variable rest.
20226 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
20228         * src/w32proc.c (sys_select): Fix bitwise test.
20230 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
20232         Minor typo corrections in doc strings
20234         * lisp/menu-bar.el (popup-menu, popup-menu-normalize-position):
20235         Doc fixes.
20237 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
20239         * nt/INSTALL: Recommend MSYS Automake/Autoconf from ezwinports.
20241 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
20243         Attempt to avoid crashes in plist-member
20245         * src/fns.c (Fplist_member): Don't call QUIT between a CONSP test
20246         and a call to XCDR.  (Bug#21655)
20248 2015-10-12  Mike FABIAN  <mfabian@redhat.com>
20250         * lisp/select.el (gui-get-primary-selection): In
20251         gui-get-primary-selection use gui--selection-value-internal (Bug#20906)
20253 2015-10-12  Tassilo Horn  <tsdh@gnu.org>
20255         Support RTF in doc-view
20257         * lisp/doc-view.el (doc-view-set-doc-type): Add entry for RTF extension.
20259 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
20261         * src/w32fns.c (get_wm_chars): Increment counter, not pointer.
20263 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
20265         Replace the usage of an obsolete function in auth-source.el
20267         * lisp/gnus/auth-source.el (auth-source-epa-make-gpg-token):
20268         Replace an usage of `epg-context-set-armor' with `setf'.
20270 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
20272         * lisp/gnus/auth-source.el: Use sharp-quoting with functions.
20274 2015-10-11  Jay Belanger  <jay.p.belanger@gmail.com>
20276         Have calc-yank recognize numbers in different bases.
20278         * lisp/calc/calc-yank.el (math-number-regexp): New function.
20279         (calc-yank): Use `math-number-regexp' to recognize numbers.
20281 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
20283         Handle an opaque-move X11 window manager operation more efficiently
20285         * src/xterm.c (handle_one_xevent): If a ConfigureNotify event is
20286         followed by more ConfigureNotify events for the same window, process
20287         only the last one.
20289 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
20291         Fix cursor setting for tip frame; re-enable cursor generation
20293         * src/xfns.c (x_create_tip_frame): Include the cursor in the window
20294         attributes sent when creating the new X window.  Don't skip setting
20295         the pointerColor parameter.
20297 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
20299         Rewrite x_set_mouse_color to sync less
20301         We can track serial numbers of X requests and correlate error events
20302         with the associated requests.  This way we can identify errors for
20303         specific calls without having to use XSync after every one.
20305         * src/xfns.c (enum mouse_cursor): New type.
20306         (struct mouse_cursor_types, struct mouse_cursor_data): New types.
20307         (mouse_cursor_types): New array listing the Lisp variables and default
20308         cursor appearances for each cursor type.
20309         (x_set_mouse_color_handler): New function; checks error event serial
20310         number against submitted requests.
20311         (x_set_mouse_color): Updated to use the new error handler callback,
20312         and to be more table-driven, to simplify repetitious code.
20314 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
20316         Add x_catch_errors_with_handler
20318         * src/xterm.c (struct x_error_message_stack): Add new fields for a
20319         callback function and associated data pointer.
20320         (x_error_catcher): If the callback function is set, call it after
20321         saving the error message string.
20322         (x_catch_errors_with_handler): Renamed from x_catch_errors but now
20323         accepts a callback function and data pointer.
20324         (x_catch_errors): Now a wrapper function.
20325         * src/xterm.h (x_special_error_handler): New typedef.
20326         (x_catch_errors_with_handler): Declare.
20328 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
20330         Introduce x_uncatch_errors_after_check to reduce XSync calls
20332         Both x_had_errors_p and x_check_errors call XSync, so if they're
20333         immediately followed by x_uncatch_errors, its XSync call will be
20334         redundant, resulting in a wasted round trip to the X server.
20336         * src/xterm.c (x_uncatch_errors_after_check): New routine; a copy of
20337         x_uncatch_errors without the XSync call.
20338         (XTmouse_position, x_wm_supports):
20339         * src/xfns.c (x_set_mouse_color):
20340         * src/xmenu.c (Fx_menu_bar_open_internal):
20341         * src/xselect.c (x_own_selection, x_get_foreign_selection):
20342         (Fx_get_atom_name): Call it instead of x_uncatch_errors.
20343         * src/xterm.h (x_uncatch_errors_after_check): Declare.
20345 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
20347         Document the optional prefix to `calc-yank'
20349         * doc/misc/calc.texi (Yanking into the Stack): Document the optional
20350         prefix to `calc-yank'.
20351         * lisp/calc/calc-yank.el (calc-yank): Ensure that things killed from
20352         the Calc buffer are yanked back unchanged.
20354 2015-10-10  Mark Oteiza  <mvoteiza@udel.edu>
20356         * lisp/calendar/calendar.el: Display buffer before executing body.
20358         In each use of this macro, the modeline is derived from a window width
20359         calculation, which will be wrong if (display-buffer) splits the window
20360         horizontally.
20362 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
20364         Use ‘echo’ safely with ‘\’ or leading ‘-’
20366         POSIX says that ‘echo FOO’ produces implementation-defined output
20367         if FOO contains leading ‘-’, or ‘\’ anywhere, so don’t assume GNU
20368         behavior in that case.
20369         * Makefile.in (removenullpaths): Remove.
20370         (epaths-force): Rewrite to avoid the need for ‘echo’.
20371         (install-etc): Be clearer about escaping the shell metacharacters
20372         ‘\’ and ‘$’.
20373         * Makefile.in (install-arch-indep, install-etcdoc):
20374         * admin/charsets/mapconv, admin/merge-gnulib, admin/merge-pkg-config:
20375         * admin/quick-install-emacs, build-aux/gitlog-to-emacslog:
20376         * configure.ac, lib-src/rcs2log, make-dist:
20377         * src/Makefile.in (lisp.mk):
20378         Don’t assume ‘echo’ outputs ‘\’ and leading ‘-’ unscathed.
20379         For example, use ‘printf '%s\n' "$foo"’ rather than ‘echo "$foo"’
20380         if $foo can contain arbitrary characters.
20381         * lisp/Makefile.in (TAGS): Use ‘ls’, not ‘echo’, to avoid ‘\’ issues.
20382         * doc/lispref/two-volume.make (vol1.pdf):
20383         * test/etags/make-src/Makefile (web ftp publish):
20384         Use ‘printf’ rather than ‘echo -e’.
20386 2015-10-10  Kaushal Modi  <kaushal.modi@gmail.com>
20388         Allow numbers with different radixes to be yanked.
20390         * lisp/calc/calc-yank.el (calc-yank): Allow radixes besides the
20391         default base 10.
20393 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
20395         Improve CHECK_IMPURE and PURE_P speedup
20397         * src/data.c (Faset): Use XVECTOR and XSTRING rather than XPNTR.
20399 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
20401         Use events instead of chars to keep track of steps.
20403         * lisp/calc/calc-prog.el (calc-kbd-loop): Use events instead of chars
20404         to keep track of steps.
20406 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
20408         Fix --enable-gcc-warnings problem with older GCC
20410         * src/puresize.h: Add INLINE_HEADER_BEGIN, INLINE_HEADER_END.
20411         This is for building with --enable-gcc-warnings with
20412         GCC 4.6 through 5.0.
20414 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
20416         Fix vertical-motion in truncated lines that end in a stretch
20418         * src/indent.c (Fvertical_motion): Expect overshoot when point is
20419         beyond window margin and lines are truncated, even if we have a
20420         stretch at point.  (Bug#21468)
20422 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
20424         Avoid link-time errors due to inline functions
20426         * src/emacs.c: Include puresize.h, to avoid link-time errors in
20427         unoptimized builds due to PURE_P and CHECK_IMPURE, which are now
20428         inline functions.
20430 2015-10-10  Andreas Schwab  <schwab@linux-m68k.org>
20432         * src/data.c (Faset): Fix last change.
20434 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
20436         CHECK_IMPURE and PURE_P speedup
20438         * src/intervals.c (create_root_interval):
20439         Do CHECK_IMPURE only for strings; not needed for buffers.
20440         Prefer ! STRINGP to BUFFERP, for a tad more speed.
20441         * src/puresize.h (CHECK_IMPURE, PURE_P):
20442         Now inline functions instead of macros.
20443         (PURE_P): Don’t use XPNTR; that is now the caller’s responsibility.
20444         All callers changed.
20445         (CHECK_IMPURE): New argument PTR, to save us the work of running XPNTR.
20446         All callers changed.
20448 2015-10-09  Noah Friedman  <friedman@splode.com>
20450         (tramp-open-connection-setup-interactive-shell): Send -onlcr as well.
20452 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
20454         * lisp/progmodes/cc-mode.el (c-after-font-lock-init): Only *move*
20456         our after-change-function, rather than re-adding it if it was removed.
20458 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
20460         * lisp/cedet/ede: Silence some compiler warnings
20462         * lisp/cedet/ede.el: Require cl-lib.  Silence some compiler warnings.
20463         (ede-menu-obj-of-class-p): Use cl-some rather than `eval'.
20464         (ede-apply-object-keymap, ede-reset-all-buffers)
20465         (ede-auto-add-to-target): Use dolist.
20466         (ede-new, ede-flush-deleted-projects, ede-global-list-sanity-check):
20467         Use field names rather than initarg names in `oref'.
20468         (ede-load-project-file): Remove unused var `file'.
20469         (ede-map-any-target-p): Use cl-some rather than ede-map-targets.
20470         (ede-set): Remove unused var `a'.
20472         * lisp/cedet/ede/emacs.el: Silence some compiler warnings.
20473         (ede-project-autoload): Avoid the old-style "name" argument.
20474         (ede-emacs-find-matching-target): Use field names rather than initarg
20475         names in `oref'.
20477         * lisp/cedet/ede/linux.el: Silence some compiler warnings.
20478         (ede-linux-load, ede-project-autoload): Avoid the old-style
20479         "name" argument.
20480         (ede-linux-find-matching-target): Use field names rather than initarg
20481         names in `oref'.
20483 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
20485         * lisp/textmodes/reftex.el: Silence byte-compiler warnings.
20487 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
20489         * lisp/progmodes/prolog.el (prolog-smie-rules): Try and avoid
20490         indenting too far after ":-".
20492 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
20494         Update case-table and categories of recently added characters
20496         * lisp/international/characters.el: Update information about Latin
20497         Extended-C, Latin Extended-D, Latin Extended-E, Cyrillic Extended,
20498         Georgian, Glagolitic, Deseret, Old Hungarian, and Warang Citi
20499         blocks.  (Byug#21654)
20501 2015-10-09  Martin Rudalics  <rudalics@gmx.at>
20503         * src/frame.c (adjust_frame_size): In minibuffer-only windows
20504         don't count minibuffer height twice.  (Bug#21643)
20506 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
20508         Avoid inflooping in font-lock
20510         * lisp/font-lock.el (font-lock-extend-region-wholelines): Bind
20511         inhibit-field-text-motion around the call to
20512         line-beginning-position, to avoid inflooping.  (Bug#21615)
20514 2015-10-09  Tassilo Horn  <tsdh@gnu.org>
20516         Refactor duplicated code; ensure default is in completions
20518         * lisp/textmodes/reftex-cite.el (reftex--query-search-regexps):
20519         New function.
20520         (reftex-extract-bib-entries): Use it.
20521         (reftex-extract-bib-entries-from-thebibliography): Use it.
20523 2015-10-09  Vincent Belaïche  <vincentb1@users.sourceforge.net>
20525         * doc/misc/autotype.texi (Skeletons as Abbrevs): "if" -> "ifst"
20526         in the example.
20528 2015-10-08  Stefan Monnier  <monnier@iro.umontreal.ca>
20530         * lisp/calc/calc.el: Silence byte-compiler warnings.
20531         (calc-scan-for-dels): Use ignore-errors.
20532         (calc-dispatch, calc-do-dispatch): Make unused arg optional.
20533         (calc-read-key-sequence): Remove unused var `prompt2'.
20534         (calc-kill-stack-buffer): Remove unused var `buflist'.
20535         (calc): Remove unused var `oldbuf'.
20536         (calc-refresh): Use inhibit-read-only.
20537         (calc-can-abbrev-vectors): Declare.
20538         (calc-record): Remove unused var `mainbuf'.
20539         (math-sub-bignum): Remove unused var `sum'.
20540         (math-svo-c, math-svo-wid, math-svo-off): Declare.
20542 2015-10-08  Daiki Ueno  <ueno@gnu.org>
20544         Use g_clear_error instead of g_error_free
20546         * src/image.c: Define g_clear_error instead of g_error_free.
20547         (init_svg_functions): Resolve symbol g_clear_error instead of
20548         g_error_free.
20549         (svg_load_image): Use g_clear_error instead of g_error_free, to
20550         suppress GLib warnings when ERR is not set.  See bug#21641.
20552 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
20554         * src/image.c (image_size_error): Simplify.
20556 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
20558         Fix problems caught with --enable-gcc-warnings
20560         * src/image.c (lookup_rgb_color):
20561         * src/xfns.c (x_defined_color):
20562         * src/xterm.c (x_parse_color):
20563         Remove unused locals.
20565 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
20567         * lisp/calc/calc.el (calc-digit-start-entry): Fix typo.
20569 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
20571         Format initial input uniformly
20573         * lisp/calc/calc.el (calc-digit-start-entry): New function.
20574         * lisp/calc/calc.el (calcDigit-start):
20575         * lisp/calc/calc-aent.el (calc-alg-digit-entry):
20576         Use `calc-digit-start-entry' to format input.
20578 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
20580         Disable non-working pointerColor setting for X tooltip frame
20582         It generates a bunch of server traffic, but there's some bug wherein
20583         the new mouse cursor settings don't seem to get used.  In most
20584         situations the cursor isn't likely to be seen anyway, so it's not
20585         urgent to fix.
20587         * src/xfns.c (x_create_tip_frame): Don't set pointerColor.
20589 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
20591         Reduce some unnecessary X calls
20593         * src/xfns.c (x_real_pos_and_offsets): Remove a redundant XGetGeometry
20594         call.  If border width is wanted, get it from the XGetGeometry call
20595         instead of calling XGetWindowAttributes on the same window.  Skip some
20596         X calls if we've already detected an error from the X server.
20597         * src/xterm.c (x_wm_supports): Delete x_sync before x_had_errors_p.
20598         (handle_one_xevent): Delete XSync call before x_uncatch_errors.
20600 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
20602         Reduce color allocation/query traffic in the TrueColor case
20604         When working with an X visual with TrueColor class, pixel values can
20605         be generated from the RGB values according to mask value provided by
20606         the server on connection.  Some of the image-handling code was already
20607         doing this.
20609         * src/xterm.h (x_make_truecolor_pixel): New function; code taken from
20610         lookup_rgb_color.
20611         (x_mutable_colormap): New function.
20612         * src/image.c (lookup_rgb_color): Move pixel composition code to
20613         x_make_truecolor_pixel.
20614         (x_kill_gs_process): Call x_mutable_colormap.
20615         * src/xfaces.c (x_free_colors, x_free_dpy_colors): Call
20616         x_mutable_colormap.
20617         * src/xftfont.c (xftfont_get_colors): Call x_query_colors.
20618         * src/xterm.c (x_query_colors): For a TrueColor display, decompose the
20619         pixel value into RGB values directly, and don't send a request to the
20620         server.
20621         (x_alloc_nearest_color): For a TrueColor display, construct the pixel
20622         value with x_make_truecolor_pixel.
20623         (x_copy_color): For an immutable color map, just return the provided
20624         pixel value.
20626 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
20628         Cache XParseColor results in the X display info structure
20630         With repeated lookups of foreground and background colors for multiple
20631         faces per frame, we issue a lot of redundant color name lookups to the
20632         X server, waiting every time for the response.  On a remote network
20633         with, say, 30ms round-trip time, this can add nearly a full second to
20634         creation of a new frame.
20636         * src/gtkutil.c (xg_check_special_colors): Call x_parse_color.
20637         * src/image.c (get_spec_bg_or_alpha_as_argb):
20638         (xpm_init_color_cache, xpm_lookup_color):
20639         * src/xfns.c (x_defined_color):
20640         * src/xterm.c (x_parse_color): New function; caches color names not
20641         starting with "#" in the display-info structure.
20642         (x_delete_display): Delete the cache content.
20643         * src/xterm.h (struct color_name_cache_entry): New type.
20644         (x_parse_color): Declare.
20645         (struct x_display_info): Add a new field for the cache.
20647 2015-10-07  Stefan Monnier  <monnier@iro.umontreal.ca>
20649         * src/syntax.c (syms_of_syntax): Make syntax-propertize--done local.
20651 2015-10-07  Eli Zaretskii  <eliz@gnu.org>
20653         Fix segfault in image_size_error
20655         * src/image.c (image_size_error): Pass a Lisp string to
20656         image_error, not a C string.  (Bug#21641)
20658 2015-10-07  Simen Heggestøyl  <simenheg@gmail.com>
20660         Highlight CSS variable definitions
20662         * lisp/textmodes/css-mode.el (css-nmstart-re): Tweak regexp to accept
20663         CSS variables.  (Bug#21638)
20665 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
20667         * test/automated/tabulated-list-test.el: New file.
20668         Test bug#21639 and some basic functionality.
20670 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
20672         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-sort):
20673         Check if column can be sorted before trying.  (Bug#21639)
20675 2015-10-07  Nicolas Richard  <youngfrog@members.fsf.org>
20677         Add test for `self-insert-command' (bug#21633)
20679         * test/automated/cmds-tests.el: New file.
20681 2015-10-07  Martin Rudalics  <rudalics@gmx.at>
20683         * src/window.c (resize_frame_windows): Don't set root window's
20684         top position when resizing horizontally.
20686 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
20688         * lisp/progmodes/prog-mode.el (prettify-symbols-alist):
20689         Document more possible values.
20691 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
20693         * lisp/textmodes/tex-mode.el: Use lexical-binding.
20695 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
20697         * lisp/indent.el (indent--default-inside-comment): New function.
20698         (indent-for-tab-command): Use it for `noindent' indentation.
20700 2015-10-06  Paul Eggert  <eggert@cs.ucla.edu>
20702         Fix bug in GC_CHECK_MARKED_OBJECTS check
20704         * src/alloc.c (mark_object): Fix bug in checking code.
20705         When GC_CHECK_MARKED_OBJECTS is defined, the bug caused
20706         CHECK_ALLOCATED_AND_LIVE_SYMBOL to repeatedly do the
20707         CHECK_ALLOCATED and CHECK_LIVE tests for the first symbol in each
20708         bucket.  The bug did not affect behavior either in the normal case
20709         where GC_CHECK_MARKED_OBJECTS is not defined, or where Emacs does
20710         not have an internal error that a properly-written
20711         CHECK_ALLOCATED_AND_LIVE_SYMBOL would detect.
20713 2015-10-06  Tassilo Horn  <tsdh@gnu.org>
20715         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
20716         Add prettified version for \\Bbb{Q}.
20718 2015-10-06  Artur Malabarba  <bruce.connor.am@gmail.com>
20720         * test/automated/package-test.el (package-test-install-single):
20721         Add a test for bug#21625.
20723 2015-10-06  Aaron Ecay  <aaronecay@gmail.com>
20725         * lisp/emacs-lisp/package.el (package-install): Fix error when pkg is
20726           not a package-desc object.  Also clarify documentation.  (Bug#21625)
20728 2015-10-06  Eli Zaretskii  <eliz@gnu.org>
20730         Fix display of characters adjacent to ZWJ and ZWNJ
20732         * src/bidi.c (bidi_resolve_neutral): Treat all Bn (a.k.a. "control")
20733         characters the same as directional formatting controls.
20734         (bidi_level_of_next_char): Include all Bn characters in rule L1,
20735         as mandated by the UBA.
20737 2015-10-06  Andreas Schwab  <schwab@suse.de>
20739         * src/cmds.c (Fself_insert_command): Don't use XFASTINT on a negative
20740         number.  (Bug#21633)
20742 2015-10-05  Xue Fuqiao  <xfq.free@gmail.com>
20744         * doc/lispref/objects.texi (Window Type): Add a cross reference.
20746         * src/buffer.c (syms_of_buffer): Typo fix.  (Bug#21622)
20748 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
20750         * lisp/language/misc-lang.el (composition-function-table):
20751         Fix entries for Arabic and Syriac.
20753 2015-10-05  Damien Cassou  <damien@cassou.me>
20755         Add first unit tests for auth-source.el
20757         * test/automated/auth-source-tests.el: New file.
20759 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
20761         Remove redundant redisplay code
20763         * src/xdisp.c (redisplay_internal, try_cursor_movement)
20764         (try_window_reusing_current_matrix, try_window_id): Remove
20765         redundant restrictions on redisplay optimizations based on the
20766         frame's 'redisplay' flag.  See
20767         http://osdir.com/ml/general/2015-10/msg02110.html for the relevant
20768         discussions.
20770 2015-10-04  Stefan Monnier  <monnier@iro.umontreal.ca>
20772         * src/xdisp.c (windows_or_buffers_changed): Improve docstring.
20774 2015-10-04  Xue Fuqiao  <xfq.free@gmail.com>
20776         Update tutorials/TUTORIAL.cn
20778         * etc/tutorials/TUTORIAL.cn: Improve translation.
20780 2015-10-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
20782         * src/macfont.m (macfont_encode_char, syms_of_macfont):
20783         Remove unused vars.
20785 2015-10-04  Stefan Merten  <stefan@merten-home.de>
20787         Pull in version numbers from rst.el upstream release.
20789         * lisp/textmodes/rst.el (rst-cvs-header, rst-svn-rev)
20790         (rst-svn-timestamp, rst-official-version)
20791         (rst-official-cvs-rev, rst-package-emacs-version-alist):
20792         Update version numbers.
20794 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
20796         * test/automated/coding-tests.el: New file.
20798 2015-10-04  Michael Albinus  <michael.albinus@gmx.de>
20800         Improve XEmacs compatibility of Tramp
20802         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
20803         Declare if it doesn't exist.
20804         (file-remote-p): Remove defalias, which was necessary for GNU Emacs 21.
20805         (redisplay): Make it an alias if it doesn't exist.
20807         * lisp/net/tramp.el (tramp-get-remote-tmpdir): Don't use
20808         `file-remote-p' (due to XEmacs compatibility).
20810         * lisp/net/trampver.el (locate-dominating-file)
20811         (tramp-compat-replace-regexp-in-string): Autoload.
20812         (tramp-repository-get-version): Do not dupe byte-compiler.
20814 2015-09-02  K. Handa  <handa@gnu.org>
20816         fix for the case that M17N_FLT_USE_NEW_FEATURE is not defined
20818         * src/ftfont.c (ftfont_drive_otf) [not M17N_FLT_USE_NEW_FEATURE]:
20819         Adjusted for the change of type of elements in the array
20820         MFLTGlyphString.glyphs.
20822 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
20823             Michael Heerdegen  <michael_heerdegen@web.de>
20825         shr: fix too long lines in rendered buffers (Bug#21012)
20827         * lisp/net/shr.el (shr-insert-document, shr-fill-text):
20828         Correct calculation of available width.
20829         (shr-find-fill-point): Don't overflow window edge if shr-kinsoku-shorten
20830         is nil.
20832 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
20834         Restore blank line before next section, erroneously erased
20835         in my previous commit
20837         * etc/compilation.txt (symbol ant): Add an additional trailing blank
20838         line to this section, so that there are two of them immediately before
20839         the next section.
20841 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
20843         Support MSW filename style for ant compilation error regexp
20845         * etc/compilation.txt (symbol ant):
20846         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
20847         Support MSW filename style.
20849 2015-10-03  Paul Eggert  <eggert@cs.ucla.edu>
20851         * nt/INSTALL: Minor spelling and quote fixes.
20853         * lisp/ibuffer.el: Fix docstring length (Bug#21541).
20855 2015-10-03  Simen Heggestøyl  <simenheg@gmail.com>
20857         Maintain ordering of JSON object keys by default
20859         * lisp/json.el (json-object-type): Mention order handling in doc-string.
20860         (json--plist-reverse): New utility function.
20861         (json-read-object): Maintain ordering for alists and plists.
20862         (json-pretty-print): Ensure that ordering is maintained.
20864         * test/automated/json-tests.el (test-json-plist-reverse): New test for
20865         `json--plist-reverse'.
20866         (json-read-simple-alist): Update test to accommodate for changes in
20867         `json-read-object'.
20869         * etc/NEWS: Document the new behavior of the pretty printing functions.
20871 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
20873         * src/coding.c (complement_process_encoding_system): Revert last change.
20875 2015-10-03  Ulf Jasper  <ulf.jasper@web.de>
20877         * admin/MAINTAINERS: Add entry for Ulf Jasper.
20879 2015-10-03  Xue Fuqiao  <xfq.free@gmail.com>
20881         Doc fix for `defmacro'
20883         * doc/lispref/objects.texi (Macro Type): `defmacro' is a macro now.
20885 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
20887         More validatation of coding systems
20889         * src/fileio.c (Finsert_file_contents): Remove redundant
20890         coding-system check.
20891         (choose_write_coding_system): Likewise.
20892         * src/coding.c (complement_process_encoding_system): Check argument
20893         for valid coding system.
20895 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
20897         Avoid crashes in coding_inherit_eol_type
20899         * src/coding.c (coding_inherit_eol_type): Check the validity of
20900         the arguments.  Suggested by Andreas Schwab <schwab@linux-m68k.org>.
20901         (Bug#21602)
20903 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
20905         More validatation of coding system in 'write-region'
20907         * src/coding.c (choose_write_coding_system): More validation of
20908         coding-system from various sources.  Suggested by Andreas Schwab
20909         <schwab@linux-m68k.org>.  (Bug#21602)
20911 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
20913         Avoid crashes due to invalid coding-system
20915         * src/fileio.c (choose_write_coding_system)
20916         (Finsert_file_contents): Check validity of coding-system-for-write
20917         and coding-system-for-read bound by the caller.  (Bug#21602)
20919 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
20921         Adapt to new prettify-symbols-unprettify-at-point default
20923         * etc/NEWS: Mention that unprettication of symbol at point is off
20924         by default.
20926 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
20928         Revert my two recent process.c changes
20930         Revert "Improve last commit to process.c" and "Remove callback-handled
20931         channels from Available set" because they did not fix bug#21313.
20933         This reverts commits bfa1aa8e2bdaf14adbbf1e9e824051d3f740694c and
20934         27f871907cc24f33a7d12ac3a4ab71a88f0bc554.
20936 2015-10-02  Markus Triska  <triska@metalevel.at>
20938         * lisp/progmodes/prolog.el: Update and extend operator table.
20939         (prolog-smie-grammar): Add multifile, public etc.
20941 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
20943         Allow autogen even when Git is not installed
20945         * autogen.sh: Test ‘git status’ before trying to use Git.
20947 2015-10-02  Stefan Monnier  <monnier@iro.umontreal.ca>
20949         * lisp/vc/vc-git.el (vc-git-region-history): Handle local changes.
20950         Adjust lto/lfrom when we have uncommitted changes.
20952 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
20954         Fix problems found by clang 3.5.0
20956         * src/cmds.c (Fdelete_char): Don’t assume XINT returns int.
20957         * src/font.c (font_parse_family_registry):
20958         Use &"str"[X] instead of "str"+X, to pacify clang -Wstring-plus-int.
20960 2015-10-02  Eli Zaretskii  <eliz@gnu.org>
20962         * nt/INSTALL: Update instructions for running autogen.sh.
20964         * nt/INSTALL: Point to ezwinports for libXpm binaries.
20966 2015-10-02  Daniel Colascione  <dancol@dancol.org>
20968         Fix winner in cl-lib not loaded case
20970         * lisp/winner.el (winner-change-fun): Don't use cl-lib functions
20971         without requiring CL
20973 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
20975         Fix a few problems with directed quotes
20977         This is in response to a problem report by Kaushal Modi in:
20978         http://bugs.gnu.org/21588#25
20979         * lisp/cedet/mode-local.el (describe-mode-local-overload):
20980         * lisp/emacs-lisp/bytecomp.el (byte-compile-fix-header):
20981         * lisp/info-xref.el (info-xref-check-all-custom):
20982         * lisp/mail/emacsbug.el (report-emacs-bug-hook):
20983         Prefer directed to undirected single quotes in diagnostics.
20985 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
20987         Revert "Attempt to fix slow redisplay caused by last changes"
20989         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
20990         (try_cursor_movement): Don't relax requirements for redisplay
20991         optimizations for the selected frame.  (Bug#21597)
20993         This reverts commit c4c1fb97727ff52bcfa83ad5ed94a64a93d12e59.
20995 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
20997         Fix slow redisplay when daemon frame exists
20999         * src/xdisp.c (redisplay_internal): Don't consider daemon frames
21000         when looking for frames that need to be redisplayed.  (Bug#21597)
21002 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
21004         Attempt to fix slow redisplay caused by last changes
21006         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
21007         (try_cursor_movement): Relax requirements for redisplay
21008         optimizations for the selected frame.  (Bug#21597)
21010 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
21012         * src/dired.c (Ffile_name_completion, Ffile_name_all_completions):
21013         Improve doc string.
21015 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
21017         * lisp/minibuffer.el (minibuffer-completion-help):
21018         Set default base-size, in case completion table does not set it.
21020 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
21022         Fix GUD display of GDB output with non-ASCII text
21024         * lisp/progmodes/gdb-mi.el (gdb-mi-decode-strings): New defcustom.
21025         (gdb-mi-decode): New function.
21026         (gud-gdbmi-marker-filter): If gdb-mi-decode-strings is non-nil,
21027         decode octal escapes in GDB output.  (Bug#21572)
21029 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
21031         * nt/INSTALL: Document where to find XPM support files.
21033 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
21035         Un- and re-prettification are not exclusive
21037         * lisp/progmodes/prog-mode.el (prettify-symbols--post-command-hook):
21038         Re-apply prettification to previous symbol also when unprettifying
21039         next one.
21041 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
21043         Don't unprettify symbol at point by default
21045         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
21046         Default to disabled (nil).
21048 2015-09-30  Artur Malabarba  <bruce.connor.am@gmail.com>
21050         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
21051         Support unprettifying when point is after a symbol.
21053         * etc/NEWS: Document `prettify-symbols-unprettify-at-point'.
21055 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
21057         Avoid assertion violations in push_prefix_prop
21059         * src/xdisp.c (push_prefix_prop): Avoid assertion violations when
21060         a line that has a line-prefix defined starts with an image.  (Bug#21428)
21062 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
21064         Disable some display optimizations when frames need redisplay
21066         These optimizations were previously disabled by the
21067         windows_or_buffers_changed flag, which now is not set
21068         when only some frames need to be redrawn.
21069         * src/xdisp.c (redisplay_internal): Redisplay any frame whose
21070         'redisplay' flag is set.
21071         (try_window_reusing_current_matrix, try_window_id)
21072         (try_cursor_movement): Disable these optimizations when the
21073         frame's 'redisplay' flag is set.
21075 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
21077         Don't modify buffer by unprettification
21079         * lisp/progmodes/prog-mode.el (prettify-symbols--compose-symbol):
21080         (prettify-symbols--post-command-hook, prettify-symbols-mode): Don't
21081         modify buffer when setting/removing custom prettify-symbols-start/end
21082         text properties.  Add them to font-lock-extra-managed-props, too.
21084 2015-09-30  Stefan Monnier  <monnier@iro.umontreal.ca>
21086         Try to avoid redisplaying all frames when creating a new one
21088         * src/xfns.c (x_set_menu_bar_lines, x_change_tool_bar_height):
21089         * src/xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
21090         (Finternal_set_lisp_face_attribute, update_face_from_frame_parameter):
21091         * src/frame.c (x_set_screen_gamma): Set the specific frame's
21092         `redisplay' bit rather than windows_or_buffers_changed.
21094         * src/window.c (apply_window_adjustment): Remove redundant setting of
21095         windows_or_buffers_changed.
21097         * src/xdisp.c (redisplay_internal): Set the specific frame's
21098         `redisplay' bit rather than update_mode_lines in response to
21099         cursor_type_changed.
21100         (syms_of_xdisp): Use hash-tables for redisplay_*_cause tables.
21101         (AINC): Adjust accordingly.
21103 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
21105         Implement unprettification of symbol at point
21107         * lisp/progmodes/prog-mode.el: Implement feature for unprettifying the
21108         symbol at point.
21109         (prettify-symbols--current-symbol-bounds): New variable.
21110         (prettify-symbols--post-command-hook): New function.
21111         (prettify-symbols-unprettify-at-point): New defcustom.
21112         (prettify-symbols-mode): Use it.
21113         (prettify-symbols--compose-symbol): Use them.
21115 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
21117         * src/macfont.m (mac_font_descriptor_supports_languages):
21118         Regard "zh" as synonym of "zh-Hans".
21120 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
21122         Work around crash when displaying etc/HELLO on OS X 10.11
21124         * src/macfont.m (mac_font_get_weight)
21125         (mac_font_descriptor_get_adjusted_weight): New functions.
21126         (macfont_store_descriptor_attributes): Adjust weight.
21128 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
21130         * src/macfont.m: Fix compilation with USE_CT_GLYPH_INFO.
21132 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
21134         * lisp/arc-mode.el (archive-rar-summarize): Better alignment
21135         of the columns.
21137 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
21139         Use unar and lsar to handle RAR archives in arc-mode
21141         * lisp/arc-mode.el (archive-rar-extract, archive-extract-by-file): Rely
21142         on unar and lsar instead of unrar-free for RAR archives (bug#17663).
21144 2015-09-30  Wieland Hoffmann  <themineo@gmail.com>  (tiny change)
21146         Clarify :create in auth-source's docs
21148         * lisp/gnus/auth-source.el (auth-source-search):
21149         Clarify :create's meaning.
21151 2015-09-30  Phil Sainty  <psainty@orcon.net.nz>
21153         Avoid empty -path arguments in rgrep
21155         * lisp/progmodes/grep.el (rgrep-default-command): Remove nil from
21156         the list produced according to grep-find-ignored-directories,
21157         before passing it to Find/Grep invocation.  (Bug#21548)
21159 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
21161         Clarify documentation of pos-visible-in-window-p
21163         * src/window.c (Fpos_visible_in_window_p): Clarify the meaning of
21164         t for POS.  See
21165         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg01040.html
21166         for the original report.
21168         * doc/lispref/windows.texi (Window Start and End): Clarify the
21169         meaning of t for the POSITION argument of pos-visible-in-window-p.
21171 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
21173         * lisp/progmodes/prolog.el: Fix various indentation cases.
21174         (prolog-operator-chars): New const (add \\).
21175         (prolog-smie-forward-token, prolog-smie-backward-token): Use it.
21176         (prolog-smie-rules): Add rules according to bug#21526.
21178 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
21180         * lisp/progmodes/sh-script.el: Old "dumb" continued line indent.
21181         (sh-indent-after-continuation): Add new value `always' (bug#17620)
21182         (sh-smie-sh-rules): Remove old handling of continued lines.
21183         (sh-smie--indent-continuation): New function.
21184         (sh-set-shell): Use it.
21186 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
21188         * lisp/progmodes/octave.el: Use grammar more; Handle enumeration fun.
21189         Remove redundant :group keyword args.
21190         (octave-begin-keywords, octave-else-keywords, octave-end-keywords):
21191         Remove variables.
21192         (octave-operator-table, octave-smie-bnf-table): Use let-when-compile to
21193         turn them into compile-time variables.
21194         Auto-generate the "foo ... end" rules from the "foo ... endfoo" rules.
21195         Add rules for break, continue, return, global, and persistent.
21196         Refine the rule for "until".
21197         (octave-smie--funcall-p, octave-smie--end-index-p)
21198         (octave-smie--in-parens-p): New functions.
21199         (octave-smie-backward-token, octave-smie-forward-token): Use them to
21200         distinguish the "enumeration" function and the "end" index from
21201         their corresponding keywords.
21202         (octave--block-offset-keywords): New constant.
21203         (octave-smie-rules): Use it.  Adjust rules for new global/persistent
21204         parsing.
21205         (octave-reserved-words): Redefine using octave-smie-grammar.
21206         (octave-font-lock-keywords): Use octave-smie--funcall-p and
21207         octave-smie--end-index-p.
21209 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
21211         * lisp/emacs-lisp/lisp-mode.el (let-when-compile): Work like let*.
21213 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
21215         * nt/INSTALL: Remove references to GTK site.
21216         That site no longer offers Windows downloads.
21218 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
21220         * nt/INSTALL: Add instructions for installing Git.
21222 2015-09-29  Katsumi Yamaoka  <yamaoka@jpl.org>
21224         * lisp/net/shr.el (shr-colorize-region): Allow 88-color tty to
21225         use colors.  Suggested by Eli Zaretskii.
21227 2015-09-28  Katsumi Yamaoka  <yamaoka@jpl.org>
21229         * lisp/net/shr.el (shr-colorize-region): Don't do it on a system
21230         not supporting 256 above colors (bug#21557).
21232 2015-09-28  Dmitry Gutov  <dgutov@yandex.ru>
21234         Revert "Don't rely on defaults in decoding UTF-8 encoded Lisp files"
21236         This reverts commit db828f62f6f17414fbbc3206dac123dc73dd6055.
21238 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
21240         Add documentation for seq.el
21242         * doc/lispref/sequences.texi: Add documentation regarding extending
21243         seq.el, as well as missing documentation for seq-elt, seq-length, seq-p,
21244         seq-do and seq-map.
21246 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
21248         Better documentation for seq-some
21250         * doc/lispref/sequences.texi:
21251         * lisp/emacs-lisp/seq.el: Update the documentation of seq-some to
21252         guarantee that the returned value is the first non-nil value that
21253         resulted from applying the predicate.
21255 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
21257         * lisp/arc-mode.el: Sharp-quote function arguments.
21259 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
21261         Avoid redisplay error in ediff-regions-wordwise
21263         * lisp/vc/ediff-util.el
21264         (ediff-clone-buffer-for-region-comparison): Make sure the mark is
21265         set before activating it.  (Bug#21567)
21267 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
21269         Another attempt to fix crashes due to prematurely freed faces
21271         * src/xdisp.c (redisplay_internal): Inhibit freeing of realized
21272         faces for as long as we might have desired matrices that reference
21273         those faces.  (Bug#21428)
21275 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
21277         Add auctex development list email address
21279 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
21281         * admin/MAINTAINERS: Add entries for AUCTeX team and myself.
21283 2015-09-28  Arash Esbati  <esbati@gmx.de>  (tiny change)
21285         Improve wrapfig package support and caption parsing
21287         * lisp/textmodes/reftex-vars.el (reftex-label-alist-builtin):
21288         Correct description string and add wraptable environment.
21289         (reftex-default-context-regexps): Improve caption regexp.
21291 2015-09-28  Anders Lindgren  <andlind@gmail.com>
21293         Respect value of frame_resize_pixelwise when handling fullscreen state
21295         * src/nsterm.m (handleFS): Respect frame_resize_pixelwise when
21296         setting size increments.
21298 2015-09-27  Michael Albinus  <michael.albinus@gmx.de>
21300         * src/gfilenotify.c (Fgfile_add_watch): Cleanup temporary variable.
21302 2015-09-27  Simen Heggestøyl  <simenheg@gmail.com>
21304         Add prettify-symbols-alist for js-mode
21306         * lisp/progmodes/js.el (js--prettify-symbols-alist): New defconst.
21307         (js-mode): Use it.
21309 2015-09-27  Eli Zaretskii  <eliz@gnu.org>
21311         * nt/subdirs.el: File deleted (no longer used).
21313 2015-09-26  Alan Mackenzie  <acm@muc.de>
21315         Fix follow-scroll-up/down, making them replacements for scroll-up/down
21317         1. Allow point to move between follow windows in scroll operations.
21318         2. Fix bug where `right-char' just before EOB caused spurious scrolling,
21319         when EOB was isolated in the last follow window.
21321         * lisp/follow.el (follow-fixed-window): New variable.
21322         (follow-get-scrolled-point): New function.
21323         (follow-scrol-up, follow-scroll-down): Add autoload cookies.
21324         Reformulate the code.  Put `scroll-command' properties on the functions.
21325         Correct minor errors in ...-down's doc string and code.
21326         (follow-calc-win-end): Amend incomplete doc string.  Use
21327         `pos-visible-in-window-p' to check whether EOB is in the window.
21328         (follow-estimate-first-window-start): Correct an off-by-1 error.
21329         (follow-adjust-window): Add handling for explicit scrolling operations.
21331 2015-09-26  Paul Eggert  <eggert@cs.ucla.edu>
21333         * admin/MAINTAINERS: Add self, plus list some more files
21334         sans maintaners.
21336 2015-09-26  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
21338         New DWIM commands for changing letter-case
21340         * lisp/simple.el (upcase-dwim, downcase-dwim, capitalize-dwim):
21341         New functions.  (Bug#21501)
21343 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
21345         * etc/PROBLEMS: Document problems with pasting on MS-Windows.
21347 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
21349         Make face realization be more frame-specific
21351         * src/frame.h (struct f): New flag face_change.
21352         * src/xfaces.c (Finternal_make_lisp_face)
21353         (Finternal_copy_lisp_face, Finternal_set_lisp_face_attribute)
21354         (update_face_from_frame_parameter): Set the face_change flag only
21355         for the frame whose faces are affected.
21356         * src/xdisp.c (init_iterator): If a frame's face_change flag is
21357         set, free faces only on that frame.
21358         (redisplay_internal): Disable "display optimization 1" if the
21359         frame's face_change flag is set.
21360         (redisplay_window): Don't allow skipping a window's redisplay if
21361         its frame's face_change flag is set.
21362         * src/frame.c (x_set_screen_gamma): Instead of calling
21363         Fclear_face_cache, call clear_face_cache and set
21364         windows_or_buffers_changed to a non-zero value.  This avoids
21365         setting the global face_change flag that triggers face realization
21366         on all frames and thorough redisplay of all of them.
21368         * lisp/term/tty-colors.el (tty-register-default-colors): Don't
21369         clear face cache if the selected frame is a GUI frame.
21371 2015-09-26  Tassilo Horn  <tsdh@gnu.org>
21373         Remove font-latex specific check
21375         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
21376         Use syntax-ppss data to identify verbatim contents.
21378 2015-09-25  Tassilo Horn  <tsdh@gnu.org>
21380         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
21381         Fix some false negatives.
21383 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
21385         Reorder Windows version in Emacs manifests
21387         * nt/emacs-x64.manifest:
21388         * nt/emacs-x86.manifest: Reorder Windows version from lowest to
21389         highest.
21391 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
21393         Update Emacs manifest files for Windows 10
21395         * nt/emacs-x86.manifest:
21396         * nt/emacs-x64.manifest: Declare compatibility with Windows 10.
21398 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
21400         Avoid non-ASCII decoding errors in C src files
21402         * src/nsterm.m:
21403         * src/lisp.h:
21404         * src/editfns.c:
21405         * src/doprnt.c: Add 'coding' cookies -- these files include
21406         Unicode characters and should be decoded as UTF-8.
21408 2015-09-25  Alan Mackenzie  <acm@muc.de>
21410         Resurrect edebug-set-initial-mode, repurposing it to set the global mode
21412         * lisp/emacs-lisp/edebug.el (edebug-initial-mode-alist): Uncomment, and
21413         amend to match current modes and functions.
21414         (edebug-set-initial-mode): Uncomment and change from setting a defun's
21415         `edebug-initial-mode''s property to setting the variable
21416         `edebug-initial-mode'.
21417         (top level): Create new binding C-x C-a C-m for
21418         `edebug-set-initial-mode'.
21420         * doc/lispref/edebug.texi (Edebug Execution Modes): Document
21421         `edebug-set-initial-mode' and its new key binding.
21422         (Edebug Options): Mention the new command in the pertinent place.
21424         * etc/NEWS: Write entry for this change.
21426 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
21428         Avoid non-ASCII decoding errors in Texinfo files
21430         * doc/misc/tramp.texi:
21431         * doc/lispref/strings.texi:
21432         * doc/lispref/positions.texi:
21433         * doc/lispref/help.texi:
21434         * doc/lispref/functions.texi:
21435         * doc/lispintro/emacs-lisp-intro.texi:
21436         * doc/emacs/text.texi:
21437         * doc/emacs/modes.texi:
21438         * doc/emacs/mini.texi:
21439         * doc/emacs/display.texi:
21440         * doc/emacs/custom.texi:
21441         * doc/emacs/basic.texi: Add 'coding' cookies -- these files use
21442         Unicode characters and should be decoded as UTF-8.
21443         * doc/lispref/frames.texi (Size Parameters): Don't use a non-ASCII
21444         apostrophe unnecessarily.
21446 2015-09-25  Paul Eggert  <eggert@cs.ucla.edu>
21448         Merge from gnulib
21450         This incorporates:
21451         2015-09-25 c-ctype: rewrite to use inline functions
21452         2015-09-24 maint: add coding cookies to non-ASCII sources
21453         2015-09-24 gitlog-to-changelog: trim only trailing whitespaces
21454         * build-aux/gitlog-to-changelog, doc/misc/texinfo.tex:
21455         * lib/acl-internal.c, lib/acl-internal.h, lib/c-ctype.c:
21456         * lib/c-ctype.h, lib/get-permissions.c, lib/qcopy-acl.c:
21457         * lib/set-permissions.c:
21458         Copy from gnulib.
21460 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
21462         Update publicsuffix.txt from upstream
21464         * etc/publicsuffix.txt: Update from
21465         https://publicsuffix.org/list/effective_tld_names.dat
21466         dated 2015-09-24 17:29:21 UTC.
21468 2015-09-24  Eli Zaretskii  <eliz@gnu.org>
21470         Prevent timers from messing up TTY menus
21472         * src/term.c (tty_menu_activate): Inhibit redisplay for as long as
21473         the TTY menu is open.  (Bug#21530)
21475 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
21477         No need to mention K&R C in c-mode intro
21479 2015-09-24  Stefan Monnier  <monnier@iro.umontreal.ca>
21481         Fix recent bootstrap problems
21483         * src/syntax.c (parse_sexp_propertize): Fix last fix.
21484         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): Fix paren typo.
21485         * lisp/emacs-lisp/lisp-mode.el: Require cl-lib for cl-progv.
21487 2015-09-24  Michael Albinus  <michael.albinus@gmx.de>
21489         * src/gfilenotify.c (Fgfile_add_watch): Decrease polling rate.
21491 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
21493         Properly quote nested xml comments (Bug#6267) (Bug#20001)
21495         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): New function.
21496         (nxml-mode): Set comment-quote-nested-function.
21498 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
21500         Allow major-modes full control over quoting nested comments
21502         * lisp/newcomment.el (comment-quote-nested-function): New variable.
21503         (comment-quote-nested-default): New function.
21504         (comment-quote-nested): Use `comment-quote-nested-function'.
21506 2015-09-23  Paul Eggert  <eggert@cs.ucla.edu>
21508         Prefer CALLN in a few more places
21510         * src/macfont.m (macfont_set_family_cache):
21511         * src/nsterm.m (append2):
21512         * src/xterm.c (x_cr_export_frames):
21513         Prefer CALLN to allocating the arg arrays by hand.
21515 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
21517         Adapt file-notify-test02-events test case
21519         * test/automated/file-notify-tests.el (file-notify-test02-events):
21520         Create a new watch for every test.
21522 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
21524         Continue gfilenotify.c implementation of missing parts
21526         * lisp/filenotify.el (file-notify-add-watch): Append `flags' to
21527         `gfile-add-watch' call.
21528         (file-notify-rm-watch): Modify `file-notify-descriptors' only
21529         after calling the low level functions.
21531         * src/gfilenotify.c (dir_monitor_callback): Check, whether
21532         event_type is expected.
21533         (Fgfile_add_watch): Allow also `change'and `attribute-change' for FLAGS.
21534         (Fgfile_rm_watch): Fix typo.
21535         (syms_of_gfilenotify): Declare Qchange and Qattribute_change.
21537 2015-09-23  Stefan Monnier  <monnier@iro.umontreal.ca>
21539         * src/syntax.c (parse_sexp_propertize): Handle spurious
21540         e_property_truncated flag.
21541         (update_syntax_table_forward): Remove invalid assertion.
21543 2015-09-23  Eli Zaretskii  <eliz@gnu.org>
21545         * src/xdisp.c (produce_stretch_glyph): Support ':relative-width'
21546         space display spec on text-mode terminals, by calling
21547         PRODUCE_GLYPHS instead of x_produce_glyphs.  Remove the
21548         HAVE_WINDOW_SYSTEM guards from the supporting code, as well as the
21549         test for a GUI frame.
21551 2015-09-23  Oleh Krehel  <ohwoeowho@gmail.com>
21553         Move let-when-compile to lisp-mode.el
21555         This fixes the bootstrapping problem of `let-when-compile' using
21556         `cl-progv' while being in subr.el (i.e. before cl stuff was loaded).
21558 2015-09-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
21560         * lisp/url/url-http.el (url-http-parse-headers): Do not
21561         automatically include Authorization header in redirect.
21562         (Bug#21350)
21564 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
21566         Clarify documentation of ':relative-width'
21568         * doc/lispref/display.texi (Specified Space): Document that
21569         ':relative-width' is only supported on GUI frames.
21571 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
21573         Fix 'current-column' in presence of :relative-width
21575         * src/indent.c (check_display_width): Support ':relative-width'
21576         in a display spec that specifies a stretch glyph.  (Bug#21533)
21578 2015-09-22  Ken Manheimer  <ken.manheimer@gmail.com>
21580         Reformat the pdbtrack remote-file fix ChangeLog.2 entry
21582         ... to conform better to CONTRIBUTE guidelines.
21584 2015-09-22  Stefan Monnier  <monnier@iro.umontreal.ca>
21586         * lisp/progmodes/prolog.el: Fix indentation of empty line
21588         * lisp/emacs-lisp/smie.el (smie-rules-function): Document new
21589         `empty-line-token' element.
21590         (smie-indent-empty-line): New function.
21591         (smie-indent-functions): Add it.
21593         * lisp/progmodes/prolog.el (prolog-smie-rules): Fix :list-intro
21594         behavior and use the new `empty-line-token' element (bug#21526).
21595         (prolog-mode-variables): Fix comment-start-skip setting to match
21596         comment-start.
21598         * test/indent/prolog.prolog: Add nested indentation tests.
21600         * lisp/newcomment.el (comment-normalize-vars): Fix default value of
21601         comment-start-skip not to misuse submatch 1.
21603 2015-09-22  Alan Mackenzie  <acm@muc.de>
21605         Make description of `edebug-initial-mode' user friendly
21607         Fixes bug#21365.
21609         * doc/lispref/edebug.texi (Edebug Execution Modes): Change the
21610         description of `edebug-initial-mode' from that of its implementation
21611         to that of its visual effect and use.  Move the paragraph higher up.
21613 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
21615         lisp/progmodes/gud.el (gud-format-command): Fix last commit
21617         * lisp/progmodes/gud.el (gud-format-command): Don't use Tramp internal
21618         functions 'tramp-file-name-localname' and 'tramp-dissect-file-name'.
21620 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
21622         Improve last commit to process.c
21624 2015-09-22  Michael Albinus  <michael.albinus@gmx.de>
21626         Implement gfile-valid-p
21628         * lisp/filenotify.el (file-notify-callback): Fix typo.
21629         (gfile-valid-p): Remove defalias.
21631         * src/gfilenotify.c (dir_monitor_callback): Cancel the monitor if
21632         the file or directory to be watched is deleted.
21633         (Fgfile_add_watch): Make watch_object a triple.
21634         (Fgfile_rm_watch): Check, whether watch is cancelled already.
21635         (Fgfile_valid_p): New defun.
21636         (syms_of_gfilenotify): Declare Sgfile_valid_p.
21638 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
21640         Remove callback-handled channels from Available set
21642         * src/process.c (wait_reading_process_output): Remove channel from
21643         Available set if it is handled by a callback, e.g., dbus or
21644         inotify (bug#21313).
21646 2015-09-21  Mark Oteiza  <mvoteiza@udel.edu>
21648         Use lunate epsilon for TeX \epsilon
21650         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
21651         Add \varepsilon using GREEK SMALL LETTER EPSILON, and change
21652         \epsilon to use GREEK LUNATE EPSILON SYMBOL
21654 2015-09-21  Stefan Monnier  <monnier@iro.umontreal.ca>
21656         * lisp/progmodes/prolog.el: Fix nested electric if-then-else
21658         * lisp/progmodes/prolog.el (prolog-find-unmatched-paren): Use innermost
21659         rather than outermost paren (bug#21526).
21661 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
21663         Improve git diff hunk headers for .el, .texi
21665         Problem reported by Alan Mackenzie in:
21666         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00826.html
21667         * .gitattributes (*.el, *.texi): New patterns.
21668         * autogen.sh: Configure diff.elisp.xfuncname and
21669         diff.texinfo.xfuncname if using Git.
21671 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
21673         Don't rely on defaults in decoding UTF-8 encoded Lisp files
21675         * lisp/replace.el:
21676         * lisp/textmodes/rst.el:
21677         * lisp/whitespace.el: Add an explicit UTF-8 encoding tag.
21679 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
21681         Clarify or replace a few \u escapes
21683         * doc/lispref/nonascii.texi (Character Properties)
21684         More-detailed commentary for \u escapes.
21685         * lisp/progmodes/python.el (python--prettify-symbols-alist):
21686         * lisp/replace.el (query-replace-from-to-separator):
21687         * lisp/textmodes/rst.el (rst-bullets, rst-re-alist-def)
21688         (rst-mode-syntax-table):
21689         * lisp/whitespace.el (whitespace-display-mappings):
21690         Prefer actual character to \u escape when this makes the code
21691         easier to follow in the usual case where Unicode chars can be
21692         displayed.
21694 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
21696         Pacify GCC -Wmaybe-uninitialized in xdisp.c
21698         * src/xdisp.c (face_before_or_after_it_pos): Use do-while rather
21699         than while loop to avoid GCC -Wmaybe-uninitialized diagnostic with
21700         charpos.  The loop should always execute at least once anyway.
21702 2015-09-21  Tassilo Horn  <tsdh@gnu.org>
21704         Signal error on invalid regexp
21706         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
21707         Signal an error when the user tries searching with a regexp
21708         matching the empty string.
21710 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
21712         Another fix of file-notify-tests for w32notify
21714         * test/automated/file-notify-tests.el (file-notify-test02-events):
21715         Further adaptation for w32notify: reduce the number of expected
21716         'changed' events.  (Bug#21435)
21718 2015-09-21  Michael Albinus  <michael.albinus@gmx.de>
21720         Adapt tests and manual for w32notify
21722         * doc/lispref/os.texi (File Notifications): w32notify does not
21723         send `attribute-changed' events.
21725         * test/automated/file-notify-tests.el (file-notify--test-with-events):
21726         Simplify parameters.  Adapt all callees.
21727         (file-notify-test02-events): w32notify does not send
21728         `attribute-changed' events.
21729         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
21730         Do not skip in case of w32notify.  Simply ignore this part of the test.
21732 2015-09-21  Dima Kogan  <dima@secretsauce.net>
21734         Fix setting breakpoints when remote-debugging
21736         * lisp/progmodes/gud.el (gud-format-command): Send localized file
21737         names to the debugger running on the remote.  (Bug#13304)
21739 2015-09-21  Nicolas Petton  <nicolas@petton.fr>
21741         Better docstring and parameter name for seq-find
21743         * lisp/emacs-lisp/seq.el (seq-find): Improve the docstring and rename
21744         the parameter `sentinel' to `default'.
21746         * doc/lispref/sequences.texi (Sequence Functions): Update the
21747           documentation for `seq-find' accordingly.
21749 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
21751         Avoid infinite recursion while displaying box face
21753         * src/xdisp.c (face_before_or_after_it_pos): Fix calculation of
21754         the previous string/buffer character position under bidi
21755         iteration.  (Bug#21428)
21757 2015-09-21  Anders Lindgren  <andlind@gmail.com>
21759         Keep upper edge unchanged when changing size of NS frame
21761         * src/nsterm.m (x_set_window_size): Keep upper frame edge unchanged
21762         (Bug#21415).
21764 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
21766         * lisp/progmodes/prolog.el: Improve handling of if/then/else.
21767         (prolog-smie-rules): Accommodate standard if/then/else special
21768         indentation.
21769         (prolog-mode): Add . to electric-indent-chars.
21770         (prolog-electric--if-then-else): Re-indent the line before adding space
21771         after the new char (bug#21526).
21773 2015-09-20  Mark Oteiza  <mvoteiza@udel.edu>
21775         Add prettify symbols to python-mode
21777         * lisp/progmodes/python.el (python-prettify-symbols-alist):
21778         New variable.
21779         (python-mode): Use it
21781 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
21783         * lisp/emacs-lisp/syntax.el (syntax-begin-function): Make obsolete.
21785 2015-09-20  Jostein Kjønigsen  <jostein@secure.kjonigsen.net>  (tiny change)
21787         (compilation-error-regexp-alist-alist): Tone down guile-file
21789         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
21790         Make guile-file a bit less enthusiastic (bug#21496).
21792 2015-09-20  Drew Csillag  <drew@thecsillags.com>
21794         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords):
21795         Fix m4_* highlighting.
21797         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords): Fix recognition
21798         of commands when they have a "m4_" prefix.
21800 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
21802         '.' -> `.' in doc string
21804         * lisp/emacs-lisp/timer.el (run-at-time): In doc string, quote
21805         individual chars with grave quotes instead of straight quotes, as
21806         this works better when they are translated to curved quotes.
21808 2015-09-20  Michael Albinus  <michael.albinus@gmx.de>
21810         Improve file notifications, especially for Tramp
21812         * doc/lispref/files.texi (Magic File Names):
21813         Mention `file-notify-valid-p'.
21815         * doc/lispref/os.texi (File Notifications):
21816         Describe `file-notify-valid-p'.
21818         * etc/NEWS: Add `file-notify-valid-p'.
21820         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch):
21821         Improve implementation.
21822         (tramp-gvfs-monitor-file-process-filter): Rename from
21823         `tramp-gvfs-file-gvfs-monitor-file-process-filter'.  Delete
21824         process if appropriate.
21826         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
21827         Improve implementation.
21828         (tramp-sh-gvfs-monitor-dir-process-filter): Rename from
21829         `tramp-sh-file-gvfs-monitor-dir-process-filter'.  Delete process
21830         if appropriate.
21831         (tramp-sh-inotifywait-process-filter): Rename from
21832         `tramp-sh-file-inotifywait-process-filter'.  Delete process if
21833         appropriate.
21835         * lisp/net/tramp.el (tramp-handle-file-notify-rm-watch):
21836         Use `delete-process'.
21837         (tramp-handle-file-notify-valid-p): Check also, that file or
21838         directory to be watched still exists.
21840         * test/automated/file-notify-tests.el (file-notify--test-timeout):
21841         New defun.  Use it at all places a timeout is needed.
21842         (file-notify--test-cleanup): Delete directories recursively.
21843         Cleanup also Tramp connections.
21844         (file-notify-test02-events): Add tests for `attribute-change'.
21845         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
21846         Add tests for `file-notify-rm-watch'.
21848 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
21850         Use %s to format strings instead of splicing them
21852         If FOO might contain quotes that are part of a file or variable
21853         name, the quotes should not be translated when showing FOO’s name
21854         in a diagnostic.  So, for example, (message (concat (FOO ": bar")))
21855         is not quite right, as it would translate FOO’s quotes.
21856         Change it to (message "%s: bar" FOO) instead.
21857         * lisp/allout.el (allout-process-exposed):
21858         * lisp/calc/calc-ext.el (calc-do-prefix-help):
21859         * lisp/calc/calc-store.el (calc-store-into):
21860         * lisp/calendar/todo-mode.el (todo-category-completions):
21861         * lisp/cedet/semantic/complete.el (semantic-completion-message):
21862         * lisp/org/ob-latex.el (convert-pdf):
21863         * lisp/org/org-crypt.el (org-crypt-check-auto-save):
21864         * lisp/org/ox-latex.el (org-latex-compile):
21865         * lisp/org/ox-man.el (org-man-compile):
21866         * lisp/org/ox-odt.el (org-odt--export-wrap):
21867         * lisp/org/ox-texinfo.el (org-texinfo-compile):
21868         * lisp/progmodes/ruby-mode.el (ruby-in-ppss-context-p):
21869         * lisp/progmodes/verilog-mode.el (verilog-batch-execute-func)
21870         (verilog-signals-combine-bus, verilog-read-defines)
21871         (verilog-getopt-file, verilog-expand-dirnames)
21872         (verilog-modi-lookup, verilog-modi-modport-lookup-one):
21873         * lisp/term/ns-win.el (ns-spi-service-call):
21874         Use %s to avoid translating quotes of file names etc. in diagnostics.
21876 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
21878         * lisp/progmodes/js.el (js--syntax-begin-function): Remove.
21879         (js-mode): Don't set syntax-begin-function.
21881 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
21883         * lisp/font-lock.el (font-lock-compile-keywords): Don't assume
21884         syntax-begin-function is a symbol.
21886 2015-09-20  Eli Zaretskii  <eliz@gnu.org>
21888         Improve documentation of 'run-at-time'
21889         * lisp/emacs-lisp/timer.el (run-at-time): Improve the doc string.
21890         In particular, don't refer to 'diary-entry-time', because it is
21891         unavailable until diary-lib is loaded.  Also, refer to
21892         'timer-duration-words', not 'timer-duration', as the latter's doc
21893         string says nothing about the accepted strings.
21895 2015-09-19  Jay Belanger  <jay.p.belanger@gmail.com>
21897         * lisp/calc/calc-ext.el (calc-do-prefix-help): Tidy up error message.
21899 2015-09-19  Ken Manheimer  <ken.manheimer@gmail.com>
21901         Repair pdbtrack remote file tracking
21902         * lisp/progmodes/python.el (python-pdbtrack-set-tracked-buffer):
21903         Rectify pdbtrack so it follows transitions from one remote source
21904         file to the next.
21906 2015-09-19  Artur Malabarba  <bruce.connor.am@gmail.com>
21908         * lisp/emacs-lisp/timer.el (run-at-time): Docstring formatting.
21910 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
21912         Adapt vc-src to the old-new vc-checkin API
21913         * lisp/vc/vc-src.el (vc-src-checkin): Accept and ignore an
21914         additional optional parameter.
21916 2015-09-19  Simen Heggestøyl  <simenheg@gmail.com>
21918         Add overflow module to CSS property list
21919         * lisp/textmodes/css-mode.el (css-property-ids): Add properties
21920         from CSS Overflow Module Level 3.
21922 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
21924         Fix documentation of "C-u C-x v v"
21925         * doc/emacs/maintaining.texi (Advanced C-x v v): Make the
21926         documentation of "C-u C-x v v" match what the code does.
21928         Resurrect the ability to specify a revision in vc-next-action
21929         * lisp/vc/vc-bzr.el (vc-bzr-checkin):
21930         * lisp/vc/vc-dav.el (vc-dav-checkin):
21931         * lisp/vc/vc-git.el (vc-git-checkin):
21932         * lisp/vc/vc-hg.el (vc-hg-checkin):
21933         * lisp/vc/vc-mtn.el (vc-mtn-checkin): Accept and silently ignore
21934         an additional optional argument, the revision to checkin.
21935         * lisp/vc/vc-sccs.el (vc-sccs-checkin):
21936         * lisp/vc/vc-cvs.el (vc-cvs-checkin):
21937         * lisp/vc/vc-rcs.el (vc-rcs-checkin): Allow to optionally specify
21938         a revision to checkin.
21939         * lisp/vc/vc.el (vc-next-action): Allow to optionally specify the
21940         revision when checking in files.
21941         See http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00688.html
21942         for the details.
21944 2015-09-18  Wilson Snyder  <wsnyder@wsnyder.org>
21946         * lisp/progmodes/verilog-mode.el (verilog-forward-sexp-function)
21947         (verilog-decls-princ, verilog-modport-princ)
21948         (verilog-modi-modport-lookup-one): Fix checkdoc warnings.
21950 2015-09-17  Jay Belanger  <jay.p.belanger@gmail.com>
21952         Fix the routine for help on Calc's prefixes
21953         * lisp/calc/calc-ext.el (calc-prefix-help-retry): New variable.
21954         (calc-do-prefix-help): Use `read-char' to determine the next Calc
21955         command.
21957 2015-09-17  Stefan Monnier  <monnier@iro.umontreal.ca>
21959         * lisp/font-lock.el (font-lock-beginning-of-syntax-function): Remove.
21960         (font-lock-fontify-block): Don't let-bind it.
21961         (font-lock-compile-keywords): Don't use it.
21962         (font-lock-set-defaults): Don't set it.  Allow the variable alist to
21963         start one slot earlier, instead.
21964         * lisp/emacs-lisp/syntax.el (font-lock-beginning-of-syntax-function):
21965         Don't declare.
21966         (syntax-ppss): Don't use it either.
21967         * lisp/font-core.el (font-lock-defaults): Remove SYNTAX-BEGIN
21968         from docstring.
21969         * doc/emacs/display.texi (Font Lock): Don't mention
21970         font-lock-beginning-of-syntax-function.
21971         * doc/lispref/modes.texi (Font Lock Basics): Update description of
21972         font-lock-defaults.
21973         (Syntactic Font Lock): Remove font-lock-beginning-of-syntax-function.
21974         * lisp/loadhist.el (unload-feature-special-hooks):
21975         Remove font-lock-beginning-of-syntax-function.
21976         * lisp/obsolete/lazy-lock.el (lazy-lock-fontify-region):
21977         * lisp/emacs-lisp/lisp.el (beginning-of-defun-raw): Don't let-bind
21978         font-lock-beginning-of-syntax-function.
21980 2015-09-17  Paul Eggert  <eggert@cs.ucla.edu>
21982         Backslash cleanup in Elisp source files
21983         This patch should not change behavior.  It typically omits backslashes
21984         where they are redundant (e.g., in the string literal "^\$").
21985         In a few places, insert backslashes where they make regular
21986         expressions clearer: e.g., replace "^\*" (equivalent to "^*") with
21987         "^\\*", which has the same effect as a regular expression.
21988         Also, use ‘\ %’ instead of ‘\%’ when avoiding confusion with SCCS IDs,
21989         and similarly use ‘\ $’ instead of ‘\$’ when avoiding confusion with
21990         RCS IDs, as that makes it clearer that the backslash is intended.
21992         Some more minor backslash fixes
21993         * test/automated/compile-tests.el (compile-tests--test-regexps-data):
21994         * test/automated/info-xref.el (info-xref-test-write-file):
21995         Double backslashes in strings.
21997         Fix several backslash typos in Elisp strings
21998         * lisp/calendar/todo-mode.el (todo-files, todo-rename-file)
21999         (todo-find-filtered-items-file, todo-reset-nondiary-marker)
22000         (todo-reset-done-string, todo-reset-comment-string)
22001         (todo-reset-highlight-item):
22002         * lisp/erc/erc-networks.el (erc-networks-alist):
22003         * lisp/gnus/gnus-art.el (gnus-button-handle-library):
22004         * lisp/gnus/gnus-group.el (gnus-read-ephemeral-gmane-group-url):
22005         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
22006         (nntp-telnet-shell-prompt):
22007         * lisp/gnus/spam-report.el (spam-report-gmane-regex):
22008         * lisp/image-dired.el (image-dired-rotate-original):
22009         (image-dired-get-exif-file-name):
22010         * lisp/international/latin1-disp.el (latin1-display-ucs-per-lynx):
22011         * lisp/mail/undigest.el (rmail-digest-parse-rfc1153strict):
22012         * lisp/mh-e/mh-letter.el (mh-file-is-vcard-p):
22013         * lisp/mh-e/mh-mime.el (mh-file-mime-type-substitutions):
22014         * lisp/net/shr-color.el (shr-color->hexadecimal):
22015         * lisp/org/org-bibtex.el (org-bibtex-fields):
22016         * lisp/org/org-docview.el (org-docview-export):
22017         * lisp/org/org-entities.el (org-entities):
22018         * lisp/org/ox-icalendar.el (org-icalendar-cleanup-string):
22019         * lisp/progmodes/cperl-mode.el (cperl-indent-exp):
22020         * lisp/progmodes/ebnf2ps.el (ebnf-file-suffix-regexp)
22021         (ebnf-style-database):
22022         * lisp/progmodes/idlw-help.el (idlwave-do-context-help1):
22023         * lisp/progmodes/ruby-mode.el (ruby-imenu-create-index-in-block):
22024         * lisp/progmodes/sql.el (sql-product-alist):
22025         * lisp/progmodes/verilog-mode.el (verilog-error-regexp-emacs-alist)
22026         (verilog-error-font-lock-keywords)
22027         (verilog-assignment-operator-re):
22028         * lisp/progmodes/vhdl-mode.el (vhdl-compiler-alist):
22029         * lisp/textmodes/reftex-parse.el (reftex-parse-from-file):
22030         * lisp/vc/add-log.el (change-log-version-number-regexp-list):
22031         Fix typo by replacing ‘\’ with ‘\\’ in a string literal.
22032         For example, to get the regular expression ‘\.’ use the string
22033         literal "\\.", not "\." (which is equivalent to ".").
22034         * lisp/emulation/viper-util.el (viper-glob-unix-files):
22035         Remove stray ‘\j’ from string.
22036         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
22037         (nntp-telnet-shell-prompt):
22038         Treat > like $ when matching a shell prompt.
22039         * lisp/progmodes/make-mode.el (makefile-browse):
22040         Properly quote a diagnostic.
22042         Fix minor quoting problems in diagnostics
22043         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
22044         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
22045         Follow text-quoting-style in diagnostic, and quote a file name.
22047 2015-09-17  Eli Zaretskii  <eliz@gnu.org>
22049         * doc/lispref/frames.texi (Cursor Parameters):
22050         Document 'x-stretch-cursor'.
22052 2015-09-16  Paul Eggert  <eggert@cs.ucla.edu>
22054         Omit unnecessary \ before paren in C docstrings
22055         Although \( is needed in docstrings in Elisp code, it is not needed in
22056         docstrings in C code, since C function definitiions do not start with
22057         a parenthesis.  The backslashes made the docstrings a bit harder to
22058         read and to format in columns.  Also, some C docstrings had ( in
22059         column 1 and this did not appear to be causing any problems.  So,
22060         simplify C docstrings by replacing \( with ( and \) with ).
22062         A few more minor quoting fixes in a script and a text file
22064         Minor quoting fixes in scripts and doc
22065         Prefer straight quotes in random script files, as they are not
22066         converted.  Prefer grave quotes in a couple of places in the manual
22067         that were missed earlier, as these quotes are converted.
22069         Minor backslash fixes in manuals and scripts
22070         * Makefile.in (install-arch-indep):
22071         * admin/charsets/compact.awk:
22072         * admin/charsets/gb180302.awk (gb_to_index):
22073         * admin/charsets/gb180304.awk (gb_to_index):
22074         Avoid undefined behavior in Awk regular expression backslashes.
22075         * doc/misc/efaq.texi (Matching parentheses):
22076         Omit unnecessary backslashes.
22077         * doc/misc/gnus-faq.texi (FAQ 5-8):
22078         Avoid undefined behavior in suggested sed backslash usage.
22080         Add -Wswitch to --enable-gcc-warnings
22081         Make --enable-gcc-warnings a bit pickier, by also using -Wswitch.
22082         * configure.ac (WERROR_CFLAGS): Don’t add -Wno-switch.
22083         * lib-src/etags.c (main, consider_token, C_entries):
22084         * src/coding.c (encode_invocation_designation):
22085         * src/data.c (Ftype_of):
22086         * src/eval.c (Fdefvaralias, default_toplevel_binding)
22087         (Fbacktrace__locals, mark_specpdl):
22088         * src/lisp.h (record_xmalloc):
22089         * src/syntax.c (scan_lists, scan_sexps_forward):
22090         * src/window.c (window_relative_x_coord):
22091         * src/xdisp.c (push_it, pop_it):
22092         * src/xterm.c (xg_scroll_callback, x_check_fullscreen):
22093         Error out or do nothing (as appropriate) if a switch statement
22094         with an enum value does not cover all of the enum.
22095         * src/dispextern.h (struct iterator_stack_entry.u.comp):
22096         Remove unused member discovered by using -Wswitch.
22097         * src/lisp.h (record_xmalloc): Add a ‘+ 0’ to pacify -Wswitch.
22098         * src/vm-limit.c (check_memory_limits):
22099         Simplify warning-diagnostic computation by using a table.
22101         etags ‘fatal’ function is now printf-like
22102         * lib-src/etags.c (fatal): Now printf-like.  All callers changed.
22103         Also, now static; not clear why it needed to be extern.
22104         (verror): New function, with most of the old contents of ‘error’.
22105         (fatal, error): Use it.
22107 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
22109         More adaptations in file-notify-tests.el
22110         * test/automated/file-notify-tests.el
22111         (file-notify-test05-dir-validity): Skip for w32notify in
22112         batch-mode.  (Bug#21432)
22114 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
22116         Adapt test in file-notify-tests.el
22117         * test/automated/file-notify-tests.el
22118         (file-notify-test04-file-validity): Skip for w32notify in
22119         batch-mode.  Add test lost last commit.
22121 2015-09-16  Dima Kogan  <dima@secretsauce.net>
22123         winner no longer holds on to dead frames
22124         * lisp/winner.el (winner-change-fun): Cull dead frames.
22125         This prevents a potentially massive memory leak.  See:
22126         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00619.html
22128 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
22130         Use common report_file_notify_error function
22131         * src/fileio.c (report_file_notify_error): New function.
22132         * src/inotify.c (report_inotify_error): Remove function.
22133         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
22134         (Finotify_rm_watch): Use report_file_notify_error.
22135         * src/lisp.h (report_file_notify_error): Declare external function.
22136         * src/w32notify.c (report_w32notify_error): Remove function.
22137         (Fw32notify_add_watch, Fw32notify_rm_watch):
22138         Use report_file_notify_error.
22140 2015-09-16  Jay Belanger  <jay.p.belanger@gmail.com>
22142         Fix documentation.
22143         * doc/misc/calc.texi (Single-Variable Statistics): Fix the wording of
22144         the documentation of the root mean square.
22146 2015-09-16  Martin Rudalics  <rudalics@gmx.at>
22148         Remove tool_bar_redisplayed_once and associated code.
22149         * src/frame.h (tool_bar_redisplayed_once): Remove slot.
22150         * src/frame.c (make_frame, x_set_font): Remove initialization of
22151         f->tool_bar_redisplayed_once.
22152         * src/w32fns.c (x_change_tool_bar_height):
22153         * src/xfns.c (x_change_tool_bar_height): Don't check for
22154         f->tool_bar_redisplayed_once.
22155         * src/xdisp.c (redisplay_internal): Remove handling of
22156         f->tool_bar_redisplayed_once.
22158 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
22160         Restore some of the quoting in the manuals
22161         * doc/lispref/windows.texi (Coordinates and Windows)
22162         (Coordinates and Windows):
22163         * doc/lispref/variables.texi (Lexical Binding)
22164         (File Local Variables):
22165         * doc/lispref/text.texi (Format Properties):
22166         * doc/lispref/symbols.texi (Symbol Components):
22167         * doc/lispref/strings.texi (Creating Strings):
22168         * doc/lispref/sequences.texi (Sequence Functions):
22169         * doc/lispref/searching.texi (Regexp Special, Regexp Search)
22170         (Search and Replace):
22171         * doc/lispref/processes.texi (Bindat Spec):
22172         * doc/lispref/os.texi (Idle Timers):
22173         * doc/lispref/objects.texi (Basic Char Syntax):
22174         * doc/lispref/numbers.texi (Float Basics, Random Numbers):
22175         * doc/lispref/nonascii.texi (Character Properties):
22176         * doc/lispref/modes.texi (Major Mode Conventions, Mode Hooks)
22177         (Mode Line Variables):
22178         * doc/lispref/minibuf.texi (Text from Minibuffer):
22179         * doc/lispref/loading.texi (Autoload):
22180         * doc/lispref/keymaps.texi (Controlling Active Maps):
22181         * doc/lispref/frames.texi (Frame Layout, Size and Position)
22182         (Size Parameters, Implied Frame Resizing):
22183         * doc/lispref/files.texi (Changing Files, Magic File Names):
22184         * doc/lispref/eval.texi (Self-Evaluating Forms):
22185         * doc/lispref/display.texi (Progress, Abstract Display)
22186         (Abstract Display Example, Bidirectional Display):
22187         * doc/lispref/commands.texi (Event Mod):
22188         * doc/emacs/windows.texi (Displaying Buffers):
22189         * doc/emacs/trouble.texi (Bug Criteria, Checklist):
22190         * doc/emacs/text.texi (Enriched Text):
22191         * doc/emacs/programs.texi (MixedCase Words):
22192         * doc/emacs/picture-xtra.texi (Insert in Picture)
22193         (Tabs in Picture):
22194         * doc/emacs/misc.texi (Emacs Server, Printing):
22195         * doc/emacs/mini.texi (Minibuffer History):
22196         * doc/emacs/maintaining.texi (Old Revisions, VC Change Log)
22197         (Pulling / Pushing):
22198         * doc/emacs/killing.texi (Yanking, Cut and Paste, Clipboard):
22199         * doc/emacs/help.texi (Help, Help Echo):
22200         * doc/emacs/glossary.texi (Glossary):
22201         * doc/emacs/frames.texi (Mouse Commands, Creating Frames)
22202         (Frame Commands):
22203         * doc/emacs/files.texi (Reverting, Saving, Directories):
22204         * doc/emacs/entering.texi (Exiting):
22205         * doc/emacs/emacs.texi (Top):
22206         * doc/emacs/cmdargs.texi (Window Size X, Icons X):
22207         * doc/emacs/anti.texi (Antinews): Restore quoting of text where
22208         appropriate or replace quoting with @dfn.
22209         * doc/misc/ediff.texi (Window and Frame Configuration):
22210         * doc/lispref/processes.texi (Network Feature Testing):
22211         * doc/lispref/display.texi (Display Margins): Quote the phrase
22212         after "a.k.a." where appropriate.
22214 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
22216         Clarify reftex-extra-bindings docs
22217         * lisp/textmodes/reftex-vars.el (reftex-extra-bindings):
22218         * doc/misc/reftex.texi (Key Bindings): Document that the variable
22219         only has an effect at load-time.
22221 2015-09-16  Daniel McClanahan  <danieldmcclanahan@gmail.com>  (tiny change)
22223         * lisp/emacs-lisp/lisp-mode.el (lisp--el-match-keyword): Fix
22224         search argument.  (Bug#21492) (Bug#21493)
22226 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
22228         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
22229         Add pretty symbols for \qquad and \varrho.
22231 2015-09-15  Jay Belanger  <jay.p.belanger@gmail.com>
22233         Add new functions for the root mean square of a (Calc) vector
22234         * lisp/calc/calc-stat.el (calcFunc-rms, calc-vector-rms):
22235         New functions.
22236         * lisp/calc/calc-ext.el (calc-init-extensions): Add keybinding for
22237         `calc-vector-rms', add autoloads for `calc-vector-rms' and
22238         `calcFunc-rms'.
22239         * lisp/calc/calc-map.el (calc-u-oper-keys): Add entry for
22240         `calcFunc-rms'.
22241         * lisp/calc/calc-menu.el (calc-vectors-menu): Add entry for
22242         `calc-vector-rms'.
22243         * doc/misc/calc.texi (Single-Variable Statistics): Document the rms
22244         command.
22246 2015-09-15  Stephen Leake  <stephen_leake@stephe-leake.org>
22248         Add monotone EDE generic project
22249         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
22250         Add monotone generic project.
22252         Revert premature commit
22253         * doc/lispref/files.texi: Revert premature commit of change to
22254         file-name-all-completions.
22256         Fix a bug in elisp--xref-find-definitions related to cl-generic defaults
22257         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions): Fix bug
22258         with cl-generic defaults.
22259         (elisp--xref-find-references): Add doc string.
22260         * test/automated/elisp-mode-tests.el (xref-elisp-generic-*): Improve
22261         tests to find bug.
22263         Fix bugs in eieio-oref-default related to class symbols
22264         * lisp/emacs-lisp/eieio-core.el (class-p): Handle symbol properly.
22265         (eieio-oref-default): Handle class properly.
22267 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
22269         Quote “fullboth” when defining it
22270         * doc/lispref/frames.texi (Size Parameters): Use @dfn for “fullboth”
22271         and rewrite the containing paragraph, which was awkward.  (Bug#21472).
22273 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
22275         Minor doc fix in emacs/ack.texi
22276         * doc/emacs/ack.texi (Acknowledgments): Fix an xref missing the
22277         first argument.
22279 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
22281         Adapt tests in auto-revert-tests.el
22282         * test/automated/auto-revert-tests.el (auto-revert--timeout):
22283         Make it a defconst.
22284         (auto-revert--wait-for-revert): New defun.
22285         (auto-revert-test00-auto-revert-mode)
22286         (auto-revert-test01-auto-revert-tail-mode)
22287         (auto-revert-test02-auto-revert-mode-dired): Use it.
22289 2015-09-15  Stefan Monnier  <monnier@iro.umontreal.ca>
22291         * lisp/emacs-lisp/lisp-mode.el (lisp-mode-symbol-regexp): New const.
22292         Use it everywhere "\\(\\sw\\|\\s_\\|\\\\.\\)+" was used.
22293         (cl-lib-fdefs): Add defgeneric.
22294         (cl-kw): Add all elements of eieio-kw and cl-lib-kw.
22295         (eieio-kw, cl-lib-kw, el-kw): Remove.
22297 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
22299         Quote less in manuals
22300         The manuals often used quotes ``...'' when it is better to use @dfn or
22301         @code or capitalized words or no quoting at all.  For example, there is
22302         no need for the `` and '' in “if a variable has one effect for
22303         @code{nil} values and another effect for ``non-@code{nil}'' values”.
22304         Reword the Emacs, Lisp intro, and Lisp reference manuals to eliminate
22305         unnecessary quoting like this, and to use @dfn etc. instead when called
22306         for (Bug#21472).
22308 2015-09-15  Mark Oteiza  <mvoteiza@udel.edu>
22310         * lisp/custom.el (load-theme): Only compute hash when needed.
22312 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
22314         Pacify --enable-gcc-warnings
22315         * src/inotify.c (report_inotify_error): Declare it _Noreturn.
22317 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
22319         Improve error reports in inotify.c
22320         * src/inotify.c (report_inotify_error): New function.  Clone of
22321         report_w32notify_error.
22322         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
22323         (Finotify_rm_watch): Use it.
22325 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
22327         Fix the file-notify tests for watch validation on w32
22328         * test/automated/file-notify-tests.el
22329         (file-notify-test04-file-validity): Move the directory deletion
22330         out of the file-notify--test-with-events macro.
22331         (file-notify-test04-file-validity)
22332         (file-notify-test05-dir-validity): Enlarge the timeout of
22333         read-event to 0.5, as 0.1 is borderline on w32.  (Bug#21432)
22335 2015-09-15  Tassilo Horn  <tsdh@gnu.org>
22337         Use OPEN BOX instead of space for \quad.
22338         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist): Use OPEN BOX
22339         character for \quad instead of a space.
22341 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
22343         Add missing *.pbm images
22344         * etc/images/connect.pbm: New file.
22345         * etc/images/custom/down-pushed.pbm: New file.
22346         * etc/images/custom/down.pbm: New file.
22347         * etc/images/custom/right-pushed.pbm: New file.
22348         * etc/images/custom/right.pbm: New file.
22349         * etc/images/describe.pbm: New file.
22350         * etc/images/disconnect.pbm: New file.
22351         * etc/images/ezimage/bits.pbm: New file.
22352         * etc/images/ezimage/bitsbang.pbm: New file.
22353         * etc/images/ezimage/box-minus.pbm: New file.
22354         * etc/images/ezimage/box-plus.pbm: New file.
22355         * etc/images/ezimage/box.pbm: New file.
22356         * etc/images/ezimage/checkmark.pbm: New file.
22357         * etc/images/ezimage/dir-minus.pbm: New file.
22358         * etc/images/ezimage/dir-plus.pbm: New file.
22359         * etc/images/ezimage/dir.pbm: New file.
22360         * etc/images/ezimage/doc-minus.pbm: New file.
22361         * etc/images/ezimage/doc-plus.pbm: New file.
22362         * etc/images/ezimage/doc.pbm: New file.
22363         * etc/images/ezimage/info.pbm: New file.
22364         * etc/images/ezimage/key.pbm: New file.
22365         * etc/images/ezimage/label.pbm: New file.
22366         * etc/images/ezimage/lock.pbm: New file.
22367         * etc/images/ezimage/mail.pbm: New file.
22368         * etc/images/ezimage/page-minus.pbm: New file.
22369         * etc/images/ezimage/page-plus.pbm: New file.
22370         * etc/images/ezimage/page.pbm: New file.
22371         * etc/images/ezimage/tag-gt.pbm: New file.
22372         * etc/images/ezimage/tag-minus.pbm: New file.
22373         * etc/images/ezimage/tag-plus.pbm: New file.
22374         * etc/images/ezimage/tag-type.pbm: New file.
22375         * etc/images/ezimage/tag-v.pbm: New file.
22376         * etc/images/ezimage/tag.pbm: New file.
22377         * etc/images/ezimage/unlock.pbm: New file.
22378         * etc/images/gnus/important.pbm: New file.
22379         * etc/images/gnus/mail-send.pbm: New file.
22380         * etc/images/gnus/receipt.pbm: New file.
22381         * etc/images/gnus/toggle-subscription.pbm: New file.
22382         * etc/images/gnus/unimportant.pbm: New file.
22383         * etc/images/gud/all.pbm: New file.
22384         * etc/images/gud/rcont.pbm: New file.
22385         * etc/images/gud/recstart.pbm: New file.
22386         * etc/images/gud/recstop.pbm: New file.
22387         * etc/images/gud/rfinish.pbm: New file.
22388         * etc/images/gud/rnext.pbm: New file.
22389         * etc/images/gud/rnexti.pbm: New file.
22390         * etc/images/gud/rstep.pbm: New file.
22391         * etc/images/gud/rstepi.pbm: New file.
22392         * etc/images/gud/thread.pbm: New file.
22393         * etc/images/lock-broken.pbm: New file.
22394         * etc/images/lock-ok.pbm: New file.
22395         * etc/images/lock.pbm: New file.
22396         * etc/images/mail/copy.pbm: New file.
22397         * etc/images/mail/forward.pbm: New file.
22398         * etc/images/mail/not-spam.pbm: New file.
22399         * etc/images/mail/outbox.pbm: New file.
22400         * etc/images/mail/preview.pbm: New file.
22401         * etc/images/mail/save-draft.pbm: New file.
22402         * etc/images/mh-logo.pbm: New file.
22403         * etc/images/mpc/add.pbm: New file.
22404         * etc/images/mpc/ffwd.pbm: New file.
22405         * etc/images/mpc/next.pbm: New file.
22406         * etc/images/mpc/pause.pbm: New file.
22407         * etc/images/mpc/play.pbm: New file.
22408         * etc/images/mpc/prev.pbm: New file.
22409         * etc/images/mpc/rewind.pbm: New file.
22410         * etc/images/mpc/stop.pbm: New file.
22411         * etc/images/redo.pbm: New file.
22412         * etc/images/smilies/braindamaged.pbm: New file.
22413         * etc/images/smilies/cry.pbm: New file.
22414         * etc/images/smilies/dead.pbm: New file.
22415         * etc/images/smilies/evil.pbm: New file.
22416         * etc/images/smilies/forced.pbm: New file.
22417         * etc/images/smilies/grin.pbm: New file.
22418         * etc/images/smilies/indifferent.pbm: New file.
22419         * etc/images/sort-ascending.pbm: New file.
22420         * etc/images/sort-column-ascending.pbm: New file.
22421         * etc/images/sort-criteria.pbm: New file.
22422         * etc/images/sort-descending.pbm: New file.
22423         * etc/images/sort-row-ascending.pbm: New file.
22424         * etc/images/unchecked.pbm: New file.
22425         * etc/images/zoom-in.pbm: New file.
22426         * etc/images/README: Update instructions for PBM files.
22428         Add separator.pbm tool-bar image
22429         * etc/images/separator.pbm: New file.  Having it avoids the side
22430         effect of changing the tool-bar height when the default font's size
22431         changes and XPM image support is not available, due to the SPC
22432         characters that are left in the Lisp string used to display the tool
22433         bar, because there are no images to display instead of those SPC
22434         characters.
22436         Make show-paren-match face visible on mono-color displays
22437         * lisp/faces.el (show-paren-match): Use the underline face for
22438         mono-color displays.  (Bug#21481)
22440 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
22442         Don’t double-encode non-ASCII mail clipboard
22443         * lisp/mail/mailclient.el (mailclient-send-it):
22444         Also fix the case when mailclient-place-body-on-clipboard-flag
22445         is non-nil.  Problem reported by Eli Zaretskii (Bug#21471#37).
22447 2015-09-14  Michael Albinus  <michael.albinus@gmx.de>
22449         Adapt file-notify-tests.el test cases
22450         * lisp/filenotify.el (file-notify-rm-watch): Ignore `file-notify-error'.
22451         * src/inotify.c (Finotify_valid_p): Adapt docstring.
22452         * test/automated/file-notify-tests.el
22453         (file-notify-test03-autorevert)
22454         (file-notify-test04-file-validity)
22455         (file-notify-test04-file-validity-remote)
22456         (file-notify-test05-dir-validity)
22457         (file-notify-test05-dir-validity-remote): Adapt docstring.
22458         (file-notify-test04-file-validity): Let events arrive before
22459         calling final `file-notify-valid-p'.  Do not ignore errors.
22460         (file-notify-test05-dir-validity): Do not manipulate
22461         `temporary-file-directory', it isn't necessary.  Let events arrive
22462         before calling final `file-notify-valid-p'.  Do not ignore errors.
22464 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
22466         Don’t double-encode non-ASCII for mail client
22467         * lisp/mail/mailclient.el (mailclient-encode-string-as-url):
22468         Use RFC 6068’s list of unreserved characters.
22469         (mailclient-send-it): When encoding the body as a URL,
22470         first decode it as per Content-Type: and Content-Transfer-Encoding:,
22471         as URLs must use percent-encoded UTF-8 (Bug#21471).
22472         * doc/misc/url.texi (mailto): Update RFC number.
22474 2015-09-14  Stefan Monnier  <monnier@iro.umontreal.ca>
22476         * lisp/progmodes/cc-langs.el (c-make-init-lang-vars-fun): Use dolist.
22478 2015-09-14  Alan Mackenzie  <acm@muc.de>
22480         Replace `cadar' with `cadr/car', since `cadar' is problematic on Emacs
22481         (c-make-init-lang-vars-fun): Replace two occurrences of `cadar' with
22482         `cadr/car'.
22484 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
22486         Clarify documentation of char-table extra slots
22487         * doc/lispref/sequences.texi (Char-Tables): Clarify that extra
22488         slot numbers are zero-based.  (Bug#21467)
22490 2015-09-14  Alan Mackenzie  <acm@muc.de>
22492         Elisp mode: Make font-lock and imenu handle escaped characters in symbols
22493         Fixes bug#21449.
22494         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression)
22495         (lisp--el-match-keyword, lisp-el-font-lock-keywords-1)
22496         (lisp-cl-font-lock-keywords-1, lisp-el-font-lock-keywords-2)
22497         (lisp-cl-font-lock-keywords-2, lisp-string-in-doc-position-p):
22498         Insert "\\|\\\\." into regexps which match symbols.
22500 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
22502         Improve the doc string of w32notify-valid-p
22503         * src/w32notify.c (Fw32notify_valid_p): Mention in the doc string
22504         that removing a watch makes its object invalid.
22506 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
22508         Fix tests for file-notify-valid-p
22509         * test/automated/file-notify-tests.el (file-notify--test-cleanup):
22510         Use delete-directory to delete file-notify--test-tmpfile if it is
22511         a directory.  Likewise for file-notify--test-tmpfile1.
22512         (file-notify-test04-file-validity)
22513         (file-notify-test05-dir-validity): Delete the parent directory of
22514         the test.  Ignore errors when cleaning up after the test.
22516 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
22518         Report file-notify-error in w32notify.c
22519         * src/w32notify.c (report_w32notify_error): New function.
22520         (Fw32notify_add_watch, Fw32notify_rm_watch): Use it to report
22521         errors, instead of calling report_file_error.  (Bug#21432)
22523         Implement w32notify-valid-p
22524         * src/w32notify.c (Fw32notify_valid_p): New function.  (Bug#21432)
22525         * lisp/filenotify.el (w32notify-valid-p): No longer an alias for
22526         'identity'.
22528 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
22530         Test file-notify-valid-p
22531         * test/automated/file-notify-tests.el
22532         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
22533         New tests.
22535 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
22537         Fix markup in ELisp manual
22538         * doc/lispref/frames.texi (Font and Color Parameters): Fix markup
22539         of the 'alpha' parameter value.  (Bug#21470)
22541 2015-09-13  Michael Albinus  <michael.albinus@gmx.de>
22543         Introduce `file-notify-valid-p'
22544         * lisp/filenotify.el (file-notify-valid-p): New defun.
22545         (gfile-valid-p, w32notify-valid-p): Make them an alias to `identity'.
22546         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist)
22547         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist)
22548         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist)
22549         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
22550         <file-notify-valid-p>: Add handler.
22551         * lisp/net/tramp.el (tramp-file-name-for-operation):
22552         Add `file-notify-valid-p'.
22553         (tramp-handle-file-notify-valid-p): New defun.
22554         * src/inotify.c (Finotify_valid_p): New defun.
22555         (syms_of_inotify): Declare Sinotify_valid_p.
22557 2015-09-13  Paul Eggert  <eggert@cs.ucla.edu>
22559         Port Unicode char detection to FreeBSD+svgalib
22560         Problem reported by Ashish SHUKLA in:
22561         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00531.html
22562         * configure.ac: Check for struct unipair.unicode instead of for
22563         <linux/kd.h>, since that’s more specific to what the code
22564         actually needs.
22565         * src/terminal.c: Use HAVE_STRUCT_UNIPAIR_UNICODE, not HAVE_LINUX_KD_H.
22567         * src/indent.c (Fvertical_motion): Simplify bugfix (Bug#21468).
22569 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
22571         Fix vertical cursor motion across overlay strings with newlines
22572         * src/indent.c (Fvertical_motion): Don't leave point in the middle
22573         of an overlay string with newlines, as that will position the
22574         cursor after the string at whatever column is there.  (Bug#21468)
22576 2015-09-12  Michael Albinus  <michael.albinus@gmx.de>
22578         Fix tests in file-notify-tests.el
22579         * test/automated/file-notify-tests.el: Remove Tramp declarations.
22580         (file-notify-test00-availability): Print remote command w/o Tramp
22581         internal functions.
22582         (file-notify-test02-events, file-notify-test02-events-remote):
22583         Adapt docstring.
22584         (file-notify-test03-autorevert): Use `format-message' when
22585         inspecting *Messages* buffer.
22587 2015-09-12  Stefan Monnier  <monnier@iro.umontreal.ca>
22589         Bind inhibit-modification-hooks rather than a/b-c-f
22590         * lisp/wid-edit.el (widget-editable-list-insert-before)
22591         (widget-editable-list-delete-at):
22592         * lisp/progmodes/cperl-mode.el (cperl-find-pods-heres)
22593         (cperl-font-lock-unfontify-region-function):
22594         * lisp/progmodes/antlr-mode.el (save-buffer-state-x):
22595         * lisp/obsolete/longlines.el (longlines-mode):
22596         * lisp/obsolete/fast-lock.el (save-buffer-state):
22597         * lisp/mouse.el (mouse-save-then-kill-delete-region):
22598         * lisp/gnus/message.el (message-hide-headers):
22599         * lisp/eshell/esh-mode.el (eshell-send-input, eshell-output-filter):
22600         * lisp/ibuffer.el (ibuffer-update-title-and-summary)
22601         (ibuffer-redisplay-engine): Bind inhibit-modification-hooks to t rather
22602         than after/before-change-functions to nil.
22604 2015-09-11  Stefan Monnier  <monnier@iro.umontreal.ca>
22606         (jit-lock-deferred-fontify): Pay attention to skipped redisplays
22607         * lisp/jit-lock.el (jit-lock-deferred-fontify): Make sure we refresh
22608         the buffers, even if the forced redisplay is interrupted.
22610         * lisp/emacs-lisp/eieio-core.el (class-p): Accept class objects
22612         Merge syntax-propertize--done and parse-sexp-propertize-done
22613         * lisp/emacs-lisp/syntax.el (syntax-propertize--done): Remove.
22614         (syntax-propertize): Set syntax-propertize--done even if
22615         syntax-propertize-function is nil.  Avoid recursive invocations.
22616         (syntax-propertize-chunks): New var.
22617         (internal--syntax-propertize): Use it.  Rename from syntax--jit-propertize.
22618         Simplify.
22619         (parse-sexp-propertize-function): Don't set any more.
22620         * src/syntax.c (SETUP_SYNTAX_TABLE): Call parse_sexp_propertize as needed.
22621         (parse_sexp_propertize): Don't assume charpos is not yet propertized.
22622         Call Qinternal__syntax_propertize instead of
22623         Vparse_sexp_propertize_function.  Truncate e_property if needed.
22624         (update_syntax_table_forward): Streamline.
22625         (syms_of_syntax): Define Qinternal__syntax_propertize.
22626         (syntax_propertize__done): Rename from parse_sexp_propertize_done.
22628 2015-09-11  Paul Eggert  <eggert@cs.ucla.edu>
22630         Prefer straight quoting in some text files
22631         Mostly this just changes ` to ' in static text.  Some exceptions:
22632         * INSTALL.REPO: Use curved quotes, as the diagnostic in question
22633         typically does that now.
22634         * admin/quick-install-emacs (TRY, top level):
22635         Use straight quoting in diagnostics.
22636         * src/README: Fix working-directory confusion.
22638         * CONTRIBUTE: Move send-email here from git-workflow.
22640 2015-09-11  Michael Albinus  <michael.albinus@gmx.de>
22642         Improve file notifications in Tramp
22643         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
22644         Set proper events to watch for.
22645         (tramp-sh-file-gvfs-monitor-dir-process-filter): Report only
22646         watched events.
22648 2015-09-11  Eli Zaretskii  <eliz@gnu.org>
22650         Fix NS build with --enable-checking='glyphs'
22651         * src/nsfns.m (unwind_create_frame): Make the preprocessor
22652         conditionals for referencing 'dpyinfo' consistent throughout the
22653         function.  (Bug#21426)
22655 2015-09-10  Nicolas Petton  <nicolas@petton.fr>
22657         Add seq-find
22658         This function is similar to `seq-some' but returns the found element.
22659         In the cases where nil can be the found element, a sentinel optional
22660         argument can be provided to avoid ambiguities.
22661         * lisp/emacs-lisp/seq.el (seq-find): New function.
22662         * test/automated/seq-tests.el (test-seq-find): Add tests for `seq-find'.
22663         * doc/lispref/sequences.texi (Sequence Functions): Add documentation for
22664         seq-find.
22666 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
22668         Document file-notify--test-with-events.
22669         * test/automated/file-notify-tests.el (file-notify--test-with-events):
22670         Add docstring.
22672 2015-09-10  Michael Albinus  <michael.albinus@gmx.de>
22674         Report used native library in file-notify-tests.el
22675         * test/automated/file-notify-tests.el
22676         (tramp-get-remote-gvfs-monitor-dir)
22677         (tramp-get-remote-inotifywait): Declare them.
22678         (file-notify-test00-availability): Print used native library.
22680 2015-09-10  Mark Oteiza  <mvoteiza@udel.edu>
22682         * lisp/mpc.el (mpc--proc-connect): Use file-name-absolute-p.
22683         (mpc-file-local-copy): Check for absolute path.  Check more config
22684         locations.
22686 2015-09-10  Eli Zaretskii  <eliz@gnu.org>
22688         Improve documentation of categories
22689         * doc/lispref/syntax.texi (Categories): Clarify the example of
22690         using define-category and modify-category-entry.  (Bug#21448)
22692 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
22694         Revert some stray curved quotes I missed earlier
22695         Problem reported by David Kastrup in:
22696         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00440.html
22697         * lisp/international/mule-cmds.el (leim-list-header):
22698         Use format-message with an ASCII-only format.
22700         Prefer NUMBERP to spelling it out
22701         * src/editfns.c (styled_format):
22702         * src/frame.h (NUMVAL):
22703         * src/image.c (parse_image_spec):
22704         * src/lisp.h (CHECK_NUMBER_OR_FLOAT)
22705         (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER):
22706         * src/process.c (Fsignal_process):
22707         * src/xdisp.c (calc_pixel_width_or_height, on_hot_spot_p):
22708         * src/xfaces.c (check_lface_attrs):
22709         * src/xselect.c (x_fill_property_data, x_send_client_event):
22710         Use NUMBERP rather than INTEGERP || FLOATP.
22712 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
22714         Improve file-notify-tests
22715         * test/automated/file-notify-tests.el: Use lexical-binding.
22716         (file-notify--test-cleanup): New function.
22717         (file-notify-test00-availability, file-notify-test01-add-watch)
22718         (file-notify-test02-events, file-notify-test03-autorevert): Use it.
22719         (file-notify--test-with-events): New macro.
22720         (file-notify-test02-events): Use it.
22722 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
22724         Add patch-sending instructions to git-workflow
22725         From a suggestion by Mitchel Humpherys in:
22726         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00421.html
22727         * admin/notes/git-workflow (Sending patches): New section.
22729         Port to GIFLIB 5.0.6 and later
22730         Problem reported by Mitchel Humpherys in:
22731         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00420.html
22732         * src/image.c (HAVE_GIFERRORSTRING) [HAVE_GIF]: New macro.
22733         (GifErrorString, init_gif_functions) [HAVE_GIF && WINDOWSNT]:
22734         (gif_load) [HAVE_GIF]: Use it.
22736 2015-09-10  Glenn Morris  <rgm@gnu.org>
22738         * lisp/cedet/ede/auto.el (ede-project-autoload): Doc fix.
22740 2015-09-09  Glenn Morris  <rgm@gnu.org>
22742         * test/automated/file-notify-tests.el (file-notify-test02-events):
22743         Fix recent change.
22745 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
22747         Refix movemail GCC pacification
22748         Problem reported by Ken Brown in:
22749         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00406.html
22750         * lib-src/movemail.c (main): Fix previous change.
22752 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
22754         * lisp/calendar/time-date.el (time-to-seconds, time-less-p):
22755         Mark unused vars with underscore.
22757         * src/syntax.c (SETUP_SYNTAX_TABLE): Move truncation...
22758         (parse_sexp_propertize): ...from here.
22760         * lisp/filenotify.el: Use lexical-binding
22761         (file-notify-add-watch): Avoid add-to-list.
22763 2015-09-09  Tassilo Horn  <tsdh@gnu.org>
22765         Start checking event types in file-notify tests
22766         * test/automated/file-notify-tests.el (file-notify--test-events):
22767         New variable.
22768         (file-notify--test-event-handler): Append received event to
22769         file-notify--test-events for later analysis.
22770         (file-notify-test02-events): Assert that the expected notifications have
22771         arrived in the expected order.
22773 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
22775         Merge from gnulib and texinfo
22776         This incorporates:
22777         2015-08-03 Improve port of stdalign to C++11
22778         * lib/stdalign.in.h: Copy from gnulib.
22779         * doc/misc/texinfo.tex: Copy from texinfo.
22781 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
22783         Make syntax.c call syntax-propertize on demand
22784         * lisp/emacs-lisp/syntax.el (syntax--jit-propertize): New function.
22785         (parse-sexp-propertize-function): Use it.
22786         (syntax-propertize): Disable parse-sexp-propertize-function.
22787         * src/syntax.c (parse_sexp_propertize, update_syntax_table_forward):
22788         New functions.
22789         (syms_of_syntax): New vars `parse-sexp-propertize-done' and
22790         `parse-sexp-propertize-function'.
22791         * src/syntax.h (struct gl_state_s): Add `e_property_truncated' field.
22792         (UPDATE_SYNTAX_TABLE_FORWARD): Use update_syntax_table_forward.
22793         (SETUP_BUFFER_SYNTAX_TABLE): Set e_property_truncated.
22794         * lisp/progmodes/elisp-mode.el (elisp-byte-code-syntax-propertize):
22795         Don't assume `point' is set.
22797 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
22799         Fix indentation of an @example in ELisp manual
22800         * doc/lispref/syntax.texi (Categories): Untabify the example.
22801         (Bug#21448)
22803 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
22805         Define internal-char-font even if --without-x
22806         The function is used now even in non-graphical environments.
22807         Problem reported by Glenn Morris in:
22808         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00401.html
22809         * src/font.c (Finternal_char_font): Move here ...
22810         * src/fontset.c (Finternal_char_font): ... from here.
22812 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
22814         * lisp/emacs-lisp/cl-generic.el (cl-generic-generalizers):
22815         Remove warning.
22817 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
22819         Fix display of complex local data types in GDB-MI
22820         * lisp/progmodes/gdb-mi.el (gdb-locals-handler-custom): If a
22821         variable has no value, display "<complex data type>" as a
22822         placeholder, instead of a confusing "nil".  (Bug#21438)
22824 2015-09-09  Oleh Krehel  <ohwoeowho@gmail.com>
22826         Remove redundant redefinition of seq-drop-while from seq.el
22827         * lisp/emacs-lisp/seq.el (seq-drop-while): Define only once.
22829 2015-09-09  Phil Sainty  <psainty@orcon.net.nz>
22831         * lisp/emacs-lisp/package.el (package--ensure-init-file):
22832         More robust check for `package-initialize' calls in init file.
22833         This function accepts an optional argument, but calls passing
22834         an argument would not have been detected.
22836 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
22838         Port movemail to RHEL 6 with --enable-gcc-warnings
22839         * lib-src/movemail.c (main): Declare local only if needed.
22841         Port recent Linux console changes to RHEL 6
22842         * src/terminal.c [HAVE_LINUX_KD_H]: Include <sys/ioctl.h>.
22844         Improvements for curved quotes on Linux consule
22845         This should help Emacs work better out-of-the-box on Linux consoles,
22846         which have only limited support for displaying Unicode characters.
22847         Also, undo the recent change that caused text-quoting-style to
22848         affect quote display on terminals, so that the two features are
22849         independent.  See Alan Mackenzie in:
22850         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00244.html
22851         Finally, add a style parameter to startup--setup-quote-display,
22852         so that this function can also be invoked after startup, with
22853         different styles depending on user preference at the time.
22854         * configure.ac: Check for linux/kd.h header.
22855         * doc/emacs/display.texi (Text Display): Document quote display.
22856         * doc/lispref/display.texi (Active Display Table):
22857         * etc/NEWS:
22858         * lisp/startup.el (startup--setup-quote-display, command-line):
22859         text-quoting-style no longer affects quote display.
22860         * doc/lispref/frames.texi (Terminal Parameters): Fix typo.
22861         * lisp/international/mule-util.el (char-displayable-p):
22862         * lisp/startup.el (startup--setup-quote-display):
22863         On a text terminal supporting glyph codes, use the reported
22864         glyph codes instead of the terminal coding system, as this
22865         is more accurate on the Linux console.
22866         * lisp/startup.el (startup--setup-quote-display):
22867         New optional arg STYLE.
22868         * src/fontset.c (Finternal_char_font):
22869         Report glyph codes for a text terminal, if they are available.
22870         Currently this is supported only for the Linux console.
22871         * src/termhooks.h (struct terminal): New member glyph-code-table.
22872         * src/terminal.c [HAVE_LINUX_KD_H]: Include <errno.h>, <linux/kd.h>.
22873         (calculate_glyph_code_table) [HAVE_LINUX_KD_H]: New function.
22874         (terminal_glyph_code): New function.
22876 2015-09-08  Juri Linkov  <juri@linkov.net>
22878         * lisp/info.el (Info-fontify-node): Don't stop at the non-title
22879         underline.  (Bug#21433)
22881 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
22883         * lisp/calendar/time-date.el (with-decoded-time-value): Fix debug spec.
22885 2015-09-08  Tassilo Horn  <tsdh@gnu.org>
22887         Fix double-reporting of rename events with inotify
22888         * lisp/filenotify.el (file-notify-callback): Fix double-reporting
22889         of rename events with inotify (bug#21435).
22891 2015-09-08  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
22893         * lisp/play/tetris.el (tetris-move-down): New command (bug#21360).
22894         (tetris-mode-map): Use it.
22896 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
22898         Remove a few simple cases of global redisplay
22899         * src/dispnew.c (redraw_frame): Don't redisplay all frames.
22900         * src/xdisp.c (echo_area_display): Set the frame's `redisplay' bit
22901         rather than returning a "resized_p" boolean.
22902         (redisplay_internal): Adjust call accordingly.
22903         * src/xfaces.c (free_realized_faces): Don't redisplay all frames.
22904         (free_all_realized_faces): Set windows_or_buffers_changed so as to ease
22905         tracking of this undesirable situation.
22907         * src/process.c (status_notify): Avoid global redisplay (bug#11822)
22908         * src/process.c (status_notify): Only set the update_mode_line on the
22909         relevant buffers rather than setting it globally.
22911 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
22913         * lisp/electric.el (electric-quote-post-self-insert-function):
22914         Don't use syntax-ppss if comment-use-syntax is nil (e.g. message-mode).
22915         (electric-quote-mode): Activate everywhere in message-mode.
22917 2015-09-07  Paul Eggert  <eggert@cs.ucla.edu>
22919         Go back to grave quoting in source-code docstrings etc.
22920         This reverts almost all my recent changes to use curved quotes
22921         in docstrings and/or strings used for error diagnostics.
22922         There are a few exceptions, e.g., Bahá’í proper names.
22923         * admin/unidata/unidata-gen.el (unidata-gen-table):
22924         * lisp/abbrev.el (expand-region-abbrevs):
22925         * lisp/align.el (align-region):
22926         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet)
22927         (outlineify-sticky):
22928         * lisp/apropos.el (apropos-library):
22929         * lisp/bookmark.el (bookmark-default-annotation-text):
22930         * lisp/button.el (button-category-symbol, button-put)
22931         (make-text-button):
22932         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
22933         * lisp/calc/calc-embed.el (calc-do-embedded):
22934         * lisp/calc/calc-ext.el (calc-user-function-list):
22935         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
22936         * lisp/calc/calc-help.el (calc-describe-key)
22937         (calc-describe-thing, calc-full-help):
22938         * lisp/calc/calc-lang.el (calc-c-language)
22939         (math-parse-fortran-vector-end, math-parse-tex-sum)
22940         (math-parse-eqn-matrix, math-parse-eqn-prime)
22941         (calc-yacas-language, calc-maxima-language, calc-giac-language)
22942         (math-read-giac-subscr, math-read-math-subscr)
22943         (math-read-big-rec, math-read-big-balance):
22944         * lisp/calc/calc-misc.el (calc-help, report-calc-bug):
22945         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
22946         (calc-auto-recompute):
22947         * lisp/calc/calc-prog.el (calc-fix-token-name)
22948         (calc-read-parse-table-part, calc-user-define-invocation)
22949         (math-do-arg-check):
22950         * lisp/calc/calc-store.el (calc-edit-variable):
22951         * lisp/calc/calc-units.el (math-build-units-table-buffer):
22952         * lisp/calc/calc-vec.el (math-read-brackets):
22953         * lisp/calc/calc-yank.el (calc-edit-mode):
22954         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
22955         * lisp/calendar/appt.el (appt-display-message):
22956         * lisp/calendar/diary-lib.el (diary-check-diary-file)
22957         (diary-mail-entries, diary-from-outlook):
22958         * lisp/calendar/icalendar.el (icalendar-export-region)
22959         (icalendar--convert-float-to-ical)
22960         (icalendar--convert-date-to-ical)
22961         (icalendar--convert-ical-to-diary)
22962         (icalendar--convert-recurring-to-diary)
22963         (icalendar--add-diary-entry):
22964         * lisp/calendar/time-date.el (format-seconds):
22965         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
22966         (timeclock-make-hours-explicit, timeclock-log-data):
22967         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
22968         (todo-item-mark, todo-check-format)
22969         (todo-insert-item--next-param, todo-edit-item--next-key)
22970         (todo-mode):
22971         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
22972         * lisp/cedet/mode-local.el (describe-mode-local-overload)
22973         (mode-local-print-binding, mode-local-describe-bindings-2):
22974         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
22975         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
22976         * lisp/cus-start.el (standard):
22977         * lisp/cus-theme.el (describe-theme-1):
22978         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
22979         (custom--sort-vars-1, load-theme):
22980         * lisp/descr-text.el (describe-text-properties-1, describe-char):
22981         * lisp/dired-x.el (dired-do-run-mail):
22982         * lisp/dired.el (dired-log):
22983         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
22984         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
22985         (ad-disable-advice, ad-remove-advice, ad-set-argument)
22986         (ad-set-arguments, ad--defalias-fset, ad-activate)
22987         (ad-deactivate):
22988         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
22989         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
22990         (byte-optimize-while, byte-optimize-apply):
22991         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
22992         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
22993         (byte-compile-log-file, byte-compile-format-warn)
22994         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
22995         (byte-compile-cl-warn)
22996         (byte-compile-warn-about-unresolved-functions)
22997         (byte-compile-file, byte-compile--declare-var)
22998         (byte-compile-file-form-defmumble, byte-compile-form)
22999         (byte-compile-normal-call, byte-compile-check-variable)
23000         (byte-compile-variable-ref, byte-compile-variable-set)
23001         (byte-compile-subr-wrong-args, byte-compile-setq-default)
23002         (byte-compile-negation-optimizer)
23003         (byte-compile-condition-case--old)
23004         (byte-compile-condition-case--new, byte-compile-save-excursion)
23005         (byte-compile-defvar, byte-compile-autoload)
23006         (byte-compile-lambda-form)
23007         (byte-compile-make-variable-buffer-local, display-call-tree)
23008         (batch-byte-compile):
23009         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use):
23010         * lisp/emacs-lisp/chart.el (chart-space-usage):
23011         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
23012         (check-declare-warn, check-declare-file)
23013         (check-declare-directory):
23014         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
23015         (checkdoc-message-text-engine):
23016         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer)
23017         (cl--describe-class):
23018         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
23019         (cl--generic-describe, cl-generic-generalizers):
23020         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
23021         (cl-symbol-macrolet):
23022         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
23023         * lisp/emacs-lisp/copyright.el (copyright)
23024         (copyright-update-directory):
23025         * lisp/emacs-lisp/edebug.el (edebug-read-list):
23026         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
23027         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
23028         (eieio-oref):
23029         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
23030         * lisp/emacs-lisp/eieio-speedbar.el:
23031         (eieio-speedbar-child-make-tag-lines)
23032         (eieio-speedbar-child-description):
23033         * lisp/emacs-lisp/eieio.el (defclass, change-class):
23034         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
23035         (elint-init-form, elint-check-defalias-form)
23036         (elint-check-let-form):
23037         * lisp/emacs-lisp/ert.el (ert-get-test, ert-results-mode-menu)
23038         (ert-results-pop-to-backtrace-for-test-at-point)
23039         (ert-results-pop-to-messages-for-test-at-point)
23040         (ert-results-pop-to-should-forms-for-test-at-point)
23041         (ert-describe-test):
23042         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
23043         (find-function-library):
23044         * lisp/emacs-lisp/generator.el (iter-yield):
23045         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
23046         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
23047         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
23048         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
23049         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
23050         (advice--make, define-advice):
23051         * lisp/emacs-lisp/package-x.el (package-upload-file):
23052         * lisp/emacs-lisp/package.el (package-version-join)
23053         (package-disabled-p, package-activate-1, package-activate)
23054         (package--download-one-archive)
23055         (package--download-and-read-archives)
23056         (package-compute-transaction, package-install-from-archive)
23057         (package-install, package-install-selected-packages)
23058         (package-delete, package-autoremove, describe-package-1)
23059         (package-install-button-action, package-delete-button-action)
23060         (package-menu-hide-package, package-menu--list-to-prompt)
23061         (package-menu--perform-transaction)
23062         (package-menu--find-and-notify-upgrades):
23063         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
23064         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
23065         * lisp/emacs-lisp/ring.el (ring-previous, ring-next):
23066         * lisp/emacs-lisp/rx.el (rx-check, rx-anything)
23067         (rx-check-any-string, rx-check-any, rx-check-not, rx-=)
23068         (rx-repeat, rx-check-backref, rx-syntax, rx-check-category)
23069         (rx-form):
23070         * lisp/emacs-lisp/smie.el (smie-config-save):
23071         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
23072         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
23073         * lisp/emacs-lisp/testcover.el (testcover-1value):
23074         * lisp/emacs-lisp/timer.el (timer-event-handler):
23075         * lisp/emulation/viper-cmd.el (viper-toggle-parse-sexp-ignore-comments)
23076         (viper-toggle-search-style, viper-kill-buffer)
23077         (viper-brac-function):
23078         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
23079         * lisp/env.el (setenv):
23080         * lisp/erc/erc-button.el (erc-nick-popup):
23081         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login, english):
23082         * lisp/eshell/em-dirs.el (eshell/cd):
23083         * lisp/eshell/em-glob.el (eshell-glob-regexp)
23084         (eshell-glob-entries):
23085         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
23086         * lisp/eshell/esh-opt.el (eshell-show-usage):
23087         * lisp/facemenu.el (facemenu-add-new-face)
23088         (facemenu-add-new-color):
23089         * lisp/faces.el (read-face-name, read-face-font, describe-face)
23090         (x-resolve-font-name):
23091         * lisp/files-x.el (modify-file-local-variable):
23092         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
23093         (set-auto-mode, hack-one-local-variable--obsolete)
23094         (dir-locals-set-directory-class, write-file, basic-save-buffer)
23095         (delete-directory, copy-directory, recover-session)
23096         (recover-session-finish, insert-directory)
23097         (file-modes-char-to-who, file-modes-symbolic-to-number)
23098         (move-file-to-trash):
23099         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer):
23100         * lisp/find-cmd.el (find-generic, find-to-string):
23101         * lisp/finder.el (finder-commentary):
23102         * lisp/font-lock.el (font-lock-fontify-buffer):
23103         * lisp/format.el (format-write-file, format-find-file)
23104         (format-insert-file):
23105         * lisp/frame.el (get-device-terminal, select-frame-by-name):
23106         * lisp/fringe.el (fringe--check-style):
23107         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
23108         * lisp/help-fns.el (help-fns--key-bindings)
23109         (help-fns--compiler-macro, help-fns--parent-mode)
23110         (help-fns--obsolete, help-fns--interactive-only)
23111         (describe-function-1, describe-variable):
23112         * lisp/help.el (describe-mode)
23113         (describe-minor-mode-from-indicator):
23114         * lisp/image.el (image-type):
23115         * lisp/international/ccl.el (ccl-dump):
23116         * lisp/international/fontset.el (x-must-resolve-font-name):
23117         * lisp/international/mule-cmds.el (prefer-coding-system)
23118         (select-safe-coding-system-interactively)
23119         (select-safe-coding-system, activate-input-method)
23120         (toggle-input-method, describe-current-input-method)
23121         (describe-language-environment):
23122         * lisp/international/mule-conf.el (code-offset):
23123         * lisp/international/mule-diag.el (describe-character-set)
23124         (list-input-methods-1):
23125         * lisp/mail/feedmail.el (feedmail-run-the-queue):
23126         * lisp/mouse.el (minor-mode-menu-from-indicator):
23127         * lisp/mpc.el (mpc-playlist-rename):
23128         * lisp/msb.el (msb--choose-menu):
23129         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
23130         * lisp/net/imap.el (imap-interactive-login):
23131         * lisp/net/mairix.el (mairix-widget-create-query):
23132         * lisp/net/newst-backend.el (newsticker--sentinel-work):
23133         * lisp/net/newst-treeview.el (newsticker--treeview-load):
23134         * lisp/net/rlogin.el (rlogin):
23135         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
23136         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
23137         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
23138         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
23139         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
23140         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
23141         (org-babel-goto-named-result):
23142         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
23143         * lisp/org/ob-ref.el (org-babel-ref-resolve):
23144         * lisp/org/org-agenda.el (org-agenda-prepare):
23145         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
23146         (org-clock-resolve):
23147         * lisp/org/org-ctags.el (org-ctags-ask-rebuild-tags-file-then-find-tag):
23148         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
23149         * lisp/org/org-habit.el (org-habit-parse-todo):
23150         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
23151         (org-mouse-context-menu):
23152         * lisp/org/org-table.el (org-table-edit-formulas):
23153         * lisp/org/ox.el (org-export-async-start):
23154         * lisp/proced.el (proced-log):
23155         * lisp/progmodes/ada-mode.el (ada-get-indent-case)
23156         (ada-check-matching-start, ada-goto-matching-start):
23157         * lisp/progmodes/ada-prj.el (ada-prj-display-page):
23158         * lisp/progmodes/ada-xref.el (ada-find-executable):
23159         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
23160         * lisp/progmodes/etags.el (etags-tags-apropos-additional):
23161         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
23162         (flymake-start-syntax-check-process):
23163         * lisp/progmodes/python.el (python-shell-get-process-or-error)
23164         (python-define-auxiliary-skeleton):
23165         * lisp/progmodes/sql.el (sql-comint):
23166         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
23167         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate):
23168         * lisp/recentf.el (recentf-open-files):
23169         * lisp/replace.el (query-replace-read-from)
23170         (occur-after-change-function, occur-1):
23171         * lisp/scroll-bar.el (scroll-bar-columns):
23172         * lisp/server.el (server-get-auth-key):
23173         * lisp/simple.el (execute-extended-command)
23174         (undo-outer-limit-truncate, list-processes--refresh)
23175         (compose-mail, set-variable, choose-completion-string)
23176         (define-alternatives):
23177         * lisp/startup.el (site-run-file, tty-handle-args, command-line)
23178         (command-line-1):
23179         * lisp/subr.el (noreturn, define-error, add-to-list)
23180         (read-char-choice, version-to-list):
23181         * lisp/term/common-win.el (x-handle-xrm-switch)
23182         (x-handle-name-switch, x-handle-args):
23183         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
23184         * lisp/textmodes/reftex-ref.el (reftex-label):
23185         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
23186         * lisp/textmodes/two-column.el (2C-split):
23187         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
23188         (tutorial--find-changed-keys):
23189         * lisp/type-break.el (type-break-noninteractive-query):
23190         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
23191         (wdired-do-perm-changes):
23192         * lisp/whitespace.el (whitespace-report-region):
23193         Prefer grave quoting in source-code strings used to generate help
23194         and diagnostics.
23195         * lisp/faces.el (face-documentation):
23196         No need to convert quotes, since the result is a docstring.
23197         * lisp/info.el (Info-virtual-index-find-node)
23198         (Info-virtual-index, info-apropos):
23199         Simplify by generating only curved quotes, since info files are
23200         typically that ways nowadays anyway.
23201         * lisp/international/mule-diag.el (list-input-methods):
23202         Don’t assume text quoting style is curved.
23203         * lisp/org/org-bibtex.el (org-bibtex-fields):
23204         Revert my recent changes, going back to the old quoting style.
23206 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
23208         * lisp/emacs-lisp/package.el: Reduce autoloading before compiling.
23209         (package--autoloads-file-name)
23210         (package--activate-autoloads-and-load-path): New function.
23211         (package-activate-1): Delegate autoloading and load-path
23212         configuration to `package--activate-autoloads-and-load-path'.
23213         (package--compile): Before compilation, call
23214         `package--activate-autoloads-and-load-path' instead of
23215         `package-activate-1'.
23217 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
23219         * src/keyboard.c (read_key_sequence): Complete last fix (bug#21403).
23221 2015-09-07  Eli Zaretskii  <eliz@gnu.org>
23223         Fix deletion of symlinks to directories on MS-Windows
23224         * src/w32.c (sys_unlink): If 'unlink' fails, and the argument is a
23225         symlink to a directory, try again with 'rmdir'.
23226         (is_symlink): If the argument is a symlink to a directory, set a
23227         bit in the return value to indicate that fact.
23229 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
23231         * lisp/emacs-lisp/package.el (package-initialize): Set enable-at-startup
23232         When `package-initialize' is called as part of loading the init file,
23233         the user probably doesn't want it to be called again afterwards.
23234         In this situation, `package-initialize' now sets
23235         `package-enable-at-startup' to nil to prevent that.  The user can have
23236         the old behavior by setting this variable to t after the call to
23237         `package-initialize'.  (Bug#21423)
23238         * doc/emacs/package.texi (Package Installation): Document it.
23239         * doc/lispref/package.texi (Packaging Basics): Document it.
23240         * etc/NEWS: Document it.
23242 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
23244         Bump version of ntlm.el to 2.00
23245         * lisp/net/ntlm.el: Bump version to 2.00.  New maintainer.
23246         Add comm keyword.
23248 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
23250         * doc/misc/gnus.texi (Mail Source Specifiers):
23251         Allow :mailbox to be a list.
23253 2015-09-06  Dmitry Gutov  <dgutov@yandex.ru>
23255         * lisp/progmodes/etags.el (etags-tags-completion-table):
23256         Allow even one non-regular character before the implicit tag name.
23257         Reported at http://emacs.stackexchange.com/questions/15269/.
23259 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
23261         Add support for NTLMv2 authentication
23262         * lisp/net/ntlm.el (ntlm): New customization group.
23263         (ntlm-compatibility-level): New defcustom.
23264         (ntlm-compute-timestamp): New function.
23265         (ntlm-generate-nonce): Likewise.
23266         (ntlm-build-auth-response): Add support for NTLMv2 authentication.
23268 2015-09-06  Artur Malabarba  <bruce.connor.am@gmail.com>
23270         * lisp/emacs-lisp/package.el: Rename custom faces.
23271         All of the recently introduced faces, like `package-name-face', have
23272         been renamed to no end in `-face' to comply with the convention
23273         described in (info "(elisp) Defining Faces").
23274         (package-name, package-description)
23275         (package-status-built-in, package-status-external)
23276         (package-status-available, package-status-new)
23277         (package-status-held, package-status-disabled)
23278         (package-status-installed, package-status-dependency)
23279         (package-status-unsigned, package-status-incompat)
23280         (package-status-avail-obso): New faces.
23281         (package-menu--print-info-simple): Use them.
23283 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
23285         mail-source.el: Make the imap mail-source's :mailbox handle a list
23286         * lisp/gnus/mail-source.el (mail-source-fetch-imap):
23287         Allow :mailbox to be  a list.
23289 2015-09-06  Eric Abrahamsen  <eric@ericabrahamsen.net>
23291         nnimap.el: Handle nil arg to nnimap-request-group
23292         * lisp/gnus/nnimap.el (nnimap-request-group): Handle nil "info" arg.
23293         This arg isn't always passed in, check it's not nil before making it
23294         into a list.  The active arg will also be nil if the group is new,
23295         check for that.
23297 2015-09-06  Michael Albinus  <michael.albinus@gmx.de>
23299         File notifications: Support renaming over directory boundaries
23300         * lisp/filenotify.el (file-notify-handle-event):
23301         (file-notify--pending-event): Adapt docstring.
23302         (file-notify--descriptor, file-notify-callback): Reimplement in
23303         order to support renaming over directory boundaries.
23304         (file-notify-add-watch): Adapt `file-notify--descriptor' call.
23305         * doc/lispref/os.texi (File Notifications): Remove limitation of
23306         file renaming to the same directory.
23308 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
23310         Spelling fix (Bug#21420)
23312 2015-09-05  Nicolas Petton  <nicolas@petton.fr>
23314         Improve the semantic of map-some
23315         Update map-some to return the returned by the predicate, similar to
23316         seq-some.
23317         * lisp/emacs-lisp/map.el (map-some): Update the function to return the
23318           return value of the predicate.
23319         * test/automated/map-tests.el (test-map-some): Update the test to check
23320           for non-nil values only.
23322         Rename map-contains-key-p and map-some-p
23323         Remove the "-p" suffix from both function names.
23324         * lisp/emacs-lisp/map.el (map-contains-key, map-some):
23325           Rename the functions.
23326         * test/automated/map-tests.el (test-map-contains-key, test-map-some):
23327           Update both test functions.
23329         Improve the semantic of seq-some
23330         Update seq-some to return non-nil if the predicate returns non-nil for
23331         any element of the seq, in which case the returned value is the one
23332         returned by the predicate.
23333         * lisp/emacs-lisp/seq.el (seq-some): Update the function and its
23334           docstring.
23335         * test/automated/seq-tests.el (test-seq-some): Add a regression test.
23336         * doc/lispref/sequences.texi (Sequence Functions): Update the
23337           documentation for seq-some.
23339         Rename seq-some-p to seq-some and seq-contains-p to seq-contains
23340         * lisp/emacs-lisp/seq.el (seq-some, seq-contains): Rename the functions
23341           without the "-p" prefix.
23342         * test/automated/seq-tests.el (test-seq-some, test-seq-contains): Update
23343           the tests accordingly.
23344         * doc/lispref/sequences.texi (Sequence Functions): Update the
23345           documentation for seq.el.
23347 2015-09-05  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
23349         text-quoting-style for usage of fn names with ‘’
23350         * lisp/help.el (help--docstring-quote): Don’t assume
23351         text-quoting-style is ‘curve’ when generating usage strings for
23352         functions whose names contain curved quotes.
23354 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
23356         Fix fix for describe-function keybinding confusion
23357         This fixes a bug introduced by the previous patch.
23358         * lisp/help-fns.el (help-fns--signature):
23359         Last arg of help-fns--signature is now a buffer, or nil if a
23360         raw signature is wanted.  All callers changed.
23361         (describe-function-1): Use this to do the right thing with signatures.
23363 2015-09-05  Johan Bockgård  <bojohan@gnu.org>
23365         * doc/lispref/frames.texi (Mouse Tracking): Fix typo.
23367         Use PAT rather than UPAT in pcase macros
23368         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
23369         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>: Use PAT rather
23370           than UPAT.
23372 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
23374         Fix describe-function keybinding confusion
23375         * lisp/help-fns.el (describe-function-1): Compute signature
23376         in the original buffer, not in standard-output, so that
23377         substitute-command-keys uses the proper keybindings.
23378         This fixes Bug#21412, introduced in commit
23379         2015-06-11T10:23:46-0700!eggert@cs.ucla.edu.
23381 2015-09-05  Xue Fuqiao  <xfq.free@gmail.com>
23383         * doc/emacs/programs.texi (Program Modes): Remove an index entry.
23385 2015-09-05  Robert Pluim  <rpluim@gmail.com>  (tiny change)
23387         Avoid read error messages from 'inotify'
23388         * src/process.c (wait_reading_process_output): Add a
23389         'tls_available' set and manipulate it instead of 'Available' when
23390         checking TLS inputs.  Assign the value to 'Available' only if we
23391         find any TLS data waiting to be read.  This avoids error messages
23392         from 'inotify' that tries to read data it shouldn't.  (Bug#21337)
23394 2015-09-05  Eli Zaretskii  <eliz@gnu.org>
23396         Avoid errors in thing-at-point with 2nd argument non-nil
23397         * lisp/thingatpt.el (thing-at-point): Only call 'length' on
23398         sequences.  (Bug#21391)
23400 2015-09-05  Philip  <pipcet@gmail.com>  (tiny change)
23402         Fix segfaults due to using a stale face ID
23403         * src/xdisp.c (forget_escape_and_glyphless_faces): New function.
23404         (display_echo_area_1, redisplay_internal): Call it to avoid
23405         reusing stale face IDs for 'escape-glyph' and 'glyphless-char'
23406         faces, which could case a segfault if the frame's face cache was
23407         freed since the last redisplay.  (Bug#21394)
23408         * src/xfaces.c (free_realized_faces):
23409         Call forget_escape_and_glyphless_faces.
23410         * src/dispextern.h (forget_escape_and_glyphless_faces): Add prototype.
23412 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
23414         Fix minor problems with " in manual
23416 2015-09-04  Michael Albinus  <michael.albinus@gmx.de>
23418         * doc/misc/tramp.texi (Frequently Asked Questions): New item for ad-hoc
23419         multi-hop files.
23421 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
23423         Support automated ‘make check’ in non-C locale
23424         This lets the builder optionally test Emacs behavior in other locales.
23425         The C locale is still the default for tests.
23426         * test/automated/Makefile.in (TEST_LOCALE): New macro.
23427         (emacs): Use it.
23428         * test/automated/flymake-tests.el (flymake-tests--current-face):
23429         Use C locale for subprocesses so that tests behave as expected.
23430         * test/automated/python-tests.el:
23431         (python-shell-prompt-validate-regexps-1)
23432         (python-shell-prompt-validate-regexps-2)
23433         (python-shell-prompt-validate-regexps-3)
23434         (python-shell-prompt-validate-regexps-4)
23435         (python-shell-prompt-validate-regexps-5)
23436         (python-shell-prompt-validate-regexps-6)
23437         (python-shell-prompt-set-calculated-regexps-1):
23438         Adjust expected output to match locale.
23439         * test/automated/tildify-tests.el (tildify-test--test)
23440         (tildify-space-test--test, tildify-space-undo-test--test):
23441         This test assumes UTF-8 encoding.
23443 2015-09-03  Paul Eggert  <eggert@cs.ucla.edu>
23445         Fix some more docstring etc. quoting problems
23446         Mostly these fixes prevent the transliteration of apostrophes
23447         that should stay apostrophes.  Also, prefer curved quotes in
23448         Bahá’í proper names, as that’s the preferred Bahá’í style and
23449         these names are chock-full of non-ASCII characters anyway.
23450         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-autoload)
23451         (eieio-defclass-internal):
23452         * lisp/emacs-lisp/eieio.el (defclass):
23453         * lisp/hi-lock.el (hi-lock-mode):
23454         Don’t transliterate Lisp apostrophes when generating a
23455         doc string or diagnostic.
23456         * lisp/international/mule-diag.el (list-coding-systems-1):
23457         * lisp/international/ogonek.el (ogonek-jak, ogonek-how):
23458         * lisp/mail/sendmail.el (sendmail-query-user-about-smtp):
23459         * lisp/vc/ediff-mult.el (ediff-redraw-registry-buffer):
23460         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
23461         Substitute quotes before putting them in the help buffer.
23463 2015-09-03  Stefan Monnier  <monnier@iro.umontreal.ca>
23465         Re-add the notion of echo_prompt lost in the translation
23466         * src/keyboard.h (struct kboard): Replace echo_after_prompt with new
23467         echo_prompt which contains the actual string.  Update all uses.
23468         * src/keyboard.c (kset_echo_prompt): New function.
23469         (echo_update): Add echo_prompt at the very beginning.
23470         (read_char): Remove workaround for bug#19875, not needed any more.
23471         (read_key_sequence): Set echo_prompt rather than echo_string
23472         (bug#21403).
23473         (mark_kboards): Mark echo_prompt.
23475         Fix disassembly of non-compiled lexical functions (bug#21377)
23476         * lisp/emacs-lisp/bytecomp.el (byte-compile): Handle `closure' arg.
23477         * lisp/emacs-lisp/disass.el: Use lexical-binding.
23478         (disassemble): Recognize `closure's as well.
23479         (disassemble-internal): Use indirect-function and
23480         help-function-arglist, and accept `closure's.
23481         (disassemble-internal): Use interactive-form.
23482         (disassemble-1): Use functionp.
23484         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
23485         Don't compose inside verbatim blocks!
23487 2015-09-03  Mark Oteiza  <mvoteiza@udel.edu>
23489         * lisp/thingatpt.el (thing-at-point-uri-schemes): Add "man:"
23490         (bug#19441).
23492         * lisp/mpc.el (mpc--proc-connect): Handle unix sockets (bug#19394).
23494 2015-09-03  Dmitry Gutov  <dgutov@yandex.ru>
23496         vc-git-mode-line-string: Explicitly re-apply the face
23497         * lisp/vc/vc-git.el (vc-git-mode-line-string): Explicitly re-apply
23498         the face (bug#21404).
23500 2015-09-02  Paul Eggert  <eggert@cs.ucla.edu>
23502         Treat initial-scratch-message as a doc string
23503         * doc/emacs/building.texi (Lisp Interaction):
23504         * doc/lispref/os.texi (Startup Summary):
23505         * etc/NEWS: Document this.
23506         * lisp/startup.el (initial-scratch-message):
23507         Look up find-file’s key rather than hardcoding it.
23508         (command-line-1): Substitute the doc string.
23509         This also substitutes the quotes, which will help test display
23510         quoting at startup.
23512         Fix describe-char bug with glyphs on terminals
23513         * lisp/descr-text.el (describe-char): Terminals can have glyphs in
23514         buffers too, so don’t treat them differently from graphic displays.
23515         Without this fix, describe-char would throw an error on a terminal
23516         if given a glyph with a non-default face.
23518         Follow text-quoting-style in display table init
23519         This attempts to fix a problem reported by Alan Mackenzie in:
23520         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00112.html
23521         * doc/lispref/display.texi (Active Display Table):
23522         Mention how text-quoting-style affects it.
23523         * doc/lispref/help.texi (Keys in Documentation):
23524         Say how to set text-quoting-style in ~/.emacs.
23525         * etc/NEWS: Document the change.
23526         * lisp/startup.el (startup--setup-quote-display):
23527         Follow user preference if text-quoting-style is set.
23528         (command-line): Setup quote display again if user expresses
23529         a preference in .emacs.
23531 2015-09-02  K. Handa  <handa@gnu.org>
23533         Fix typo
23534         * src/ftfont.c (ftfont_drive_otf): otf_positioning_type_components_mask
23535         -> OTF_positioning_type_components_mask.
23537         Fix previous change
23538         * src/ftfont.c (ftfont_drive_otf): Remember some bits of
23539         OTF_Glyph->positioning_type in MFLTGlyphFT->libotf_positioning_type.
23541 2015-09-01  David Caldwell  <david@porkrind.org>  (tiny change)
23543         * lisp/vc/vc-hooks.el (vc-refresh-state): New command.
23544         Rename from vc-find-file-hook and make interactive.
23545         (vc-find-file-hook): Redefine as obsolete alias.
23547 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
23549         Escape ` and ' in doc
23550         Escape apostrophes and grave accents in docstrings if they are
23551         are supposed to stand for themselves and are not quotes.  Remove
23552         apostrophes from docstring examples like ‘'(calendar-nth-named-day
23553         -1 0 10 year)’ that confuse source code with data.  Do some other
23554         minor docstring fixups as well, e.g., insert a missing close quote.
23556 2015-09-01  Stefan Monnier  <monnier@iro.umontreal.ca>
23558         Generalize the prefix-command machinery of C-u
23559         * lisp/simple.el (prefix-command-echo-keystrokes-functions)
23560         (prefix-command-preserve-state-hook): New hooks.
23561         (internal-echo-keystrokes-prefix): New function.
23562         (prefix-command--needs-update, prefix-command--last-echo): New vars.
23563         (prefix-command-update, prefix-command-preserve): New functions.
23564         (reset-this-command-lengths): New compatibility definition.
23565         (universal-argument--mode): Call prefix-command-update.
23566         (universal-argument, universal-argument-more, negative-argument)
23567         (digit-argument): Call prefix-command-preserve-state.
23568         * src/keyboard.c: Call internal-echo-keystrokes-prefix to build
23569         the "prefix argument" to echo.
23570         (this_command_key_count_reset, before_command_key_count)
23571         (before_command_echo_length): Delete variables.
23572         (echo_add_key): Always add a space.
23573         (echo_char): Remove.
23574         (echo_dash): Don't give up when this_command_key_count is 0, since that
23575         is now the case after a prefix command.
23576         (echo_update): New function, extracted from echo_now.
23577         (echo_now): Use it.
23578         (add_command_key, read_char, record_menu_key): Remove old disabled code.
23579         (command_loop_1): Don't refrain from pushing an undo boundary when
23580         prefix-arg is set.  Remove other prefix-arg special case, now handled
23581         directly in the prefix commands instead.  But call echo_now if there's
23582         a prefix state to echo.
23583         (read_char, record_menu_key): Use echo_update instead of echo_char.
23584         (read_key_sequence): Use echo_now rather than echo_dash/echo_char.
23585         (Freset_this_command_lengths): Delete function.
23586         (syms_of_keyboard): Define Qinternal_echo_keystrokes_prefix.
23587         (syms_of_keyboard): Don't defsubr Sreset_this_command_lengths.
23588         * lisp/simple.el: Use those new hooks for C-u.
23589         (universal-argument--description): New function.
23590         (prefix-command-echo-keystrokes-functions): Use it.
23591         (universal-argument--preserve): New function.
23592         (prefix-command-preserve-state-hook): Use it.
23593         (command-execute): Call prefix-command-update if needed.
23594         * lisp/kmacro.el (kmacro-step-edit-prefix-commands)
23595         (kmacro-step-edit-prefix-index): Delete variables.
23596         (kmacro-step-edit-query, kmacro-step-edit-insert): Remove ad-hoc
23597         support for prefix arg commands.
23598         (kmacro-step-edit-macro): Don't bind kmacro-step-edit-prefix-index.
23599         * lisp/emulation/cua-base.el (cua--prefix-override-replay)
23600         (cua--shift-control-prefix): Use prefix-command-preserve-state.
23601         Remove now unused arg `arg'.
23602         (cua--prefix-override-handler, cua--prefix-repeat-handler)
23603         (cua--shift-control-c-prefix, cua--shift-control-x-prefix):
23604         Update accordingly.
23605         (cua--prefix-override-timeout): Don't call reset-this-command-lengths
23606         any more.
23607         (cua--keep-active, cua-exchange-point-and-mark): Don't set mark-active
23608         if the mark is not set.
23610 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
23612         Rework quoting in Emacs Lisp Introduction
23613         * doc/lispintro/emacs-lisp-intro.texi (Sample let Expression)
23614         (if in more detail, type-of-animal in detail, else): Rework the
23615         early example to use " rather than ' so that we don’t burden
23616         complete novices with the low-priority detail of text quoting style.
23617         (Complete zap-to-char, kill-region, Complete copy-region-as-kill)
23618         (kill-new function, kill-ring-yank-pointer)
23619         (Complete forward-sentence, Loading Files)
23620         (Code for current-kill, Code for current-kill, yank):
23621         Resurrect the Emacs 22 versions of the code, which uses grave
23622         quoting style in doc strings.
23623         (Complete zap-to-char): Mention how quoting works in doc strings.
23625         Setup quote display only if interactive
23626         * lisp/startup.el (command-line):
23627         Skip call to startup--setup-quote-display if noninteractive.
23628         Without this change, python-shell-prompt-validate-regexps-1
23629         fails in test/automated/python-tests.el when run in an
23630         en_US.utf8 locale on Fedora.
23632 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
23634         Use defalias at the top level
23635         * lisp/gnus/gnus-util.el (gnus-format-message):
23636         * lisp/net/tls.el (tls-format-message): Use defalias at the top level
23637         so as to make eval-and-compile unnecessary.  Thanks to Stefan Monnier.
23639 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
23641         terminal-init-w32console mimics command-line
23642         Problem reported by Eli Zaretskii.
23643         * lisp/startup.el (startup--setup-quote-display):
23644         New function, refactored from a part of ‘command-line’.
23645         (command-line): Use it.
23646         * lisp/term/w32console.el (terminal-init-w32console):
23647         Use it, so that this function stays consistent with ‘command-line’.
23649         Display replacement quotes with shadow glyphs
23650         * lisp/startup.el (command-line): When displaying ASCII
23651         replacements for curved quotes, use a shadow glyph instead of a
23652         regular one, to avoid ambiguity.
23654 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
23656         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Mask "Password:".
23658 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
23660         Docstring fixes re quotes in C code
23661         Fix some docstring quoting problems, mostly by escaping apostrophe.
23663 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
23665         Some Tramp password fixes
23666         * lisp/net/tramp.el (tramp-clear-passwd): Clear also the passwords
23667         of the hops.
23668         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Move "-p" "Password:"
23669         at the beginning of the command.  Otherwise, it could be
23670         interpreted as password prompt if the remote host echoes the
23671         command.
23672         (tramp-remote-coding-commands): Add "openssl enc -base64".
23674 2015-09-01  Dmitry Gutov  <dgutov@yandex.ru>
23676         Make vc-git-working-revision always return the commit hash
23677         * lisp/vc/vc-git.el (vc-git-working-revision):
23678         Return the commit hash (bug#21383).
23679         (vc-git--symbolic-ref): New function, extracted from above.
23680         (vc-git-mode-line-string): Use it.
23682 2015-09-01  K. Handa  <handa@gnu.org>
23684         Use the new type MFLTGlyphFT for MFLTGlyphString.glyphs
23685         * src/ftfont.c (MFLTGlyphFT): New type.
23686         (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_drive_otf)
23687         (ftfont_shape_by_flt): Make MFLTGlyphFT the actual type of
23688         elements in the array MFLTGlyphString.glyphs.
23690 2015-09-01  Stephen Leake  <stephen_leake@stephe-leake.org>
23692         Improve comments in elisp-mode.el, elisp-mode-tests.el
23693         * lisp/progmodes/elisp-mode.el: Clean up FIXMEs, comments.
23695         Delete Emacs 25 test in mode-local.el
23696         * lisp/cedet/mode-local.el (describe-mode-local-overload):
23697         Fix missed an edit in previous commit.
23699         Show all known mode-local overrides in *Help*
23700         * lisp/cedet/mode-local.el (describe-mode-local-overload):
23701         Assume Emacs 25. Add all known mode-local overrides.
23703 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
23705         * lisp/gnus/gnus-sum.el (gnus-summary-search-article):
23706         Ensure that the article where the search word is found is displayed
23707         and pointed to in the summary buffer.
23709 2015-08-31  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
23711         * lisp/newcomment.el (comment-dwim): Use `use-region-p'.
23712         When the region is active, but is empty (length 0), act as though
23713         the region was not active; that is, put a comment at the end of
23714         the line.  (Bug#21119)
23716 2015-08-31  Katsumi Yamaoka  <yamaoka@jpl.org>
23718         Port tls.el to older Emacs
23719         * lisp/net/tls.el (tls-format-message):
23720         Alias to format-message, or format if not available.
23721         (open-tls-stream): Use it.
23723 2015-08-31  Rüdiger Sonderfeld  <ruediger@c-plusplus.net>
23725         hideif.el: Recognize .h++ as C++ header
23726         * lisp/progmodes/hideif.el (hide-ifdef-header-regexp): Add .h++.
23728         isearch: Document character folding mode
23729         * lisp/isearch.el (isearch-forward):
23730         Mention `isearch-toggle-character-fold' in doc string.
23732 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
23734         Quoting fixes in ERC and Eshell
23735         * lisp/erc/erc-autoaway.el (erc-autoaway-set-away):
23736         * lisp/erc/erc-backend.el (define-erc-response-handler):
23737         * lisp/erc/erc-fill.el (erc-fill-static-center):
23738         * lisp/eshell/em-dirs.el (eshell-save-some-last-dir):
23739         * lisp/eshell/em-glob.el (eshell-glob-entries):
23740         * lisp/eshell/em-hist.el (eshell-save-some-history):
23741         * lisp/eshell/em-unix.el (eshell-remove-entries, eshell/rm)
23742         (eshell-shuffle-files):
23743         * lisp/eshell/esh-cmd.el (eshell-do-eval):
23744         * lisp/eshell/esh-proc.el (eshell-process-interact)
23745         (eshell-query-kill-processes):
23746         Respect ‘text-quoting-style’ in diagnostics and doc strings.
23748         Quoting fixes in Gnus
23749         * lisp/gnus/gnus-agent.el:
23750         (gnus-agent-possibly-synchronize-flags-server):
23751         * lisp/gnus/gnus-art.el (gnus-article-browse-delete-temp-files):
23752         * lisp/gnus/gnus-eform.el (gnus-edit-form):
23753         * lisp/gnus/gnus-group.el (gnus-group-edit-group)
23754         (gnus-group-nnimap-edit-acl):
23755         * lisp/gnus/gnus-topic.el (gnus-topic-edit-parameters):
23756         * lisp/gnus/mail-source.el (mail-source-delete-old-incoming):
23757         * lisp/gnus/message.el (message-strip-subject-encoded-words)
23758         (message-check-recipients, message-send-form-letter):
23759         * lisp/gnus/mm-decode.el (mm-display-part):
23760         * lisp/gnus/mm-uu.el (mm-uu-pgp-signed-extract-1):
23761         * lisp/gnus/mml-smime.el (mml-smime-get-dns-cert)
23762         (mml-smime-get-ldap-cert):
23763         * lisp/gnus/spam-report.el (spam-report-process-queue):
23764         Respect ‘text-quoting-style’ in diagnostics.
23765         * lisp/gnus/gnus-art.el (article-display-face)
23766         * lisp/gnus/gnus-fun.el (gnus-display-x-face-in-from):
23767         Use straight quoting in email.
23768         * lisp/gnus/rfc2231.el (rfc2231-decode-encoded-string):
23769         Escape apostrophes in doc strings.
23771         Quoting fixes in lisp mail, mh-e, net, url
23772         * lisp/mail/emacsbug.el (report-emacs-bug)
23773         (report-emacs-bug-hook): Use straight quotes in outgoing email,
23774         * lisp/mail/feedmail.el (feedmail-message-action-help-blat):
23775         * lisp/mail/rmail.el (rmail-unknown-mail-followup-to):
23776         * lisp/mail/rmailout.el (rmail-output-read-file-name):
23777         * lisp/net/imap.el (imap-interactive-login):
23778         * lisp/net/tls.el (open-tls-stream):
23779         * lisp/url/url-auth.el (url-register-auth-scheme):
23780         Respect ‘text-quoting-style’ in diagnostics.
23781         * lisp/mh-e/mh-e.el (mh-sortm-args):
23782         Quote docstring example using text quotes, not as a Lisp quote.
23784 2015-08-31  Stephen Leake  <stephen_leake@stephe-leake.org>
23786         Fix some byte-compiler warnings in EDE
23787         This fixes a bug that caused ede-generic-new-autoloader to overwrite the
23788         existing autoloader list, rather than add to it.
23789         * lisp/cedet/ede/auto.el (ede-project-class-files): Delete obsolete name
23790         argument to eieio class constructor.
23791         (ede-show-supported-projects): New.
23792         (ede-add-project-autoload): Replace obsolete `eieio-object-name-string'
23793         with (oref ... name).
23794         (ede-auto-load-project): Use slot name, not initarg key.
23795         * lisp/cedet/ede/generic.el (ede-generic-load)
23796         (ede-generic-find-matching-target): Use slot name, not initarg key.
23797         (ede-find-target): Use oref-default on class name.
23798         (ede-generic-new-autoloader): Delete obsolete name argument to eieio
23799         class constructor.
23800         (ede-enable-generic-projects): Make project type names unique.
23802 2015-08-31  Eli Zaretskii  <eliz@gnu.org>
23804         Fix directory accessibility tests for w32 network volumes
23805         * src/w32.c (faccessat): Don't fail with network volumes without a
23806         share.
23807         (w32_accessible_directory_p): Handle network volumes without a
23808         share.
23810         Fix handling long file names in readdir on MS-Windows
23811         * src/w32.c (sys_readdir): Append "\*" to the directory after
23812         converting it to UTF-16/ANSI, not before, to avoid overflowing the
23813         260-character limit on file names in filename_to_utf16/ansi.
23815         Make file-accessible-directory-p reliable on MS-Windows
23816         * src/w32.c (w32_accessible_directory_p): New function.
23817         * src/w32.h (w32_accessible_directory_p): Add prototype.
23818         * src/fileio.c (file_accessible_directory_p) [WINDOWSNT]: Call
23819         w32_accessible_directory_p to test a directory for accessibility
23820         by the current user.  (Bug#21346)
23821         (Ffile_accessible_directory_p): Remove the w32 specific caveat
23822         from the doc string.
23824 2015-08-31  Martin Rudalics  <rudalics@gmx.at>
23826         Don't call do_pending_window_change in signal handlers (Bug#21380)
23827         * src/gtkutil.c (xg_frame_resized):
23828         * src/xterm.c (x_set_window_size):
23829         * src/w32term.c (x_set_window_size): Don't call
23830         do_pending_window_change.
23832 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
23834         Quoting fixes in lisp/org
23835         * lisp/org/org-agenda.el (org-search-view, org-todo-list)
23836         (org-tags-view):
23837         * lisp/org/org-capture.el (org-capture-mode)
23838         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
23839         (org-ctags-ask-append-topic):
23840         * lisp/org/org.el (org-time-string-to-time)
23841         (org-time-string-to-absolute):
23842         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
23843         (org-ctags-ask-append-topic):
23844         * lisp/org/org.el (org-time-string-to-time)
23845         (org-time-string-to-absolute):
23846         Respect ‘text-quoting-style’ in diagnostics.
23847         * lisp/org/org-agenda.el (org-agenda-custom-commands)
23848         (org-agenda-dim-blocked-tasks): Plural of TODO is TODOs, not TODO’s.
23849         * lisp/org/org-capture.el (org-capture-fill-template):
23850         Avoid contraction in output file that might be ASCII.
23851         * lisp/org/org-compat.el (format-message):
23852         Define if not already defined, for backward compatibility.
23853         * lisp/org/org-src.el (org-edit-src-save):
23854         * lisp/org/org.el (org-cycle, org-ctrl-c-ctrl-c):
23855         Escape apostrophes in diagnostics.
23857         Treat “instead” strings as docstrings
23858         * lisp/emacs-lisp/bytecomp.el (byte-compile-form):
23859         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
23860         Substitute quotes in instead strings.
23862 2015-08-31  Nicolas Petton  <nicolas@petton.fr>
23864         Better documentation of seq-let
23865         * doc/lispref/sequences.texi (Sequence Functions): Rephrase the
23866         documentation of seq-let.
23868 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
23870         * lisp/international/ccl.el: Fix quoting.
23872         Quoting fixes in lisp/international and lisp/leim
23873         * lisp/international/ccl.el (ccl-dump, ccl-dump-call):
23874         * lisp/international/ja-dic-utl.el (skkdic-lookup-key):
23875         * lisp/international/mule-cmds.el:
23876         (select-safe-coding-system-interactively, leim-list-file-name):
23877         * lisp/international/quail.el (quail-use-package, quail-help):
23878         * lisp/international/titdic-cnv.el (tit-process-header)
23879         (miscdic-convert):
23880         Respect text quoting style in doc strings and diagnostics.
23881         * lisp/international/quail.el (lisp/international/quail.el):
23882         * lisp/leim/quail/ethiopic.el ("ethiopic"):
23883         Escape apostrophes in doc strings.
23885         Make ‘text-quoting-style’ a plain defvar
23886         It doesn’t need customization, as it’s likely useful only by experts.
23887         Suggested by Stefan Monnier in:
23888         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg01020.html
23889         * lisp/cus-start.el: Remove doc.c section for builtin customized vars.
23891         Quoting fixes in lisp/textmodes
23892         * lisp/textmodes/bibtex.el (bibtex-validate)
23893         (bibtex-validate-globally, bibtex-search-entries):
23894         * lisp/textmodes/ispell.el (ispell-command-loop):
23895         * lisp/textmodes/page-ext.el (search-pages, pages-directory):
23896         * lisp/textmodes/texinfmt.el (texinfmt-version)
23897         (texinfo-format-region, texinfo-format-buffer-1):
23898         * lisp/textmodes/two-column.el (2C-split):
23899         Respect text quoting style in doc strings and diagnostics.
23900         * lisp/textmodes/conf-mode.el (conf-mode-map, conf-quote-normal):
23901         * lisp/textmodes/sgml-mode.el (sgml-specials, sgml-mode):
23902         Escape apostrophes in doc strings.
23904         Documentation fixes re quotes
23905         Prefer curved quotes in examples if users will typically see
23906         curved quotes when the examples run.
23907         Mention format-message when appropriate.
23908         Don’t use @code in examples.
23909         Quote an apostrophe with @kbd.
23911         Quoting fixes in lisp/progmodes
23912         * lisp/progmodes/cc-engine.el (c-bos-report-error):
23913         * lisp/progmodes/cpp.el (cpp-edit-reset):
23914         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
23915         * lisp/progmodes/etags.el (etags-tags-apropos-additional)
23916         (etags-tags-apropos, list-tags, tags-apropos):
23917         * lisp/progmodes/executable.el (executable-set-magic):
23918         * lisp/progmodes/octave.el (octave-sync-function-file-names)
23919         (octave-help, octave-find-definition-default-filename)
23920         (octave-find-definition):
23921         Respect text quoting style in doc strings and diagnostics.
23922         * lisp/progmodes/cc-langs.el (c-populate-syntax-table):
23923         * lisp/progmodes/verilog-mode.el (verilog-auto-reset-widths):
23924         * lisp/progmodes/vhdl-mode.el (vhdl-electric-quote):
23925         Escape apostrophes in doc strings.
23926         * lisp/progmodes/cmacexp.el (c-macro-expansion):
23927         Use straight quoting in ASCII comment.
23928         * lisp/progmodes/idlwave.el (idlwave-auto-fill-split-string)
23929         (idlwave-pad-keyword):
23930         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate)
23931         (vhdl-electric-open-bracket, vhdl-electric-close-bracket):
23932         (vhdl-electric-semicolon, vhdl-electric-comma)
23933         (vhdl-electric-period, vhdl-electric-equal):
23934         Use directed quotes in diagnostics and doc strings.
23936 2015-08-30  Xue Fuqiao  <xfq.free@gmail.com>
23938         Minor documentation and NEWS tweak
23939         * doc/lispintro/emacs-lisp-intro.texi (fwd-para let):
23940         Add an index entry.
23941         * etc/NEWS: Fix a typo in character-fold-to-regexp.
23943 2015-08-30  Michael Albinus  <michael.albinus@gmx.de>
23945         * lisp/net/tramp-sh.el (tramp-convert-file-attributes):
23946         Revert patch from 2015-08-24.  Tramp shall behave like for local files.
23947         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
23948         Adapt test.
23950 2015-08-30  Paul Eggert  <eggert@cs.ucla.edu>
23952         Text quoting fixes in cedet, emulation, emacs-lisp
23953         * lisp/cedet/ede.el (ede-check-project-directory):
23954         * lisp/cedet/semantic/analyze/debug.el
23955         (semantic-analyzer-debug-insert-include-summary):
23956         * lisp/cedet/semantic/bovine/c.el (semantic-c-describe-environment):
23957         * lisp/cedet/semantic/decorate/include.el
23958         (semantic-decoration-unknown-include-describe)
23959         (semantic-decoration-all-include-summary):
23960         * lisp/cedet/semantic/ia.el (semantic-ia-fast-jump):
23961         * lisp/emulation/edt.el (edt-load-keys):
23962         * lisp/emulation/viper-cmd.el
23963         (viper-display-current-destructive-command)
23964         (viper-query-replace, viper-brac-function):
23965         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-compile):
23966         * lisp/emulation/viper-macs.el (viper-unrecord-kbd-macro):
23967         Respect text quoting style in doc string or diagnostic.
23968         * lisp/cedet/mode-local.el (describe-mode-local-overload):
23969         Use format-message to avoid overtranslating quotes.
23970         * lisp/emacs-lisp/checkdoc.el (checkdoc-in-sample-code-p):
23971         Escape an apostrophe in a docstring.
23972         * lisp/emacs-lisp/warnings.el (lwarn): Fix doc string.
23974 2015-08-29  Daniel Colascione  <dancol@dancol.org>
23976         Fix which-func for curly quotes: look for symbol, not message
23977         * lisp/progmodes/which-func.el (which-func-ff-hook): Look for new
23978         imenu-unavailable error symbol instead of trying to match message
23979         exactly.
23980         * lisp/imenu.el (imenu-unavailable): New error.
23981         (imenu-unavailable-error): New function.
23983 2015-08-29  Eli Zaretskii  <eliz@gnu.org>
23985         Fix Python tests on MS-Windows
23986         * test/automated/python-tests.el
23987         (python-shell-calculate-command-1): Run python-shell-interpreter
23988         through shell-quote-argument before comparing with what
23989         python-shell-calculate-command returns.
23990         (python-shell-calculate-pythonpath-1)
23991         (python-shell-calculate-pythonpath-2)
23992         (python-shell-calculate-process-environment-2): Use path-separator
23993         instead of a literal ':'.
23994         (python-shell-calculate-exec-path-2)
23995         (python-shell-calculate-exec-path-3)
23996         (python-shell-calculate-exec-path-4)
23997         (python-shell-with-environment-1)
23998         (python-shell-with-environment-2): Run "/env/bin" through
23999         expand-file-name before comparing with exec-path.  (Bug#21375)
24001 2015-08-29  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
24003         Use Core Text types/functions/variables/enumerators directly
24004         * src/macfont.h (FontDescriptorRef, FontRef, FontSymbolicTraits)
24005         (CharacterCollection): Remove typedefs.  All uses replaced with
24006         definitions.
24007         (MAC_FONT_NAME_ATTRIBUTE, MAC_FONT_FAMILY_NAME_ATTRIBUTE)
24008         (MAC_FONT_TRAITS_ATTRIBUTE, MAC_FONT_SIZE_ATTRIBUTE)
24009         (MAC_FONT_CASCADE_LIST_ATTRIBUTE)
24010         (MAC_FONT_CHARACTER_SET_ATTRIBUTE, MAC_FONT_LANGUAGES_ATTRIBUTE)
24011         (MAC_FONT_FORMAT_ATTRIBUTE, MAC_FONT_SYMBOLIC_TRAIT)
24012         (MAC_FONT_WEIGHT_TRAIT, MAC_FONT_WIDTH_TRAIT)
24013         (MAC_FONT_SLANT_TRAIT): Remove macros.  All uses replaced with
24014         definitions.
24015         (MAC_FONT_TRAIT_ITALIC, MAC_FONT_TRAIT_BOLD)
24016         (MAC_FONT_TRAIT_MONO_SPACE, MAC_FONT_TRAIT_COLOR_GLYPHS)
24017         (MAC_FONT_FORMAT_BITMAP)
24018         (MAC_CHARACTER_COLLECTION_IDENTITY_MAPPING)
24019         (MAC_CHARACTER_COLLECTION_ADOBE_JAPAN1): Remove enumerators.
24020         All uses replaced with definitions.
24021         (kCTFontTraitItalic, kCTFontTraitBold, kCTFontTraitMonoSpace)
24022         (kCTFontTraitColorGlyphs, kCTCharacterCollectionIdentityMapping)
24023         (kCTCharacterCollectionAdobeJapan1 kCTFontOrientationDefault):
24024         Add compatibility enumerators for older versions.
24025         (mac_font_descriptor_create_with_attributes)
24026         (mac_font_descriptor_create_matching_font_descriptors)
24027         (mac_font_descriptor_create_matching_font_descriptor)
24028         (mac_font_descriptor_copy_attribute)
24029         (mac_font_descriptor_supports_languages)
24030         (mac_font_create_with_name, mac_font_get_size)
24031         (mac_font_copy_family_name, mac_font_copy_character_set)
24032         (mac_font_get_glyphs_for_characters, mac_font_get_ascent)
24033         (mac_font_get_descent, mac_font_get_leading)
24034         (mac_font_get_underline_position)
24035         (mac_font_get_underline_thickness, mac_font_copy_graphics_font)
24036         (mac_font_copy_non_synthetic_table): Remove macros.  All uses
24037         replaced with definitions.
24038         (mac_font_create_preferred_family_for_attributes)
24039         (mac_font_get_advance_width_for_glyph)
24040         (mac_font_get_bounding_rect_for_glyph)
24041         (mac_font_create_available_families, mac_font_shape):
24042         Remove macros for renamed functions.
24043         (mac_nsctfont_copy_font_descriptor): Remove unused macro.
24044         * src/macfont.m (mac_font_descriptor_supports_languages):
24045         Rename from mac_ctfont_descriptor_supports_languages.
24046         (mac_font_create_preferred_family_for_attributes): Rename from
24047         mac_ctfont_create_preferred_family_for_attributes.
24048         (mac_font_get_advance_width_for_glyph): Rename from
24049         mac_ctfont_get_advance_width_for_glyph.
24050         Use kCTFontOrientationDefault also for older versions.
24051         (mac_font_get_bounding_rect_for_glyph): Rename from
24052         mac_ctfont_get_bounding_rect_for_glyph.
24053         Use kCTFontOrientationDefault also for older versions.
24054         (mac_font_create_available_families): Rename from
24055         mac_ctfont_create_available_families.
24056         (mac_font_equal_in_postscript_name): Rename from
24057         mac_ctfont_equal_in_postscript_name.  All uses changed.
24058         (mac_font_create_line_with_string_and_font): Rename from
24059         mac_ctfont_create_line_with_string_and_font.  All uses changed.
24060         (mac_font_shape): Rename from mac_ctfont_shape.
24061         (mac_font_family_compare): Remove unused declaration.
24063 2015-08-29  Paul Eggert  <eggert@cs.ucla.edu>
24065         Fix minor text quoting in calc, calendar, vc
24066         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
24067         * lisp/calc/calc-help.el (calc-j-prefix-help):
24068         * lisp/calc/calc-misc.el (calc-help):
24069         * lisp/calc/calc.el (calc-algebraic-mode, calc-mode):
24070         Escape an apostrophe in a docstring.
24071         * lisp/calc/calc-forms.el (calc-hms-notation):
24072         * lisp/calc/calc-mode.el (calc-display-raw, calc-algebraic-mode):
24073         Escape an apostrophe in a diagnostic.
24074         * lisp/calc/calc-misc.el (calc-help):
24075         * lisp/calendar/diary-lib.el (diary-include-files):
24076         * lisp/calendar/todo-mode.el (todo-prefix, todo-item-mark):
24077         * lisp/vc/diff-mode.el (diff-delete-trailing-whitespace):
24078         * lisp/vc/ediff-diff.el (ediff-same-contents):
24079         * lisp/vc/ediff-merg.el (ediff-re-merge):
24080         * lisp/vc/ediff-ptch.el (ediff-patch-file-internal):
24081         * lisp/vc/ediff-util.el (ediff-test-save-region)
24082         (ediff-status-info):
24083         * lisp/vc/ediff.el (ediff-merge-revisions)
24084         (ediff-merge-revisions-with-ancestor):
24085         * lisp/vc/pcvs.el (cvs-mode-checkout, cvs-vc-command-advice):
24086         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
24087         Respect text quoting style in doc string or diagnostic.
24088         * lisp/calc/calc-prog.el (calc-kbd-push, calc-kbd-pop):
24089         * lisp/vc/add-log.el (change-log-goto-source):
24090         Avoid double-formatting.
24091         * lisp/vc/ediff-init.el (format-message):
24092         New backward-compatibility alias.
24094 2015-08-28  Paul Eggert  <eggert@cs.ucla.edu>
24096         Fix minor text quoting problems in lisp top level
24097         * lisp/apropos.el (apropos-describe-plist):
24098         * lisp/cus-theme.el (customize-themes):
24099         * lisp/dired.el (dired-log):
24100         * lisp/help-fns.el (describe-variable):
24101         * lisp/hexl.el (hexl-insert-multibyte-char):
24102         * lisp/info.el (Info-finder-find-node):
24103         * lisp/json.el (json-read-string):
24104         * lisp/novice.el (disabled-command-function)
24105         (disabled-command-function):
24106         * lisp/startup.el (normal-mouse-startup-screen):
24107         * lisp/woman.el (WoMan-log, WoMan-warn):
24108         Respect text quoting style in doc string or diagnostic.
24109         * lisp/replace.el (replace-character-fold):
24110         * src/syntax.c (Fmodify_syntax_entry):
24111         Escape an apostrophe in a docstring.
24112         * lisp/tempo.el (tempo-define-template):
24113         Remove confusing apostrophe from docstring.
24114         * lisp/whitespace.el (whitespace-mark-x):
24115         Use directed quotes in docstring.
24117 2015-08-28  Simen Heggestøyl  <simenheg@gmail.com>
24119         Fix indentation rule in css-mode
24120         * lisp/textmodes/css-mode.el (css-smie-rules): Fix indentation of
24121         brackets in presence of pseudo-selectors.  (Bug#21328)
24123 2015-08-28  Eli Zaretskii  <eliz@gnu.org>
24125         Fix a bug in recording a macro while flyspell-mode is active
24126         * lisp/subr.el (sit-for): Don't call read-event when recording a
24127         macro.  (Bug#21329)
24129 2015-08-27  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
24131         Tweak startup screen quoting
24132         * lisp/startup.el (normal-splash-screen): Use standard
24133         "M-" abbrevation rather than a confusingly-different one.
24134         (normal-no-mouse-startup-screen): Follow ‘text-quoting-style’.
24136 2015-08-27  Paul Eggert  <eggert@cs.ucla.edu>
24138         Add test case for ‘format’ bug and refactor
24139         * src/editfns.c (styled_format): Refactor internally, mostly by
24140         moving declarations closer to uses.  This should not affect behavior.
24141         * test/automated/textprop-tests.el (textprop-tests-format): New test.
24143         Fix ‘format’ bug with property offsets
24144         * src/editfns.c (styled_format): Fix recently-introduced ‘format’
24145         bug in calculating string property offsets (Bug#21351).
24147         Use straight quotes in lib-src diagnostics
24148         These auxiliary programs can’t use Emacs’s text-quoting-style,
24149         and it’s too much trouble to redo that mechanism by hand.
24150         So just use straight quotes for now.
24151         * lib-src/ebrowse.c (main):
24152         * lib-src/emacsclient.c (decode_options, main):
24153         * lib-src/etags.c (Ada_help, default_C_help, Cplusplus_help)
24154         (Forth_help, HTML_help, Lisp_help, Makefile_help, Objc_help)
24155         (Perl_help, PHP_help, Python_help, Scheme_help, TeX_help, auto_help)
24156         (none_help, print_language_names, print_help, add_regex)
24157         (suggest_asking_for_help):
24158         * lib-src/make-docfile.c (write_c_args, scan_c_stream):
24159         Use straight quotes in diagnostics.
24161         ‘text-quoting-style’ fixes for admin
24162         * admin/admin.el (cusver-scan, cusver-check):
24163         * admin/authors.el (authors-canonical-file-name):
24164         * admin/bzrmerge.el (bzrmerge-missing):
24165         Respect ‘text-quoting-style’ in diagnostics.
24167 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
24169         Assume GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS
24170         This removes the need for GCPRO1 etc.  Suggested by Stefan Monnier in:
24171         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00918.html
24172         * doc/lispref/internals.texi (Writing Emacs Primitives):
24173         * etc/NEWS:
24174         Document the change.
24175         * src/alloc.c (gcprolist, dump_zombies, MAX_ZOMBIES, zombies)
24176         (nzombies, ngcs, avg_zombies, max_live, max_zombies, avg_live)
24177         (Fgc_status, check_gcpros, relocatable_string_data_p, gc-precise):
24178         * src/bytecode.c (mark_byte_stack) [BYTE_MARK_STACK]:
24179         * src/eval.c (gcpro_level) [DEBUG_GCPRO]:
24180         * src/lisp.h (struct handler.gcpro, struct gcpro, GC_MARK_STACK)
24181         (GC_USE_GCPROS_AS_BEFORE, GC_MAKE_GCPROS_NOOPS)
24182         (GC_MARK_STACK_CHECK_GCPROS, GC_USE_GCPROS_CHECK_ZOMBIES)
24183         (BYTE_MARK_STACK, GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5, GCPRO6)
24184         (GCPRO7, UNGCPRO, RETURN_UNGCPRO):
24185         Remove.  All uses removed.  The code now assumes
24186         GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS.
24187         * src/bytecode.c (relocate_byte_stack):
24188         Rename from unmark_byte_stack, since it now only relocates.
24189         All callers changed.
24190         * src/frame.c (make_frame): Add an IF_LINT to pacify GCC 5.2
24191         with GCPROs removed.
24192         * src/systime.h: Use EMACS_LISP_H as the canary instead of GCPRO1.
24193         * test/automated/finalizer-tests.el (finalizer-basic)
24194         (finalizer-circular-reference, finalizer-cross-reference)
24195         (finalizer-error):
24196         * test/automated/generator-tests.el (cps-test-iter-close-finalizer):
24197         Remove tests, as they depend on gc-precise.
24199 2015-08-26  Nicolas Petton  <nicolas@petton.fr>
24201         Improve seq-concatenate for new sequence types
24202         Use the new `seq-into-sequence' in seqs passed to `seq-concatenate' to
24203         ensure that concatenation happens on sequences only.  This makes it
24204         possible to use `seq-concatenate' for new types of seqs.
24205         * lisp/emacs-lisp/seq.el (seq-into-sequence, seq-concatenate):
24206         New function used in `seq-concatenate'.
24207         * test/automated/seq-tests.el (test-seq-into-sequence): New unit test
24208         for seq-into-sequence.
24210 2015-08-26  Stephen Leake  <stephen_leake@stephe-leake.org>
24212         Add mode local overrides to xref-find-definitions
24213         * lisp/cedet/mode-local.el (xref-mode-local--override-present)
24214         (xref-mode-local-overload): New; add mode local overrides to
24215         xref-find-definitions.
24216         * test/automated/elisp-mode-tests.el: Add mode local override tests.
24217         (xref-elisp-test-run): Handle indented defuns.
24218         (xref-elisp-generic-*): Improve doc strings.
24219         * lisp/progmodes/elisp-mode.el (elisp-xref-find-def-functions): New.
24220         (elisp--xref-find-definitions): Use it.
24222         Add mode local overrides to describe-function
24223         * lisp/cedet/mode-local.el (describe-mode-local-overload):
24224         New; add mode local overrides to describe-function.
24225         * etc/NEWS: Document change.
24227 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
24229         Prefer straight quoting in some etc text files
24230         These files are plain text and might be used by non-Emacs apps.
24231         They’re mostly ASCII, so just use straight quotes.
24233         Fix quoting in ‘message_with_string’
24234         * src/nsfont.m (nsfont_open): Use directed quotes in format; they
24235         should work now.
24236         * src/xdisp.c (message_to_stderr): New function, refactored from
24237         part of ‘message3_nolog’.
24238         (message3_nolog): Use it.
24239         (message_with_string): Use it.  Don’t mishandle NUL bytes when
24240         noninteractive.  Prefer AUTO_STRING when it’s most likely faster.
24241         Use ‘format-message’, not ‘format’, so that quotes are translated.
24243 2015-08-26  Eli Zaretskii  <eliz@gnu.org>
24245         Mention false positives of file-accessible-directory on w32
24246         * src/fileio.c (Ffile_accessible_directory_p): Doc fix.
24247         (Bug#21346)
24249 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
24251         Treat error strings as help
24252         * src/print.c (print_error_message): Translate quotes and command
24253         keys in errmsg so that users see, e.g., "Symbol’s value as
24254         variable is void: foo" when text-quoting-style is curved.
24256 2015-08-26  Michael Albinus  <michael.albinus@gmx.de>
24258         * lisp/net/tramp-cache.el (top): Use `message', not `format-message'.
24260 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
24262         Top-level elisp files respect ‘text-quoting-style’
24263         In top-level elisp files, use format-message in diagnostic formats,
24264         so that they follow user preference as per ‘text-quoting-style’
24265         rather than being hard-coded to quote `like this'.
24266         * lisp/allout.el (allout-get-configvar-values):
24267         * lisp/apropos.el (apropos-symbols-internal):
24268         * lisp/dired-aux.el (dired-do-shell-command, dired-create-files)
24269         (dired-do-create-files-regexp, dired-create-files-non-directory):
24270         * lisp/dired-x.el (dired-do-run-mail):
24271         * lisp/dired.el (dired-log, dired-dnd-handle-local-file):
24272         * lisp/disp-table.el (standard-display-european):
24273         * lisp/find-dired.el (find-dired):
24274         * lisp/forms.el (forms-mode):
24275         * lisp/ido.el (ido-buffer-internal):
24276         * lisp/info.el (Info-index-next):
24277         * lisp/outline.el (outline-invent-heading):
24278         * lisp/printing.el (pr-ps-outfile-preprint, pr-i-ps-send):
24279         * lisp/proced.el (proced-log):
24280         * lisp/ps-print.el (ps-print-preprint, ps-get-size):
24281         * lisp/recentf.el (recentf-open-files, recentf-save-list):
24282         * lisp/savehist.el (savehist-save):
24283         * lisp/server.el (server-ensure-safe-dir):
24284         * lisp/ses.el (ses-rename-cell):
24285         * lisp/simple.el (list-processes--refresh):
24286         * lisp/startup.el (command-line):
24287         * lisp/strokes.el (strokes-unset-last-stroke)
24288         (strokes-execute-stroke):
24289         Use format-message so that quotes are restyled.
24290         * lisp/cus-edit.el (custom-raised-buttons, customize-browse):
24291         Don’t quote ‘raised’.
24292         * lisp/descr-text.el (describe-char):
24293         * lisp/dirtrack.el (dirtrack-debug-message):
24294         * lisp/hexl.el (hexl-insert-multibyte-char):
24295         Apply substitute-command-keys to help string.
24296         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
24297         (wdired-do-perm-changes):
24298         Let dired-log do the formatting.
24300 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
24302         Go back to grave quoting in Tramp
24303         * lisp/net/tramp-adb.el:
24304         * lisp/net/tramp-cache.el:
24305         * lisp/net/tramp-compat.el:
24306         * lisp/net/tramp-gvfs.el:
24307         * lisp/net/tramp-gw.el:
24308         * lisp/net/tramp-sh.el:
24309         * lisp/net/tramp-smb.el:
24310         * lisp/net/tramp.el:
24311         Stick with grave quoting in diagnostics strings.  This is more
24312         portable to older Emacs, desirable for Tramp.
24313         * lisp/net/tramp-cache.el: Use ‘format-message’, not ‘format’,
24314         for diagnostic that needs requoting.
24315         * lisp/net/tramp-compat.el (format-message):
24316         Fall back on simple ‘format’, since that’s good enough now.
24318         Go back to grave quoting in Gnus
24319         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
24320         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
24321         (gnus-agent-fetch-headers):
24322         * lisp/gnus/gnus-int.el (gnus-start-news-server):
24323         * lisp/gnus/gnus-registry.el:
24324         (gnus-registry--split-fancy-with-parent-internal)
24325         (gnus-registry-post-process-groups):
24326         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
24327         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
24328         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
24329         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
24330         * lisp/gnus/spam.el (spam-check-blackholes):
24331         Stick with grave quoting in diagnostics strings.  This is more
24332         portable to older Emacs, desirable for Gnus.
24334         Fix customization of text-quoting-style
24335         * lisp/cus-edit.el (custom-guess-type, custom-variable-documentation):
24336         * lisp/wid-edit.el (widget-docstring):
24337         Get raw docstring here since it’s cooked later and should not be
24338         cooked twice.
24339         * lisp/cus-edit.el (custom-group-value-create):
24340         Cook the docstring before inserting it.
24341         * lisp/cus-start.el (text-quoting-style): Quote the customization
24342         docstrings according to the new rules.  Give curved examples.
24344         format-message now curves ` and '
24345         That way, the caller doesn’t have to use curved quotes to
24346         get diagnostics that match the text-quoting-style preferences.
24347         Suggested by Dmitry Gutov in:
24348         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00893.html
24349         This means we no longer need %qs, so remove that format.
24350         While we’re at it, fix an unlikely bug and lessen the pressure
24351         on the garbage collector by processing the string once rather
24352         than twice in the usual case.
24353         * doc/lispref/strings.texi (Formatting Strings):
24354         * etc/NEWS: Document this.
24355         * lisp/subr.el (format-message): Remove; now done in C.
24356         * src/callint.c (Fcall_interactively):
24357         * src/editfns.c (Fmessage, Fmessage_box):
24358         Use Fformat_message instead of Finternal__text_restyle
24359         followed by Fformat.
24360         * src/doc.c (LSQM, RSQM): Remove; all uses changed to use
24361         uLSQM and uRSQM.
24362         (Fsubstitute_command_keys): Prefer AUTO_STRING to build_string
24363         when pure ASCII now suffices.  Fix unlikely bug when parsing
24364         unibyte string containing non-ASCII bytes.  Use inline code
24365         rather than memcpy, as it’s a tiny number of bytes.
24366         (Finternal__text_restyle): Remove; no longer used.
24367         (syms_of_doc): Don’t declare it.
24368         * src/editfns.c (Fformat): Rewrite in terms of new function
24369         ‘styled_format’.
24370         (Fformat_message): New function, moved here from subr.el.
24371         (styled_format): New function, with the old guts of Fformat,
24372         except it now optionally transliterates quotes, and it transliterates
24373         traditional grave accent and apostrophe quoting as well.
24374         Remove recently-added q flag; no longer needed or used.
24375         (syms_of_editfns): Define format-message.
24376         * src/lisp.h (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
24377         Remove; no longer need to be global symbols.
24378         * src/xdisp.c (vadd_to_log): Use Fformat_message, not Fformat,
24379         so that callers can use `%s'.
24380         * src/image.c (image_size_error, xbm_load_image, xbm_load)
24381         (xpm_load, pbm_load, png_load_body, jpeg_load_body, tiff_load)
24382         (gif_load, imagemagick_load_image, imagemagick_load, svg_load)
24383         (svg_load_image, gs_load, x_kill_gs_process):
24384         * src/lread.c (load_warn_old_style_backquotes):
24385         * src/xfaces.c (load_pixmap):
24386         * src/xselect.c (x_clipboard_manager_error_1):
24387         Use `%s' instead of %qs in formats.
24389 2015-08-25  Eli Zaretskii  <eliz@gnu.org>
24391         Minor fixes in doc/emacs/search.texi
24392         * doc/emacs/search.texi (Basic Isearch): Fix a typo.
24393         (Special Isearch): Use @w{} to generate several consecutive spaces
24394         with Texinfo 6.  (Bug#21345)
24396 2015-08-25  Michael Albinus  <michael.albinus@gmx.de>
24398         * lisp/net/tramp-sh.el (tramp-awk-encode, tramp-awk-decode)
24399         (tramp-awk-coding-test): New defconsts.
24400         (tramp-remote-coding-commands): Use them.
24401         (tramp-find-inline-encoding): Check for Perl only if necessary.
24403 2015-08-25  Xue Fuqiao  <xfq.free@gmail.com>
24405         * doc/lispintro/emacs-lisp-intro.texi (Run a Program): Add some
24406         index entries for the special form `quote'.
24408 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
24410         Spelling fixes
24412         Gnus format-message typo fix
24413         * lisp/gnus/gnus-util.el (gnus-format-message):
24414         Fix typo when running in older Emacs.
24416         Prefer directed to neutral quotes in docstings and diagnostics.
24417         In docstrings, escape apostrophes that would otherwise be translated
24418         to curved quotes using the newer, simpler rules.
24419         * admin/unidata/unidata-gen.el (unidata-gen-table):
24420         * lisp/align.el (align-region):
24421         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet):
24422         * lisp/bookmark.el (bookmark-default-annotation-text):
24423         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
24424         * lisp/calc/calc-lang.el (math-read-giac-subscr)
24425         (math-read-math-subscr):
24426         * lisp/calc/calc-misc.el (report-calc-bug):
24427         * lisp/calc/calc-prog.el (calc-fix-token-name)
24428         (calc-read-parse-table-part):
24429         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
24430         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
24431         * lisp/dabbrev.el (dabbrev-expand):
24432         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
24433         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
24434         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
24435         * lisp/emulation/viper-cmd.el (viper-toggle-search-style):
24436         * lisp/erc/erc-button.el (erc-nick-popup):
24437         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login):
24438         * lisp/eshell/em-dirs.el (eshell/cd):
24439         * lisp/eshell/em-glob.el (eshell-glob-regexp):
24440         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
24441         * lisp/eshell/esh-arg.el (eshell-parse-arguments):
24442         * lisp/eshell/esh-opt.el (eshell-show-usage):
24443         * lisp/files-x.el (modify-file-local-variable):
24444         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer)
24445         (filesets-update-pre010505):
24446         * lisp/find-cmd.el (find-generic, find-to-string):
24447         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
24448         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
24449         (gnus-agent-fetch-headers):
24450         * lisp/gnus/gnus-int.el (gnus-start-news-server):
24451         * lisp/gnus/gnus-registry.el:
24452         (gnus-registry--split-fancy-with-parent-internal):
24453         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
24454         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
24455         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
24456         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
24457         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
24458         * lisp/gnus/spam.el (spam-check-blackholes):
24459         * lisp/mail/feedmail.el (feedmail-run-the-queue):
24460         * lisp/mpc.el (mpc-playlist-rename):
24461         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
24462         * lisp/net/mairix.el (mairix-widget-create-query):
24463         * lisp/net/tramp-cache.el:
24464         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
24465         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
24466         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
24467         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
24468         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
24469         (org-babel-goto-named-result):
24470         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
24471         * lisp/org/ob-ref.el (org-babel-ref-resolve):
24472         * lisp/org/org-agenda.el (org-agenda-prepare):
24473         * lisp/org/org-bibtex.el (org-bibtex-fields):
24474         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
24475         (org-clock-resolve):
24476         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
24477         * lisp/org/org-habit.el (org-habit-parse-todo):
24478         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
24479         (org-mouse-context-menu):
24480         * lisp/org/org-table.el (org-table-edit-formulas):
24481         * lisp/org/ox.el (org-export-async-start):
24482         * lisp/play/dunnet.el (dun-score, dun-help, dun-endgame-question)
24483         (dun-rooms, dun-endgame-questions):
24484         * lisp/progmodes/ada-mode.el (ada-goto-matching-start):
24485         * lisp/progmodes/ada-xref.el (ada-find-executable):
24486         * lisp/progmodes/antlr-mode.el (antlr-options-alists):
24487         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
24488         (flymake-start-syntax-check-process):
24489         * lisp/progmodes/python.el (python-define-auxiliary-skeleton):
24490         * lisp/progmodes/sql.el (sql-comint):
24491         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
24492         * lisp/server.el (server-get-auth-key):
24493         * lisp/subr.el (version-to-list):
24494         * lisp/textmodes/reftex-ref.el (reftex-label):
24495         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
24496         * lisp/vc/ediff-diff.el (ediff-same-contents):
24497         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
24498         * test/automated/tramp-tests.el (tramp-test33-asynchronous-requests):
24499         Use directed rather than neutral quotes in diagnostics.
24501         Treat ' like ’ even when not matching `
24502         This is simpler and easier to explain, and should encourage better
24503         typography.  Do this in Electric Quote mode and when translating
24504         quotes in docstrings.  Inspired by a suggestion by Dmitry Gutov in:
24505         https://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00806.html
24506         * doc/emacs/text.texi (Quotation Marks):
24507         * doc/lispref/help.texi (Keys in Documentation):
24508         * etc/NEWS:
24509         Document this.
24510         * lisp/electric.el (electric-quote-post-self-insert-function):
24511         * src/doc.c (Fsubstitute_command_keys):
24512         Always treat ' like ’ even when not matched by an open quote.
24514 2015-08-25  Glenn Morris  <rgm@gnu.org>
24516         * doc/emacs/cal-xtra.texi (Holiday Customizing): Fix typo in example.
24517         * lisp/calendar/holidays.el (calendar-holidays): Fix doc typo.
24519 2015-08-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
24521         * src/macfont.m (macfont_create_family_with_symbol):
24522         Accept localized names.
24524 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
24526         Tramp diagnostics as per ‘text-quoting-style’
24527         * lisp/net/tramp-adb.el (tramp-adb-handle-file-truename)
24528         (tramp-adb-get-ls-command, tramp-adb-handle-make-directory)
24529         (tramp-adb-handle-delete-directory)
24530         (tramp-adb-handle-delete-file)
24531         (tramp-adb-handle-file-local-copy)
24532         (tramp-adb-handle-write-region, tramp-adb-handle-copy-file)
24533         (tramp-adb-send-command-and-check, tramp-adb-wait-for-output)
24534         (tramp-adb-maybe-open-connection):
24535         * lisp/net/tramp-cache.el:
24536         * lisp/net/tramp-compat.el (tramp-compat-temporary-file-directory)
24537         (tramp-compat-octal-to-decimal)
24538         (tramp-compat-coding-system-change-eol-conversion):
24539         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler)
24540         (tramp-gvfs-do-copy-or-rename-file)
24541         (tramp-gvfs-handle-delete-directory)
24542         (tramp-gvfs-handle-delete-file)
24543         (tramp-gvfs-handle-expand-file-name)
24544         (tramp-gvfs-handle-file-local-copy)
24545         (tramp-gvfs-handle-file-notify-add-watch)
24546         (tramp-gvfs-handle-make-directory)
24547         (tramp-gvfs-handle-write-region, tramp-gvfs-url-file-name):
24548         * lisp/net/tramp-gw.el (tramp-gw-gw-proc-sentinel)
24549         (tramp-gw-aux-proc-sentinel, tramp-gw-open-connection):
24550         * lisp/net/tramp-sh.el (tramp-sh-handle-file-truename)
24551         (tramp-sh-handle-set-visited-file-modtime)
24552         (tramp-sh-handle-set-file-modes)
24553         (tramp-sh-handle-file-name-all-completions)
24554         (tramp-sh-handle-add-name-to-file, tramp-do-copy-or-rename-file)
24555         (tramp-do-copy-or-rename-file-directly)
24556         (tramp-do-copy-or-rename-file-out-of-band)
24557         (tramp-sh-handle-make-directory)
24558         (tramp-sh-handle-delete-directory, tramp-sh-handle-delete-file)
24559         (tramp-sh-handle-insert-directory, tramp-process-sentinel)
24560         (tramp-sh-handle-start-file-process)
24561         (tramp-sh-handle-file-local-copy)
24562         (tramp-sh-handle-write-region, tramp-sh-handle-vc-registered)
24563         (tramp-sh-handle-file-notify-add-watch, tramp-maybe-send-script)
24564         (tramp-find-file-exists-command, tramp-open-shell)
24565         (tramp-find-shell)
24566         (tramp-open-connection-setup-interactive-shell)
24567         (tramp-find-inline-encoding, tramp-find-inline-compress)
24568         (tramp-compute-multi-hops, tramp-maybe-open-connection)
24569         (tramp-wait-for-output, tramp-send-command-and-check)
24570         (tramp-send-command-and-read, tramp-get-remote-path)
24571         (tramp-get-ls-command, tramp-get-ls-command-with-dired)
24572         (tramp-get-ls-command-with-quoting-style)
24573         (tramp-get-test-command, tramp-get-remote-ln)
24574         (tramp-get-remote-perl, tramp-get-remote-stat)
24575         (tramp-get-remote-readlink, tramp-get-remote-trash)
24576         (tramp-get-remote-touch, tramp-get-remote-gvfs-monitor-dir)
24577         (tramp-get-remote-inotifywait, tramp-get-remote-id)
24578         (tramp-get-remote-python):
24579         * lisp/net/tramp-smb.el (tramp-smb-errors)
24580         (tramp-smb-handle-add-name-to-file, tramp-smb-handle-copy-file)
24581         (tramp-smb-handle-delete-directory)
24582         (tramp-smb-handle-delete-file)
24583         (tramp-smb-handle-file-local-copy)
24584         (tramp-smb-handle-make-directory)
24585         (tramp-smb-handle-make-directory-internal)
24586         (tramp-smb-handle-make-symbolic-link)
24587         (tramp-smb-handle-rename-file, tramp-smb-handle-set-file-acl)
24588         (tramp-smb-handle-set-file-modes)
24589         (tramp-smb-handle-write-region, tramp-smb-get-file-entries):
24590         * lisp/net/tramp.el (tramp-debug-message, tramp-error)
24591         (tramp-process-actions):
24592         Generate diagnostics according to ‘text-quoting-style’, by
24593         using curved quotes in format strings and ‘format-message’
24594         when appropriate.
24595         * lisp/net/tramp-compat.el (format-message):
24596         Define a replacement, if it’s an older version of Emacs
24597         that doesn’t have it already.
24599         * etc/NEWS: Clarify text-quoting-style and electric-quote-mode.
24601 2015-08-24  Xue Fuqiao  <xfq.free@gmail.com>
24603         Fix documentation for `save-excursion'
24604         * doc/lispref/positions.texi (Excursions):
24605         * doc/lispintro/emacs-lisp-intro.texi (save-excursion)
24606         (Template for save-excursion, Point and mark): `save-excursion'
24607         does not save&restore the mark any more.
24609 2015-08-24  Michael Albinus  <michael.albinus@gmx.de>
24611         * lisp/net/tramp-sh.el (tramp-stat-marker, tramp-stat-quoted-marker):
24612         New defconsts.
24613         (tramp-do-file-attributes-with-stat)
24614         (tramp-do-directory-files-and-attributes-with-stat): Use them.
24615         (tramp-convert-file-attributes): Remove double slashes in symlinks.
24616         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
24617         Handle symlinks with "//" in the file name.
24619         Revert fbb5531fa11d13854b274d28ccd329c9b6652cfc for tramp.el.
24621 2015-08-24  Nicolas Petton  <nicolas@petton.fr>
24623         Fix cl-subseq and cl-concatenate
24624         * lisp/emacs-lisp/cl-extra.el (cl-subseq, cl-concatenate): Do not use
24625         seq functions.
24626         * lisp/emacs-lisp/seq.el (seq-concatenate): Call cl-concatenate in
24627         seq-concatenate.
24629 2015-08-24  Pip Cet  <pipcet@gmail.com>  (tiny change)
24631         Fix full-screen code when there is no window manager (Bug#21317)
24632         * src/xterm.h (x_wm_supports): Declare external.
24633         * src/xterm.c (wm_suppports): Rename to `x_wm_supports', export.
24634         (do_ewmh_fullscreen, x_ewmh_activate_frame): Adjust for rename.
24635         (x_check_fullscreen): Call `x_wm_set_size_hint', restore
24636         `fullscreen' frame parameter.
24637         * src/gtkutil.c (x_wm_set_size_hint): Set size hints when running
24638         without a window manager.
24640 2015-08-24  Glenn Morris  <rgm@gnu.org>
24642         * lisp/version.el (emacs-version): No longer include build host.
24643         * doc/lispref/intro.texi (Version Info): Update example.
24645 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
24647         * doc/lispref/elisp.texi: Fix typo in previous change.
24649         More-conservative ‘format’ quote restyling
24650         Instead of restyling curved quotes for every call to ‘format’,
24651         create a new function ‘format-message’ that does the restyling,
24652         and using the new function instead of ‘format’ only in contexts
24653         where this seems appropriate.
24654         Problem reported by Dmitry Gutov and Andreas Schwab in:
24655         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00826.html
24656         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00827.html
24657         * doc/lispref/commands.texi (Using Interactive):
24658         * doc/lispref/control.texi (Signaling Errors, Signaling Errors):
24659         * doc/lispref/display.texi (Displaying Messages, Progress):
24660         * doc/lispref/elisp.texi:
24661         * doc/lispref/help.texi (Keys in Documentation):
24662         * doc/lispref/minibuf.texi (Minibuffer Misc):
24663         * doc/lispref/strings.texi (Formatting Strings):
24664         * etc/NEWS:
24665         Document the changes.
24666         * lisp/abbrev.el (expand-region-abbrevs):
24667         * lisp/apropos.el (apropos-library):
24668         * lisp/calc/calc-ext.el (calc-record-message)
24669         (calc-user-function-list):
24670         * lisp/calc/calc-help.el (calc-describe-key, calc-full-help):
24671         * lisp/calc/calc-lang.el (math-read-big-balance):
24672         * lisp/calc/calc-store.el (calc-edit-variable):
24673         * lisp/calc/calc-units.el (math-build-units-table-buffer):
24674         * lisp/calc/calc-yank.el (calc-edit-mode):
24675         * lisp/calendar/icalendar.el (icalendar-export-region)
24676         (icalendar--add-diary-entry):
24677         * lisp/cedet/mode-local.el (mode-local-print-binding)
24678         (mode-local-describe-bindings-2):
24679         * lisp/cedet/semantic/complete.el (semantic-completion-message):
24680         * lisp/cedet/semantic/edit.el (semantic-parse-changes-failed):
24681         * lisp/cedet/semantic/wisent/comp.el (wisent-log):
24682         * lisp/cedet/srecode/insert.el (srecode-insert-show-error-report):
24683         * lisp/descr-text.el (describe-text-properties-1, describe-char):
24684         * lisp/dframe.el (dframe-message):
24685         * lisp/dired-aux.el (dired-query):
24686         * lisp/emacs-lisp/byte-opt.el (byte-compile-log-lap-1):
24687         * lisp/emacs-lisp/bytecomp.el (byte-compile-log)
24688         (byte-compile-log-file, byte-compile-warn, byte-compile-form):
24689         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
24690         (cconv-analyze-form):
24691         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
24692         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
24693         * lisp/emacs-lisp/cl-macs.el (cl-symbol-macrolet):
24694         * lisp/emacs-lisp/edebug.el (edebug-format):
24695         * lisp/emacs-lisp/eieio-core.el (eieio-oref):
24696         * lisp/emacs-lisp/eldoc.el (eldoc-minibuffer-message)
24697         (eldoc-message):
24698         * lisp/emacs-lisp/elint.el (elint-file, elint-log):
24699         * lisp/emacs-lisp/find-func.el (find-function-library):
24700         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
24701         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
24702         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
24703         * lisp/emacs-lisp/package.el (package-compute-transaction)
24704         (package-install-button-action, package-delete-button-action)
24705         (package-menu--list-to-prompt):
24706         * lisp/emacs-lisp/timer.el (timer-event-handler):
24707         * lisp/emacs-lisp/warnings.el (lwarn, warn):
24708         * lisp/emulation/viper-cmd.el:
24709         (viper-toggle-parse-sexp-ignore-comments)
24710         (viper-kill-buffer, viper-brac-function):
24711         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
24712         * lisp/facemenu.el (facemenu-add-new-face):
24713         * lisp/faces.el (face-documentation, read-face-name)
24714         (face-read-string, read-face-font, describe-face):
24715         * lisp/files.el (find-alternate-file, hack-local-variables)
24716         (hack-one-local-variable--obsolete, write-file)
24717         (basic-save-buffer, delete-directory):
24718         * lisp/format.el (format-write-file, format-find-file)
24719         (format-insert-file):
24720         * lisp/help-fns.el (help-fns--key-bindings)
24721         (help-fns--compiler-macro, help-fns--obsolete)
24722         (help-fns--interactive-only, describe-function-1)
24723         (describe-variable):
24724         * lisp/help.el (describe-mode):
24725         * lisp/info-xref.el (info-xref-output):
24726         * lisp/info.el (Info-virtual-index-find-node)
24727         (Info-virtual-index, info-apropos):
24728         * lisp/international/kkc.el (kkc-error):
24729         * lisp/international/mule-cmds.el:
24730         (select-safe-coding-system-interactively)
24731         (select-safe-coding-system, describe-input-method):
24732         * lisp/international/mule-conf.el (code-offset):
24733         * lisp/international/mule-diag.el (describe-character-set)
24734         (list-input-methods-1):
24735         * lisp/international/quail.el (quail-error):
24736         * lisp/minibuffer.el (minibuffer-message):
24737         * lisp/mpc.el (mpc--debug):
24738         * lisp/msb.el (msb--choose-menu):
24739         * lisp/net/ange-ftp.el (ange-ftp-message):
24740         * lisp/net/gnutls.el (gnutls-message-maybe):
24741         * lisp/net/newst-backend.el (newsticker--sentinel-work):
24742         * lisp/net/newst-treeview.el (newsticker--treeview-load):
24743         * lisp/net/nsm.el (nsm-query-user):
24744         * lisp/net/rlogin.el (rlogin):
24745         * lisp/net/soap-client.el (soap-warning):
24746         * lisp/net/tramp.el (tramp-debug-message):
24747         * lisp/nxml/nxml-outln.el (nxml-report-outline-error):
24748         * lisp/nxml/nxml-parse.el (nxml-parse-error):
24749         * lisp/nxml/rng-cmpct.el (rng-c-error):
24750         * lisp/nxml/rng-match.el (rng-compile-error):
24751         * lisp/nxml/rng-uri.el (rng-uri-error):
24752         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
24753         * lisp/org/org-ctags.el:
24754         (org-ctags-ask-rebuild-tags-file-then-find-tag):
24755         * lisp/proced.el (proced-log):
24756         * lisp/progmodes/ebnf2ps.el (ebnf-log):
24757         * lisp/progmodes/flymake.el (flymake-log):
24758         * lisp/progmodes/vhdl-mode.el (vhdl-warning-when-idle):
24759         * lisp/replace.el (occur-1):
24760         * lisp/simple.el (execute-extended-command)
24761         (undo-outer-limit-truncate, define-alternatives):
24762         * lisp/startup.el (command-line):
24763         * lisp/subr.el (error, user-error, add-to-list):
24764         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
24765         (tutorial--find-changed-keys):
24766         * src/callint.c (Fcall_interactively):
24767         * src/editfns.c (Fmessage, Fmessage_box):
24768         Restyle the quotes of format strings intended for use as a
24769         diagnostic, when restyling seems appropriate.
24770         * lisp/subr.el (format-message): New function.
24771         * src/doc.c (Finternal__text_restyle): New function.
24772         (syms_of_doc): Define it.
24774 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
24776         * etc/NEWS: The new ‘q’ flag is not an incompatible change.
24778 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
24780         python.el: Fix python-shell-buffer-substring on indented code
24781         (Bug#21086)
24782         * lisp/progmodes/python.el (python-shell-buffer-substring):
24783         Respect current line indentation when calculating string.
24784         * test/automated/python-tests.el
24785         (python-shell-buffer-substring-10)
24786         (python-shell-buffer-substring-11)
24787         (python-shell-buffer-substring-12): New tests.
24789 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
24791         Fix minor glitches from ‘format’ reversion
24792         * doc/lispref/strings.texi (Formatting Strings):
24793         After reversion, ‘text-quoting-style’ is documented in ‘Keys in
24794         Documentation’, not below.
24795         * src/syntax.c (Finternal_describe_syntax_value):
24796         Prefer AUTO_STRING to build_string where either will do, as
24797         AUTO_STRING is a bit faster.
24799 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
24801         python.el: Defer shell setup code until first interactive prompt
24802         * lisp/progmodes/python.el
24803         (python-shell-comint-watch-for-first-prompt-output-filter):
24804         New function.
24805         (inferior-python-mode): Use it.
24806         (python-shell-first-prompt-hook): New hook.
24807         (python-shell-send-setup-code)
24808         (python-shell-completion-native-turn-on-maybe-with-msg): Attach to
24809         this hook instead of inferior-python-hook.
24811 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
24813         Remove the calls to `seq-into` from `seq-concatenate`
24814         Since most new types of seq would have to be defined as sequences (cons
24815         cells or CL structs, mostly), there is no need to convert the seqs to
24816         sequences (which can be a fairly expensive operation).
24817         * lisp/emacs-lisp/seq.el (seq-concatenate): Do not ensure that seqs are
24818         sequences.
24820 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
24822         python.el: Fix completion for pdb interactions
24823         * lisp/progmodes/python.el (python-shell-completion-setup-code):
24824         Simplify.  Toggle print_mode for native wrapped completer.
24825         (python-shell-completion-native-setup): Ensure process buffer.
24826         Add print_mode attribute to completer wrapper to toggle returning
24827         or printing candidates.
24828         (python-shell-completion-native-get-completions): Cleanup.
24829         (python-shell-completion-get-completions): Cleanup.
24830         (python-shell-completion-at-point): Perform prompt checks.
24831         Force fallback completion in pdb interactions.
24833 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
24835         Make seq.el more extensible by using cl-defmethod
24836         * lisp/emacs-lisp/seq.el: Define seq.el functions using cl-defmethod to
24837         make it easier to extend seq.el with new "seq types".
24838         * test/automated/seq-tests.el (test-setf-seq-elt): New test.
24839         * lisp/emacs-lisp/cl-extra.el (cl-subseq): Move back the definition of
24840         subseq in cl-extra.el, and use it in seq.el.
24842 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
24844         python.el: Fix prompt detection with user overridden interpreter
24845         * lisp/progmodes/python.el (python-shell-prompt-detect):
24846         Honor buffer local python-shell-interpreter and
24847         python-shell-interpreter-interactive-arg.
24849 2015-08-23  Eli Zaretskii  <eliz@gnu.org>
24851         Support exec-directory with non-ASCII characters on Windows
24852         * src/w32proc.c (sys_spawnve): Make sure exec-directory is encoded
24853         in the system's ANSI codepage, when it is used for invoking
24854         cmdproxy.
24856 2015-08-23  Andreas Schwab  <schwab@linux-m68k.org>
24858         Revert "Extend ‘format’ to translate curved quotes"
24859         This reverts commit 244c801689d2f7a80480d83cd7d092d4762ebe08.
24861         Revert "Prefer ‘format’ to ‘substitute-command-keys’"
24862         This reverts commit 6af5aad26411ffe21c3fe4bc5438347110910111.
24864 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
24866         * doc/lispintro/emacs-lisp-intro.texi (Switching Buffers):
24867         Clarify "invisible window".
24869 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
24871         * doc/emacs/modes.texi (Choosing Modes): Minor doc fix for
24872         magic-fallback-mode-alist.
24874 2015-08-22  Fabián Ezequiel Gallina  <fgallina@gnu.org>
24876         python.el: fallback completion, ffap and eldoc setup enhancements
24877         Setup codes are now sent continuously so that the current frame is
24878         always taken into account.  This allows working within debuggers
24879         and always keeping a fresh version of setup codes that will return
24880         proper results.
24881         * lisp/progmodes/python.el (python-shell-setup-codes): Cleanup.
24882         (python-shell-send-setup-code): Send code only when
24883         python-shell-setup-codes is non-nil.
24884         (python-shell-completion-string-code): Cleanup trailing newline.
24885         (python-shell-completion-get-completions): Always use
24886         python-shell-completion-setup-code.
24887         (python-ffap-setup-code): Work with any object, not only modules.
24888         (python-ffap-string-code): Cleanup trailing newline.
24889         (python-ffap-module-path): Always use python-ffap-setup-code.
24890         (python-eldoc-string-code): Cleanup trailing newline.
24891         (python-eldoc--get-doc-at-point): Always use
24892         python-eldoc-setup-code.  Return non-nil only if docstring is
24893         found.
24895         python.el: Increase native completion robustness
24896         * lisp/progmodes/python.el (python-shell-completion-native-setup):
24897         Make completer print real candidates and just return dummy ones to
24898         avoid input modification.
24899         (python-shell-completion-native-get-completions): Set
24900         comint-redirect-insert-matching-regexp to non-nil and make
24901         comint-redirect-finished-regexp match the last dummy candidate.
24902         Use python-shell-accept-process-output to wait for the full list
24903         of candidates.
24905 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
24907         Fix invocation of programs via cmdproxy.exe
24908         * src/w32proc.c (sys_spawnve): Use exec-directory, not
24909         invocation-directory, for finding cmdproxy.exe.  When Emacs is
24910         run from the source tree, look for cmdproxy.exe in the same source
24911         tree.  (Bug#21323)
24913 2015-08-22  Simen Heggestøyl  <simenheg@gmail.com>
24915         Handle comments inside unquoted URIs in css-mode
24916         * lisp/textmodes/css-mode.el (css--uri-re): New defconst.
24917         (css-syntax-propertize-function): New defconst.
24918         (css--font-lock-keywords): Handle parens around unquoted URIs.
24919         (css-mode): Set `syntax-propertize-function'.
24921 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
24923         Support invocation of Hunspell with multiple dictionaries
24924         * lisp/textmodes/ispell.el (ispell-parse-hunspell-affix-file):
24925         Support lists of dictionaries of the form "DICT1,DICT2,...".
24926         (ispell-hunspell-add-multi-dic): New command.  (Bug#20495)
24928         Minor formatting changes in ispell.el
24929         * lisp/textmodes/ispell.el (ispell-create-debug-buffer)
24930         (ispell-print-if-debug, ispell-aspell-find-dictionary)
24931         (ispell-aspell-add-aliases, ispell-hunspell-dict-paths-alist)
24932         (ispell-hunspell-dictionary-alist)
24933         (ispell-hunspell-fill-dictionary-entry)
24934         (ispell-find-hunspell-dictionaries, ispell-send-replacement)
24935         (ispell-buffer-with-debug, ispell-complete-word)
24936         (ispell-current-dictionary, ispell-current-personal-dictionary)
24937         (ispell-accept-output, ispell-minor-mode)
24938         (ispell-personal-dictionary, ispell-dictionary-alist)
24939         (ispell-really-aspell, ispell-really-hunspell)
24940         (ispell-encoding8-command, ispell-aspell-supports-utf8)
24941         (ispell-aspell-dictionary-alist, ispell-set-spellchecker-params):
24942         Fix whitespace, inconsistent capitalization, and arguments in doc
24943         strings.
24945 2015-08-22  Martin Rudalics  <rudalics@gmx.at>
24947         * lisp/window.el (adjust-window-trailing-edge): Fix bug where this
24948         function refused to resize a size-preserved window.
24950 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
24952         * doc/lispref/windows.texi (Selecting Windows): Improve
24953         documentation and indexing of 'window-use-time'.
24955 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
24957         * lisp/progmodes/cc-vars.el, lisp/progmodes/cc-styles.el:
24958         * lisp/progmodes/cc-mode.el, lisp/progmodes/cc-menus.el:
24959         * lisp/progmodes/cc-langs.el, lisp/progmodes/cc-guess.el:
24960         * lisp/progmodes/cc-fonts.el, lisp/progmodes/cc-engine.el:
24961         * lisp/progmodes/cc-defs.el, lisp/progmodes/cc-cmds.el:
24962         * lisp/progmodes/cc-bytecomp.el, lisp/progmodes/cc-awk.el:
24963         * lisp/progmodes/cc-align.el, lisp/net/soap-client.el:
24964         Fix up commenting style.
24966 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
24968         text-quoting-style in emacs-lisp diagnostics
24969         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
24970         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
24971         (ad-disable-advice, ad-remove-advice, ad-set-argument)
24972         (ad-set-arguments):
24973         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
24974         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
24975         (byte-optimize-while, byte-optimize-apply):
24976         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
24977         (byte-compile-log-file, byte-compile-format-warn)
24978         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
24979         (byte-compile-cl-warn)
24980         (byte-compile-warn-about-unresolved-functions)
24981         (byte-compile-file, byte-compile-fix-header)
24982         (byte-compile--declare-var, byte-compile-file-form-defmumble)
24983         (byte-compile-form, byte-compile-normal-call)
24984         (byte-compile-variable-ref, byte-compile-variable-set)
24985         (byte-compile-subr-wrong-args, byte-compile-setq-default)
24986         (byte-compile-negation-optimizer)
24987         (byte-compile-condition-case--old)
24988         (byte-compile-condition-case--new, byte-compile-save-excursion)
24989         (byte-compile-defvar, byte-compile-autoload)
24990         (byte-compile-lambda-form)
24991         (byte-compile-make-variable-buffer-local, display-call-tree)
24992         (batch-byte-compile):
24993         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
24994         (cconv-analyze-form):
24995         * lisp/emacs-lisp/chart.el (chart-space-usage):
24996         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
24997         (check-declare-warn, check-declare-file)
24998         (check-declare-directory):
24999         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
25000         (checkdoc-message-text-engine):
25001         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer):
25002         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
25003         (cl-symbol-macrolet):
25004         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
25005         * lisp/emacs-lisp/copyright.el (copyright)
25006         (copyright-update-directory):
25007         * lisp/emacs-lisp/edebug.el (edebug-read-list):
25008         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
25009         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
25010         (eieio-oref, eieio-oset-default):
25011         * lisp/emacs-lisp/eieio-speedbar.el:
25012         (eieio-speedbar-child-make-tag-lines)
25013         (eieio-speedbar-child-description):
25014         * lisp/emacs-lisp/eieio.el (defclass, change-class):
25015         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
25016         (elint-init-form, elint-check-defalias-form)
25017         (elint-check-let-form):
25018         * lisp/emacs-lisp/ert.el (ert-get-test):
25019         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
25020         (find-function-library):
25021         * lisp/emacs-lisp/generator.el (iter-yield):
25022         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
25023         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
25024         * lisp/emacs-lisp/package-x.el (package-upload-file):
25025         * lisp/emacs-lisp/package.el (package-version-join)
25026         (package-disabled-p, package-activate-1, package-activate)
25027         (package--download-one-archive)
25028         (package--download-and-read-archives)
25029         (package-compute-transaction, package-install-from-archive)
25030         (package-install, package-install-selected-packages)
25031         (package-delete, package-autoremove)
25032         (package-install-button-action, package-delete-button-action)
25033         (package-menu-hide-package, package-menu--list-to-prompt)
25034         (package-menu--perform-transaction)
25035         (package-menu--find-and-notify-upgrades):
25036         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
25037         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
25038         * lisp/emacs-lisp/ring.el (ring-next, ring-previous):
25039         * lisp/emacs-lisp/rx.el (rx-check, rx-anything):
25040         * lisp/emacs-lisp/smie.el (smie-config-save):
25041         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
25042         * lisp/emacs-lisp/testcover.el (testcover-1value):
25043         Use curved quotes in diagnostic format strings.
25045 2015-08-21  Fabián Ezequiel Gallina  <fgallina@gnu.org>
25047         python.el: Ensure remote process-environment on non-interactive processes
25048         * lisp/progmodes/python.el
25049         (python-shell-tramp-refresh-process-environment): New function.
25050         (python-shell-with-environment): Use it.
25051         * test/automated/python-tests.el (python-shell-with-environment-2):
25052         Update.
25054         python.el: Enhancements to process environment setup.
25055         * lisp/progmodes/python.el (python-shell-process-environment)
25056         (python-shell-extra-pythonpaths, python-shell-exec-path)
25057         (python-shell-virtualenv-root): Update docstring.  Remove :safe.
25058         (python-shell-setup-codes): Remove :safe.
25059         (python-shell-remote-exec-path): New defcustom.
25060         (python-shell--add-to-path-with-priority): New macro.
25061         (python-shell-calculate-pythonpath): Give priority to
25062         python-shell-extra-pythonpaths.  Update docstring.
25063         (python-shell-calculate-process-environment): Give priority to
25064         python-shell-process-environment.  Update docstring.
25065         (python-shell-calculate-exec-path): Give priority to
25066         python-shell-exec-path and calculated virtualenv bin directory.
25067         Update docstring.
25068         (python-shell-tramp-refresh-remote-path): New function.
25069         (python-shell-with-environment): Use it when working remotely and
25070         do not modify tramp-remote-path.  Allow nesting.
25071         (python-shell-calculate-command): Remove useless
25072         python-shell-with-environment call.
25073         * test/automated/python-tests.el (python-shell-calculate-pythonpath-1)
25074         (python-shell-calculate-pythonpath-2)
25075         (python-shell-calculate-process-environment-6)
25076         (python-shell-calculate-process-environment-7)
25077         (python-shell-calculate-process-environment-8)
25078         (python-shell-calculate-exec-path-3)
25079         (python-shell-calculate-exec-path-4)
25080         (python-shell-calculate-exec-path-5)
25081         (python-shell-calculate-exec-path-6)
25082         (python-shell-with-environment-3): New tests.
25083         (python-shell-calculate-process-environment-2)
25084         (python-shell-calculate-process-environment-3)
25085         (python-shell-calculate-process-environment-4)
25086         (python-shell-calculate-process-environment-5)
25087         (python-shell-calculate-exec-path-1)
25088         (python-shell-calculate-exec-path-2)
25089         (python-shell-with-environment-1)
25090         (python-shell-with-environment-2): Update and simplify.
25092 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
25094         Avoid hard-coding "M-x command" in docstrings
25095         * lisp/calendar/todo-mode.el (todo-mode):
25096         * lisp/desktop.el (desktop-save-mode):
25097         * lisp/edmacro.el (edit-kbd-macro):
25098         * lisp/emacs-lisp/package.el (package-menu-execute):
25099         * lisp/emulation/viper-cmd.el (viper-ask-level):
25100         * lisp/emulation/viper-init.el (viper-expert-level):
25101         * lisp/filesets.el (filesets-add-buffer):
25102         * lisp/follow.el (follow-mode):
25103         * lisp/gnus/auth-source.el (auth-sources):
25104         * lisp/international/ogonek.el (ogonek-informacja)
25105         (ogonek-information):
25106         * lisp/net/tramp.el (tramp-process-actions):
25107         * lisp/org/org-gnus.el (org-gnus-no-new-news):
25108         * lisp/org/org.el (org-ellipsis):
25109         * lisp/progmodes/python.el (python-shell-get-process-or-error):
25110         * lisp/progmodes/vhdl-mode.el (vhdl-mode):
25111         * lisp/server.el (server-start):
25112         * lisp/type-break.el (type-break-noninteractive-query):
25113         * lisp/userlock.el (ask-user-about-supersession-help):
25114         * lisp/whitespace.el (whitespace-report-region):
25115         Prefer (substitute-command-keys "`\\[foo-command]'")
25116         to "`M-x foo-command'" in docstrings and the like.
25118 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
25120         Use add-function for prettify-symbols-compose-predicate
25121         * lisp/textmodes/tex-mode.el (tex-common-initialization): Set
25122         prettify-symbols-compose-predicate in terms of add-function.
25123         * etc/NEWS: Mention prettify-symbols-compose-predicate and
25124         prettify-symbols-mode support in tex-mode.
25126 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
25128         * lisp/emacs-lisp/smie.el (smie-indent-current-column): New fun.
25129         (smie-indent-exps, smie-indent-keyword): Use it.
25130         * test/indent/css-mode.css: Test alignment with leading comment.
25132 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
25134         Respect text-quoting-style in (*Finder*) menus
25135         * lisp/info.el (info--prettify-description):
25136         Treat description as a docstring, so that it's requoted as
25137         per text-quoting-style.
25139 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
25141         Document `window-use-time' in Elisp manual
25142         * doc/lispref/windows.texi (Selecting Windows): Document
25143         `window-use-time'.
25145 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
25147         * src/w32uniscribe.c (_WIN32_WINNT): Define to 0x0600.
25148         This is a cleaner fix for Bug#21260 than the previous change.
25150 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
25152         Respect text-quoting-style in calc
25153         In calc, tespect text-quoting-style preference in diagnostic
25154         formats and fix a few similar problems in docstrings.
25155         * lisp/calc/calc-aent.el (math-read-factor):
25156         * lisp/calc/calc-embed.el (calc-do-embedded):
25157         * lisp/calc/calc-ext.el (calc-user-function-list)
25158         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
25159         * lisp/calc/calc-help.el (calc-describe-key)
25160         (calc-describe-thing):
25161         * lisp/calc/calc-lang.el (calc-c-language)
25162         (math-parse-fortran-vector-end, math-parse-tex-sum)
25163         (math-parse-eqn-matrix, math-parse-eqn-prime)
25164         (calc-yacas-language, calc-maxima-language, calc-giac-language)
25165         (math-read-big-rec, math-read-big-balance):
25166         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
25167         (calc-auto-recompute):
25168         * lisp/calc/calc-prog.el (calc-user-define-invocation)
25169         (math-do-arg-check):
25170         * lisp/calc/calc-store.el (calc-edit-variable):
25171         * lisp/calc/calc-units.el (math-build-units-table-buffer):
25172         * lisp/calc/calc-vec.el (math-read-brackets):
25173         * lisp/calc/calc-yank.el (calc-edit-mode):
25174         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
25175         Use curved quotes in diagnostic format strings.
25176         * lisp/calc/calc-help.el (calc-describe-thing):
25177         Format docstrings with substitute-command-keys.
25178         * lisp/calc/calc-help.el (calc-j-prefix-help):
25179         * lisp/calc/calc-misc.el (calc-help):
25180         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
25181         Escape a docstring "`".
25183 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
25185         Fix documentation of 'menu-set-font' and 'set-frame-font'
25186         * lisp/menu-bar.el (menu-set-font): Doc fix.  (Bug#21303)
25187         * doc/lispref/frames.texi (Frame Font): Document that
25188         set-frame-font with the last argument 't' will also make the font
25189         the default for the future GUI frames.
25191         Document '--create-frame' option to emacsclient
25192         * doc/emacs/misc.texi (emacsclient Options): Document the
25193         '--create-frame' option.  (Bug#21308)
25195 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
25197         * lisp/progmodes/js.el (js-mode): Don't eagerly syntax propertize.
25199 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
25201         Document 'get-mru-window' in the ELisp manual
25202         * doc/lispref/windows.texi (Cyclic Window Ordering): Document
25203         'get-mru-window'.  (Bug#21306)
25205         Clarify documentation of 'get-buffer-window-list'
25206         * doc/lispref/windows.texi (Buffers and Windows): Mention that the
25207         current window, if relevant, will be the first in the list
25208         returned by 'get-buffer-window-list'.
25209         * lisp/window.el (get-buffer-window-list): Doc fix.  (Bug#21305)
25211 2015-08-21  Vasilij Schneidermann  <v.schneidermann@gmail.com>
25213         In `ielm' use `pop-to-buffer-same-window' (Bug#20848)
25214         * lisp/ielm.el (ielm): Use `pop-to-buffer-same-window' instead of
25215         `switch-to-buffer'.
25217 2015-08-21  Kaushal Modi  <kaushal.modi@gmail.com>  (tiny change)
25219         In woman.el use `display-buffer' instead of `switch-to-buffer' (Bug#21047)
25220         * lisp/woman.el (woman-really-find-file, WoMan-find-buffer): Use
25221         `display-buffer' instead of `switch-to-buffer'.
25223 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
25225         Follow user preference in calendar diagnostics
25226         Respect text-quoting-style preference in diagnostic formats by
25227         using curved quotes (which are translated as per text-quoting-style)
25228         instead of grave accent and apostrophe (which are not).
25229         * lisp/calendar/appt.el (appt-display-message):
25230         * lisp/calendar/diary-lib.el (diary-check-diary-file)
25231         (diary-mail-entries, diary-from-outlook):
25232         * lisp/calendar/icalendar.el (icalendar-export-region)
25233         (icalendar--convert-float-to-ical)
25234         (icalendar--convert-date-to-ical)
25235         (icalendar--convert-ical-to-diary)
25236         (icalendar--convert-recurring-to-diary)
25237         (icalendar--add-diary-entry):
25238         * lisp/calendar/time-date.el (format-seconds):
25239         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
25240         (timeclock-make-hours-explicit):
25241         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
25242         (todo-item-mark, todo-check-format)
25243         (todo-insert-item--next-param, todo-edit-item--next-key)
25244         (todo-mode):
25245         Use curved quotes in diagnostic format strings.
25246         * lisp/calendar/icalendar.el (icalendar-import-format-sample):
25247         * test/automated/icalendar-tests.el (icalendar--import-format-sample):
25248         Just use straight quoting for simple test case.
25250 2015-08-21  Michael Albinus  <michael.albinus@gmx.de>
25252         * src/gfilenotify.c (Fgfile_add_watch):
25253         Handle errors from g_file_monitor.
25255 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
25257         In frames.texi use "minibuffer-less frame" instead of "non-minibuffer frame"
25258         * doc/lispref/frames.texi (Frame Layout): Use "minibuffer-less
25259         frame" instead of "non-minibuffer frame".
25261         Fix frame geometry related text
25262         * doc/lispref/frames.texi (Frame Layout):
25263         Rename `x-frame-geometry' to `frame-geometry'.
25264         * doc/lispref/frames.texi (Mouse Position):
25265         * doc/lispref/windows.texi (Coordinates and Windows):
25266         Use `set-mouse-absolute-pixel-position' instead of
25267         `x-set-mouse-absolute-pixel-position'.
25269         Sanitize frame geometry related functions
25270         * src/nsfns.m (Fx_frame_geometry): Rename to Fns_frame_geometry.
25271         (Fx_frame_edges): Rename to Fns_frame_edges.
25272         * src/w32fns.c (Fx_frame_geometry): Rename to Fw32_frame_geometry.
25273         (Fx_frame_edges): Rename to Fw32_frame_edges.
25274         (Fx_mouse_absolute_pixel_position): Rename to
25275         Fw32_mouse_absolute_pixel_position.
25276         (Fx_set_mouse_absolute_pixel_position): Rename to
25277         Fw32_set_mouse_absolute_pixel_position.
25278         * lisp/frame.el (x-frame-geometry, w32-frame-geometry)
25279         (ns-frame-geometry, x-frame-edges, w32-frame-edges)
25280         (ns-frame-edges, w32-mouse-absolute-pixel-position)
25281         (x-mouse-absolute-pixel-position)
25282         (w32-set-mouse-absolute-pixel-position)
25283         (x-set-mouse-absolute-pixel-position): Declare.
25284         (frame-geometry, mouse-absolute-pixel-position)
25285         (set-mouse-absolute-pixel-position): New functions.
25286         (frame-edges): Rewrite in terms of x-/w32-/ns-frame-edges.
25288 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
25290         Fix MinGW64 build broken by latest w32uniscribe.c changes
25291         * src/w32uniscribe.c (UNISCRIBE_OPENTYPE): Define to 0x0100, for
25292         MinGW64.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
25293         (Bug#21260)
25295 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
25297         Add TeX defaults for prettify-symbol-mode
25298         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
25299         Rename from tex-prettify-symbols-alist.
25300         (tex--prettify-symbols-compose-p): New function.
25301         (tex-common-initialization): Use them as prettify-symbols-alist
25302         and prettify-symbols-compose-predicate.
25304         Generalize prettify-symbols to arbitrary modes
25305         * lisp/progmodes/prog-mode.el
25306         (prettify-symbols-default-compose-p): New function.
25307         (prettify-symbols-compose-predicate): New variable.
25308         (prettify-symbols--compose-symbol): Use it.
25310 2015-08-20  Paul Eggert  <eggert@cs.ucla.edu>
25312         Don't quote symbols 'like-this' in docstrings etc.
25313         * admin/unidata/uvs.el (uvs-insert-fields-as-bytes):
25314         * lisp/allout-widgets.el (allout-widgets-count-buttons-in-region):
25315         * lisp/allout.el (allout-add-resumptions, allout-mode):
25316         * lisp/calculator.el (calculator-operators):
25317         * lisp/cedet/data-debug.el (dd-propertize):
25318         * lisp/cedet/ede/proj-prog.el (ede-proj-target-makefile-program):
25319         * lisp/cedet/semantic/analyze/debug.el:
25320         (semantic-analyzer-debug-global-miss-text):
25321         * lisp/cedet/semantic/lex-spp.el:
25322         (semantic-lex-spp-replace-or-symbol-or-keyword):
25323         * lisp/cedet/semantic/symref.el:
25324         (semantic-symref-cleanup-recent-buffers-fcn):
25325         * lisp/cedet/semantic/tag.el (semantic-tag-class):
25326         * lisp/cedet/srecode/el.el (srecode-semantic-handle-:el-custom):
25327         * lisp/gnus/nnmairix.el (nnmairix-propagate-marks-upon-close):
25328         * lisp/gnus/pop3.el (pop3-authentication-scheme):
25329         * lisp/help-fns.el (describe-function-orig-buffer):
25330         * lisp/imenu.el (imenu--history-list):
25331         * lisp/mail/feedmail.el (feedmail-confirm-outgoing)
25332         (feedmail-display-full-frame, feedmail-deduce-bcc-where)
25333         (feedmail-queue-default-file-slug)
25334         (feedmail-queue-buffer-file-name):
25335         * lisp/net/mairix.el (mairix-searches-mode-map):
25336         * lisp/net/newst-backend.el (newsticker-retrieval-method)
25337         (newsticker-auto-mark-filter-list):
25338         * lisp/obsolete/vi.el (vi-mode):
25339         * lisp/progmodes/cc-engine.el (c-literal-type):
25340         * lisp/progmodes/cpp.el (cpp-face):
25341         * lisp/progmodes/ebrowse.el (ebrowse-electric-list-looper):
25342         * lisp/progmodes/elisp-mode.el (elisp--xref-make-xref):
25343         * lisp/progmodes/pascal.el (pascal-auto-lineup):
25344         * lisp/progmodes/prog-mode.el (prog-widen):
25345         * lisp/progmodes/verilog-mode.el (verilog-regexp-words)
25346         (verilog-auto-lineup, verilog-auto-reset-widths)
25347         (verilog-auto-arg-format, verilog-auto-inst-template-numbers):
25348         * lisp/textmodes/flyspell.el (flyspell-maybe-correct-transposition)
25349         (flyspell-maybe-correct-doubling):
25350         * lisp/textmodes/table.el (table-justify, table-justify-cell)
25351         (table-justify-row, table-justify-column, table-insert-sequence)
25352         (table--justify-cell-contents):
25353         * lisp/url/url-auth.el (url-get-authentication):
25354         * lisp/window.el (display-buffer-record-window):
25355         * lisp/xml.el (xml-parse-file, xml-parse-region):
25356         * src/gfilenotify.c (Fgfile_add_watch):
25357         Don't quote symbols with apostrophes in doc strings.
25358         Use asymmetric quotes instead.
25359         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
25360         Likewise for symbol in diagnostic.
25361         * lisp/image.el (image-extension-data):
25362         * lisp/register.el (frame-configuration-to-register):
25363         * src/buffer.c (syms_of_buffer):
25364         Remove bogus apostrophes after symbols.
25365         * lisp/thumbs.el (thumbs-conversion-program):
25366         Quote Lisp string values using double-quotes, not apostrophes.
25368 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
25370         Describe frame geometry and related functions in Elisp manual
25371         * doc/lispref/display.texi (Size of Displayed Text, Line Height)
25372         (Showing Images): Update references.
25373         * doc/lispref/elisp.texi (Top): Update node listing.
25374         * doc/lispref/frames.texi (Frame Geometry): New node.
25375         Move `Size and Position' section here.
25376         (Size Parameters): Update references.
25377         (Mouse Position): Update references and nomenclature.
25378         Describe new functions `x-mouse-absolute-pixel-position' and
25379         `x-set-mouse-absolute-pixel-position'.
25380         * doc/lispref/windows.texi (Window Sizes): Update references.
25381         (Resizing Windows): Update references.  Move description of
25382         `fit-frame-to-buffer' here.
25383         (Coordinates and Windows): Update nomenclature and references.
25384         Describe new arguments of `window-edges'.  Comment out
25385         descriptions of `window-left-column', `window-top-line',
25386         `window-pixel-left' and `window-pixel-top'.  Describe
25387         `window-absolute-pixel-position'.
25389 2015-08-20  Alan Mackenzie  <acm@muc.de>
25391         Handling of `c-parse-state'.  Fix low level bug.
25392         * lisp/progmodes/cc-engine.el (c-remove-stale-state-cache-backwards):
25393         Add "CASE 3.5" to handle `cache-pos' being only slightly before `here'.
25395 2015-08-20  Andreas Politz  <politza@hochschule-trier.de>
25397         * lisp/wid-edit.el (widget-color--choose-action): Quit *Color*
25398         window instead of deleting it.
25400 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
25402         In w32fns.c's Fx_frame_geometry rewrite check whether frame has a titlebar
25403         * src/w32fns.c (Fx_frame_geometry): Use title_bar.rgstate[0] to
25404         determine whether frame has a titlebar.
25405         Suggested by Eli Zaretskii <eliz@gnu.org>
25407 2015-08-20  Tassilo Horn  <tsdh@gnu.org>
25409         Add a prettify-symbols-alist for (La)TeX
25410         * lisp/textmodes/tex-mode.el (tex-prettify-symbols-alist):
25411         New variable holding an alist suitable as prettify-symbols-alist in
25412         (La)TeX modes.
25414 2015-08-19  Alan Mackenzie  <acm@muc.de>
25416         Make electric-pair-mode, delete-selection-mode and CC Mode cooperate.
25417         Fixes debbugs#21275.
25418         In Emacs >= 25, let electric-pair-mode take precedence over
25419         delete-selection-mode.
25420         * lisp/delsel.el (delete-selection-uses-region-p): New function,
25421         previously a lambda expression in a property value for
25422         `self-insert-command'.
25423         (top-level): Set the `delete-selection' property of
25424         `self-insert-command' to `delete-selection-uses-region-p'.
25425         * lisp/progmodes/cc-cmds.el (top-level): Give the `delete-selection'
25426         property for c-electric-\(brace\|paren\) the value
25427         `delete-selection-uses-region-p' when the latter function exists.
25429 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
25431         Fix key binding quoting in tutorial *Help*
25432         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
25433         When generating help for custom key bindings, use the user-preferred
25434         quoting style rather than hardcoding the grave style.
25436 2015-08-19  Eli Zaretskii  <eliz@gnu.org>
25438         Improve and future-proof OTF fonts support in w32uniscribe.c
25439         * src/w32uniscribe.c (uniscribe_otf_capability): Add commentary
25440         about the expected results and why the new Uniscribe APIs are not
25441         used in this function.
25442         (ScriptGetFontScriptTags_Proc, ScriptGetFontLanguageTags_Proc)
25443         (ScriptGetFontFeatureTags_Proc): New function typedefs.
25444         (uniscribe_new_apis): New static variable.
25445         (uniscribe_check_features): New function, implements OTF features
25446         verification while correctly accounting for features in the list
25447         after the nil member, if any.
25448         (uniscribe_check_otf_1): New function, retrieves the features
25449         supported by the font for the requested script and language using
25450         the Uniscribe APIs available from Windows Vista onwards.
25451         (uniscribe_check_otf): If the new Uniscribe APIs are available,
25452         use them in preference to reading the font data directly.  Call
25453         uniscribe_check_features to verify that the requested features are
25454         supported, replacing the original incomplete code.
25455         (syms_of_w32uniscribe): Initialize function pointers for the new
25456         Uniscribe APIs.  (Bug#21260)
25457         (otf_features): Scan the script, langsys, and feature arrays back
25458         to front, so that the result we return has them in alphabetical
25459         order, like ftfont.c does.
25460         * src/w32fns.c (syms_of_w32fns) <w32-disable-new-uniscribe-apis>:
25461         New variable for debugging w32uniscribe.c code.
25463 2015-08-19  Artur Malabarba  <bruce.connor.am@gmail.com>
25465         * lisp/isearch.el (isearch-search-fun-default): Revert a5bdb87
25466         Remove usage of `isearch-lax-whitespace' inside the `iearch-word'
25467         clause of `isearch-search-fun-default'.  That lax variable does not
25468         refer to lax-whitespacing.  Related to (bug#21777).
25469         This reverts commit a5bdb872edb9f031fe041faf9a8c0be432e5f64c.
25470         * lisp/character-fold.el (character-fold-search): Set to nil.
25471         Default to nil for now, until someone implements proper
25472         lax-whitespacing with char-fold searching.
25474 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
25476         Fix doc-string of `help-mode-finish'.
25477         * lisp/help-mode.el (help-mode-finish): Fix doc-string.
25479         In nsimage.m include coding.h (Bug#21292)
25480         * src/nsimage.m (top-level): Include coding.h (Bug#21292).
25482         Move window edge functions to Elisp.
25483         * src/window.c (Fwindow_edges, Fwindow_pixel_edges)
25484         (Fwindow_absolute_pixel_edges, Fwindow_inside_edges)
25485         (Fwindow_inside_pixel_edges, Fwindow_inside_absolute_pixel_edges):
25486         Move to window.el.
25487         (calc_absolute_offset): Remove.
25488         * lisp/frame.el (frame-edges): New function.
25489         * lisp/window.el (window-edges, window-pixel-edges)
25490         (window-absolute-pixel-edges): Move here from window.c.
25491         (window-body-edges, window-body-pixel-edges)
25492         (window-absolute-body-pixel-edges): Move here from window.c and
25493         rename "inside" to "body".  Keep old names as aliases.
25494         (window-absolute-pixel-position): New function.
25496 2015-08-19  Katsumi Yamaoka  <yamaoka@jpl.org>
25498         [Gnus]: Use overlay functions directly
25499         * lisp/gnus/gnus-art.el (gnus-mime-inline-part, gnus-mm-display-part)
25500         (gnus-insert-mime-button, gnus-mime-buttonize-attachments-in-header)
25501         (gnus-article-highlight-signature, gnus-article-extend-url-button)
25502         (gnus-article-add-button, gnus-insert-prev-page-button)
25503         (gnus-insert-next-page-button, gnus-insert-mime-security-button):
25504         * lisp/gnus/gnus-cite.el (gnus-cite-delete-overlays)
25505         (gnus-cite-add-face):
25506         * lisp/gnus/gnus-html.el (gnus-html-wash-tags):
25507         * lisp/gnus/gnus-salt.el (gnus-tree-read-summary-keys)
25508         (gnus-tree-recenter, gnus-highlight-selected-tree):
25509         * lisp/gnus/gnus-sum.el (gnus-summary-show-all-threads)
25510         (gnus-summary-show-thread, gnus-summary-hide-thread)
25511         (gnus-highlight-selected-summary):
25512         * lisp/gnus/gnus-util.el (gnus-put-overlay-excluding-newlines):
25513         * lisp/gnus/message.el (message-fix-before-sending)
25514         (message-toggle-image-thumbnails):
25515         * lisp/gnus/mm-decode.el (mm-convert-shr-links):
25516         * lisp/gnus/sieve.el (sieve-highlight, sieve-insert-scripts):
25517         Use overlay functions directly instead of using gnus-overlay-*,
25518         message-overlay-*, and sieve-overlay-*.
25519         * lisp/gnus/gnus-sum.el (gnus-remove-overlays):
25520         * lisp/gnus/gnus.el (gnus-make-overlay, gnus-copy-overlay)
25521         (gnus-delete-overlay, gnus-overlay-get, gnus-overlay-put)
25522         (gnus-move-overlay, gnus-overlay-buffer, gnus-overlay-start)
25523         (gnus-overlay-end, gnus-overlays-at, gnus-overlays-in):
25524         * lisp/gnus/message.el (message-delete-overlay, message-make-overlay)
25525         (message-overlay-get, message-overlay-put, message-overlays-in):
25526         * lisp/gnus/sieve.el (sieve-make-overlay, sieve-overlay-put)
25527         (sieve-overlays-at): Remove.
25529 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
25531         In w32fns.c condition TITLEBAR_INFO declaration on WINDOWS version
25532         * src/w32fns.c (TITLEBAR_INFO): Make it a typedef so MinGW64
25533         builds can use the declaration from the system headers.
25534         (GetTitleBarInfo_Proc, Fx_frame_geometry): Adapt to new
25535         definition of TITLEBAR_INFO.
25536         Suggested by Eli Zaretskii  <eliz@gnu.org>
25538 2015-08-19  Glenn Morris  <rgm@gnu.org>
25540         * lisp/gnus/nnmaildir.el (nnmaildir-flag-mark-mapping): Add "P".
25542 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
25544         Use new q ‘format’ flag when fixing quotes in C
25545         * src/image.c (image_size_error): New function.  All uses of
25546         image_error with "Invalid image size ..."  changed to use it.
25547         * src/image.c (image_size_error, xbm_load_image, xbm_load)
25548         (xpm_load, xpm_load_image, xpm_load, pbm_load, png_load_body)
25549         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
25550         (imagemagick_load, svg_load, svg_load_image, gs_load)
25551         (x_kill_gs_process):
25552         * src/lread.c (load_warn_old_style_backquotes):
25553         * src/xfaces.c (load_pixmap):
25554         * src/xselect.c (x_clipboard_manager_error_1):
25555         Use %qs, not uLSQM and uRSQM.
25556         * src/syntax.c (Finternal_describe_syntax_value):
25557         Prefer Fsubstitute_command_keys to Fformat, as this lets
25558         us use AUTO_STRING.
25559         * src/xdisp.c (vadd_to_log): Use AUTO_STRING on the format argument,
25560         as it's now guaranteed to be ASCII.
25561         * src/xselect.c (x_clipboard_manager_error_2):
25562         Avoid grave accent in low-level stderr diagnostic.
25564 2015-08-19  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
25566         New q flag for ‘format’
25567         * doc/lispref/processes.texi (Sentinels):
25568         Don't hardwire grave quoting style in example.
25569         * doc/lispref/strings.texi (Formatting Strings):
25570         * etc/NEWS:
25571         Document new q flag.
25572         * src/editfns.c (Fformat): Implement it.
25574 2015-08-18  Daiki Ueno  <ueno@gnu.org>
25576         pinentry.el: Add debugging support
25577         * lisp/net/pinentry.el (pinentry-debug): New variable.
25578         (pinentry-debug-buffer): New variable.
25579         (pinentry--process-filter): Send input to the debug buffer, if
25580         `pinentry-debug' is set.
25582         pinentry.el: Improve multiline prompt
25583         * lisp/net/pinentry.el (pinentry--prompt): Simplify the interface.
25584         (pinentry--process-filter): Use `pinentry--prompt' for CONFIRM
25585         command.
25587 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
25589         Fix multibyte confusion in diagnostics
25590         * src/print.c (print_error_message):
25591         Don't assume that the caller's name is unibyte.
25592         * src/xdisp.c (vadd_to_log):
25593         Don't assume that the formatted diagnostic is unibyte.
25595         Fix file name encodings in diagnostics
25596         Also, close some minor races when opening image files, by opening
25597         them once instead of multiple times.
25598         * src/gtkutil.c (xg_get_image_for_pixmap):
25599         * src/image.c (xpm_load, tiff_load, gif_load, imagemagick_load)
25600         (svg_load):
25601         * src/nsimage.m (allocInitFromFile:):
25602         * src/xfns.c (xg_set_icon):
25603         Encode file name, since x_find_image_file no longer does that.
25604         * src/image.c (x_find_image_fd): New function.
25605         (x_find_image_file): Use it.  Do not encode resulting file name,
25606         since callers sometimes need it decoded.
25607         (slurp_file): File arg is now a fd, not a file name.
25608         All callers changed.  This saves us having to open the file twice.
25609         (xbm_load, xpm_load, pbm_load, png_load_body, jpeg_load_body)
25610         (svg_load):
25611         Use x_find_image_fd and fdopen to save a file-open.
25612         Report file name that failed.
25613         * src/lread.c (openp): If PREDICATE is t, open the file in binary mode.
25615 2015-08-18  Dmitry Gutov  <dgutov@yandex.ru>
25617         Allow blink-matching-paren to jump off screen
25618         * doc/emacs/programs.texi (Matching): Mention the
25619         `blink-matching-paren' value `jump-offscreen'.
25620         * lisp/simple.el (blink-matching-paren): New possible value.
25621         (blink-matching-paren-on-screen): Clarify the docstring.
25622         (blink-matching-open): Handle `jump-offscreen' (bug#21286).
25624         Refine the previous change
25625         * lisp/simple.el (blink-matching-open): Use minibuffer-message
25626         outside of save-excursion (bug#21286).
25628 2015-08-18  Martin Rudalics  <rudalics@gmx.at>
25630         Rewrite and add frame geometry related functions.
25631         * src/frame.c (Fframe_position): New function.
25632         (Fset_frame_position): Rename parameters and rewrite doc-string.
25633         (syms_of_frame): Remove Qframe_position, Qframe_outer_size,
25634         Qtitle_height and Qframe_inner_size.  Add Qouter_edges,
25635         Qouter_position, Qouter_size, Qnative_edges, Qinner_edges,
25636         Qtitle_bar_size.
25637         * src/nsfns.m (frame_geometry): New function.
25638         (Fx_frame_geometry): Call frame_geometry.
25639         (Fx_frame_edges): New function.
25640         * src/w32fns.c (C_CHILDREN_TITLEBAR, TITLEBAR_INFO)
25641         (GetTitleBarInfo_Proc): Define these so we can use the
25642         GetTitleBarInfo API.
25643         (Fw32_frame_menu_bar_size, Fw32_frame_rect): Remove.
25644         (Fx_frame_geometry): Rewrite.
25645         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
25646         (Fx_set_mouse_absolute_pixel_position): New functions.
25647         * src/xfns.c (frame_geometry): New function.
25648         (Fx_frame_geometry): Call frame_geometry.
25649         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
25650         (Fx_set_mouse_absolute_pixel_position): New functions.
25652 2015-08-18  Michael Albinus  <michael.albinus@gmx.de>
25654         Improve Tramp's compatibility
25655         * lisp/net/tramp.el (tramp-get-method-parameter):
25656         * lisp/net/tramp-adb.el (tramp-adb-parse-device-names)
25657         (tramp-adb-get-device):
25658         * lisp/net/trampver.el (tramp-repository-get-version):
25659         Use `tramp-compat-replace-regexp-in-string'.
25661 2015-08-18  Pierre Téchoueyres  <pierre.techoueyres@free.fr>  (tiny change)
25663         * lisp/net/tramp-cmds.el (tramp-reporter-dump-variable):
25664         Encode/decode string.
25666 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
25668         Clarify what happens to match data on failure
25669         Problem reported by Ernesto Alfonso (Bug#21279).
25670         * doc/lispref/searching.texi (Regexp Search, Simple Match Data):
25671         Document more carefully what happens to match data after a failed
25672         search.
25673         * src/search.c (Fmatch_beginning, Fmatch_end): Document that
25674         the return value is undefined if the last search failed.
25675         (Fmatch_data): Simplify doc string line 1.
25677 2015-08-18  Daiki Ueno  <ueno@gnu.org>
25679         Revert "pinentry.el: Support external passphrase cache"
25680         This reverts commit e086e55a664ec27fbca7b3231c4b32cb78a89337.
25681         pinentry.el shouldn't directly interact with the secrets service,
25682         but ask the caller to cache the passphrase.
25684 2015-08-17  Xue Fuqiao  <xfq.free@gmail.com>
25686         * doc/emacs/sending.texi (Mail Misc): Fix two index entries for
25687         Message mode hooks.
25689 2015-08-17  Daiki Ueno  <ueno@gnu.org>
25691         epg.el: Make gpgconf output parsing future proof
25692         * lisp/epg.el (epg--start): Count the number of fields in "gpgconf
25693         --list-options" output.
25695         pinentry.el: Support external passphrase cache
25696         * lisp/net/pinentry.el (pinentry-use-secrets): New user option.
25697         (pinentry--allow-external-password-cache): New local variable.
25698         (pinentry--key-info): New local variable.
25699         (secrets-enabled, secrets-search-items, secrets-get-secret):
25700         Declare.
25701         (pinentry--send-passphrase): New function, split from
25702         `pinentry--process-filter'.
25703         (pinentry--process-filter): Use secrets.el to retrieve passphrase
25704         from login keyring.
25706         pinentry.el: Popup window for multiline prompt
25707         * lisp/net/pinentry.el (pinentry): New custom group.
25708         (pinentry-popup-prompt-window): New user option.
25709         (pinentry-prompt-window-height): New user option.
25710         (pinentry--prompt-buffer): New variable.
25711         (pinentry-prompt-mode-map): New variable.
25712         (pinentry-prompt-mode): New function.
25713         (pinentry--prompt): New function.
25714         (pinentry--process-filter): Use `pinentry--prompt' instead of
25715         `read-passwd' and `y-or-n-p'.
25717 2015-08-17  Katsumi Yamaoka  <yamaoka@jpl.org>
25719         message.el: Silent the byte compiler
25720         * lisp/gnus/message.el (message-overlay-put, message-make-overlay)
25721         (message-kill-all-overlays, message-overlays-in, message-overlay-get)
25722         (message-delete-overlay, message-window-inside-pixel-edges):
25723         Declare before using.
25725         * lisp/gnus/message.el (message-overlay-get, message-overlays-in)
25726         (message-window-inside-pixel-edges): XEmacs compatible functions.
25728 2015-08-17  Lars Magne Ingebrigtsen  <larsi@gnus.org>
25730         * lisp/gnus/message.el (message-toggle-image-thumbnails): New command.
25732 2015-08-17  Noah Friedman  <friedman@splode.com>
25734         * lisp/simple.el (blink-matching-open): Restore point before
25735         calling minibuffer-message.
25737 2015-08-17  Ronnie Schnell  <ronnie@driver-aces.com>
25739         * lisp/play/dunnet.el: Update version number in header (now
25740         matches help).
25742 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
25744         Curved quotes in --batch diagnostics in non-UTF-8
25745         When run with --batch, check that curved quotes are compatible with
25746         the system locale before outputting them in diagnostics.
25747         Problem reported by Eli Zaretskii in:
25748         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00594.html
25749         * lisp/startup.el (command-line): Set internal--text-quoting-flag
25750         after the standard display table is initialized.
25751         * src/doc.c (default_to_grave_quoting_style): New function.
25752         (text_quoting_style): Use it.
25753         (text_quoting_flag): New static var, visible to Lisp as
25754         internal--text-quoting-flag.
25755         * src/emacs.c: Include <wchar.h> if available.
25756         (using_utf8): New function.
25757         (main): Use it to initialize text_quoting_flag.
25758         * src/regex.h (btowc) [WIDE_CHAR_SUPPORT && emacs]:
25759         Don't define, as it's not needed and it clashes with wchar.h.
25761 2015-08-17  Glenn Morris  <rgm@gnu.org>
25763         * doc/misc/tramp.texi (Configuration): Reword to avoid warning
25764         from makeinfo about spurious "Note:" cross-reference, and for grammar.
25766 2015-08-17  Ilya Zakharevich  <ilya@math.berkeley.edu>
25768         Minor change in variable initialization on MS-Windows
25769         * src/w32fns.c <after_dead_key>: Initialize to -1.
25770         (deliver_wm_chars): If after_deadkey is zero, don't set after_dead
25771         non-zero.
25773         Fix a bug with LWindow key remapping on MS-Windows
25774         * src/w32fns.c (deliver_wm_chars): Fix a typo.  (Bug#21276)
25776 2015-08-17  Eli Zaretskii  <eliz@gnu.org>
25778         Improve fontset support for latest OTF script tags
25779         * lisp/international/fontset.el (otf-script-alist): Add some
25780         missing script tags.
25781         (setup-default-fontset): Include settings for v2 versions of the
25782         script tags used by some modern OTF/TTF fonts.
25784 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
25786         Spelling fixes
25788 2015-08-16  Paul Eggert  <eggert@cs.ucla.edu>
25790         Use curved quotes in core elisp diagnostics
25791         In the core elisp files, use curved quotes in diagnostic formats,
25792         so that they follow user preference as per ‘text-quoting-style’
25793         rather than being hard-coded to quote `like this'.
25794         * lisp/abbrev.el (expand-region-abbrevs):
25795         * lisp/button.el (button-category-symbol, button-put)
25796         (make-text-button):
25797         * lisp/cus-start.el:
25798         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
25799         (custom--sort-vars-1, load-theme):
25800         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
25801         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
25802         (cl-generic-generalizers):
25803         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
25804         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
25805         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
25806         (advice--make, define-advice):
25807         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
25808         * lisp/emacs-lisp/timer.el (timer-event-handler):
25809         * lisp/env.el (setenv):
25810         * lisp/facemenu.el (facemenu-add-new-face)
25811         (facemenu-add-new-color):
25812         * lisp/faces.el (face-documentation, read-face-name)
25813         (face-read-string, read-face-font, face-spec-set-match-display)
25814         (read-color, x-resolve-font-name):
25815         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
25816         (set-auto-mode, hack-local-variables)
25817         (hack-one-local-variable--obsolete)
25818         (dir-locals-set-directory-class, write-file)
25819         (basic-save-buffer, delete-directory, copy-directory)
25820         (recover-session, recover-session-finish, insert-directory)
25821         (file-modes-char-to-who, file-modes-symbolic-to-number)
25822         (move-file-to-trash):
25823         * lisp/font-lock.el (font-lock-fontify-buffer):
25824         * lisp/format.el (format-write-file, format-find-file)
25825         (format-insert-file):
25826         * lisp/frame.el (get-device-terminal, select-frame-by-name):
25827         * lisp/fringe.el (fringe--check-style):
25828         * lisp/help.el (describe-minor-mode-from-indicator):
25829         * lisp/image.el (image-type):
25830         * lisp/international/fontset.el (x-must-resolve-font-name):
25831         * lisp/international/mule-cmds.el (prefer-coding-system)
25832         (select-safe-coding-system-interactively)
25833         (select-safe-coding-system, activate-input-method)
25834         (toggle-input-method, describe-current-input-method):
25835         * lisp/international/mule-conf.el (code-offset):
25836         * lisp/mouse.el (minor-mode-menu-from-indicator):
25837         * lisp/replace.el (query-replace-read-from)
25838         (occur-after-change-function, occur-1):
25839         * lisp/scroll-bar.el (scroll-bar-columns):
25840         * lisp/simple.el (execute-extended-command)
25841         (undo-outer-limit-truncate, compose-mail, set-variable)
25842         (choose-completion-string, define-alternatives):
25843         * lisp/startup.el (site-run-file, tty-handle-args)
25844         (command-line, command-line-1):
25845         * lisp/subr.el (noreturn, define-error, add-to-list)
25846         (read-char-choice):
25847         * lisp/term/common-win.el (x-handle-xrm-switch)
25848         (x-handle-name-switch, x-handle-args):
25849         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
25850         Use curved quotes in diagnostics.
25851         * lisp/international/mule.el (find-auto-coding):
25852         Use " to quote in a diagnostic, to be consistent with the rest of
25853         this file.
25855         Convert lisp/term/x-win.el to UTF-8
25856         * lisp/term/x-win.el: Convert to UTF-8.  This doesn't affect
25857         runtime behavior, and the file is multilingual so compile-time
25858         appearance shouldn't be an issue.
25859         * admin/notes/unicode: Document this.
25861 2015-08-16  Wilson Snyder  <wsnyder@wsnyder.org>
25863         Update verilog-mode.el to 2015-05-14-6232468-vpo-GNU.
25864         * lisp/progmodes/verilog-mode.el: Fix some non-automated indent
25865         issues and comments, bug#943.
25866         (verilog-type-font-keywords): Cycle delay operators like ##1 and
25867         ##[0:$] are now highlighted in their entirety similarly to the #
25868         delay-control operator.  Likewise, the followed-by operators #-#
25869         and #=# are no longer partially highlighed.
25870         (verilog-backward-syntactic-ws-quick)
25871         (verilog-skip-backward-comments): Minor performance improvements
25872         to buffer traversal functions for reduced latency.
25873         (verilog-calc-1, verilog-in-deferred-immediate-final-p): When the
25874         keyword 'final' follows 'assert/assume/cover', then it is part of
25875         a deferred immediate assertion item and should not be treated as a
25876         final construct for indentation.  Reported by Yuri Sugihara.
25877         (verilog-do-indent): Virtual task/function/class definition lines
25878         should not be considered as declarations.  Reported by Enzo Chi.
25879         (verilog-do-indent): Do not falsely indent to '=' of
25880         property/sequence operators on subsequent lines of a multi-line
25881         statement.
25882         (verilog-assignment-operator-re): Fix '!==' operator and add
25883         support for '<->', ':/', '#-#', and '#=#' operators.
25884         (verilog-calculate-indent, verilog-label-be): Enable
25885         case-sensitive regular expression parsing when looking for
25886         keywords.
25887         (verilog-calc-1): Detect 'pure virtual method' declarations which
25888         exist in abstract classes.  Reported by Enzo Chi and Kaushal Modi.
25889         (verilog-backward-ws&directives): When moving back to the start of
25890         a line and the preceeding line ended with an escaped-newline, then
25891         jump up one line.  This properly consumes a multi-line
25892         pre-processor directive.  Reported by Kaushal Modi.
25893         (verilog-dpi-import-export-re, verilog-extended-complete-re)
25894         (verilog-calc-1): Teach verilog-mode to properly indent after a
25895         DPI import/export statement that resides outside of a module.
25896         Reported by Kaushal Modi.
25897         (verilog-extended-complete-re): Update regexp to match both
25898         "DPI-C" and "DPI".  Reported by Kaushal Modi.
25900 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
25902         substitute-command-keys a few more doc strings
25903         * lisp/allout.el (outlineify-sticky):
25904         * lisp/files.el (hack-one-local-variable--obsolete):
25905         * lisp/help-fns.el (help-fns--obsolete, describe-variable):
25906         Use substitute-command-keys on some doc strings so that
25907         they don't use hard-coded key bindings or quoting styles.
25909         Fix quoting in Fformat calls
25910         * src/image.c (xbm_read_bitmap_data, xbm_load_image, xbm_load)
25911         (xpm_load, xpm_load_image, pbm_load, png_load_body)
25912         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
25913         (imagemagick_load, svg_load, svg_load_image, gs_load)
25914         (x_kill_gs_process):
25915         * src/lread.c (load_warn_old_style_backquotes):
25916         * src/xfaces.c (load_pixmap):
25917         * src/xselect.c (x_clipboard_manager_error_1):
25918         Quote diagnostics according to user preference when calling
25919         Fformat or its derivatives.
25921 2015-08-15  Glenn Morris  <rgm@gnu.org>
25923         * admin/admin.el (set-version, set-copyright): Remove deleted files.
25925 2015-08-15  Stephen Leake  <stephen_leake@stephe-leake.org>
25927         Allow describe-function helpers to access buffer-local values
25928         This will be used by cedet/mode-local.el `describe-mode-local-override'
25929         on `help-fns-describe-function-functions' in upstream CEDET.
25930         * lisp/help-fns.el (describe-function-orig-buffer): New, let-bound in
25931         `describe-function'.
25932         (describe-function): Bind it, save it on the help xref stack.
25934         Handle pulse-background being nil
25935         * lisp/cedet/pulse.el (pulse-lighten-highlight): Inherit
25936         pulse-background, handle it being nil.
25938 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
25940         Fix "\`" confusion in Lisp strings
25941         * admin/authors.el (authors-canonical-author-name):
25942         Fix typo by using "\\`" not "\`" in string RE.
25943         * lisp/obsolete/complete.el (PC-complete-as-file-name):
25944         * lisp/obsolete/vi.el (vi-backward-blank-delimited-word):
25945         * lisp/progmodes/verilog-mode.el (verilog-mode-map):
25946         Use plain "`", not the equivalent-but-confusing "\`", in strings.
25947         * lisp/textmodes/texinfmt.el: Fix comment likewise.
25949 2015-08-15  Dani Moncayo  <dmoncayo@gmail.com>
25951         * nt/zipdist.bat: Remove -- no longer used.
25953 2015-08-15  Jürgen Hötzel  <juergen@archlinux.org>
25955         * lisp/net/tramp-sh.el (tramp-remote-selinux-p): Use "selinuxenabled"
25956         rather than "getenforce".
25957         (tramp-sh-handle-set-file-selinux-context): Do not
25958         cache SELinux context if not all context components are given.
25960 2015-08-15  Eli Zaretskii  <eliz@gnu.org>
25962         Add doc strings to 2 help-mode.el functions
25963         * lisp/help-mode.el (help-mode-setup, help-mode-finish): Add doc
25964         strings.  (Bug#21263)
25966         Remove files used by the old MS-Windows specific build procedure
25967         * admin/unidata/makefile.w32-in:
25968         * doc/emacs/makefile.w32-in:
25969         * doc/lispintro/makefile.w32-in:
25970         * doc/lispref/makefile.w32-in:
25971         * doc/misc/makefile.w32-in:
25972         * leim/makefile.w32-in:
25973         * lib-src/makefile.w32-in:
25974         * lib/makefile.w32-in:
25975         * lisp/makefile.w32-in:
25976         * nt/INSTALL.OLD:
25977         * nt/config.nt:
25978         * nt/emacs-src.tags:
25979         * nt/envadd.bat:
25980         * nt/gmake.defs:
25981         * nt/makefile.w32-in:
25982         * nt/multi-install-info.bat:
25983         * nt/nmake.defs:
25984         * nt/paths.h:
25985         * src/makefile.w32-in: Files deleted.
25986         * nt/configure.bat: Remove everything except the blurb about the
25987         new build procedure.
25988         * make-dist: Remove references to makefile.w32-in in various
25989         directories, and to files in nt/ that were deleted.
25990         * etc/NEWS: Mention the fact that the files were dropped.
25992 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
25994         * doc/emacs/mule.texi (Charsets): Give fuller title for ISO-IR.
25995         (Bug#21248)
25997 2015-08-14  Paul Eggert  <eggert@cs.ucla.edu>
25999         Default to inotify instead of gfile
26000         * configure.ac (with_file_notification): Fix typo that
26001         prevented suppression of file notification if HAVE_NS.
26002         (NOTIFY_OBJ): Prefer inotify to gfile if both exist and
26003         with_file_notification is 'yes' (Bug#21241).
26004         * etc/NEWS: Mention this.
26006         Fix broken URLs for ISO-IR
26007         * doc/emacs/mule.texi (Charsets):
26008         * lisp/international/mule-conf.el:
26009         Fix broken URL (Bug#21248).
26011         Low-level diagnostics now use ‘text-quoting-style’
26012         * src/doprnt.c (doprnt):
26013         Format ` and ' as per ‘text-quoting-style’.
26014         * src/xdisp.c (vmessage, message): Mention that the format should
26015         not contain ` or '.
26017         Prefer ‘format’ to ‘substitute-command-keys’
26018         * src/character.h (uLSQM, uRSQM): Move here ...
26019         * src/doc.c (uLSQM, uRSQM): ... from here.
26020         * src/doc.c (Fsubstitute_command_keys):
26021         * src/syntax.c (Finternal_describe_syntax_value):
26022         * lisp/cedet/mode-local.el (mode-local-print-binding)
26023         (mode-local-describe-bindings-2):
26024         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
26025         * lisp/cus-theme.el (describe-theme-1):
26026         * lisp/descr-text.el (describe-text-properties-1, describe-char):
26027         * lisp/emacs-lisp/cl-extra.el (cl--describe-class):
26028         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
26029         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
26030         * lisp/emacs-lisp/package.el (describe-package-1):
26031         * lisp/faces.el (describe-face):
26032         * lisp/help-fns.el (help-fns--key-bindings)
26033         (help-fns--compiler-macro, help-fns--parent-mode)
26034         (help-fns--obsolete, help-fns--interactive-only)
26035         (describe-function-1, describe-variable):
26036         * lisp/help.el (describe-mode):
26037         Prefer ‘format’ to ‘substitute-command-keys’ when either will do
26038         to implement quoting style.  This generally makes the code simpler.
26040         Extend ‘format’ to translate curved quotes
26041         This is a followup to the recent doc string change, and deals with
26042         diagnostics and the like.  This patch is more conservative than
26043         the doc string change, in that the behavior of ‘format’ changes
26044         only if its first arg contains curved quotes and the user prefers
26045         straight or grave quotes.  (Come to think of it, perhaps we should
26046         be similarly conservative with doc strings too, but that can wait.)
26047         The upside of this conservatism is that existing usage is almost
26048         surely unaffected.  The downside is that we'll eventually have to
26049         change Emacs's format strings to use curved quotes in places where
26050         the user might want curved quotes, but that's a simple and
26051         mechanical translation that I'm willing to do later.  (Bug#21222)
26052         * doc/lispref/help.texi (Keys in Documentation):
26053         Move description of text-quoting-style from here ...
26054         * doc/lispref/strings.texi (Formatting Strings):
26055         ... to here, and describe new behavior of ‘format’.
26056         * etc/NEWS: Describe new behavior.
26057         * lisp/calc/calc-help.el (calc-describe-thing):
26058         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
26059         * lisp/info.el (Info-find-index-name):
26060         Use ‘concat’ rather than ‘format’ to avoid misinterpretation
26061         of recently-added curved quotes.
26062         * src/doc.c (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
26063         Move from here ...
26064         * src/lisp.h: ... to here.
26065         * src/doc.c (text_quoting_style): New function.
26066         (Fsubstitute_command_keys): Use it.
26067         * src/editfns.c (Fformat): Implement new behavior.
26068         * src/lisp.h (enum text_quoting_style): New enum.
26070 2015-08-14  Stefan Monnier  <monnier@iro.umontreal.ca>
26072         * src/keyboard.c: Use false/true instead of 0/1 for booleans.
26073         * src/keyboard.h (struct kboard): Mark kbd_queue_has_data as boolean.
26075 2015-08-14  Michael Albinus  <michael.albinus@gmx.de>
26077         * lisp/net/tramp-sh.el (tramp-sh-handle-file-acl): Do not redirect
26078         stderr to /dev/null, this is done in `tramp-send-command-and-check'.
26080 2015-08-14  Jürgen Hötzel  <juergen@archlinux.org>
26082         Flush file properties in Tramp
26083         * lisp/net/tramp-sh.el (tramp-sh-handle-set-file-modes)
26084         (tramp-sh-handle-set-file-times):
26085         * lisp/net/tramp-adb.el (tramp-adb-handle-set-file-modes)
26086         (tramp-adb-handle-set-file-times): Flush the file properties of
26087         the directory.
26089 2015-08-14  Ronnie Schnell  <ronnie@driver-aces.com>
26091         * doc/emacs/misc.texi (Amusements): Fixed typo.
26093 2015-08-14  Eli Zaretskii  <eliz@gnu.org>
26095         Don't miss warnings about removing string text properties while dumping
26096         * src/alloc.c (purecopy): Warn about removing a string's text
26097         properties even when the same string was already pure-copied
26098         earlier.
26099         * lisp/progmodes/elisp-mode.el (elisp--xref-format)
26100         (elisp--xref-format-extra): Fix the commentary.
26102 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
26104         * lisp/progmodes/sh-script.el (sh-mode): Handle .cshrc (bug#21049).
26106 2015-08-13  Magnus Henoch  <magnus.henoch@gmail.com>
26108         * lisp/progmodes/compile.el: Use lexical-binding.
26109         (compilation-move-to-column): Assume 8-wide TABs (bug#21038).
26111 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
26113         (uniquify-ask-about-buffer-names-p): Remove, unused (bug#21037)
26114         * lisp/uniquify.el: Remove redundant `:group's.
26116 2015-08-13  Jürgen Hötzel  <juergen@archlinux.org>
26118         * lisp/net/tramp-adb.el
26119         (tramp-adb-handle-directory-files-and-attributes): Make a copy of
26120         result to prevent modification of the tramp-cache by side effects.
26121         Use the correct cache key.
26123 2015-08-13  Paul Eggert  <eggert@cs.ucla.edu>
26125         Make add_to_log varargs
26126         * src/alloc.c (run_finalizer_handler):
26127         * src/charset.c (load_charset_map_from_vector):
26128         * src/nsimage.m (ns_load_image):
26129         * src/xfaces.c (load_pixmap, load_color2):
26130         Simplify, now that add_to_log has a variable number of args.
26131         * src/image.c (image_error): Take a variable number of args.
26132         Callers simplified.
26133         * src/lisp.h (add_to_log, vadd_to_log): Adjust to new APIs.
26134         * src/xdisp.c (format_nargs, vadd_to_log): New functions.
26135         (add_to_log): Make varargs, and reimplement in terms of vadd_to_log.
26136         * src/xfaces.c (merge_face_ref): Fix typo that omitted color name.
26138         Optional args for holiday-greek-orthodox-easter
26139         * etc/NEWS: Document this.
26140         * lisp/calendar/holidays.el (holiday-greek-orthodox-easter):
26141         Add optional args N and STRING, mimicking the API and code of
26142         ‘holiday-easter-etc’.  From suggestion by Foivos S. Zakkak (Bug#21256).
26144 2015-08-13  Stephen Leake  <stephen_leake@stephe-leake.org>
26146         xref-find-definitions: Exclude more generic function items.
26147         * lisp/emacs-lisp/cl-generic.el (cl--generic-search-method):
26148         Add doc string.
26149         (cl--generic-find-defgeneric-regexp): New.
26150         (find-function-regexp-alist): Add it.
26151         * lisp/emacs-lisp/find-func.el (find-feature-regexp): Move here from
26152         elisp-mode.el, change to search for ";;; Code:"
26153         (find-alias-regexp): Move here from elisp-mode.el, cleaned up.
26154         (find-function-regexp-alist): Add them.
26155         * lisp/progmodes/elisp-mode.el:
26156         (elisp--xref-format, elisp--xref-format-extra): Change back to
26157         defvar due to bug#21237.
26158         (elisp--xref-find-definitions): Exclude co-located default methods for
26159         generic functions.  Also exclude implicitly declared defgeneric.
26160         (elisp--xref-find-definitions): Handle C source properly.  Exclude minor
26161         mode variables defined by 'define-minor-mode'.
26162         * test/automated/elisp-mode-tests.el: Declare generic functions, add
26163         tests for them.
26164         (xref-elisp-test-run): Fix bug.
26165         (emacs-test-dir): Improve initial value.
26166         (find-defs-defun-defvar-el): Don't expect defvar.
26167         (find-defs-feature-el): Match change to find-feature-regexp.
26169 2015-08-13  Eli Zaretskii  <eliz@gnu.org>
26171         Improve warning about purecopy of strings with properties
26172         * src/alloc.c (purecopy): Show the offending string with the
26173         warning about removing its text properties.
26175 2015-08-12  Alan Mackenzie  <acm@muc.de>
26177         Introduce new macros to cover Emacs's new names in cl-lib.el
26178         This also eliminates `mapcan' warnings in XEmacs.
26179         * lisp/progmodes/cc-defs.el (c--mapcan-status): New variable to
26180         characterise [X]Emacs versions.
26181         (top-level): Require either 'cl or 'cl-lib, depending on
26182         c--mapcan-status.
26183         Change this back to cc-external-require from an eval-when-compile
26184         require.
26185         (c--mapcan, c--set-difference, c--intersection, c--macroexpand-all)
26186         (c--delete-duplicates): New macros which expand into either old or new
26187         names.
26188         (c-make-keywords-re, c-lang-defconst, c-lang-const): Use the new macros
26189         rather than the old names.
26190         * lisp/progmodes/cc-engine.el (c-declare-lang-variables): Use c--mapcan
26191         rather than mapcan.
26192         * lisp/progmodes/cc-fonts.el (c-compose-keywords-list): Use c--mapcan.
26193         * lisp/progmodes/cc-langs.el (top-level): Require either 'cl or 'cl-lib,
26194         depending on c--mapcan-status.
26195         (c-filter-ops, c-all-op-syntax-tokens, c-assignment-op-regexp)
26196         (c-type-start-kwds, c-prefix-spec-kwds, c-specifier-key)
26197         (c-not-decl-init-keywords, c-not-primitive-type-keywords)
26198         (c-paren-any-kwds, c-<>-sexp-kwds, c-block-stmt-kwds, c-expr-kwds)
26199         (c-decl-block-key, c-keywords, c-keywords-obarray)
26200         (c-regular-keywords-regexp, c-primary-expr-regexp)
26201         (c-primary-expr-regexp, c-block-prefix-disallowed-chars)
26202         (c-known-type-key, c-nonlabel-token-key)
26203         (c-make-init-lang-vars-fun): Use the new macros rather than the old
26204         names.
26206 2015-08-12  Oleh Krehel  <ohwoeowho@gmail.com>
26208         loadhist.el (read-feature): Conform to completing-read
26209         * lisp/loadhist.el (read-feature): According to `completing-read'
26210         documentation, if collection is a list, then it must be a list of
26211         strings, not a list of symbols like before.
26213 2015-08-12  David Kastrup  <dak@gnu.org>
26215         Deal gracefully with up-events (Bug#19746)
26216         * src/keyboard.c (apply_modifiers_uncached, parse_solitary_modifier)
26217         (parse_modifiers_uncached): React gracefully to "up-" modifiers:
26218         those may easily be injected by user-level Lisp code.
26219         (read_key_sequence): Discard unbound up-events like unbound
26220         down-events: they are even more likely only relevant for special
26221         purposes.
26222         While Emacs will not produce up-events on its own currently (those are
26223         converted to drag or click events before being converted to
26224         Lisp-readable structures), the input queue can be made to contain them
26225         by synthesizing events to `unread-command-events'.  Emacs should deal
26226         consistently with such events.
26228 2015-08-12  Eli Zaretskii  <eliz@gnu.org>
26230         Fix display of thin lines whose newline has line-height property of t
26231         * src/xdisp.c (append_space_for_newline): Don't try to fix ascent
26232         and descent values of non-empty glyph rows, since they could have
26233         forced low values deliberately.  (Bug#21243)
26235 2015-08-12  Richard Stallman  <rms@gnu.org>
26237         Offer to combine multiple To or CC fields.
26238         * lisp/mail/sendmail.el (mail-combine-fields): New function.
26239         (mail-send): Call 'mail-combine-fields'.
26241         Don't decrypt encrypted files.
26242         * lisp/mail/mail-utils.el (mail-file-babyl-p): Bind epa-inhibit to t.
26244         Handle encrypted mbox files.
26245         * lisp/mail/rmailout.el (rmail-output-as-mbox): Decrypt and reencrypt
26246         the mbox file if necessary.
26248         Re-enable mime processing after decryption.  Add 'decrypt' keyword.
26249         * lisp/mail/rmail.el (rmail-epa-decrypt-1): New subroutine.
26250         (rmail-epa-decrypt): rmail-epa-decrypt-1 broken out.
26251         In a mime message, reenable Mime and show the parts that
26252         were shown before.
26253         Add keyword "decrypt" if anything decrypted.
26255         epa-inhibit inhibits auto-recognition of .gpg files
26256         * lisp/epa-file.el (epa-inhibit): New variable.
26257         (epa-file-handler): Check epa-inhibit.
26259 2015-08-12  Artur Malabarba  <bruce.connor.am@gmail.com>
26261         * lisp/emacs-lisp/lisp-mnt.el (lm-header): Add save-excursion.
26263 2015-08-11  Fabián Ezequiel Gallina  <fgallina@gnu.org>
26265         Respect python.el imenu when semantic-mode is off
26266         Fixes bug#21220
26267         * lisp/cedet/semantic/wisent/python.el: Do not force
26268         wisent-python-default-setup on python-mode-hook.
26270 2015-08-11  Paul Eggert  <eggert@cs.ucla.edu>
26272         Give names to Unicode code points in C code
26273         * src/character.h (NO_BREAK_SPACE, SOFT_HYPHEN)
26274         (ZERO_WIDTH_NON_JOINER, ZERO_WIDTH_JOINER, HYPHEN)
26275         (NON_BREAKING_HYPHEN, LEFT_SINGLE_QUOTATION_MARK)
26276         (RIGHT_SINGLE_QUOTATION_MARK, PARAGRAPH_SEPARATOR)
26277         (LEFT_POINTING_ANGLE_BRACKET, RIGHT_POINTING_ANGLE_BRACKET)
26278         (LEFT_ANGLE_BRACKET, RIGHT_ANGLE_BRACKET)
26279         (OBJECT_REPLACEMENT_CHARACTER):
26280         New named constants for Unicode code points.
26281         * src/bidi.c (bidi_fetch_char, CANONICAL_EQU):
26282         * src/composite.c (char_composable_p):
26283         * src/lread.c (readevalloop, read1):
26284         * src/xdisp.c (get_next_display_element):
26285         Use them.
26286         * src/doc.c (LEFT_SINGLE_QUOTATION_POINT):
26287         Remove; now in character.h.
26289 2015-08-11  Stephen Leake  <stephen_leake@stephe-leake.org>
26291         elisp--xref-find-definitions handle cl-defstuct default constructor
26292         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Add FIXME.
26293         (elisp--xref-format-extra): Rename from elisp--xref-format-cl-defmethod.
26294         (elisp--xref-find-definitions): Handle cl-defstuct default constructor.
26295         * test/automated/elisp-mode-tests.el (xref-elisp-test-run): Split out
26296         from xref-elisp-test for ease of debugging.
26297         (xref-elisp-deftest): Rename from xref-elisp-test.
26298         (find-defs-constructor): New test.
26299         (find-defs-defgeneric-el): Match batch test config.
26300         (compile): Required for find-defs compilation-minor-mode test.
26301         (find-defs-defvar-el): Match code change.
26302         (find-defs-face-el): Match code change.
26303         * lisp/progmodes/xref.el (xref-find-function, xref-find-definitions):
26304         Improve doc string.
26306 2015-08-11  Stefan Monnier  <monnier@iro.umontreal.ca>
26308         * lisp/replace.el (perform-replace): Document `replacements'.
26309         (perform-replace): Move the description of the format of `replacements'
26310         from the body's comment to the doc string.
26312 2015-08-11  Jürgen Hötzel  <juergen@archlinux.org>
26314         * lisp/net/tramp-adb.el (tramp-adb-prompt): Match leading escape
26315         sequence.  Recent adb version send initial escape sequences, even
26316         when terminal type is set to TERM=dumb.
26318 2015-08-10  Stephen Leake  <stephen_leake@stephe-leake.org>
26320         Rewrite elisp--xref-find-definitions to handle many more cases; add tests
26321         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
26322         Function deleted.
26323         (elisp--xref-format-cl-defmethod): New defconst.
26324         (find-feature-regexp, find-alias-regexp): New defcustoms.
26325         (elisp--xref-make-xref): New function.
26326         (elisp--xref-find-definitions): Rewrite using the above, handle many
26327         more cases.  Always output all available definitions.
26328         (xref-location-marker): No need for special cases.
26329         * test/automated/elisp-mode-tests.el: Add more tests of
26330         elisp--xref-find-definitions, improve current tests.
26332 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
26334         Fix recording of events pushed onto unread-command-events
26335         * src/keyboard.c (read_char): Make sure events read from
26336         unread-command-events and unread-post-input-method-events are
26337         always recorded by record_char.  Reported by David Kastrup
26338         <dak@gnu.org>, see
26339         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00193.html.
26341 2015-08-10  Samer Masterson  <samer@samertm.com>
26343         Set file buffer as current for "--file"
26344         * lisp/startup.el (command-line-1): Set file buffer as current before
26345         it is displayed so it can be used with options like "--eval".
26346         (Bug#21095)
26348 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
26350         Avoid setting LC_NUMERIC on MS-Windows to anything but "C"
26351         * src/emacs.c (synchronize_locale) [WINDOWSNT]: Call fixup_locale
26352         after setting LC_ALL to the desired locale, to avoid affecting how
26353         numbers are read and printed.  (Bug#21223)
26355 2015-08-10  Alan Mackenzie  <acm@muc.de>
26357         Fix "Invalid search bound (wrong side of point)" in fontification
26358         * lisp/progmodes/cc-fonts.el (c-font-lock-declarators): After skipping
26359         an initialization expression, check point is not beyond the
26360         fontification limit.
26362 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
26364         Fix DPI calculation when Xft/DPI is default
26365         * src/xsettings.c (parse_settings): Don't use Xft/DPI default
26366         value of -1, which evaluates to 2**32 - 1 (Bug#21152).
26367         Remove unnecessary cast while we're in the neighborhood.
26369 2015-08-09  Dmitry Gutov  <dgutov@yandex.ru>
26371         Add project-vc-search-path and project-vc-ignores
26372         * lisp/progmodes/project.el (project-vc): New group.
26373         (project-vc-search-path, project-vc-ignores): New variables.
26374         (project--value-in-dir): Utility function.
26375         (project-search-path, project-ignores): Use them.
26376         * lisp/progmodes/xref.el (xref--rgrep-command): Only replace `./'
26377         at bos.  Don't add extra `/'.  Don't prepend with `*' if replaced.
26379 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
26381         Fix some minor quoting issues with grave accent
26382         * src/dispnew.c (add_window_display_history) [GLYPH_DEBUG]:
26383         Remove redundant quotes.
26384         * src/doc.c (uLSQM, uRSQM): New macros.
26385         * src/doc.c (Fsubstitute_command_keys):
26386         * src/syntax.c (Finternal_describe_syntax_value): Follow the user
26387         preference for quotes rather than hardcoding the ‘grave’ style.
26388         * src/regex.c (PUSH_FAILURE_POINT, POP_FAILURE_POINT)
26389         (re_match_2_internal) [DEBUG]: In debugging output, quote C
26390         strings with "...", not `...'.
26392         ChangeLog.2 ignores remote-tracking merges
26393         * build-aux/gitlog-to-emacslog: Ignore commit logs matching
26394         "Merge remote-tracking branch '.*'" too.  See Eli Zaretskii in:
26395         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00384.html
26397 2015-08-09  Nicolas Richard  <youngfrog@members.fsf.org>
26399         Use kpsewhich in ffap-latex-mode, if available
26400         * lisp/ffap.el (ffap-latex-guess-rules): New variable.
26401         (ffap-latex-mode): Use kpsewhich if available.
26403         ffap: disallow braces in filenames for tex modes
26404         * lisp/ffap.el (ffap-string-at-point-mode-alist): Don't allow
26405         braces in tex-related modes.
26407         Remove useless backslashes from ffap-string-at-point-mode-alist
26408         * lisp/ffap.el (ffap-string-at-point-mode-alist): Remove useless and
26409         misleading backslashes from default value.
26411         Augment docstring of ffap-string-at-point-mode-alist
26412         * lisp/ffap.el (ffap-string-at-point-mode-alist): Describe how BEG
26413         and END are handled.
26415 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
26417         * lisp/org/org-src.el (org-edit-src-code)
26418         (org-edit-fixed-width-region):
26419         * lisp/simple.el (completion-setup-function):
26420         Remove calls to substitute-command-keys that always just return
26421         their argument.
26423 2015-08-09  Daiki Ueno  <ueno@gnu.org>
26425         * lisp/epa.el (epa-exit-buffer-function): Set to `quit-window'.
26426         (Bug#21210)
26428 2015-08-09  Ivan Kanis  <ivan@kanis.fr>
26430         Fix link to source code in help window
26431         * lisp/help-fns.el (find-lisp-object-file-name): Remove code that
26432         will never work due to Glenn Morris change a6d63d9 on Apr 20 2013
26433         'No longer include timestamp in header of .elc files'.  Add code
26434         that will return .el source file in load-path.
26436 2015-08-09  Artur Malabarba  <bruce.connor.am@gmail.com>
26438         * lisp/isearch.el (isearch-search-fun-default): (Bug#21164)
26439         Respect `isearch-lax-whitespace' when searching through
26440         `isearch-word'.
26442 2015-08-08  Stefan Monnier  <monnier@iro.umontreal.ca>
26444         * test/automated/ert-tests.el (ert-test-deftest): Add FIXME.
26446         * lisp/org/org.el: Fix up some lexical scoping warnings, and use dolist
26447         * lisp/org/org.el (org-set-regexps-and-options-for-tags, org-goto-map)
26448         (org-set-regexps-and-options, org-assign-fast-keys)
26449         (org-contextualize-keys, org-contextualize-validate-key)
26450         (org-notes-order-reversed-p, org-local-logging, org-map-entries)
26451         (org-find-olp, org-find-exact-heading-in-directory)
26452         (org-cycle-agenda-files, org-release-buffers, org-fill-template)
26453         (org-agenda-prepare-buffers, org-occur-in-agenda-files)
26454         (org-replace-escapes): Use dolist.
26455         (org-mode): Optimize away XEmacs-only code.
26456         (org-refile-get-targets): Remove unused var `f'.
26457         (org-fast-todo-selection): Remove unused var `e'.
26458         (org-make-tags-matcher): Use dolist.  Remove unused var `term'.
26459         (org-fast-tag-selection): Use dolist.  Remove unused var `e'.
26460         (org-format-latex): Use dolist.  Remove unused var `e'.
26461         (org-toggle-heading): Access vars lexically rather than dynamically.
26462         (org-backward-sentence, org-forward-sentence, org-meta-return)
26463         (org-kill-line): Mark arg as unused.
26464         (org-submit-bug-report): Silence compiler warning.
26465         (org-occur-in-agenda-files): Don't use add-to-list on local vars.
26466         (org-get-cursor-date): Remove unused var `tm'.
26467         (org-comment-or-uncomment-region): Use standard name `_'.
26468         (reftex-docstruct-symbol, reftex-cite-format): Declare to
26469         silence byte-compiler.
26470         (org-reftex-citation): Add `org--' prefix to dynamically scoped
26471         `rds' var.
26473 2015-08-08  Paul Eggert  <eggert@cs.ucla.edu>
26475         Electric quote if coding is undecided or no conv
26476         * lisp/electric.el (electric--insertable-p): Also say that a
26477         string is insertable if the buffer file coding system is undecided
26478         or uses no conversion, as curved quotes will work in either case.
26480         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Simplify configuration.
26482 2015-08-08  Eli Zaretskii  <eliz@gnu.org>
26484         Fix overlay string display regressions introduced in Emacs 24.5
26485         * src/xdisp.c (pop_it): Reset the flag to ignore overlays at this
26486         buffer position, if we move the iterator to a new position as
26487         result of jumping over text covered by a "replacing" display
26488         property.
26489         * test/redisplay-testsuite.el (test-redisplay-4): Add 2 new tests.
26491         Support recovery from C stack overflow on MS-Windows
26492         * src/w32fns.c (w32_reset_stack_overflow_guard)
26493         (stack_overflow_handler): New functions for handling C stack
26494         overflow exceptions.
26495         (my_exception_handler): Handle EXCEPTION_STACK_OVERFLOW exceptions
26496         specially, and zero out except_addr if we do.
26497         (globals_of_w32fns): Initialize dwMainThreadId in non-interactive
26498         mode.
26499         * src/sysdep.c [HAVE_STACK_OVERFLOW_HANDLING]: Add !WINDOWSNT to
26500         the condition, as HAVE_STACK_OVERFLOW_HANDLING is now defined for
26501         the MinGW build, but the code guarded by that is for Posix hosts.
26502         * src/keyboard.c (command_loop) [WINDOWSNT]:
26503         Call w32_reset_stack_overflow_guard.
26504         * nt/inc/ms-w32.h (sigjmp_buf): New typedef.
26505         (sigsetjmp): New macro.
26506         (w32_reset_stack_overflow_guard): Declare the prototype.
26507         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Set to 1 for MinGW.
26509 2015-08-07  Phillip Lord  <phillip.lord@newcastle.ac.uk>
26511         Improve error signaling for seq-subseq
26512         * lisp/emacs-lisp/seq.el (seq-subseq): The existing behavior is to error
26513         when indexes are too large, but to silently ignore numbers which
26514         are too negative for lists.  String and vector handling errors in
26515         both cases.  This has been regularized.  Error signaling behavior
26516         has been explicitly added to the doc string.
26518         * lisp/cl-extra.el (cl-subseq): Defers to (seq-subseq) and is
26519         therefore also impacted by this change.  Update the doc string
26520         to reflect this.
26522         * test/automated/seq-tests.el (test-seq-subseq): Tests have been
26523         added for these exceptional cases, as well as one non exceptional
26524         base case.
26526 2015-08-07  Jürgen Hötzel  <juergen@archlinux.org>
26528         Improve error checking in tramp-adb.el
26529         * lisp/net/tramp-adb.el (tramp-adb-ls-output-name-less-p):
26530         Improve error checking.  "ls -l" on Android in Enforcing mode can
26531         print "lstat './FILENAME failed: Permission denied".
26533 2015-08-07  Stefan Monnier  <monnier@iro.umontreal.ca>
26535         * lisp/emacs-lisp/cl-generic.el (cl--generic-struct-tag): Don't burp on
26536         non-struct vectors.
26538 2015-08-07  Stephen Leake  <stephen_leake@stephe-leake.org>
26540         Fix typo in lisp/window.el, more `display-buffer-use-some-frame'
26541         * lisp/window.el: Fix typo that broke build.
26542         (display-buffer--action-function-custom-type):
26543         Add `display-buffer-use-some-frame'.
26544         (display-buffer): Add `display-buffer-use-some-frame' to doc string.
26546         Add support for 'inhibit-same-window in 'display-buffer-use-some-frame'
26547         * lisp/window.el (display-buffer-use-some-frame): Add support for
26548         'inhibit-same-window in alist.
26549         * doc/lispref/windows.texi (display-buffer-use-some-frame):
26550         Doc support for 'inhibit-same-window in alist.
26552 2015-08-07  Eli Zaretskii  <eliz@gnu.org>
26554         Avoid infinite loop in display of invisible text in strings
26555         * src/xdisp.c (handle_invisible_prop): If the next change of
26556         invisibility spec does not mean the beginning of a visible text,
26557         update the string position from which to start the search for the
26558         next invisibility change.  This avoids an infinite loop when we
26559         have more than one invisibility spec that are made inactive by
26560         buffer-invisibility-spec.  Simplify code.  (Bug#21200)
26561         * test/redisplay-testsuite.el (test-redisplay-4): Add a test case
26562         for the situation that caused bug #21200.
26564 2015-08-06  Artur Malabarba  <bruce.connor.am@gmail.com>
26566         * lisp/emacs-lisp/package.el: Simplify describe-package-1
26567         (package-help-section-name-face): New face.
26568         (package--print-help-section): New function.
26569         (describe-package-1): Refactor section printing.
26570         (package-make-button): Use face instead of font-lock-face, which
26571         doesn't work on buttons.
26573         * lisp/emacs-lisp/package.el: Define custom faces
26574         (package-name-face, package-description-face)
26575         (package-status-built-in-face, package-status-external-face)
26576         (package-status-available-face, package-status-new-face)
26577         (package-status-held-face, package-status-disabled-face)
26578         (package-status-installed-face, package-status-dependency-face)
26579         (package-status-unsigned-face, package-status-incompat-face)
26580         (package-status-avail-obso-face): New faces.
26581         (package-menu--print-info-simple): Use them.
26583 2015-08-05  Paul Eggert  <eggert@cs.ucla.edu>
26585         Fix some confusion with ‘format’
26586         * lisp/allout-widgets.el (allout-widgets-before-change-handler)
26587         (allout-graphics-modification-handler):
26588         Protect arbitrary string in a format context with "%s" format.
26589         * lisp/avoid.el:
26590         * lisp/cedet/semantic/bovine/scm.el: Fix comment.
26591         * lisp/calendar/icalendar.el (icalendar--convert-sexp-to-ical):
26592         * lisp/erc/erc-button.el (erc-button-beats-to-time):
26593         * lisp/gnus/message.el (message-send-form-letter):
26594         * lisp/org/ob-core.el (org-babel-check-evaluate)
26595         (org-babel-confirm-evaluate):
26596         * lisp/org/ob-fortran.el (org-babel-fortran-var-to-fortran):
26597         * lisp/org/ox-latex.el (org-latex-compile):
26598         * lisp/org/ox-man.el (org-man-compile):
26599         * lisp/org/ox-odt.el (org-odt-template):
26600         * lisp/org/ox-texinfo.el (org-texinfo-compile):
26601         * lisp/progmodes/prolog.el (prolog-help-info)
26602         (prolog-view-predspec):
26603         * lisp/progmodes/ruby-mode.el (ruby-parse-partial):
26604         * lisp/progmodes/verilog-mode.el (verilog-showscopes):
26605         * lisp/textmodes/rst.el (rst-replace-lines):
26606         Change (message (format ...)) to (message ...), and likewise
26607         for ‘error’.  This lessens the probability of confusion when the
26608         output of ‘format’ contains ‘%’.
26610 2015-08-05  Artur Malabarba  <bruce.connor.am@gmail.com>
26612         * lisp/replace.el (replace-character-fold): Default to nil.
26614         * lisp/character-fold.el: Fix lax whitespace.
26615         (character-fold-table): Don't make space match other whitespace chars.
26616         (character-fold-to-regexp): Simplify lax behavior.
26618 2015-08-05  Dmitry Gutov  <dgutov@yandex.ru>
26620         Preserve window point in xref-find-definitions-other-window
26621         Fix the problem reported by Ingo Logmar in
26622         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00152.html
26623         * lisp/progmodes/xref.el (xref--goto-char): Extract from
26624         xref--goto-location.
26625         (xref--pop-to-location): Use it.  Replace xref--goto-location with
26626         a direct xref-location-marker call.
26627         (xref--show-location): Likewise.
26628         (xref--display-position): Use xref--goto-char.
26630         * lisp/progmodes/project.el: Add a paragraph to the front matter.
26632 2015-08-04  David Kastrup  <dak@gnu.org>
26634         * lisp/vc/emerge.el (emerge-show-file-name):
26635         * lisp/progmodes/vhdl-mode.el (vhdl-electric-dash)
26636         (vhdl-comment-insert, vhdl-hooked-abbrev):
26637         * lisp/progmodes/octave.el (inferior-octave-dynamic-list-input-ring):
26638         * lisp/progmodes/fortran.el (fortran-window-create-momentarily):
26639         * lisp/progmodes/ebrowse.el (ebrowse-hack-electric-buffer-menu):
26640         * lisp/progmodes/cperl-mode.el (cperl-putback-char):
26641         * lisp/obsolete/vip.el (vip-escape-to-emacs)
26642         (vip-prefix-arg-value, vip-prefix-arg-com):
26643         * lisp/obsolete/terminal.el (te-escape-extended-command-unread):
26644         * lisp/leim/quail/tibetan.el (quail-tibetan-update-translation)
26645         (quail-tibkey-update-translation):
26646         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
26647         * lisp/leim/quail/lao.el (quail-lao-update-translation):
26648         * lisp/leim/quail/japanese.el (quail-japanese-update-translation)
26649         (quail-japanese-self-insert-and-switch-to-alpha):
26650         * lisp/leim/quail/hangul.el (hangul2-input-method)
26651         (hangul3-input-method, hangul390-input-method):
26652         * lisp/language/hanja-util.el (hangul-to-hanja-char):
26653         * lisp/international/robin.el (robin-input-method):
26654         * lisp/international/quail.el (quail-start-translation)
26655         (quail-start-conversion):
26656         * lisp/gnus/gnus-art.el (gnus-article-describe-key)
26657         (gnus-article-describe-key-briefly):
26658         * lisp/eshell/em-hist.el (eshell-list-history):
26659         * lisp/term.el (term-dynamic-list-input-ring)
26660         (term-dynamic-list-completions):
26661         * lisp/subr.el (momentary-string-display):
26662         * lisp/simple.el (read-quoted-char):
26663         * lisp/pcomplete.el (pcomplete-show-completions):
26664         * lisp/kmacro.el (kmacro-repeat-on-last-key):
26665         * lisp/info.el (Info-summary):
26666         * lisp/ehelp.el (electric-help-command-loop):
26667         * lisp/ebuff-menu.el (electric-buffer-list)
26668         (Electric-buffer-menu-exit):
26669         * lisp/double.el (double-translate-key):
26670         * lisp/comint.el (comint-dynamic-list-input-ring)
26671         (comint-dynamic-list-completions): Do not overwrite preexisting
26672         contents of `unread-command-events' when putting new events into it.
26674 2015-08-04  Daniel Colascione  <dancol@dancol.org>
26676         Improve ansi-color filtering of unrecognized escape sequences
26677         * lisp/ansi-color.el (ansi-color-drop-regexp): Recognize mode-setting
26678         escape sequences.
26679         (ansi-color-filter-apply, ansi-color-apply): Filter out
26680         unrecognized escape sequences.
26682 2015-08-04  Artur Malabarba  <bruce.connor.am@gmail.com>
26684         * lisp/emacs-lisp/package.el (package-menu-mode-map): Convert menu
26685         definitions to `easy-menu-define', improve a couple to account for
26686         async, and add a couple of new commands.
26688 2015-08-03  Jürgen Hötzel  <juergen@archlinux.org>
26690         * lisp/net/tramp-cache.el (tramp-set-file-property): Fix code typo.
26692 2015-08-03  Ingo Lohmar  <i.lohmar@gmail.com>
26694         Add new 'calendar-weekend-days' option
26695         Make the days receiving the 'calendar-weekend-header' face freely
26696         customizable, as they differ by region/culture.
26697         * doc/emacs/calendar.texi (Move to Beginning or End): Document the
26698         new variable.
26699         * lisp/calendar/calendar.el (calendar-generate-month): New variable
26700         calendar-weekend-days to customize day header fontification.
26702 2015-08-03  Paul Eggert  <eggert@cs.ucla.edu>
26704         Redo text-quoting-style variable
26705         Rename help-quote-translation to text-quoting-style,
26706         and use symbols rather than characters as values.
26707         This follows suggestions along these lines by Alan Mackenzie in:
26708         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00343.html
26709         and by Drew Adams in:
26710         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00048.html
26711         * doc/lispref/help.texi (Keys in Documentation)
26712         * etc/NEWS:
26713         * lisp/cus-start.el (standard):
26714         * src/doc.c (Fsubstitute_command_keys, syms_of_doc):
26715         Document and/or implement the new behavior instead of the old.
26716         (syms_of_doc): New symbols 'grave' and 'straight'.
26718 2015-08-03  Nikolaus Rath  <Nikolaus@rath.org>
26720         nnimap.el: Use IMAP MOVE extension if available
26721         * lisp/gnus/nnimap.el (nnimap-request-move-article)
26722         (nnimap-process-expiry-targets, nnimap-split-incoming-mail):
26723         Use MOVE extension if available.
26725         nnimap.el: Explicitly ask for server capabilities
26726         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Don't assume full
26727         capabilities will be returned in the login-result.
26729 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
26731         Treat help strings like other doc strings
26732         * doc/lispref/text.texi (Special Properties), etc/NEWS: Document this.
26733         * lisp/epa.el (epa--select-keys): Remove no-longer-needed calls to
26734         substitute-command-keys.
26735         * src/keyboard.c (show_help_echo, parse_menu_item): Call
26736         substitute-command-keys on the help string before displaying it.
26738         Also mention "curly quotes"
26739         See Drew Adams's email in:
26740         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00040.html
26741         * doc/lispref/help.texi (Keys in Documentation):
26742         Add index entry "curly quotes".
26743         * etc/NEWS: Use the phrase "curly quotes" too.
26745         ede-proj-target-makefile docstring tweaks
26746         * lisp/cedet/ede/proj.el (ede-proj-target-makefile):
26747         Consistently use "all:" to describe the all: target,
26748         replacing three different and confusingly-quoted usages.
26750 2015-08-02  Evgeny Fraimovitch  <johnlen7@gmail.com>  (tiny change)
26752         Don't abort emacsclientw when -a was specified
26753         * lib-src/emacsclient.c (set_tcp_socket) [WINDOWSNT]: Don't error
26754         out if we are in emacsclientw and -a was specified.
26756 2015-08-02  Eli Zaretskii  <eliz@gnu.org>
26758         Fix handling of 1st keystroke on MS-Windows
26759         * src/w32fns.c (globals_of_w32fns): Initialize after_deadkey to -1.
26760         This is needed to correctly handle the session's first keystroke,
26761         if it has any modifiers.  (Bug#19994)
26763 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
26765         Substitute some customization etc. doc strings
26766         These changes apply substitute-command-keys to some
26767         doc strings that were going through untranslated
26768         when creating customization or other widgets.
26769         * lisp/cus-edit.el (custom-group-value-create):
26770         * lisp/wid-edit.el (widget-default-create):
26771         (widget-push-button-value-create):
26772         Treat the widget tag as a doc string.
26773         * lisp/emacs-lisp/cl-extra.el (cl--describe-class-slot):
26774         Treat the :documentation value as a doc string.
26775         * lisp/wid-edit.el (widget-choose):
26776         Treat the choice names as doc strings.
26777         (widget-default-create): Treat the :doc value as a doc string.
26778         (widget-toggle-value-create): Treat the :on and :off values
26779         as doc strings.
26780         (widget-documentation-string-value-create):
26781         Substitute the doc string.
26783 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
26785         Add a second argument to project-ignores
26786         * lisp/progmodes/project.el (project-ignores): Add a second
26787         argument DIR.
26788         * lisp/progmodes/project.el (project-ignores): Only include the VC
26789         ignores if DIR is the VC root.
26790         * lisp/progmodes/xref.el (xref-find-regexp): Update accordingly.
26792 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
26794         Prevent incorrect display when 'line-spacing' variable is set
26795         * src/xdisp.c (try_window_id): Give up this optimization if the
26796         buffer has its 'line-spacing' variable set non-nil.
26798 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
26800         Don't pass NOVISIT to find-file
26801         * lisp/progmodes/etags.el (next-file):
26802         Don't pass NOVISIT to find-file (bug#21175).
26804         Ignore buffer restriction for tags-loop-eval
26805         * lisp/progmodes/etags.el (tags-loop-continue): Ignore buffer
26806         restriction (bug#21167).
26808 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
26810         Fix a thinko in 'ffap-gopher-at-point'
26811         * lisp/ffap.el (ffap-gopher-at-point): Fix last change.  (Bug#21168)
26813         Honor 'line-spacing' for empty lines
26814         * src/xdisp.c (append_space_for_newline): Honor 'line-height'
26815         property and 'line-spacing' frame parameter or variable or
26816         property for empty lines, by doing the same processing as in
26817         x_produce_glyph for newline characters.  (Bug#21165)
26819 2015-08-01  Paul Eggert  <eggert@cs.ucla.edu>
26821         Simplify by assuming C99 integer division
26822         * src/floatfns.c (ceiling2, floor2, truncate2):
26823         Assume C99 (i.e., Fortran) semantics for integer division.
26824         This simplifies the code.
26826 2015-07-31  Paul Eggert  <eggert@cs.ucla.edu>
26828         Don't overflow if computing approximate percentage
26829         * lisp/align.el (align-region):
26830         * lisp/cedet/semantic.el (semantic-repeat-parse-whole-stream):
26831         * lisp/cedet/semantic/wisent.el (wisent-parse-region):
26832         * lisp/cus-edit.el (custom-buffer-create-internal):
26833         * lisp/emacs-lisp/checkdoc.el (checkdoc-interactive-ispell-loop)
26834         (checkdoc-message-interactive-ispell-loop, checkdoc-next-error)
26835         (checkdoc-next-message-error):
26836         * lisp/emacs-lisp/eieio-opt.el (eieio-display-method-list):
26837         * lisp/epa.el (epa-progress-callback-function):
26838         * lisp/erc/erc-dcc.el (erc-dcc-do-LIST-command):
26839         * lisp/ffap.el (ffap-menu-rescan):
26840         * lisp/gnus/nnbabyl.el (nnbabyl-retrieve-headers):
26841         * lisp/gnus/nndiary.el (nndiary-retrieve-headers):
26842         * lisp/gnus/nneething.el (nneething-retrieve-headers):
26843         * lisp/gnus/nnmbox.el (nnmbox-retrieve-headers):
26844         * lisp/gnus/nnmh.el (nnmh-retrieve-headers):
26845         * lisp/gnus/nnml.el (nnml-retrieve-headers):
26846         * lisp/gnus/nnspool.el (nnspool-retrieve-headers):
26847         * lisp/gnus/nntp.el (nntp-retrieve-headers)
26848         (nntp-retrieve-articles):
26849         * lisp/imenu.el (imenu--relative-position):
26850         * lisp/international/ja-dic-cnv.el (skkdic-collect-okuri-nasi)
26851         (skkdic-convert-okuri-nasi):
26852         * lisp/net/ange-ftp.el (ange-ftp-process-handle-hash):
26853         * lisp/nxml/rng-valid.el (rng-compute-mode-line-string):
26854         * lisp/org/org-list.el (org-update-checkbox-count):
26855         * lisp/org/org.el (org-table-map-tables)
26856         (org-update-parent-todo-statistics):
26857         * lisp/play/decipher.el (decipher-insert-frequency-counts)
26858         (decipher-analyze-buffer):
26859         * lisp/profiler.el (profiler-format-percent):
26860         * lisp/progmodes/cc-cmds.el (c-progress-update):
26861         * lisp/progmodes/cpp.el (cpp-highlight-buffer):
26862         * lisp/progmodes/idlwave.el (idlwave-convert-xml-system-routine-info)
26863         (idlwave-list-load-path-shadows):
26864         * lisp/progmodes/opascal.el (opascal-step-progress):
26865         * lisp/progmodes/vhdl-mode.el (vhdl-update-progress-info)
26866         (vhdl-scan-directory-contents):
26867         * lisp/textmodes/bibtex.el (bibtex-progress-message):
26868         * lisp/textmodes/flyspell.el (flyspell-small-region)
26869         (flyspell-external-point-words):
26870         * lisp/textmodes/table.el (table-recognize):
26871         Prefer (floor (* 100.0 NUMERATOR) DENOMINATOR) when calculating
26872         progress-report percentages and the like.  This avoids problems
26873         if (* 100 NUMERATOR) would overflow.
26874         * lisp/gnus/gnus-registry.el (gnus-registry-import-eld):
26875         * lisp/gnus/registry.el (registry-reindex):
26876         Use (* 100.0 ...) rather than (* 100 ...) to avoid int overflow issues.
26877         * lisp/descr-text.el (describe-char):
26878         * lisp/org/org-colview.el (org-nofm-to-completion):
26879         * lisp/ps-print.el (ps-plot):
26880         * lisp/simple.el (what-cursor-position):
26881         Prefer (round (* 100.0 NUMERATOR) DENOMINATOR) to a
26882         more-complicated and less-accurate approximation.
26884         Fix some int overflows in profiler.c
26885         * src/profiler.c (make_log): Make args EMACS_INT, not int,
26886         to avoid unwanted behavior on 'int' overflow.
26887         (make_log, evict_lower_half, record_backtrace):
26888         Use ptrdiff_t, not int, for object indexes.
26890         Port to pedantic memcpy
26891         * src/keyboard.c (menu_bar_items, tool_bar_items):
26892         * src/xrdb.c (magic_db):
26893         Port to pedantic memcpy implementations that reject memcpy (0, 0, 0).
26895         Merge from gnulib
26896         This incorporates:
26897         2015-07-29 time_rz: port to pedantic memcpy
26898         * lib/time_rz.c: Copy from gnulib.
26900 2015-07-31  Artur Malabarba  <bruce.connor.am@gmail.com>
26902         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
26903         When updating the very last entry, tabulated-list-print would
26904         erase it and then try to look at the next one (which obviously
26905         isn't there).
26907 2015-07-31  Eli Zaretskii  <eliz@gnu.org>
26909         Allow to use the old key processing code on MS-Windows
26910         * src/w32fns.c (syms_of_w32fns) <w32-use-fallback-wm-chars-method>:
26911         New variable.
26912         (w32_wnd_proc): Use it to invoke the old code that processed
26913         character keys, as fallback, when this variable is non-nil.
26914         Fix typos in comments.  (Bug#19994)
26916 2015-07-31  Ilya Zakharevich  <ilya@math.berkeley.edu>
26918         Improve handling of Unicode keyboard input on MS-Windows
26919         * src/w32fns.c (get_wm_chars, deliver_wm_chars): New functions.
26920         (FPRINTF_WM_CHARS) [DEBUG_WM_CHARS]: New macro for debugging.
26921         (w32_wnd_proc): Call deliver_wm_chars to process non-special keys
26922         upon receiving WM_KEYDOWN or WM_SYSKEYDOWN messages.  If that is
26923         successful, don't call TranslateMessage.  (Bug#19994)
26925 2015-07-30  Dmitry Gutov  <dgutov@yandex.ru>
26927         Fix default-directory in changeset diffs after vc-print-log
26928         * lisp/vc/log-view.el (log-view-diff-common): Move the
26929         revision-granularity check back into log-view-diff-changeset.
26930         (log-view-diff-changeset): Bind default-directory to the current
26931         VC root.
26933         Rename project-directories to project-roots
26934         * lisp/progmodes/project.el (project-search-path-function)
26935         (project-search-path): Update the docstring.
26936         (project-directories): Rename to `project-roots', update all
26937         callers and implementations accordingly.
26938         (project-root): Remove.
26939         * lisp/progmodes/xref.el (xref-find-regexp): Use * instead of *.*
26940         as the default file mask.
26942 2015-07-30  Eli Zaretskii  <eliz@gnu.org>
26944         Support long URLs in w32-shell-execute
26945         * src/w32fns.c (Fw32_shell_execute): Don't use filename_to_utf16
26946         and filename_to_ansi to convert the DOCUMENT argument, as it could
26947         be a URL that is not limited to MAX_PATH characters.  Instead, use
26948         MultiByteToWideChar directly, and allocate heap storage as
26949         required to accommodate the converted string.  Likewise with
26950         non-Unicode operation.  Ensure OPERATION is null-terminated, even
26951         if it is longer than 32K bytes.  (Bug#21158)
26953 2015-07-30  Stephen Leake  <stephen_leake@stephe-leake.org>
26955         * lisp/vc/vc-mtn.el (vc-mtn-find-revision): Handle null rev.
26957 2015-07-29  Stephen Leake  <stephen_leake@stephe-leake.org>
26959         Add docs for display-buffer action display-buffer-use-some-frame
26960         * lisp/window.el (display-buffer-use-some-frame): Improve doc string.
26961         * doc/lispref/windows.texi (Display Action Functions):
26962         Add display-buffer-use-some-frame.
26963         * etc/NEWS: Mention display-buffer-use-some-frame.
26965         Add display-buffer action display-buffer-use-some-frame
26966         * lisp/window.el (display-buffer-use-some-frame): New.
26968         Handle vc-mtn error more gently
26969         * lisp/vc/vc-mtn.el (vc-mtn-mode-line-string): Return "" when
26970         branch is nil.
26972 2015-07-29  Michael Albinus  <michael.albinus@gmx.de>
26974         Fix Tramp problems with multihops, and nc
26975         * lisp/net/tramp-cache.el (tramp-get-file-property)
26976         (tramp-set-file-property, tramp-flush-file-property)
26977         (tramp-get-connection-property, tramp-set-connection-property)
26978         (tramp-flush-connection-property): Remove hop from vector.
26979         * lisp/net/tramp-gw.el (tramp-gw-process-filter): Ignore errors.
26980         * lisp/net/tramp-sh.el (tramp-methods) <nc>: Separate STDERR.
26981         (tramp-do-copy-or-rename-file-out-of-band): Increase timeout of
26982         netstat to 60".
26983         (tramp-sh-handle-start-file-process): Do not show hops in prompt.
26984         * lisp/net/tramp.el (tramp-handle-file-name-as-directory)
26985         (tramp-handle-file-name-directory, tramp-handle-file-remote-p):
26986         Keep hop in result.
26987         * test/automated/tramp-tests.el (tramp-test02-file-name-dissect):
26988         Add hop tests.
26990 2015-07-29  Eli Zaretskii  <eliz@gnu.org>
26992         Resurrect highlighting of repeated words by Flyspell Mode
26993         * lisp/textmodes/flyspell.el (flyspell-word): Leave some non-word
26994         characters between point and the doublon candidate, so that
26995         flyspell-word-search-backward finds it.  (Bug#21157)
26997         Fix redisplay of large images on expose events
26998         * src/xdisp.c (expose_window, expose_area): Avoid comparisons
26999         between signed negative values and unsigned values.  This
27000         prevented redisplay on expose events when the window showed a very
27001         large image.
27003 2015-07-29  Paul Eggert  <eggert@cs.ucla.edu>
27005         Remove unnecessary stack overflow dependency
27006         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING):
27007         Don't worry about $ac_cv_header_sys_resource_h and
27008         $ac_cv_func_getrlimit, as they're no longer needed for this.
27009         Problem reported by Eli Zaretskii in:
27010         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00443.html
27012 2015-07-28  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
27014         Pacify compilation -Wincompatible-pointer-types warnings
27015         * src/w32proc.c (Fw32_get_codepage_charset): Avoid compilation
27016         warning.
27017         (CompareStringW_Proc): New typedef.
27018         (w32_compare_strings): Use it, to pacify compiler warnings under
27019         "-Wincompatible-pointer-types".
27020         * src/w32fns.c (GetDiskFreeSpaceExW_Proc)
27021         (GetDiskFreeSpaceExA_Proc): New typedefs.
27022         (Ffile_system_info): Use them, to pacify compiler warnings under
27023         "-Wincompatible-pointer-types".
27025 2015-07-28  Paul Eggert  <eggert@cs.ucla.edu>
27027         Fix subscript error in calculate_direct_scrolling
27028         Use slightly-longer cost vectors.  Without this change,
27029         calculate_direct_scrolling can have a subscript violation when
27030         FRAME_LINES (frame) <= delta.
27031         * src/scroll.c (calculate_scrolling, calculate_direct_scrolling)
27032         (line_ins_del, do_line_insertion_deletion_costs):
27033         Allocate and use slightly-larger cost vectors, ones based on
27034         FRAME_TOTAL_LINES instead of FRAME_LINES.
27036         Fix uninitalized value in encode_coding_object
27037         * src/coding.c (encode_coding_object): Also initialize
27038         coding->src_pos and coding->src_pos_byte when NILP (src_object).
27039         This avoids later use of uninitialized storage.
27041 2015-07-27  Xue Fuqiao  <xfq.free@gmail.com>
27043         * doc/lispref/variables.texi (Variable Aliases): Typo fix.
27044         (Bug#21141)
27046 2015-07-27  Paul Eggert  <eggert@cs.ucla.edu>
27048         Merge from gnulib
27049         This incorporates:
27050         2015-07-27 time_rz: port better to MinGW
27051         2015-07-27 time: port __need_time_t to MinGW
27052         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
27053         * lib/strftime.c, lib/time.in.h, lib/time_rz.c: Copy from gnulib.
27054         * lib/time-internal.h: New file, from gnulib.
27056 2015-07-27  Eli Zaretskii  <eliz@gnu.org>
27058         Handle NULL pointers in w32heap.c allocation routines
27059         * src/w32heap.c (FREEABLE_P): Consider a NULL pointer "not
27060         freeable".
27061         (realloc_after_dump, realloc_before_dump, free_before_dump):
27062         Handle NULL pointers gracefully, as Emacs now seems to expect that.
27064         Fix Cairo build without PNG
27065         * src/image.c: Define PNG function when USE_CAIRO is defined, even
27066         if HAVE_PNG is not.  (Bug#21133)
27068         MS-Windows follow-up for recent TZ-related changes
27069         * nt/mingw-cfg.site (ac_cv_header_pthread_h)
27070         (gl_cv_sys_struct_timespec_in_pthread_h): Force to "no", to avoid
27071         picking up 'struct timespec' from pthread.h, if it is installed on
27072         the user's system.  We want either the definitions from MinGW
27073         system headers, if available, or the Gnulib replacements if not.
27074         * nt/inc/ms-w32.h <struct timespec>: Don't define, as we now use
27075         lib/time.h.
27076         * lib/time.in.h: Don't let __need_* symbols affect what happens on
27077         MinGW.  These symbols are defined by MinGW system headers, but we
27078         don't want that to affect whether Gnulib portions of the header
27079         are or aren't used.
27081 2015-07-26  Paul Eggert  <eggert@cs.ucla.edu>
27083         * src/ftfont.c (ftfont_close): Add comment re Bug#20890.
27085         New optional ZONE arg for format-time-string etc.
27086         This simplifies time conversions in other time zones.
27087         It also prevents display-time-world tampering with TZ (Bug#21020).
27088         * admin/admin.el (add-release-logs):
27089         Use improved add-log-time-format API.
27090         * admin/merge-gnulib (GNULIB_MODULES): Add time_rz, timegm.
27091         (GNULIB_TOOL_FLAGS): Avoid flexmember, setenv, unsetenv.
27092         * configure.ac (tzalloc): Remove test for this, since
27093         Emacs no longer uses HAVE_TZALLOC directly.
27094         * doc/lispref/os.texi (Time of Day, Time Conversion)
27095         (Time Parsing):
27096         * etc/NEWS: Document the new behavior.
27097         Merge from gnulib, incorporating:
27098         2015-07-25 strftime: fix newly-introduced bug on Solaris
27099         2015-07-23 fprintftime, strftime: use timezone_t args
27100         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
27101         * lib/strftime.c, lib/strftime.h, lib/time.in.h, m4/sys_time_h.m4:
27102         * m4/time_h.m4:
27103         Update from gnulib.
27104         * lib/time_rz.c, lib/timegm.c, m4/time_rz.m4, m4/timegm.m4:
27105         New files from gnulib.
27106         * lisp/time-stamp.el (time-stamp-string):
27107         * lisp/time.el (display-time-world-list)
27108         (display-time-world-display):
27109         Use new API, with time zone arg.
27110         * lisp/time.el (display-time-world-display):
27111         Fix race when current-time advances while we're running.
27112         * lisp/vc/add-log.el (add-log-iso8601-time-zone)
27113         (add-log-iso8601-time-string): Accept optional time zone arg.
27114         * lisp/vc/add-log.el (add-change-log-entry):
27115         * lisp/vc/log-edit.el (log-edit-changelog-ours-p): Use new arg.
27116         * nt/gnulib.mk: Propagate lib/gnulib.mk changes here.
27117         Add rules for the time module, since they're now needed
27118         for tzalloc etc.
27119         * src/conf_post.h (getenv_TZ, setenv_TZ): New macros.
27120         (emacs_getenv_TZ, emacs_setenv_TZ): New decls.
27121         * src/editfns.c: Include errno.h.
27122         (set_time_zone_rule): Omit unnecessary forward decl.
27123         (initial_tz): Remove, replacing with ...
27124         (local_tz, wall_clock_tz, utc_tz): New static vars and constants.
27125         (tzeqlen): New constant; prefer it to (sizeof "TZ=" - 1).
27126         (emacs_localtime_rz, emacs_mktime_z, xtzalloc, xtzfree)
27127         (tzlookup): New static functions.
27128         (init_editfns): New arg DUMPING.  All uses changed.
27129         (init_editfns): Omit most initialization if dumping, not if
27130         !initialized.  Initialize wall_clock_tz and local_tz.
27131         (emacs_nmemftime, format_time_string): Time zone argument can now
27132         be any time zone, not just a boolean for UTC or local time.  All
27133         callers changed.
27134         (Fformat_time_string, Fencode_time, Fcurrent_time_string)
27135         (Fcurrent_time_zone): New optional arg ZONE.
27136         (Fdecode_time, Fset_time_zone_rule): ZONE arg can now also take
27137         the same form as with the other new additions.
27138         (decode_time_zone): Remove; no longer needed.
27139         (tzvalbuf): Now file-scope.
27140         (emacs_getenv_TZ, emacs_setenv_TZ): New functions.
27141         (syms_of_editfns): Define Qwall.
27142         * src/editfns.c (mktime_z) [!HAVE_TZALLOC]:
27143         * src/systime.h (mktime_z, timezone_t, tzalloc, tzfree)
27144         [!HAVE_TZALLOC]:
27145         Remove; now supplied by gnulib.
27146         * src/emacs.c (main):
27147         * src/lisp.h (init_editfns): Adjust to init_editfns API change.
27149 2015-07-26  Shigeru Fukaya  <shigeru.fukaya@gmail.com>
27151         Fix infinite loop in delete-consecutive-dups
27152         * lisp/subr.el (delete-consecutive-dups): Work even if the last
27153         element is nil (Bug#20588).  Avoid rescan of a circular list in
27154         deletion of last element.
27156 2015-07-26  Martin Rudalics  <rudalics@gmx.at>
27158         Have `x-frame-geometry' return nil for terminal and initial
27159         frames (Bug#21132)
27160         * src/nsfns.m (Fx_frame_geometry):
27161         * src/xfns.c (Fx_frame_geometry): Return nil for initial and
27162         terminal frames.
27163         * src/w32fns.c (Fw32_frame_menu_bar_size, Fw32_frame_rect)
27164         (Fx_frame_geometry): Return nil for terminal frames
27166 2015-07-26  HOSOYA Kei  <hosoyakei.free@gmail.com>  (tiny change)
27168         * etc/tutorials/TUTORIAL.ja: Improve translation.
27170 2015-07-25  Eli Zaretskii  <eliz@gnu.org>
27172         Avoid crashes when w32 GUI functions are called in -batch
27173         * src/w32fns.c (Fx_frame_geometry, Fw32_frame_rect)
27174         (Fw32_frame_menu_bar_size, Fw32_send_sys_command): Don't call
27175         FRAME_W32_WINDOW for initial frame.  (Bug#21132)
27177         Fix flyspell-check-previous-highlighted-word
27178         * lisp/textmodes/flyspell.el
27179         (flyspell-check-previous-highlighted-word): Really accept a
27180         numeric argument, as the doc string describes.  Fix an off-by-one
27181         error in looking up overlays, so invocation with point immediately
27182         after a word would check that word.  Clarify the doc string as
27183         Suggested by N. Jackson <nljlistbox2@gmail.com>.  (Bug#21129)
27185 2015-07-24  Michael Albinus  <michael.albinus@gmx.de>
27187         Minor cleanup in tramp-tests.el
27188         * test/automated/tramp-tests.el (tramp-test31-*, tramp-test32-*):
27189         Implement using the documented interface
27190         `tramp-connection-properties', rather than with internal functions.
27192 2015-07-24  Harald Hanche-Olsen  <hanche@math.ntnu.no>  (tiny change)
27194         Pass lambdas to `skeleton-read'
27195         * lisp/skeleton.el (skeleton-read): Allow PROMPT to be a function.
27196         * lisp/textmodes/sgml-mode.el (sgml-attributes, sgml-value): Pass
27197         lambdas to `skeleton-read' (bug#20386).
27199 2015-07-24  Eli Zaretskii  <eliz@gnu.org>
27201         * INSTALL (DETAILED BUILDING AND INSTALLATION):
27202         Mention --without-imagemagick.
27204         Don't require GUI frames and mouse for Flyspell menus
27205         * lisp/textmodes/flyspell.el (flyspell-correct-word-before-point)
27206         (flyspell-emacs-popup): Require neither a GUI frame nor mouse
27207         support, since pop-up menus work with text terminals and can be
27208         controlled via the keyboard.
27210         Improve documentation of Flyspell commands
27211         * doc/emacs/fixit.texi (Spelling): Mention Flyspell commands that
27212         can be invoked via the keyboard.  Mention those commands by name
27213         and add them to the fn index.  (Bug#21125)
27215 2015-07-23  Michael Albinus  <michael.albinus@gmx.de>
27217         Fix some Tramp problems with HP-UX
27218         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
27219         Add "tab0" to stty call.
27220         * test/automated/tramp-tests.el (tramp-persistency-file-name):
27221         Set to nil.
27222         (tramp--test-hpux-p): New defun.
27223         (tramp--test-utf8): Use it.
27225 2015-07-22  Glenn Morris  <rgm@gnu.org>
27227         * build-aux/update-subdirs: Put "no-update-autoloads: t" in output.
27229 2015-07-22  Eli Zaretskii  <eliz@gnu.org>
27231         Fix point positioning in ffap-next-guess
27232         * lisp/ffap.el (ffap-url-at-point): Set ffap-string-at-point-region,
27233         as our callers expect.  This was clobbered as part of fixing
27234         bug#5673.  (Bug#21107)
27235         (ffap-gopher-at-point): Set ffap-string-at-point-region.
27237 2015-07-22  Martin Rudalics  <rudalics@gmx.at>
27239         * lisp/window.el (even-window-sizes): Fix customization type.
27241         Optionally even widths of `display-buffer' windows.  (Bug#21100)
27242         * lisp/window.el (quit-restore-window): Restore width if
27243         requested.
27244         (display-buffer-record-window): Record width when window is
27245         reused and horizontally combined.
27246         (even-window-sizes): New option to allow evening window widths.
27247         (even-window-heights): Defalias to `even-window-sizes'.
27248         (window--even-window-heights): Rename to
27249         `window--even-window-sizes'.  Handle side-by-side windows.
27250         (display-buffer-use-some-window): Call `window--even-window-sizes'
27251         instead of `window--even-window-heights'.
27252         * lisp/help.el (resize-temp-buffer-window): Fix indentation.
27253         * doc/lispref/windows.texi (Choosing Window Options): Describe
27254         `even-window-sizes'.
27255         (Coordinates and Windows): Fix typo.
27257 2015-07-22  Stephen Leake  <stephen_leake@stephe-leake.org>
27259         Add file name to autoload error messages
27260         * lisp/emacs-lisp/autoload.el (autoload-save-buffers):
27261         Add condition-case to add file name to error message.
27263 2015-07-22  Michael Albinus  <michael.albinus@gmx.de>
27265         * lisp/net/tramp-sh.el (tramp-ssh-controlmaster-options):
27266         Use 0.0.0.1 as test host.
27268 2015-07-21  Stefan Monnier  <monnier@iro.umontreal.ca>
27270         (advice--called-interactively-skip): Fix inf-loop (bug#21083)
27271         * lisp/emacs-lisp/nadvice.el (advice--called-interactively-skip):
27272         Fix inf-loop (bug#21083).
27274 2015-07-21  Glenn Morris  <rgm@gnu.org>
27276         * test/automated/package-test.el (package-test-signed):
27277         Update for recent changes.
27279         * test/automated/elisp-mode-tests.el
27280         (elisp-xref-finds-both-function-and-variable)
27281         (elisp-xref-finds-only-function-for-minor-mode):
27282         Update for recent xref name changes.
27284 2015-07-21  Dmitry Gutov  <dgutov@yandex.ru>
27286         Make eldoc timer non-repeatable
27287         * lisp/emacs-lisp/eldoc.el (eldoc-schedule-timer): Make the timer
27288         non-repeatable.  Since it's on post-command hook, that just wasted
27289         CPU cycles.
27291 2015-07-21  Michael Albinus  <michael.albinus@gmx.de>
27293         Mention `tramp-connection-properties' in NEWS
27295         Sync with Tramp repository
27296         * doc/misc/tramp.texi (Configuration): Note, that Tramp must be
27297         required prior changing its configuration.
27298         (Connection caching, Predefined connection information)
27299         (Remote shell setup): Fix typos.
27300         (Predefined connection information): Describe, how to overwrite
27301         parameters of `tramp-methods'.
27302         (Remote programs, Remote processes, Traces and Profiles):
27303         Simplify example.
27304         (Remote programs): Remove superfluous comment.
27305         * doc/misc/trampver.texi: Update release number.
27306         * lisp/net/tramp-cache.el (tramp-connection-properties):
27307         Adapt docstring.
27308         * lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file): New defun.
27309         (tramp-gvfs-handle-copy-file, tramp-gvfs-handle-rename-file): Use it.
27310         (tramp-gvfs-handle-make-directory): Reimplement PARENTS handling,
27311         "gvfs-mkdir -p ..." does not work robust.
27312         (tramp-gvfs-maybe-open-connection):
27313         Adapt `tramp-get-method-parameter' call.
27314         * lisp/net/tramp-sh.el (tramp-methods):
27315         Add `tramp-remote-shell-login' parameter where it fits.
27316         (tramp-get-remote-path): Use it.
27317         (tramp-make-copy-program-file-name): Fix quoting for "psftp" method.
27318         (all): Adapt `tramp-get-method-parameter' calls.
27319         * lisp/net/tramp.el (tramp-methods): Adapt docstring.
27320         (tramp-get-method-parameter): Replace argument METHOD by VEC.
27321         Check also for hits in `tramp-connection-properties'.  Adapt docstring.
27322         (tramp-get-remote-tmpdir): Cache only the local name of tmpdir.
27323         (all): Adapt `tramp-get-method-parameter' calls.
27324         * lisp/net/trampver.el: Update release number.
27325         * test/automated/tramp-tests.el (tramp--instrument-test-case):
27326         Add "^make-symbolic-link not supported$" to `debug-ignored-errors'.
27327         (tramp-test13-make-directory, tramp--test-adb-p)
27328         (tramp--test-smb-or-windows-nt-p): Simplify.
27329         (tramp--test-ftp-p, tramp--test-gvfs-p): New defuns.
27330         (tramp--test-special-characters): Fix docstring.  Add gvfs and
27331         ftp tests.
27332         (tramp--test-utf8): Fix docstring.
27334 2015-07-20  Dmitry Gutov  <dgutov@yandex.ru>
27336         Add new xref-query-replace command
27337         * lisp/progmodes/xref.el (xref--match-buffer-bounds):
27338         New function, extracted from xref-pulse-momentarily.
27339         (xref-query-replace): New command.
27340         (xref--query-replace-1): New helper function.
27341         (xref--xref-buffer-mode-map): Add `r' binding.
27343 2015-07-20  Paul Eggert  <eggert@cs.ucla.edu>
27345         Simplify icalendar decoding of Z dates
27346         * lisp/calendar/icalendar.el (icalendar--decode-isodatetime):
27347         Simplify calculation of time strings with trailing "Z".
27349 2015-07-19  Dmitry Gutov  <dgutov@yandex.ru>
27351         Do not corrupt grep-find-ignored-files
27352         * lisp/progmodes/project.el (project-ignores): Change the order of
27353         the arguments to nconc, in order not to corrupt grep-find-ignored-files.
27355         Add xref-match-item, and use it
27356         * lisp/progmodes/xref.el (xref-match-bounds): New generic function.
27357         (xref-file-location): Add reader for the column slot.
27358         (xref-match-item): New class.
27359         (xref-match-bounds): A method implementation for it.
27360         (xref-make-match): New constructor function.
27361         (xref--current-item): New private variable.
27362         (xref-pulse-momentarily): Use it.
27363         (xref--pop-to-location): Change the first argument to an xref
27364         item, instead of location, bind xref--current-item.
27365         Update all callers.
27366         (xref-next-line, xref-prev-line, xref--next-error-function)
27367         (xref--mouse-2): Look for the property `xref-item',
27368         instead of `xref-location'.
27369         (xref--item-at-point): Likewise.  This function replaces
27370         `xref-location-at-point'.  Update all callers.
27371         (xref--insert-xrefs): Add the `xref-item' text property, instead
27372         of `xref-location'.
27373         (xref--collect-match): Use xref-make-match.
27375         * lisp/progmodes/xref.el (xref-item): Rename from `xref--xref'.
27376         Update all references.
27378         * lisp/progmodes/xref.el (xref--xref): Rename the `description'
27379         slot to `summary'.
27381         vc-hg: Perform the print-log call asynchronously
27382         * lisp/vc/vc-hg.el (vc-hg-print-log): Perform the call
27383         asynchronously (bug#21067).
27385         Add xref-after-jump-hook and xref-after-return-hook
27386         * lisp/progmodes/xref.el (xref-after-jump-hook)
27387         (xref-after-return-hook): New hooks.
27388         (xref-pulse-on-jump): Remove, in favor of the above.
27389         (xref-pulse-momentarily): Rename from xref--maybe-pulse.
27390         (xref--pop-to-location, xref--display-position)
27391         (xref-pop-marker-stack): Use the new hooks, as requested in
27392         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00213.html
27394 2015-07-19  Bozhidar Batsov  <bozhidar@batsov.com>
27396         * lisp/progmodes/js.el (js-mode): Correct the lighter.
27398 2015-07-19  Leo Liu  <sdl.web@gmail.com>
27400         Fix a bug in cfengine3-mode
27401         * lisp/progmodes/cfengine.el (cfengine3-mode): Handle nil
27402         eldoc-documentation-function.
27404 2015-07-18  Julien Danjou  <julien@danjou.info>
27406         sieve-mode: support "body" test command
27407         * lisp/gnus/sieve-mode.el (sieve-font-lock-keywords):
27408         Add missing "body" test command.
27410 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
27412         Fix info-apropos when the default encoding is Latin-N
27413         * lisp/info.el (Info-find-node-2): Reset the buffer's encoding to
27414         'undecided', so that it is set to the encoding of the Info file we
27415         are about to insert.  Otherwise, 'info-apropos' will fail to find
27416         some index nodes in some UTF-8 encoded files, if the buffer's
27417         previous encoding is Latin-N or some such.
27419 2015-07-18  Ivan Andrus  <darthandrus@gmail.com>
27421         * lisp/epg.el (epg--start): Check that gpgconf can be found
27422         before calling it.
27424         Expose more file types to OS X that Emacs understands
27425         * nextstep/Cocoa/Emacs.base/Contents/Info.plist: Add editor role for
27426         sty, dtx, json, and org files.  Export UTIs for el, elc, and org files.
27428 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
27430         Fix visual-order cursor movement when lines are truncated
27431         * src/xdisp.c (Fmove_point_visually): When lines are truncated,
27432         simulate display in a window of infinite width, to allow move_it_*
27433         functions reach positions outside of normal window dimensions.
27434         Remove code that tried to handle a subset of these situations by
27435         manual iteration of buffer text.  (Bug#17777)
27437         Fix following Info cross-references to anchors
27438         * lisp/info.el (Info-read-subfile): Add to the returned value the
27439         length of subfile preamble, after converting it to file's byte
27440         offset, as expected by the caller.  Use bufferpos-to-filepos.
27441         (Info-find-node-2): If searching for a node with a
27442         1000-character slop fails, try again with a 10000-character slop,
27443         to account for known bugs in Texinfo 5.0 and 5.1.  (Bug#21055)
27444         * lisp/international/mule-util.el (bufferpos-to-filepos): New
27445         function.
27446         * etc/NEWS: Mention bufferpos-to-filepos.
27448         Fix scrolling backwards on TTY frames under scroll-conservatively
27449         * src/xdisp.c (move_it_vertically_backward): Fix off-by-one error
27450         in moving backwards on TTY frames.  (Bug#21080)
27452 2015-07-17  Dmitry Gutov  <dgutov@yandex.ru>
27454         Consider a jsdoc tag to be a beginning of a paragraph as well
27455         * lisp/progmodes/js.el (js-mode): Change c-paragraph-start to
27456         consider a jsdoc tag to be a beginning of a paragraph as well.
27458 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
27460         * lisp/emacs-lisp/package.el: Fix warnings.
27462         * lisp/emacs-lisp/package.el (package-buffer-info):
27463         Add author and maintainers to `package-buffer-info'.
27465         * lisp/emacs-lisp/package.el: Many small changes.
27466         Replace all instances of 'face with 'font-lock-face.
27467         (describe-package-1): Improve some strings and move the summary
27468         up the list.
27469         (package-install-file): Update docstring.
27470         (package-menu-hide-package): Bind to `H'.
27472         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
27473         Fix error handling.
27475 2015-07-17  Paul Eggert  <eggert@cs.ucla.edu>
27477         Fix hang with large yanks This should fix the bug fixed by Mike
27478         Crowe's patch in:
27479         https://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00106.html
27480         A problem in this area has been reported by several users; see
27481         Bug#16737, Bug#17101, Bug#17026, Bug#17172, Bug#19320, Bug#20283.
27482         This fix differs from Mike Crowe's patch in that it should avoid a
27483         race condition that could lose SIGIO signals.  ignore_sigio dates
27484         back to the 1980s when some platforms couldn't block signals, and
27485         could only ignore them, which led to races when signals arrived
27486         while being ignored.  We shouldn't have to worry about those old
27487         platforms now.
27488         * src/dispextern.h, src/sysdep.c (ignore_sigio): Remove.
27489         * src/emacs.c (shut_down_emacs):
27490         Don't call ignore_sigio; unrequest_sigio should suffice.
27491         * src/keyboard.c (kbd_buffer_store_buffered_event):
27492         Use unrequest_sigio, not ignore_sigio.
27493         (kbd_buffer_get_event):
27494         Call request_sigio when getting the ball rolling again.
27496 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
27498         * lisp/obsolete/longlines.el (longlines-search-function):
27499         Fallback on `isearch-search-fun-default'.
27501 2015-07-17  Tassilo Horn  <tsdh@gnu.org>
27503         Support @-mentions
27504         * lisp/net/rcirc.el (rcirc-completion-at-point): Support completion
27505         of mentions/messages with @nick instead of just nick.
27507 2015-07-16  Michael Albinus  <michael.albinus@gmx.de>
27509         Fix bug#20943
27510         * lisp/autorevert.el (auto-revert-handler): Do not check for
27511         `buffer-modified-p'.
27512         * lisp/files.el (buffer-stale--default-function): Check for
27513         `buffer-modified-p'.
27514         * test/automated/auto-revert-tests.el
27515         (auto-revert-test02-auto-revert-mode-dired): Adapt test.
27517 2015-07-16  Ari Roponen  <ari.roponen@gmail.com>
27519         Fix delete-dups bug on long lists
27520         * lisp/subr.el (delete-dups):
27521         Don't mistakenly keep some dups when applied to long lists.
27523 2015-07-16  Paul Eggert  <eggert@cs.ucla.edu>
27525         Better heuristic for C stack overflow
27526         Improve the heuristic for distinguishing stack overflows from
27527         other SIGSEGV causes (Bug#21004).  Corinna Vinschen explained that
27528         the getrlimit method wasn't portable to Cygwin; see:
27529         https://www.cygwin.com/ml/cygwin/2015-07/msg00092.html
27530         Corinna suggested pthread_getattr_np but this also has problems.
27531         Instead, replace the low-level system stuff with a simple
27532         heuristic based on known good stack addresses.
27533         * src/eval.c, src/lisp.h (near_C_stack_top): New function.
27534         * src/sysdep.c: Don't include <sys/resource.h>.
27535         (stack_direction): Remove.  All uses removed.
27536         (stack_overflow): New function.
27537         (handle_sigsegv): Use it instead of incorrect getrlimit heuristic.
27538         Make SEGV fatal in non-main threads.
27540 2015-07-16  Daiki Ueno  <ueno@gnu.org>
27542         epg: Automatically start pinentry server
27543         * lisp/epg-config.el (epg-gpgconf-program): New variable.
27544         * lisp/epg.el (epg--start): Call `pinentry-start' if
27545         allow-emacs-pinentry is set in ~/.gnupg/gpg-agent.conf.
27547 2015-07-15  Katsumi Yamaoka  <yamaoka@jpl.org>
27549         * lisp/gnus/nnimap.el: Fix my last bogus change.
27550         Reinstall Stefan Monnier's change that was made in
27551         <83d824bc4041332f338ad7e5e830f443535aa300>.
27553 2015-07-15  Paul Eggert  <eggert@cs.ucla.edu>
27555         Merge from gnulib
27556         This incorporates:
27557         2015-07-05 acl-permissions: Document FreeBSD ACL_TYPE_NFS4 acls
27558         2015-07-05 acl-permissions: Fix on FreeBSD
27559         2015-07-05 file-has-acl, acl-permissions: fix some more HP-UX typos
27560         * lib/acl-internal.c, lib/acl-internal.h, lib/get-permissions.c:
27561         * lib/set-permissions.c: Copy from gnulib.
27563         Port to stricter C99
27564         * src/keyboard.h (kbd_buffer_store_event_hold):
27565         Don't return a void expression.
27567 2015-07-15  Xue Fuqiao  <xfq.free@gmail.com>
27569         * doc/emacs/frames.texi (Creating Frames):
27570         Fix the command `C-x 5 m' runs.
27572 2015-07-14  Michael Albinus  <michael.albinus@gmx.de>
27574         New autorevert tests
27575         * test/automated/auto-revert-tests.el: New file.
27577 2015-07-14  Paul Eggert  <eggert@cs.ucla.edu>
27579         Clear gcprolist etc. after stack overflow
27580         After stack overflow, command_loop calls init_eval, and this needs to
27581         clear gcprolist and byte_stack_list (Bug#20996).
27582         * src/alloc.c (init_alloc):
27583         Move gcprolist and byte_stack_list initialization from here ...
27584         * src/eval.c (init_eval): ... to here.
27586 2015-07-13  Xue Fuqiao  <xfq.free@gmail.com>
27588         * doc/emacs/windows.texi (Pop Up Window): Fix the description
27589         of `C-x 4 m'.
27591 2015-07-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
27593         Avoid deprecated enums in mac-ct font backend driver
27594         * src/macfont.m (mac_font_copy_default_descriptors_for_language)
27595         (mac_ctfont_get_advance_width_for_glyph)
27596         (mac_ctfont_get_bounding_rect_for_glyph): Avoid deprecated enums.
27598         Cache font family in mac-ct font backend driver
27599         * src/macfont.m (macfont_family_cache): New variable.
27600         (syms_of_macfont): Initialize it.
27601         (macfont_available_families_cache): New variable.
27602         (macfont_invalidate_family_cache, macfont_get_family_cache_if_present)
27603         (macfont_set_family_cache, macfont_invalidate_available_families_cache)
27604         (macfont_handle_font_change_notification)
27605         (macfont_init_font_change_handler)
27606         (macfont_copy_available_families_cache): New functions.
27607         (macfont_create_family_with_symbol): Use font family caches.
27608         (macfont_list, macfont_list_family):
27609         Use macfont_copy_available_families_cache instead of
27610         mac_font_create_available_families.
27612 2015-07-12  Dmitry Gutov  <dgutov@yandex.ru>
27614         Show the default value in the prompt
27615         * lisp/progmodes/xref.el: Add `M-?' binding for
27616         xref-find-references.  Declare functions `grep-read-files' and
27617         `grep-expand-template'.
27618         (xref--read-identifier): Show the default value in the prompt.
27620         * lisp/progmodes/xref.el (xref-find-regexp): When called with
27621         prefix argument, ask for file patterns to search as well.  When
27622         prompting for the directory, require an existing one.
27623         (xref-collect-matches): Add a new argument, FILES.  Use it in the
27624         above function.
27626         Add `project-ignores'
27627         * lisp/progmodes/project.el (project-ignores): New generic
27628         function, and an implementation for the VC project type.
27629         * lisp/progmodes/xref.el (xref--rgrep-command): Split, as a
27630         variant of rgrep-default-command that handles a generic list of
27631         ignores.
27632         (xref-collect-matches): Use it, and pass through to it the value
27633         of the newly added argument.
27634         (xref-find-regexp): Handle ignored paths within the project.
27635         Remove outdated comment.
27636         * lisp/vc/vc.el (vc-default-ignore-completion-table):
27637         Skip the comments and the empty lines.
27639 2015-07-12  Xue Fuqiao  <xfq.free@gmail.com>
27641         * doc/emacs/buffers.texi (Misc Buffer): Add a cross reference.
27643 2015-07-11  Eric Abrahamsen  <eric@ericabrahamsen.net>
27645         gnus-registry.el: Correct function argument order
27646         * lisp/gnus/gnus-registry.el (gnus-registry--set/remove-mark):
27647         Reverse the order of function arguments.
27649 2015-07-11  Dmitry Gutov  <dgutov@yandex.ru>
27651         Bind grep-highlight-matches to nil
27652         * lisp/progmodes/xref.el (xref-collect-matches):
27653         Bind grep-highlight-matches to nil (bug#20728).
27655 2015-07-11  Nikolaus Rath  <Nikolaus@rath.org>
27657         nnimap.el: Fix IMAP message size parsing
27658         * lisp/gnus/nnimap.el (nnimap-transform-headers):
27659         Don't assume that UID comes before RFC822.SIZE.
27661 2015-07-10  Stefan Monnier  <monnier@iro.umontreal.ca>
27663         * lisp/gnus/nnimap.el: Clean up "unused var" warnings
27664         (auth-source-creation-prompts): Declare.
27665         (nnimap-retrieve-headers, nnimap-status-message)
27666         (nnimap-request-create-group, nnimap-request-delete-group)
27667         (nnimap-close-group, nnimap-request-move-article)
27668         (nnimap-request-accept-article, nnimap-request-newgroups)
27669         (nnimap-request-post, nnimap-dummy-active-number)
27670         (nnimap-save-mail-spec, nnimap-get-groups): Add _ to unused vars.
27671         (nnimap-parse-flags): Remove unused var `p'.
27672         (nnimap-retrieve-group-data-early): Remove unused var `groups'.
27673         (nnimap-flags-to-marks): Remove unused var `totalp'.
27675 2015-07-10  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
27677         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 20MB.
27679 2015-07-10  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
27681         * src/macfont.m (macfont_list): Ignore font families lacking
27682         font descriptors.
27684 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
27686         Don't check the exit status, it can be misleading
27687         * lisp/progmodes/xref.el (xref-collect-matches): Don't check the
27688         exit status, it can be misleading.
27690         Introduce a Project API
27691         * lisp/progmodes/project.el: New file.
27692         * lisp/cedet/ede.el (project-try-ede): New function.
27693         (project-root): New implementation.
27694         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
27695         Set project-search-path-function.
27696         (elisp--xref-find-references): Delegate some logic to
27697         project-search-path.
27698         (elisp-search-path): New function.
27699         (elisp-xref-find): Don't implement `matches' anymore.
27700         * lisp/progmodes/etags.el: Don't implement `matches'.
27701         Delegate some logic to project-search-path.
27702         (etags-search-path): New function.
27703         * lisp/progmodes/xref.el (xref-find-function):
27704         Remove `matches' from the API.
27705         (xref-find-regexp): Move whatever common logic was in elisp and
27706         etags implementations, and search the directories returned by
27707         project-directories and project-search-path.
27709 2015-07-09  Nicolas Petton  <nicolas@petton.fr>
27711         * test/automated/map-tests.el (test-map-delete-return-value):
27712         Uncomment test.
27714         Add support for gv.el in map.el
27715         * lisp/emacs-lisp/map.el (map-elt, map-delete): Declare a gv-expander.
27716         * lisp/emacs-lisp/map.el (map-put): Refactor using `setf' and `map-elt'.
27717         * test/automated/map-tests.el: Update tests to work with the new
27718         implementations of map-elt and map-put.
27720 2015-07-09  Glenn Morris  <rgm@gnu.org>
27722         * lisp/emacs-lisp/debug.el (debug-help-follow): Use describe-symbol.
27724 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
27726         Syntax-propertize until the end of the line first
27727         * lisp/progmodes/xref.el (xref--collect-match): Syntax-propertize
27728         until the end of the line first.
27730 2015-07-09  Xue Fuqiao  <xfq.free@gmail.com>
27732         * doc/emacs/files.texi (File Archives): Add a cross reference.
27734 2015-07-08  Nikolaus Rath  <Nikolaus@rath.org>
27736         nnimap.el: Handle plain value for nnimap-stream
27737         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Always query
27738         capabilities, so that a 'plain value for the `nnimap-stream' server
27739         variable is handled correctly.
27740         * doc/misc/gnus.texi (Customizing the IMAP Connection):
27741         Document the 'plain option.
27743 2015-07-08  Leo Liu  <sdl.web@gmail.com>
27745         Fix bug in thing-at-point--bounds-of-well-formed-url
27746         * lisp/thingatpt.el (thing-at-point--bounds-of-well-formed-url): Make
27747         sure boundary contains current point.
27749 2015-07-08  Dmitry Gutov  <dgutov@yandex.ru>
27751         * lisp/progmodes/xref.el (xref-collect-matches): Use `nreverse'
27752         in the end.
27754         Declare whitespace-line-column a safe file-local
27755         * lisp/whitespace.el (whitespace-line-column): Declare to be a
27756         safe file-local when the value is an integer.
27758 2015-07-08  Eric Abrahamsen  <eric@ericabrahamsen.net>
27760         gnus-group.el: Check if group names are already strings
27761         * lisp/gnus/gnus-group.el (gnus-group-group-name):
27762         The group name may already be a string.
27763         Specifically, in the group list reached from the *Server* buffer,
27764         the 'gnus-group text property returns a string.  Everywhere else
27765         it returns a symbol.
27767         nnimap.el: Remove unused let variables
27768         * lisp/gnus/nnimap.el (nnimap-request-group): Variables are not used.
27770 2015-07-08  Eli Zaretskii  <eliz@gnu.org>
27772         Support "maximized" property of runemacs's shortcut
27773         * nt/runemacs.c (WinMain): If runemacs is invoked "maximized", pass
27774         the '--maximized' switch to Emacs.
27776         Support "minimized" property of runemacs's shortcut
27777         * nt/runemacs.c (WinMain): If runemacs is invoked "minimized",
27778         pass the '--iconic' switch to Emacs.  (Bug#20991)
27780 2015-07-08  Xue Fuqiao  <xfq.free@gmail.com>
27782         Doc fixes
27783         * doc/emacs/files.texi (Diff Mode): Fix the description of `C-c
27784         C-w' in Diff mode.
27785         * doc/emacs/arevert-xtra.texi (Auto Reverting the Buffer Menu):
27786         Add a cross reference.
27788 2015-07-08  Nicolas Richard  <youngfrog@members.fsf.org>
27790         * lisp/obsolete/landmark.el: Add Obsolete-since header.
27792 2015-07-07  Glenn Morris  <rgm@gnu.org>
27794         * test/automated/ert-tests.el (ert-test-deftest):
27795         Update for recent changes.
27797 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
27799         (gv-setter, gv-synthetic-place, gv-delay-error): New funs/macros
27800         * lisp/emacs-lisp/gv.el (gv-setter): New function.
27801         (gv-invalid-place): New error.
27802         (gv-get): Use them.
27803         (gv-synthetic-place, gv-delay-error): New places.
27804         * lisp/emacs-lisp/cl-generic.el (cl--generic-setf-rewrite): Remove.
27805         (cl-defgeneric, cl-defmethod): Use gv-setter.
27807 2015-07-07  Fabrice Popineau  <fabrice.popineau@gmail.com>
27809         Make vc-tests work with MSYS svn program
27810         * lisp/vc/vc-svn.el (vc-svn-create-repo): Fix the file:// URL when
27811         svn is an MSYS program.
27813 2015-07-07  Ken Brown  <kbrown@cornell.edu>
27815         Improve recent change to emacsclient on Cygwin
27816         * lisp/server.el (server-process-filter): Remove redundant check
27817         that 'cygwin-convert-file-name-from-windows' is defined as a
27818         function on Cygwin.  Don't call that function unless its argument
27819         starts with a drive letter.
27821 2015-07-07  Artur Malabarba  <bruce.connor.am@gmail.com>
27823         * lisp/emacs-lisp/package.el (package-compute-transaction):
27824         Fix void variable due to `found-something' being in the wrong `let'.
27826 2015-07-07  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
27828         * lisp/play/landmark.el: Move to lisp/obsolete/.
27830 2015-07-07  Martin Rudalics  <rudalics@gmx.at>
27832         Have `x-show-tip' handle `right' and `bottom' frame parameters
27833         * src/nsfns.m (compute_tip_xy, Fx_show_tip)
27834         * src/w32fns.c (compute_tip_xy, Fx_show_tip)
27835         * src/xfns.c (compute_tip_xy, Fx_show_tip): Allow aligning
27836         tooltips also via `right' and `bottom' frame parameters.
27838 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
27840         Add online-help support to describe types
27841         * lisp/help-fns.el (describe-symbol-backends): Move to help-mode.el.
27842         (describe-symbol): Improve the selection of default.
27843         * lisp/help-mode.el: Require cl-lib.
27844         (describe-symbol-backends): Move from help-fns.el.
27845         (help-make-xrefs): Use it.
27846         * lisp/emacs-lisp/cl-extra.el (describe-symbol-backends): Add entry
27847         for types.
27848         (cl--typedef-regexp): New const.
27849         (find-function-regexp-alist): Add entry for types.
27850         (cl-help-type, cl-type-definition): New buttons.
27851         (cl-find-class): New function.
27852         (cl-describe-type): New command.
27853         (cl--describe-class, cl--describe-class-slot)
27854         (cl--describe-class-slots): New functions, moved from eieio-opt.el.
27855         * lisp/emacs-lisp/cl-generic.el (cl--generic-method-documentation)
27856         (cl--generic-all-functions, cl--generic-specializers-apply-to-type-p):
27857         New functions.  Moved from eieio-opt.el.
27858         (cl--generic-class-parents): New function, extracted from
27859         cl--generic-struct-specializers.
27860         (cl--generic-struct-specializers): Use it.
27861         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Use pcase-dolist.
27862         Improve constructor's docstrings.
27863         (cl-struct-unknown-slot): New error.
27864         (cl-struct-slot-offset): Use it.
27865         * lisp/emacs-lisp/cl-preloaded.el (cl-struct-define): Record the type
27866         definition in current-load-list.
27867         * lisp/emacs-lisp/eieio-core.el (eieio--known-slot-names): New var.
27868         (eieio--add-new-slot): Set it.
27869         (eieio-defclass-internal): Use new name for current-load-list.
27870         (eieio-oref): Add compiler-macro to warn about unknown slots.
27871         * lisp/emacs-lisp/eieio.el (defclass): Update eieio--known-slot-names
27872         as compile-time as well.  Improve constructor docstrings.
27873         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
27874         (eieio--help-print-slot, eieio-help-class-slots): Move to cl-extra.el.
27875         (eieio-class-def): Remove button.
27876         (eieio-help-constructor): Use new name for load-history element.
27877         (eieio--specializers-apply-to-class-p, eieio-all-generic-functions)
27878         (eieio-method-documentation): Move to cl-generic.el.
27879         (eieio-display-method-list): Use new names.
27880         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression):
27881         Add "define-linline".
27882         (lisp-fdefs): Remove "defsubst".
27883         (el-fdefs): Add "defsubst", "cl-defsubst", and "define-linline".
27884         * lisp/emacs-lisp/macroexp.el (macroexp--warned): New var.
27885         (macroexp--warn-and-return): Use it to avoid inf-loops.
27886         Add `compile-only' argument.
27888 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
27890         python.el: Fix local/remote shell environment setup
27891         * lisp/progmodes/python.el (python-shell-with-environment):
27892         Fix remote/local environment setup.
27893         * test/automated/python-tests.el (python-shell-with-environment-1)
27894         (python-shell-with-environment-2): New tests.
27896 2015-07-06  Glenn Morris  <rgm@gnu.org>
27898         * lisp/simple.el (set-variable): Tweak recent doc fix.
27900 2015-07-06  Ken Brown  <kbrown@cornell.edu>
27902         * src/sysdep.c (handle_sigsegv) [CYGWIN]: Increase STACK_DANGER_ZONE.
27904 2015-07-06  Glenn Morris  <rgm@gnu.org>
27906         * lisp/simple.el (set-variable): Use user-error for type mismatch.
27908 2015-07-06  Ken Brown  <kbrown@cornell.edu>
27910         * src/emacs.c (main): Don't increase the stack size on Cygwin.
27912 2015-07-06  Stefan Monnier  <monnier@iro.umontreal.ca>
27914         (describe-symbol): Rewrite describe-function-or-variable
27915         * lisp/help-fns.el (describe-symbol-backends): New var.
27916         (help-xref-stack-item): Declare.
27917         (describe-symbol): Rename from describe-function-or-variable.
27918         Rewrite using describe-symbol-backends instead of help-xref-interned.
27919         * lisp/help.el (help-map): Use it.
27920         * lisp/help-mode.el (help-symbol, help-follow-symbol): Use it.
27921         (help-xref-interned): Make it into an obsolete alias.
27923         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-save): Don't ignore
27924         `file' arg (bug#20972).  Always use utf-8-emacs.  Use with-temp-buffer
27925         and cl-letf.
27927 2015-07-06  Wolfgang Jenkner  <wjenkner@inode.at>
27929         Fix parsing glitches in dired-mark-sexp (bug#13575)
27930         * lisp/dired-x.el (dired-x--string-to-number): New function.
27931         (dired-mark-sexp): Use it.  Tweak dired-re-inode-size.  Fix usage
27932         of directory-listing-before-filename-regexp.  Consider
27933         forward-word harmful and replace it.  Add more verbiage in
27934         comments and doc string.
27936 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
27938         python.el: Respect process environment for remote shells
27939         * lisp/progmodes/python.el
27940         (python-shell-calculate-process-environment): Calculate
27941         process-environment or tramp-remote-process-environment depending
27942         whether current file is remote.
27943         (python-shell-calculate-exec-path): Calculate exec-path or
27944         tramp-remote-path depending whether current file is remote.
27945         (python-shell-with-environment): New macro.
27946         (python-shell-prompt-detect, python-shell-calculate-command)
27947         (python-shell-make-comint, python-check): Use it.
27949         python.el: Avoid making let-bound defvars buffer local  (Bug#18244)
27950         * lisp/progmodes/python.el (python-shell--interpreter)
27951         (python-shell--interpreter-args): New vars.
27952         (inferior-python-mode, python-shell-make-comint): Use them.
27954         python.el: Fixes for IPython 3.x  (Bug#20580)
27955         * lisp/progmodes/python.el:
27956         (python-shell-completion-native-setup): Fix IPython 3.x setup.
27957         (python-shell-completion-native-get-completions): Fix timeout
27958         logic.
27960         python.el: Fix mark-defun behavior  (Bug#19665)
27961         * lisp/progmodes/python.el (python-mark-defun): New function.
27962         * test/automated/python-tests.el (python-mark-defun-1)
27963         (python-mark-defun-2, python-mark-defun-3): New tests.
27965 2015-07-05  Glenn Morris  <rgm@gnu.org>
27967         * lisp/progmodes/f90.el (f90-type-def-re): Handle attribute lists
27968         such as "extends(parent), private".  (Bug#20969)
27969         * test/automated/f90.el (f90-test-bug20969, f90-test-bug20969b):
27970         New tests.
27972 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
27974         Avoid duplicate calls to current_timespec
27975         * src/process.c (wait_reading_process_output):
27976         Cache current_timespec results as long as we're not waiting.
27978 2015-07-05  Ian Kelling  <ian@iankelling.org>
27980         Avoid returning early reading process output due to SIGIO
27981         * src/process.c (wait_reading_process_output): Extend the behavior of
27982         not breaking due to not finding output when a timer has lowered the
27983         timeout to include when SIGIO lowers the timeout.
27985         Don't return as fast reading any process output
27986         * src/process.c (wait_reading_process_output):
27987         The patch for Bug#17647 returns too fast sometimes when reading
27988         from any processes.  Revert part of it, and limit the timeout more
27989         sensibly (Bug#20978).
27991         Refactor timeouts in wait_reading_process_output
27992         * src/process.c (wait_reading_process_output):
27993         Simplify timeouts with an enum.  Remove a redundant condition.
27994         (Bug#20978)
27996         Remove ADAPTIVE_READ_BUFFERING ifdef
27997         * src/process.c (make-process, make-pipe-process, deactivate_process)
27998         (wait_reading_process_output, read_process_output, send_process)
27999         (init_process_emacs): ifdef ADAPTIVE_READ_BUFFERING was originally
28000         added in case there was an operating system in which it was not
28001         useful.  That was 11 years ago and it hasn't happened.  Make
28002         development easier by not considering the effect of changes on a
28003         theoretical OS where this is disabled (Bug#20978).
28005 2015-07-05  Glenn Morris  <rgm@gnu.org>
28007         * lisp/simple.el (set-variable): Doc fix.
28009         * lisp/progmodes/fortran.el (fortran-line-length): Doc fix.
28011 2015-07-05  Ian Kelling  <ian@iankelling.org>
28013         accept-process-output fix
28014         This is a followon to the fix for bug#17647 (Bug#20976).
28015         * src/process.c (status_notify): Fix too high return in some cases.
28017 2015-07-05  Artur Malabarba  <bruce.connor.am@gmail.com>
28019         * lisp/character-fold.el (character-fold-table):
28020         Only fold decompositions if at least one character is non-spacing.
28021         (Bug#20975)
28023 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
28025         Merge from gnulib
28026         This incorporates:
28027         2015-07-04 file-has-acl, acl-permissions: fix HP-UX typos
28028         2015-07-03 set-permissions.c: adjust acl_from_mode's cpp guard
28029         2015-07-02 update-copyright: fix test failure with perl >= 5.22
28030         2015-07-01 gnulib-common.m4: change the ARFLAGS default to 'cr'
28031         2015-07-01 acl: fix definition of acl_from_mode on FreeBSD
28032         * build-aux/update-copyright, doc/misc/texinfo.tex, lib/acl-internal.h:
28033         * lib/set-permissions.c, m4/gnulib-common.m4: Copy from gnulib.
28035 2015-07-05  Christoph Wedler  <christoph.wedler@sap.com>
28037         Respect `prog-indentation-context' in python.el
28038         * lisp/progmodes/python.el (python-indent-guess-indent-offset)
28039         (python-indent-context, python-indent--calculate-indentation)
28040         (python-info-current-defun)
28041         (python-info-dedenter-opening-block-message)
28042         (python-info-line-ends-backslash-p)
28043         (python-info-beginning-of-backslash)
28044         (python-info-continuation-line-p): Use `prog-widen'.
28045         (python-indent--calculate-indentation)
28046         (python-indent--calculate-levels)
28047         (python-indent-calculate-indentation): Use `prog-first-column'.
28048         (python-indent--calculate-levels): Simplify.
28049         Ignore also initial empty lines for syntax calculation.
28050         * lisp/progmodes/python.el (python-indent-context): Return
28051         :no-indent for first non-empty line, not just in line 1.
28052         * test/automated/python-tests.el (python-indent-base-case)
28053         (python-indent-inside-paren-1, python-indent-inside-paren-2)
28054         (python-indent-inside-paren-3, python-indent-inside-paren-4)
28055         (python-indent-inside-paren-5, python-indent-inside-paren-6)
28056         (python-indent-after-backslash-1)
28057         (python-indent-after-backslash-2)
28058         (python-indent-after-backslash-3)
28059         (python-indent-after-backslash-4, python-indent-inside-string-1):
28060         Expect :no-indent for first non-empty line.
28062 2015-07-04  Daniel Colascione  <dancol@dancol.org>
28064         Factor isearch word description into new function
28065         * lisp/isearch.el (isearch--describe-word-mode): New function.
28066         (isearch-message-prefix, isearch-query-replace): Use it.
28068 2015-07-04  Eli Zaretskii  <eliz@gnu.org>
28070         Fix mouse pointer on w32 when a menu is active
28071         * src/w32fns.c (w32_wnd_proc): Don't change the mouse pointer
28072         shape while a menu is in use.  This started happening since we now
28073         send WM_EMACS_SHOWCURSOR messages when the mouse moves.
28075 2015-07-04  Martin Rudalics  <rudalics@gmx.at>
28077         Fix processing of alpha parameter for Windows tip frames  (Bug#17344)
28078         * src/w32fns.c (x_create_tip_frame): Fix processing alpha
28079         parameter.  (Bug#17344)
28081         Have `compilation-set-window' use right window for getting fringes
28082         (Bug#20829)
28083         * lisp/progmodes/compile.el (compilation-set-window):
28084         Take `window-fringes' from argument window.
28086 2015-07-03  Glenn Morris  <rgm@gnu.org>
28088         Update eieio tests for recent eieio-core change.
28089         * test/automated/eieio-test-persist.el (persist-test-save-and-compare):
28090         * test/automated/eieio-tests.el
28091         (eieio-test-32-slot-attribute-override-2):
28092         Replace the deleted eieio--class-v with cl--find-class.
28094 2015-07-03  Martin Rudalics  <rudalics@gmx.at>
28096         Fix some issues with `window-divider-mode'
28097         * lisp/frame.el (window-divider-default-places): New option.
28098         (window-divider-mode): Remove option.
28099         (window-divider-mode): Make it a "regular" minor mode.
28100         (window-divider-width-valid-p): Drop frame- prefix.
28101         (window-divider-mode-apply): New argument ENABLE.  Drop frame-
28102         prefix.  Handle `window-divider-default-places'.
28103         (frame--window-divider-mode-set-and-apply): Remove.
28104         (window-divider-default-bottom-width)
28105         (window-divider-default-right-width): Drop :group entries.
28106         * lisp/menu-bar.el (menu-bar-bottom-and-right-window-divider)
28107         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
28108         (menu-bar-no-window-divider): Set `window-divider-default-places'
28109         and call `window-divider-mode'.
28110         * doc/emacs/frames.texi (Window Dividers): Document
28111         `window-divider-default-places'.
28113 2015-07-02  Xue Fuqiao  <xfq.free@gmail.com>
28115         * doc/emacs/display.texi (Displaying Boundaries):
28116         * doc/emacs/search.texi (Word Search): Add cross references.
28118 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
28120         -batch should not affect ‘’ -> `' display
28121         * lisp/startup.el (command-line): Do the ‘’ -> `' check even if
28122         -batch (Bug#20926).
28124 2015-07-02  Stefan Monnier  <monnier@iro.umontreal.ca>
28126         * lisp/emacs-lisp/eieio-core.el (eieio--class-v): Remove
28127         * lisp/emacs-lisp/eieio-core.el, lisp/emacs-lisp/eieio.el:
28128         * lisp/emacs-lisp/eieio-opt.el, lisp/emacs-lisp/eieio-compat.el:
28129         Use cl--find-class instead.
28131         * lisp/term/xterm.el (xterm--query): Fix paren typo (bug#20951).
28133 2015-07-02  Martin Rudalics  <rudalics@gmx.at>
28135         Some further fixes in Change Window node (Bug#20183)
28136         * doc/emacs/windows.texi (Change Window): Replace "rearranging"
28137         by "resizing" in section title.  Add some concept indices.
28138         Suggested by N. Jackson (Bug#20183).
28140         * doc/emacs/windows.texi (Change Window): Reference window
28141         dividers.
28143         Document new `window-divider-mode'.
28144         * lisp/frame.el (window-divider-mode): Fix doc-string.
28145         * doc/emacs/frames.texi (Window Dividers): New section.
28147         Improve accessibility of window dividers (Bug#20183)
28148         * lisp/faces.el (window-divider)
28149         (window-divider-first-pixel, window-divider-last-pixel): Change
28150         membership from `frames' to `window-divider' customization group.
28151         * lisp/frame.el (window-divider): New customization group.
28152         (window-divider-mode): New minor mode.
28153         (window-divider-default-bottom-width)
28154         (window-divider-default-right-width): New options.
28155         (frame--window-divider-previous-mode): New variable.
28156         (frame-window-divider-width-valid-p)
28157         (frame--window-divider-mode-apply)
28158         (frame--window-divider-mode-set-and-apply): New functions.
28159         * lisp/menu-bar.el (menu-bar-options-save): Save
28160         window-divider-mode settings.
28161         (menu-bar-window-divider-customize)
28162         (menu-bar-bottom-and-right-window-divider)
28163         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
28164         (menu-bar-no-window-divider): New functions.
28165         (menu-bar-showhide-window-divider-menu): New variable.
28166         (menu-bar-showhide-menu): Show/hide window divider menu.
28167         * lisp/mouse.el (mouse-split-window-vertically)
28168         (mouse-split-window-horizontally): Replace `error' by
28169         `user-error'.  Bind `window-combination-resize' to nil.
28170         (top-level): Add/reorder mouse key bindings on mode- and
28171         vertical-line.
28173 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
28175         Don't display ‘’ as `' under X in en_GB
28176         The curved quote setup code invokes (char-displayable-p ?‘),
28177         but this isn’t reliable until after the X frame replaces the
28178         terminal frame (Bug#20926).
28179         * lisp/international/mule-cmds.el (set-locale-environment):
28180         Move curved quote setup code from here ...
28181         * lisp/startup.el (command-line): ... to here, after creating
28182         the X frame.
28184 2015-07-01  Nicolas Richard  <youngfrog@members.fsf.org>
28186         * lisp/emacs-lisp/seq.el (seq-difference): Fix typo in docstring.
28188         * lisp/ido.el (ido-restrict-to-matches): Add an optional argument
28189         to reverse the meaning (Bug#15631).
28191 2015-07-01  Eli Zaretskii  <eliz@gnu.org>
28193         Be more tolerant to fonts named "Foobar-12"
28194         * src/frame.c (x_set_font): If font_spec_from_name returns nil,
28195         don't barf; instead, request a new fontset to be generated.  This
28196         avoids unnecessarily rejecting fonts named against XLFD rules.  See
28197         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html,
28198         for the description of the original problem.
28199         * lisp/faces.el (set-face-attribute): Don't be fooled too easily
28200         by a hyphen in a font's name.
28202         Fix value of posn-at-pont in R2L lines
28203         * src/keyboard.c (Fposn_at_x_y, Fposn_at_point): Allow X pixel
28204         coordinate of -1, for a newline in a right-to-left line that
28205         overflowed into the left fringe.
28207 2015-07-01  Stefan Monnier  <monnier@iro.umontreal.ca>
28209         (cl--copy-slot-descriptor): Copy the `props' alist as well
28210         * lisp/emacs-lisp/cl-preloaded.el (cl--copy-slot-descriptor-1):
28211         Rename from cl--copy-slot-descriptor.
28212         (cl--copy-slot-descriptor): New function.  Copy the alist (bug#20914).
28214 2015-06-30  Stefan Monnier  <monnier@iro.umontreal.ca>
28216         * lisp/term/xterm.el (xterm--query): Avoid generating garbage
28217         (xterm-query-timeout): New var.
28218         (xterm--query): Use it.  Fallback on async method if we timeout before
28219         getting the first byte of the reply (bug#12354).
28221 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
28223         Spelling fixes
28224         * lisp/character-fold.el (character-fold-search):
28225         * lisp/emacs-lisp/package.el (package-hidden-regexps):
28226         Fix typos.
28228 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
28230         * doc/emacs/frames.texi (Frame Commands): Typo fix.  (Bug#20946)
28232 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
28234         In strings, prefer plain ` and ' to \` and \'
28235         * lisp/allout.el (allout-insert-listified):
28236         * lisp/emacs-lisp/easy-mmode.el (define-globalized-minor-mode):
28237         * lisp/ls-lisp.el (ls-lisp-UCA-like-collation)
28238         (ls-lisp-string-lessp):
28239         * lisp/menu-bar.el (menu-bar-open):
28240         * lisp/obsolete/otodo-mode.el (todo-top-priorities):
28241         * lisp/progmodes/compile.el (compile):
28242         * lisp/progmodes/etags.el (tags-loop-scan):
28243         * lisp/progmodes/make-mode.el (makefile-browser-insert-continuation):
28244         * lisp/subr.el (posn-actual-col-row):
28245         * lisp/term/pc-win.el (x-list-fonts):
28246         * lisp/textmodes/texinfmt.el (texinfmt-version):
28247         * lisp/textmodes/texnfo-upd.el (texinfo-master-menu):
28248         * lisp/time.el (display-time-world-list):
28249         * lisp/tmm.el (tmm-menubar):
28250         * src/buffer.c (syms_of_buffer):
28251         * src/fileio.c (syms_of_fileio):
28252         Omit unnecessary and confusing backslash before quote.
28253         * lisp/erc/erc.el (erc-cmd-LASTLOG):
28254         * lisp/progmodes/flymake.el (flymake-fix-file-name):
28255         * lisp/progmodes/vhdl-mode.el (vhdl-in-extended-identifier-p):
28256         Fix string that was intended to escape a backslash and not a quote.
28258 2015-06-30  Glenn Morris  <rgm@gnu.org>
28260         * leim/Makefile.in, lisp/Makefile.in: Add missing EXEEXT definition.
28262         * lisp/Makefile.in (MH_E_SRC, TRAMP_SRC, CAL_SRC):
28263         Replace hard-coded lists with wildcard + filter-out.
28265         * configure.ac (system-configuration-features): Add X11, NS.
28267         Improve reproducibility of generated loaddefs file
28268         * lisp/emacs-lisp/autoload.el (autoload-generate-file-autoloads):
28269         Make the return value the modtime of the input file (if no autoloads).
28270         (update-directory-autoloads): In the "no autoloads" section,
28271         use "most recent modtime" rather than "current time".
28273 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
28275         * lisp/emacs-lisp/package.el (package--remove-hidden): Fix logic.
28276         (Bug#20930)
28278 2015-06-30  Nicolas Petton  <nicolas@petton.fr>
28280         * doc/lispref/sequences.texi: Add documentation for seq-min and seq-max.
28282         Add seq-min and seq-max
28283         Bump version number.
28284         * lisp/emacs-lisp/seq.el (seq-min, seq-max): New functions.
28285         * test/automated/seq-tests.el: Add tests for seq-min and seq-max.
28287 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
28289         Make sure sleep-for always delays for as long as it's told
28290         * src/dispnew.c (Fsleep_for): Call wait_reading_process_output in
28291         a loop, to ensure we always wait exactly the required amount of
28292         time.  (Bug#15990)
28294 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
28296         Fix pointer signedness glitch
28297         * src/font.c (font_load_for_lface): Use SSDATA, not SDATA.
28299 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
28301         Don't block changes in mouse pointer inside 'track-mouse'
28302         * etc/NEWS:
28303         * doc/lispref/frames.texi (Mouse Tracking): Document the special
28304         effect of setting 'track-mouse' to 'dragging'.
28305         * lisp/textmodes/artist.el (artist-mouse-draw-continously):
28306         * lisp/ruler-mode.el (ruler-mode-mouse-drag-any-column-iteration):
28307         * lisp/mouse-drag.el (mouse-drag-throw):
28308         * lisp/mouse.el (mouse-drag-line): Set 'track-mouse' to 'dragging'
28309         to avoid changes in the shape of the mouse pointer.
28310         * src/xdisp.c (define_frame_cursor1): Don't change the mouse
28311         pointer shape when do_mouse_tracking has the value of 'dragging',
28312         not just any non-nil value.  (Bug#20934)
28313         (syms_of_xdisp): DEFSYM 'dragging'.
28315 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
28317         * lisp/isearch.el (isearch-toggle-word): Fix toggle.
28319         * lisp/emacs-lisp/package.el (package-compute-transaction):
28320         Don't assume version sorting.
28322         * lisp/emacs-lisp/package.el (package--save-selected-packages):
28323         Don't save before init time, to avoid overwriting configurations.
28324         (Bug#20855)
28326 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
28328         * doc/emacs/display.texi (Standard Faces, Fringes): Add cross
28329         references.
28331 2015-06-29  Ted Zlatanov  <tzz@lifelogs.com>
28333         Update for the upcoming CFEngine 3.7 release: support macros and
28334         quoted context strings; reformat JSON; indent promise attributes 2
28335         units by default; give function parameter descriptions in the eldoc
28336         glue.
28337         * lisp/progmodes/cfengine.el: Update version and docs and fix name.
28338         Autoload `json-pretty-print'.  Support new features in 3.7.
28339         (cfengine-parameters-indent): Set default promise attribute indent to
28340         2 more than the promise itself.
28341         (cfengine3-macro-regex): New variable to match the new macro syntax.
28342         (cfengine3-font-lock-keywords): Use it to highlight macros.
28343         (cfengine3-indent-line): Use it to indent macros to column 0.
28344         (cfengine3-class-selector-regex): Update for the new quoted strings
28345         format.
28346         (cfengine3-reformat-json-string): New function to reformat a JSON
28347         string using `json-pretty-print'.
28348         (cfengine3-format-function-docstring): Use function parameter
28349         description if it's provided by the cf-promises syntax dump.
28351 2015-06-29  Michael R. Mauger  <michael@mauger.com>
28353         Cygwin emacsclient handles w32 file names
28354         * lisp/server.el (server-process-filter): Allow Cygwin's
28355         emacsclient to be used as a file handler on MS-Windows.
28357 2015-06-29  Katsumi Yamaoka  <yamaoka@jpl.org>
28359         * lisp/isearch.el (isearch-exit): Don't call isearch-done twice
28360         (bug#20925).
28362 2015-06-29  Eli Zaretskii  <eliz@gnu.org>
28364         * doc/lispref/text.texi (Sticky Properties): Improve wording.
28365         (Bug#20924)
28367         Allow font names that end in "-NN", where NN is a number
28368         * src/font.c (font_load_for_lface): If the font-spec didn't match
28369         any available fonts, try again without interpreting trailing "-NN"
28370         as the font size.  For the description of the original problem, see
28371         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html
28373         .gdbinit followup to changes in !USE_LSB_TAG
28374         * src/.gdbinit (xgetsym): Don't left-shift $ptr even under
28375         !USE_LSB_TAG, as Emacs no longer does.
28377 2015-06-29  Wolfgang Jenkner  <wjenkner@inode.at>
28379         * lisp/calc-store.el (calc-insert-permanent-variable): Heed case.
28380         Otherwise `s p' of f and F will stomp on each other's value.
28381         (Bug#20916)
28383 2015-06-29  Artur Malabarba  <bruce.connor.am@gmail.com>
28385         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
28386         Don't block remember-pos if buffer isn't displayed.  (Bug#20921)
28388 2015-06-29  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
28390         * lisp/emacs-lisp/package.el (describe-package): Use symbol-at-point
28391         as additional guess.
28393         * lisp/emacs-lisp/package.el (describe-package): Convert the guess
28394         to a string.
28396 2015-06-28  Paul Eggert  <eggert@cs.ucla.edu>
28398         apropos-library quoting fix
28399         * lisp/apropos.el (apropos-library): Quote library consistently
28400         with the rest of the quoting used by apropos.
28402         Clarify interpreter-mode-alist doc
28403         * lisp/files.el (interpreter-mode-alist):
28404         Reword to avoid confusing quoting that wasn't working anyway.
28406 2015-06-28  Michael Albinus  <michael.albinus@gmx.de>
28408         Sync with Tramp 2.2.12
28409         * doc/misc/trampver.texi:
28410         * lisp/net/trampver.el: Update release number.
28411         * test/automated/tramp-tests.el (tramp-test13-make-directory):
28412         Fix cleanup.
28414 2015-06-28  Artur Malabarba  <bruce.connor.am@gmail.com>
28416         * lisp/isearch.el (isearch-mode): Don't char-fold regexps (bug#20913).
28418 2015-06-27  Dmitry Gutov  <dgutov@yandex.ru>
28420         Bind grep-highlight-matches around the rgrep call
28421         * lisp/progmodes/grep.el (zrgrep): Bind grep-highlight-matches
28422         around the rgrep call (bug#20728).
28424         Put "--color" before the other options in grep-command
28425         * lisp/progmodes/grep.el (grep-compute-defaults): Put "--color"
28426         before the other options in grep-command (bug#20912).
28428         Add --color Grep option to the command dynamically
28429         * lisp/progmodes/grep.el (grep-template, grep-find-template):
28430         Update the description for <C>.  (Bug#20728)
28431         (grep-compute-defaults): Don't add the --color option to
28432         grep-options.  Only add it to grep-command.
28433         (grep-expand-keywords): Expand the env value opts into <C>.
28434         (grep-expand-template): Replace cf in the env with the opts list,
28435         that can include -i and --color.
28436         * lisp/progmodes/xref.el (xref-collect-matches): Do not remove
28437         "--color=always" from the template, because we don't have to.
28439 2015-06-27  Paul Eggert  <eggert@cs.ucla.edu>
28441         cl-extra fixes for most-negative-fixnum
28442         * lisp/emacs-lisp/cl-extra.el (cl-gcd, cl-lcm, cl-random):
28443         Don't mishandle an argument equal to most-negative-fixnum,
28444         whose absolute value equals itself.
28445         (cl-gcd, cl-lcm): Use dolist rather than doing it by hand.
28447         Initialize cl--gensym-counter to 0
28448         Previously it was initialized to a random value, which made it
28449         harder to reproduce earlier Emacs runs.  The need for a random
28450         value went away when Emacs introduced and used the #: syntax for
28451         uninterned symbols (Bug#20862).
28452         * doc/misc/cl.texi (Creating Symbols, Common Lisp Compatibility):
28453         Document that cl--gensym-counter now starts with 0.
28454         * lisp/emacs-lisp/cl-lib.el (cl--gensym-counter): Remove.
28455         (cl--random-time): Move to near only remaining use.
28456         * lisp/emacs-lisp/cl-macs.el (cl--gensym-counter): Initialize to 0.
28458         Improve docstring for macroexp-let2
28459         * lisp/emacs-lisp/macroexp.el (macroexp-let2):
28460         Improve as per suggestion by RMS in:
28461         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00621.html
28462         Also, rename args to match new doc string.
28464 2015-06-27  Eli Zaretskii  <eliz@gnu.org>
28466         Fix VC test suite on MS-Windows
28467         * lisp/vc/vc-svn.el (vc-svn-create-repo): Make sure the file: URL
28468         always starts with 3 slashes after the colon.
28469         * test/automated/vc-tests.el (vc-test--create-repo-function): Use
28470         'w32-application-type' to invoke CVS on MS-Windows with properly
28471         formatted CVSROOT directory name.
28473         Add a new function w32-application-type
28474         * src/w32proc.c (Fw32_application_type): New function.
28476         Avoid error in TLS connections due to incorrect format
28477         * src/gnutls.c (Fgnutls_boot): Use the %x conversion specifier in
28478         the call to 'error', instead of the unsupported %u.  Reported by
28479         lo2net <fangtao0901@gmail.com>.  (Bug#20908)
28481 2015-06-26  Artur Malabarba  <bruce.connor.am@gmail.com>
28483         * lisp/replace.el (replace-search): Fix regexp case (bug#20901).
28485 2015-06-26  Leo Liu  <sdl.web@gmail.com>
28487         * lisp/emacs-lisp/cl-indent.el: Fix indentation for
28488         `with-output-to-string' in elisp.
28490         Revert "lisp/emacs-lisp/cl-indent.el: Fix indent of
28491         with-output-to-string".
28492         This reverts commit 659199f2ca5f283fb246faa78a244e5ca25f53dd.
28494 2015-06-26  Eli Zaretskii  <eliz@gnu.org>
28496         Minor corrections in ELisp manual
28497         * doc/lispref/nonascii.texi (Character Properties): Correct
28498         inaccuracies in description of values of the Unicode properties.
28500         Fix invisible mouse pointers on Windows.
28501         * src/w32fns.c: Include windowsx.h.
28502         (w32_wnd_proc): If the mouse moved and the mouse pointer is
28503         invisible, make it visible again even when the main (Lisp)
28504         thread is busy.
28505         * src/w32term.c (w32_toggle_invisible_pointer): Rather then
28506         garbaging the frame have the input thread call SetCursor.
28508 2015-06-26  Martin Rudalics  <rudalics@gmx.at>
28510         Provide invisible mouse pointers on Windows (Bug#6105) (Bug#12922)
28511         * src/w32fns.c (w32_wnd_proc): Handle f->pointer_invisible
28512         for WM_SETCURSOR and WM_EMACS_SETCURSOR cases.
28513         * src/w32term.c (w32_hide_hourglass): Handle f->pointer_invisible.
28514         (w32_toggle_invisible_pointer): New function.
28515         (w32_create_terminal): Add w32_toggle_invisible_pointer as
28516         toggle_invisible_pointer_hook for this terminal.
28518 2015-06-25  Xue Fuqiao  <xfq.free@gmail.com>
28520         Doc fix for deletion commands
28521         'delete-char' does not respect the value of 'delete-active-region'.
28522         * doc/emacs/killing.texi (Deletion):
28523         Fix documentation for some single-char deletion commands.
28525         * doc/emacs/help.texi (Apropos):
28526         Improve documentation of 'apropos-do-all'.
28528         * doc/emacs/help.texi (Help Summary):
28529         Improve documentation of 'describe-mode'.
28531 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
28533         Fix submake dependency bug with .h files
28534         * src/Makefile.in ($(libsrc)/make-docfile$(EXEEXT)):
28535         Depend on $(lib)/libgnu.a, so that we build $(lib)/*/*.h
28536         before the submake in $(libsrc) would spin off a subsubmake
28537         for $(lib) in parallel with our submake for $(lib) (Bug#20894).
28539 2015-06-25  Artur Malabarba  <bruce.connor.am@gmail.com>
28541         * lisp/character-fold.el (character-fold-table): Reuse `table'.
28543 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
28545         Translate undisplayable ‘ to `
28546         * doc/lispref/help.texi (Keys in Documentation):
28547         * lisp/international/mule-cmds.el (set-locale-environment):
28548         * lisp/term/w32console.el (terminal-init-w32console):
28549         * src/doc.c (Fsubstitute_command_keys, Vhelp_quote_translation):
28550         If ‘ is not displayable, transliterate it to `, not to '.  See:
28551         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00542.html
28553         Fix C99 incompatibilities in Cairo code
28554         * src/image.c (xpm_load) [USE_CAIRO]:
28555         * src/xterm.c (x_cr_accumulate_data) [USE_CAIRO]:
28556         Fix pointer signedness problem.
28558 2015-06-25  Oleh Krehel  <ohwoeowho@gmail.com>
28560         lisp/emacs-lisp/cl-indent.el: Fix indent of with-output-to-string
28561         * lisp/emacs-lisp/cl-indent.el (common-lisp-indent-function):
28562         `with-output-to-string' should have the same indent as `progn'.
28563         This is in line with the declaration of `with-output-to-string'.
28565 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
28567         Get ‘./configure; make -C src emacs’ to work
28568         Without this fix, lib/fcntl.h isn't built in time (Bug#20894).
28569         * lib-src/Makefile.in (../lib/libgnu.a):
28570         * src/Makefile.in ($(lib)/libgnu.a): Build all, not libgnu.a.
28572 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
28574         Fix GC bugs --with-wide-int and Qnil == 0
28575         Use the same alignment for the !USE_LSB_TAG case as for the
28576         more-typical USE_LSB_TAG case.  The attempt to support arbitrary
28577         alignments with !USE_LSB_TAG had subtle bugs in garbage collection
28578         once we changed the representation of symbols so that Qnil == 0.
28579         Problem reported by Eli Zaretskii (Bug#20862).
28580         * src/alloc.c (XMALLOC_HEADER_ALIGNMENT) [XMALLOC_OVERRUN_CHECK]:
28581         * src/alloc.c (vector_alignment, union aligned_Lisp_Symbol)
28582         (union aligned_Lisp_Misc, maybe_lisp_pointer, pure_alloc):
28583         Use same alignment for !USE_LSB_TAG as for USE_LSB_TAG.
28584         * src/alloc.c (POINTERS_MIGHT_HIDE_IN_OBJECTS): Remove.
28585         This optimization in the !USE_LSB_TAG case is no longer valid when
28586         symbols are represented via offsets.  Change the only use to
28587         assume that pointers might hide in objects.
28588         * src/lisp.h (alignas) [!USE_LSB_TAG]:
28589         Require support in this case, too.
28590         (TAG_SYMOFFSET, XSYMBOL) [!USE_LSB_TAG]: Do not shift the offset.
28591         This is OK, because the !USE_LSB_TAG case now applies only when
28592         Lisp_Object is wider than void *, so there's no longer any need
28593         to shift the offset.  Not shifting the offset means that
28594         symbol representations have the same alignment as pointers,
28595         which the GC assumes.
28597 2015-06-24  Xue Fuqiao  <xfq.free@gmail.com>
28599         * doc/lispintro/emacs-lisp-intro.texi (Data types):
28600         Improve documentation of 'substring'.
28602 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
28604         * lisp/character-fold.el (character-fold-table): Fix table generation.
28606 2015-06-24  Glenn Morris  <rgm@gnu.org>
28608         * nextstep/Makefile.in (all): Make it the first target.
28609         (../src/emacs${EXEEXT}): Add rule for making it.
28611 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
28613         * etc/NEWS: Fix mention to old function name.
28615         * lisp/character-fold.el: New file (Bug#20887)
28616         (character-fold-to-regexp): New function.
28617         * lisp/replace.el (replace-search): Check value of
28618         `character-fold-search'.
28619         * lisp/isearch.el: Move character-folding code to
28620         character-fold.el
28621         (isearch-toggle-character-fold): New command.
28622         (isearch-mode-map): Bind it to "\M-sf".
28623         (isearch-mode): Check value of `character-fold-search'.
28625 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
28627         lisp/subr.el (remove-from-invisibility-spec): Handle the t case
28628         * lisp/subr.el (remove-from-invisibility-spec): Make sure `element'
28629         is visible even if it's not yet in buffer-invisibility-spec (bug#20468).
28631         * lisp/progmodes/xref.el (xref-location-group, xref-location-marker)
28632         (xref--insert-xrefs, xref-collect-references): Avoid init-args in oref.
28634 2015-06-24  Glenn Morris  <rgm@gnu.org>
28636         * Makefile.in (install-arch-dep): Don't set sticky bit on the binary.
28638 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
28640         lisp/gnus/nnmaildir.el: Silence lexical warnings
28641         * lisp/gnus/nnmaildir.el (nnmaildir--prepare): Use a more
28642         functional style.
28643         (nnmaildir--update-nov): Remove unused var `numdir'.
28644         (nnmaildir-request-type, nnmaildir--scan, nnmaildir-request-newgroups)
28645         (nnmaildir-request-group, nnmaildir-request-create-group)
28646         (nnmaildir-request-post, nnmaildir-request-move-article)
28647         (nnmaildir-request-accept-article, nnmaildir-active-number):
28648         Mark unused args.
28649         (nnmaildir-get-new-mail, nnmaildir-group-alist)
28650         (nnmaildir-active-file): Declare.
28651         (nnmaildir-request-scan): Remove unused vars `group' and `grp-dir'.
28652         (nnmaildir-request-update-info): Remove unused vars `dotfile', `num',
28653         `mark', `end', `new-mark', and `mark-sym'.
28654         (nnmaildir-retrieve-headers): Remove unused args `srv-dir', `dir',
28655         `nlist2'.
28656         (nnmaildir-request-expire-articles):
28657         Remove unused vars `article', `stop' and `nlist2'.
28658         (nnmaildir-request-set-mark): Remove unused vars `begin', `article' and
28659         `end'.  Use nnmaildir--article when dyn-binding is needed.
28660         Give the value directly in the `let' for `del-mark', `del-action',
28661         `add-action', and `set-action'.  Don't use `add-to-list' on a local var.
28662         (nnmaildir-close-server): Declare those local vars that need to be
28663         dyn-bound.
28665 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
28667         * src/keyboard.h (kbd_buffer_store_event_hold): Remove unused local.
28669         Port selection info fix to clang
28670         * src/keyboard.h (kbd_buffer_store_event_hold):
28671         Don't assume C11 semantics for alignof (Bug#20756).
28673         Fix bug that munged selection info
28674         On some optimizing C compilers, copying a structure did not
28675         copy the padding bytes between elements, and the type punning
28676         between struct input_data and struct selection_input_data did
28677         not work.  Change the C code to use a proper union type instead.
28678         Problem reported by YAMAMOTO Mitsuharu (Bug#20756).
28679         * src/keyboard.c (kbd_buffer, kbd_fetch_ptr, kbd_store_ptr)
28680         (readable_events, discard_mouse_events, kbd_buffer_events_waiting)
28681         (kbd_buffer_get_event, process_special_events, stuff_buffered_input)
28682         (mark_kboards):
28683         Use union buffered_input_event, not struct input_event.
28684         (clear_event, deliver_input_available_signal, process_special_events):
28685         Remove unnecessary forward decls.
28686         (kbd_buffer_store_buffered_event): New function, mostly just the
28687         old kbd_buffer_store_event_hold, except its argument is of type
28688         union buffered_input_event, not struct input_event.
28689         (kbd_buffer_unget_event): Define only if HAVE_X11, since it's
28690         not needed otherwise.  Argument is now of type
28691         struct selection_input_event *, not struct input_event *.
28692         All callers changed.
28693         (clear_event): Arg is now of type union buffered_input_event *,
28694         not struct input_event *.  All callers changed.
28695         * src/keyboard.h [HAVE_X11]: Include "xterm.h".
28696         (union buffered_input_event): New type.
28697         (kbd_buffer_store_event_hold): Now an inline function,
28698         defined here.
28699         * src/termhooks.h (EVENT_KIND_WIDTH): New constant.
28700         (struct input_event): Use it.
28701         * src/xselect.c (struct selection_event_queue):
28702         Make elements be of type struct selection_input_event,
28703         not struct input_event.
28704         (selection_input_event_equal): New static function.
28705         (x_queue_event): Use it.
28706         (x_queue_event, x_decline_selection_request)
28707         (x_selection_current_request, x_reply_selection_request)
28708         (x_handle_selection_request, x_handle_selection_clear)
28709         (x_handle_selection_event): Use struct selection_input_event,
28710         not struct input_event.  All callers changed.
28711         (x_convert_selection): Omit unused first arg.  All callers changed.
28712         (Fx_disown_selection_internal): Omit unnecessary union.
28713         * src/xterm.c (handle_one_xevent): Use new union buffered_input_event
28714         rather than rolling our own equivalent.  Prefer sie.kind when
28715         setting up that kind of structure.
28716         Call kbd_buffer_store_buffered_event, not kbd_buffer_store_event_hold.
28717         * src/xterm.h (struct selection_input_event: Use EVENT_KIND_WIDTH.
28718         (SELECTION_EVENT_DISPLAY, SELECTION_EVENT_DPYINFO)
28719         (SELECTION_EVENT_REQUESTOR, SELECTION_EVENT_SELECTION)
28720         (SELECTION_EVENT_TARGET, SELECTION_EVENT_PROPERTY)
28721         (SELECTION_EVENT_TIME, x_handle_selection_event):
28722         Arg is now of type struct selection_input_event *)
28723         not struct input_event *.  All callers changed.
28725 2015-06-23  Glenn Morris  <rgm@gnu.org>
28727         * Makefile.in (install-arch-dep): Simplify with Make conditionals.
28729 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
28731         * lisp/isearch.el: Fold many unicode characters to ASCII.
28732         (isearch-character-fold-search, isearch--character-fold-extras)
28733         (isearch--character-fold-table): New variable.
28734         (isearch--character-folded-regexp): New function.
28735         (isearch-search-fun-default): Use them.
28736         * lisp/replace.el (replace-character-fold): New variable.
28737         (replace-search): Use it.
28738         * etc/NEWS: Document it.
28740 2015-06-23  Glenn Morris  <rgm@gnu.org>
28742         Check for an input event before showing a dialog box.  (Bug#20813)
28743         * lisp/subr.el (y-or-n-p):
28744         * src/fns.c (Fyes_or_no_p): Check last-input-event as well
28745         as last-nonmenu-event.
28747 2015-06-23  Jürgen Hartmann  <juergen_hartman_@hotmail.com>  (tiny change)
28749         Respect ‘switch-to-visible-buffer’ more rigidly.  (Bug#20861)
28750         * lisp/window.el (switch-to-visible-buffer): Doc adjustment.
28751         (switch-to-prev-buffer, switch-to-next-buffer): Respect
28752         switch-to-visible-buffer independent of the windows history.
28754 2015-06-23  Paul Eggert  <eggert@cs.ucla.edu>
28756         * src/keyboard.c (last_timer_event): Remove unused var.
28758 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
28760         * test/automated/package-test.el (package-test-update-listing):
28761         Fix test.
28763 2015-06-23  Glenn Morris  <rgm@gnu.org>
28765         Revert 2014-06-25 nextstep/Makefile change.
28766         * nextstep/Makefile.in (${ns_appbindir}): Remove rule.
28767         (${ns_appbindir}/Emacs, links): Create ns_appbindir in the rule,
28768         not as an order-only prerequisite.
28770         * configure.ac (--with-ns): Enable by default on OS X.
28772 2015-06-23  Leo Liu  <sdl.web@gmail.com>
28774         Fix shell-for/backward-command to exclude spaces
28775         * lisp/shell.el (shell-forward-command, shell-backward-command):
28776           Handle the 'move case from re-search-forward/backward.
28777           fixes debbugs:20873
28779 2015-06-22  Juri Linkov  <juri@linkov.net>
28781         * lisp/replace.el (query-replace-read-from): Add separator to
28782         the local binding of text-property-default-nonsticky.  (Bug#20690)
28784         * lisp/simple.el (shell-command-on-region): Replace 'error' with 'user-error'.
28785         (Bug#20785)
28787 2015-06-22  Ken Brown  <kbrown@cornell.edu>
28789         Enable CPU profiling on Cygwin
28790         * src/syssignal.h [CYGWIN] (PROFILER_CPU_SUPPORT): Revert previous
28791         change that undefined this.
28792         (SIGEV_SIGNAL): Ensure that this is defined as a macro.
28793         * src/profiler.c [CYGWIN] (timer_getoverrun): Define as a macro on
28794           Cygwin.
28796         Improve diagnostics of profiler-cpu-start
28797         * src/profiler.c (setup_cpu_timer): Change return type to 'int';
28798         return -1 if the sampling interval is invalid.
28799         (Fprofiler_cpu_start): Improve error message if 'setup_cpu_timer'
28800         fails.  (Bug#20843)
28802 2015-06-22  Artur Malabarba  <bruce.connor.am@gmail.com>
28804         * lisp/emacs-lisp/package.el: Exclude packages by name.
28805         (package-hidden-regexps): New variable.
28806         (package-menu--refresh): Use it.
28807         (package-menu-hide-package): New command.
28809         * lisp/emacs-lisp/package.el: Rename hide-obsolete to toggle-hiding.
28811 2015-06-22  Eli Zaretskii  <eliz@gnu.org>
28813         Fix debug-timer-check on systems without HAVE_TIMERFD
28814         * src/atimer.c (Fdebug_timer_check) [!HAVE_TIMERFD]: Actively run
28815         the expired timers, since wait_reading_process_output doesn't.
28816         (debug_timer_callback): Enlarge the tolerance to 20 msec.
28818         Fix RCS crashes in vc-test
28819         * lisp/vc/vc-rcs.el (vc-rcs-register): Avoid crashes with some old
28820         ports of 'ci' on MS-Windows by always passing the -t- switch.
28822 2015-06-22  Glenn Morris  <rgm@gnu.org>
28824         * doc/emacs/package.texi (Packages):
28825         * doc/emacs/trouble.texi (Known Problems): Remove faq cross-references.
28827         * doc/misc/efaq-w32.texi (Downloading): Copyedits.  (Bug#20851)
28829 2015-06-22  Paul Eggert  <eggert@cs.ucla.edu>
28831         Port tests to help-quote-translation
28832         * test/automated/ert-x-tests.el (ert-test-describe-test):
28833         * test/automated/package-test.el (package-test-describe-package)
28834         (package-test-signed): Allow straight quotes, too.
28836 2015-06-22  Dmitry Gutov  <dgutov@yandex.ru>
28838         Make find-function-on-key use the current window
28839         * lisp/emacs-lisp/find-func.el (find-function-on-key-do-it):
28840         Extract from `find-function-on-key', add a second argument.
28841         (find-function-on-key): Use it (bug#19679).
28842         (find-function-on-key-other-window)
28843         (find-function-on-key-other-frame): New commands.
28845 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
28847         Revert "Define `map-elt' as a generalized variable"
28848         This reverts commit 8b6d82d3ca86f76ed964063b3941a7c6ab0bf1c6.
28850 2015-06-21  Ken Brown  <kbrown@cornell.edu>
28852         Drop support for CPU profiling on Cygwin
28853         * src/syssignal.h (PROFILER_CPU_SUPPORT): Don't define on Cygwin.
28854         (Bug#20843)
28856 2015-06-21  Paul Eggert  <eggert@cs.ucla.edu>
28858         Fix some “nested” quoting confusion in doc strings
28859         * lisp/emacs-lisp/advice.el (ad-map-arglists):
28860         * lisp/kermit.el (kermit-clean-on):
28861         * lisp/mh-e/mh-comp.el (mh-repl-group-formfile):
28862         * src/keyboard.c (Frecursive_edit):
28863         Use curved quotes when quoting text containing apostrophe,
28864         so that the apostrophe isn't curved in the output.
28866 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
28868         Define `map-elt' as a generalized variable
28869         * lisp/emacs-lisp/map.el (map-elt): Define a gv-expander.
28870         * lisp/emacs-lisp/map.el (map--dispatch): Tighten the code.
28871         * lisp/emacs-lisp/map.el (map-put): Redefine it as a function using a
28872         `setf' with `map-elt'.
28873         * test/automated/map-tests.el: Comment out `test-map-put-literal'.
28875 2015-06-21  Michael Albinus  <michael.albinus@gmx.de>
28877         Improve error handling in tramp-adb.el
28878         * lisp/net/tramp-adb.el (tramp-adb-handle-file-local-copy):
28879         Improve error handling.
28881 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
28883         Reuse `alist-get' in map.el
28884         * lisp/emacs-lisp/map.el (map-elt): Use `alist-get' to retrieve alist
28885         elements.
28887 2015-06-21  Eli Zaretskii  <eliz@gnu.org>
28889         Fix bytecomp-tests--warnings when $TMPDIR has a long name
28890         * test/automated/bytecomp-tests.el (bytecomp-tests--warnings):
28891         Allow the warning to begin on the 3rd, not only 2nd line, which
28892         happens if temporary-file-directory has a very long name.
28894         Expect 2 icalendar tests to fail on MS-Windows
28895         * test/automated/icalendar-tests.el (icalendar-import-with-timezone)
28896         (icalendar-real-world): Make them expected failures on MS-Windows.
28898 2015-06-20  Paul Eggert  <eggert@cs.ucla.edu>
28900         Improve port of settings UI to older displays
28901         * lisp/cus-start.el (standard): Don't assume curved quotes are
28902         easily distinguishable when users are tinkering with a setting
28903         that affects how curved quotes are generated.
28905         Fix quoting in electric-quote-mode doc string
28906         * lisp/electric.el (electric-quote-mode): Fix quoting.
28907         This is a fallout from the recent change introducing
28908         ‘help-quote-translation’.
28910         Spelling fix
28912         * doc/misc/texinfo.tex, lib/set-permissions.c: Merge from gnulib.
28914         * src/doc.c (syms_of_doc): Remove unused symbols.
28916 2015-06-20  Martin Rudalics  <rudalics@gmx.at>
28918         * lisp/window.el (window-state-put): Undedicate target window
28919         before putting STATE into it.  (Bug#20848)
28921 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
28923         Merge from origin/emacs-24
28924         a5e6f33 Fixes: debbugs:20832
28925         b9f02cf Fixes: debbugs:20832
28927 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
28929         Fix file-in-directory-p when the directory is UNC
28930         * lisp/files.el (file-in-directory-p): Support files and
28931         directories that begin with "//".  (Bug#20844)
28933 2015-06-19  Stephen Berman  <stephen.berman@gmx.net>
28935         * lisp/calendar/todo-mode.el (todo-show): Don't visit todo file
28936         in the minibuffer.  (Bug#20832)
28938 2015-06-19  Nicolas Richard  <youngfrog@members.fsf.org>
28940         * lisp/calendar/todo-mode.el (todo-show): Signal an error if buffer
28941         for adding new todo file is empty but modified.  (Bug#20832)
28943 2015-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
28945         (filepos-to-bufferpos): Further tweaks to the utf-16 code
28946         * lisp/international/mule-util.el (filepos-to-bufferpos):
28947         Fix typo.  Move non-exact check to the utf-16 branch (the only one
28948         affected).  Don't use byte-to-position for the utf-16 case.
28950 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
28952         Minor fixes in filepos-to-bufferpos
28953         * lisp/international/mule-util.el (filepos-to-bufferpos): Remove
28954         test for utf-8-emacs.  Exempt single-byte encodings from the
28955         'use-exact' path when QUALITY is 'exact'.  Test UTF-16 encodings
28956         for BOM before subtracting 2 bytes.  Use 'identity' when adjusting
28957         UTF-16 encoded files for CR-LF EOLs.
28959 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
28961         Improve the optional translation of quotes
28962         Fix several problems with the recently-added custom variable
28963         help-quote-translation where the code would quote inconsistently
28964         in help buffers.  Add support for quoting 'like this', which
28965         is common in other GNU programs in ASCII environments.  Change
28966         help-quote-translation to use more mnemonic values: values are now the
28967         initial quoting char, e.g., (setq help-quote-translation ?`) gets the
28968         traditional Emacs help-buffer quoting style `like this'.  Change the
28969         default behavior of substitute-command-keys to match what's done in
28970         set-locale-environment, i.e., quote ‘like this’ if displayable,
28971         'like this' otherwise.
28972         * doc/lispref/help.texi (Keys in Documentation): Document
28973         new behavior of substitute-command-keys, and document
28974         help-quote-translation.
28975         * doc/lispref/tips.texi (Documentation Tips):
28976         Mention the effect of help-quote-translation.
28977         * etc/NEWS: Mention new behavior of substitute-command-keys,
28978         and merge help-quote-translation news into it.
28979         When talking about doc strings, mention new ways to type quotes.
28980         * lisp/cedet/mode-local.el (overload-docstring-extension):
28981         Revert my recent change to this function, which shouldn't be
28982         needed as the result is a doc string.
28983         * lisp/cedet/mode-local.el (mode-local-print-binding)
28984         (mode-local-describe-bindings-2):
28985         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
28986         * lisp/cus-theme.el (describe-theme-1):
28987         * lisp/descr-text.el (describe-text-properties-1, describe-char):
28988         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
28989         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
28990         (eieio-help-constructor):
28991         * lisp/emacs-lisp/package.el (describe-package-1):
28992         * lisp/faces.el (describe-face):
28993         * lisp/help-fns.el (help-fns--key-bindings)
28994         (help-fns--compiler-macro, help-fns--parent-mode)
28995         (help-fns--obsolete, help-fns--interactive-only)
28996         (describe-function-1, describe-variable):
28997         * lisp/help.el (describe-mode):
28998         Use substitute-command-keys to ensure a more-consistent quoting
28999         style in help buffers.
29000         * lisp/cus-start.el (standard):
29001         Document new help-quote-translation behavior.
29002         * lisp/emacs-lisp/lisp-mode.el (lisp-fdefs):
29003         * lisp/help-mode.el (help-xref-symbol-regexp, help-xref-info-regexp)
29004         (help-xref-url-regexp):
29005         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
29006         * lisp/wid-edit.el (widget-documentation-link-regexp):
29007         Also match 'foo', in case we're in a help buffer generated when
29008         help-quote-translation is ?'.
29009         * src/doc.c: Include disptab.h, for DISP_CHAR_VECTOR.
29010         (LEFT_SINGLE_QUOTATION_MARK, uLSQM0, uLSQM1, uLSQM2, uRSQM0)
29011         (uRSQM1, uRSQM2, LSQM, RSQM): New constants.
29012         (Fsubstitute_command_keys): Document and implement new behavior.
29013         (Vhelp_quote_translation): Document new behavior.
29015 2015-06-18  Glenn Morris  <rgm@gnu.org>
29017         * lisp/cus-start.el (help-quote-translation): Add :version.
29019         * src/doc.c (Fsubstitute_command_keys): Make previous change compile.
29021 2015-06-18  Alan Mackenzie  <acm@muc.de>
29023         Make translation of quotes to curly in doc strings optional.
29024         * src/doc.c (traditional, prefer-unicode): New symbols.
29025         (help-quote-translation): New variable.
29026         (Fsubstitute_command_keys): Make translation of quotes dependent on
29027         `help-quote-translation'; also translate curly quotes back to ASCII
29028         ones.
29029         * lisp/cus-start.el (top-level): Add a customization entry for
29030         `help-quote-translation'.
29032 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
29034         * lisp/emacs-lisp/package.el: Don't always propagate async errors
29035         (package--with-work-buffer-async): Only propagate the error if the
29036         callback returns non-nil.
29037         (package--download-one-archive): Return nil on the signature
29038         checking callback if we accept unsigned.
29039         (package--download-and-read-archives): Return non-nil on the
29040         archive download callback.
29042 2015-06-18  Martin Rudalics  <rudalics@gmx.at>
29044         Set image_cache_refcount before x_default_parameter calls.  (Bug#20802)
29045         * src/nsfns.m (Fx_create_frame):
29046         * src/xfns.c (Fx_create_frame, x_create_tip_frame): Move setting
29047         image_cache_refcount before first x_default_parameter call.
29049 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
29051         Improve and extend filepos-to-bufferpos
29052         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
29053         Don't barf if F returns nil for some argument.
29054         (filepos-to-bufferpos): Expand to support UTF-16 and not assume
29055         that every encoding of type 'charset' is single-byte.
29057 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
29059         * lisp/emacs-lisp/package.el (package-menu--perform-transaction):
29060         Properly delete packages.  (Bug#20836)
29062 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
29064         Update data files from just-released Unicode 8.0
29065         * etc/NEWS: Update wording since Unicode 8.0 is no longer in draft
29066         status.
29067         * test/BidiCharacterTest.txt: Update from Unicode 8.0.
29068         * admin/unidata/BidiMirroring.txt:
29069         * admin/unidata/BidiBrackets.txt:
29070         * admin/unidata/UnicodeData.txt: Update from Unicode 8.0.
29072 2015-06-18  Paul Eggert  <eggert@cs.ucla.edu>
29074         Document curved quotes a bit better
29075         * doc/emacs/basic.texi (Inserting Text):
29076         Mention C-x 8.  Change example to use curved quote rather
29077         than infinity, as this lets us give more ways to do it.
29078         * doc/emacs/mule.texi (International Chars): Mention C-x 8 shortcuts
29079         and quotation marks.
29080         * doc/emacs/text.texi (Quotation Marks):
29081         * doc/lispref/tips.texi (Documentation Tips):
29082         Add "curly quotes" and "curved quotes" to the index.
29083         * doc/emacs/text.texi (Quotation Marks):
29084         Give the C-x 8 shorthands for curved quotes.
29085         Cross-reference to "Quotation Marks".
29087 2015-06-17  Daiki Ueno  <ueno@gnu.org>
29089         Add pinentry.el for better GnuPG integration
29090         * lisp/pinentry.el: New file.
29091         * etc/NEWS: Add entry about pinentry.el.
29092         * lisp/epg.el (epg--start): Set INSIDE_EMACS envvar.
29093         (Bug#20550)
29095 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
29097         * lisp/emacs-lisp/package.el: Slightly better error reporting.
29099 2015-06-17  Stefan Monnier  <monnier@iro.umontreal.ca>
29101         (define-minor-mode): Use setq-default for :global minor modes
29102         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
29103         Use setq-default for :global minor modes (bug#20712).
29105 2015-06-17  Eli Zaretskii  <eliz@gnu.org>
29107         Avoid infloop in redisplay with tall images
29108         * src/xdisp.c (try_scrolling): Prevent an infloop when scrolling
29109         down near ZV.  (Bug#20808)
29110         Call bidi_unshelve_cache to avoid memory leaks.  Use IT_CHARPOS
29111         instead of CHARPOS.
29113 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
29115         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
29116         Fix error reporting.
29118         * lisp/emacs-lisp/let-alist.el: Move to lisp/emacs-lisp/let-alist.el
29120         * lisp/emacs-lisp/package.el: Revert buffer after any operation
29121         Call `package-menu--post-refresh' after any operation that changes
29122         the package database (`package-install' and `package-delete').  To
29123         avoid performance issues in large transactions, these functions
29124         add `post-refresh' to `post-command-hook' instead of calling it
29125         immediately.
29126         (package-menu--mark-or-notify-upgrades): New function.
29127         (list-packages): Add it to `package--post-download-archives-hook'.
29128         (package-menu--post-refresh): Lose the upgrade-checking code, add
29129         code to remove itself from `post-command-hook'.
29130         (package-install, package-delete): Add it to `post-command-hook'.
29131         (package-menu-execute): Don't call `package-menu--post-refresh'.
29133 2015-06-17  Stephen Leake  <stephen_leake@stephe-leake.org>
29135         Add missing function xref-location-group for elisp-mode.
29136         * lisp/progmodes/elisp-mode.el: Add missing function xref-location-group.
29138 2015-06-17  Wolfgang Jenkner  <wjenkner@inode.at>
29140         * src/editfns.c (Fbyte_to_position): Fix bytepos not at char boundary.
29141         The behavior now matches the description in the manual.  (Bug#20783)
29143 2015-06-17  Xue Fuqiao  <xfq.free@gmail.com>
29145         * etc/tutorials/TUTORIAL.cn: Update; synchronize with TUTORIAL.
29147 2015-06-17  Glenn Morris  <rgm@gnu.org>
29149         Generate char-script-table from Unicode source.  (Bug#20789)
29150         * admin/unidata/Makefile.in (AWK): New, set by configure.
29151         (all): Add charscript.el.
29152         (blocks): New variable.
29153         (charscript.el, ${unidir}/charscript.el): New targets.
29154         (extraclean): Also remove generated charscript.el.
29155         * admin/unidata/blocks.awk: New script.
29156         * admin/unidata/Blocks.txt: New data file, from unicode.org.
29157         * lisp/international/characters.el: Load charscript.
29158         * src/Makefile.in (charscript): New variable.
29159         (${charscript}): New target.
29160         (${lispintdir}/characters.elc): Depend on charscript.elc.
29161         (temacs$(EXEEXT)): Depend on charscript.
29163         * lisp/international/characters.el (char-script-table): Tweak
29164         some ranges to better match the source.  (Bug#20789#17)
29166         Remove "no-byte-compile: t" from a few files.
29167         * lisp/obsolete/bruce.el, lisp/obsolete/keyswap.el:
29168         * lisp/obsolete/patcomp.el: No reason not to compile these.
29170 2015-06-16  Glenn Morris  <rgm@gnu.org>
29172         Fix some typos in copied Unicode data.  (Bug#20789)
29173         * lisp/international/characters.el (char-script-table):
29174         * lisp/international/fontset.el (script-representative-chars)
29175         (setup-default-fontset): Fix typos.
29177         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
29178         Don't print filename twice (it's in the prefix now).
29180         * lisp/emacs-lisp/pcase.el (pcase--u1): Revert earlier workaround.
29181         No longer needed.
29183         Address a compilation warning.
29184         * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-defalias):
29185         Replace 't' with '_' in pcase.
29187         Address some check-declare warnings.
29188         * lisp/simple.el (tabulated-list-print):
29189         * lisp/progmodes/elisp-mode.el (xref-collect-matches):
29190         * lisp/term/ns-win.el (ns-selection-owner-p, ns-selection-exists-p)
29191         (ns-get-selection): Update declarations.
29193         Address some compilation warnings.
29194         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
29195         * lisp/vc/vc-git.el (vc-git-file-type-as-string):
29196         Replace 't' with '_' in pcase.
29198         Address some compilation warnings.
29199         * lisp/face-remap.el (text-scale-adjust):
29200         * lisp/menu-bar.el (popup-menu-normalize-position):
29201         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand):
29202         * lisp/emacs-lisp/bytecomp.el (byte-compile-arglist-warn):
29203         * lisp/emacs-lisp/generator.el (cps--transform-1):
29204         * lisp/emacs-lisp/macroexp.el (macroexp--expand-all):
29205         * lisp/obsolete/vc-arch.el (vc-arch-mode-line-string):
29206         * lisp/progmodes/octave.el (octave-goto-function-definition)
29207         (octave-find-definition-default-filename):
29208         Replace 't' with '_' in pcase.
29210         * lisp/emacs-lisp/pcase.el (pcase--u1):
29211         Paper-over today's bootstrap failure.
29213 2015-06-16  Nicolas Petton  <nicolas@petton.fr>
29215         * lisp/emacs-lisp/seq.el: Fix a byte-compiler warnings related to pcase.
29217         * lisp/emacs-lisp/map.el (map-into): Fix a byte-compiler warning.
29219         Better confirmation message in `find-alternate-file' (Bug#20830)
29220         * lisp/files.el (find-alternate-file'): Improve the confirmation
29221         message to show the buffer name.
29223         Better docstring for null.  (Bug#20815)
29224         * src/data.c (null): Improves the docstring, saying what null returns
29225         when OBJECT is non-nil.
29227 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
29229         * lisp/net/newst-treeview.el: Use lexical-binding.
29231         (filepos-to-bufferpos): Add missing cases.  Make sure it terminates.
29232         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
29233         New auxiliary function, extracted from filepos-to-bufferpos.
29234         Make sure it terminates.
29235         (filepos-to-bufferpos): Use it to fix the latin-1-dos case.
29236         Add support for the `exact' quality.
29238 2015-06-16  Cédric Chépied  <cedric.chepied@gmail.com>
29240         Identify feeds in newsticker treeview with :nt-feed property
29241         * lisp/net/newst-treeview.el:
29242         (newsticker--treeview-nodes-eq): Use property :nt-feed instead of :tag.
29244 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
29246         * lisp/emacs-lisp/pcase.el: Improve docs and error handling.
29247         (pcase--self-quoting-p): Floats aren't self-quoting.
29248         (pcase): Tweak docstring.
29249         (pcase--u1): Deprecate the t pattern.  Improve error detection for
29250         the nil pattern.
29251         (\`): Tweak docstring.  Signal an error for unrecognized cases.
29252         (bug#20784)
29254 2015-06-16  Eli Zaretskii  <eliz@gnu.org>
29256         Fix infloop in filepos-to-bufferpos
29257         * lisp/international/mule-util.el (filepos-to-bufferpos): Fix EOL
29258         offset calculation, and make it conditional on the eol-type of the
29259         file's encoding.  (Bug#20825)
29261 2015-06-16  Martin Rudalics  <rudalics@gmx.at>
29263         Fix handling of image cache refcounts.  (Bug#20802)
29264         This backports Eli Zaretskii's solution of this problem for W32
29265         to X and NS.
29266         * src/nsfns.m (image_cache_refcount): Define unconditionally.
29267         (unwind_create_frame): If the image cache's reference count
29268         hasn't been updated yet, do that now.
29269         (Fx_create_frame): Set image_cache_refcount unconditionally.
29270         * src/xfns.c (image_cache_refcount): Define unconditionally.
29271         (unwind_create_frame): If the image cache's reference count
29272         hasn't been updated yet, do that now.
29273         (Fx_create_frame, x_create_tip_frame): Set image_cache_refcount
29274         unconditionally.
29275         * src/w32fns.c (image_cache_refcount): Make it a ptrdiff_t as on
29276         X and NS.
29278 2015-06-16  Nils Ackermann  <nils@ackermath.info>
29280         Improve reftex-label-regexps default value
29281         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Make
29282         keyvals label regexp more strict to better cope with unbalanced
29283         brackets common in math documents.
29285 2015-06-16  Glenn Morris  <rgm@gnu.org>
29287         * doc/emacs/calendar.texi (Format of Diary File):
29288         Move "nonmarking" from here...
29289         (Displaying the Diary): ... to here.
29291         * doc/emacs/calendar.texi (Format of Diary File, Displaying the Diary):
29292         Swap the order of these nodes.
29293         * doc/emacs/emacs.texi: Update detailed menu for the above change.
29295         * doc/emacs/calendar.texi (Specified Dates, Special Diary Entries):
29296         Update date of examples.
29297         (Diary, Format of Diary File): Move example from former to latter.
29298         Reduce duplication.
29300         No need for cp51932.el, eucjp-ms.el to not be compiled any more.
29301         * admin/charsets/cp51932.awk, admin/charsets/eucjp-ms.awk:
29302         Don't set no-byte-compile in the outputs.
29303         * lisp/loadup.el: Don't specify uncompiled cp51932, eucjp-ms.
29305 2015-06-15  Glenn Morris  <rgm@gnu.org>
29307         * lisp/calendar/calendar.el (diary-file): Use locate-user-emacs-file.
29308         * doc/emacs/calendar.texi (Diary, Format of Diary File):
29309         Update for above diary-file change.
29311         * lisp/macros.el (name-last-kbd-macro, kbd-macro-query)
29312         (apply-macro-to-region-lines): Use user-error.
29314         * lisp/textmodes/page-ext.el (add-new-page, pages-directory)
29315         (pages-directory-for-addresses): Doc fixes.
29317 2015-06-15  Stefan Monnier  <monnier@iro.umontreal.ca>
29319         * lisp/info.el: Cleanup bytepos/charpos issues
29320         * lisp/international/mule-util.el: Use lexical-binding.
29321         (filepos-to-bufferpos): New function.
29322         * lisp/info.el (Info-find-in-tag-table-1): Use 0-based file positions.
29323         (Info-find-node-2): Use filepos-to-bufferpos (bug#20704).
29324         (Info-read-subfile, Info-search): Use 0-based file positions.
29326         * lisp/progmodes/perl-mode.el: Refine handling of /re/ and y/abc/def/
29327         (perl--syntax-exp-intro-keywords): New var.
29328         (perl--syntax-exp-intro-regexp, perl-syntax-propertize-function): Use it.
29329         (bug#20800).
29331 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
29333         Fix quoting when making derived mode docstring
29334         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
29335         Nest regexp-quote inside format, not the reverse.
29336         Problem reported by Artur Malabarba in:
29337         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00206.html
29339 2015-06-15  Eli Zaretskii  <eliz@gnu.org>
29341         Fix current-iso639-language on MS-Windows
29342         * lisp/international/mule-cmds.el (set-locale-environment):
29343         Downcase the locale name before interning it.  This is so the
29344         'current-iso639-language' on MS-Windows matches the ':lang'
29345         property of font-spec objects.
29347         Limit Symbola usage some more
29348         * lisp/international/fontset.el (setup-default-fontset): Limit
29349         Symbol coverage of Currency Symbols to u+20B6..u+20CF.
29350         (Bug#20727)
29352 2015-06-15  Nicolas Petton  <nicolas@petton.fr>
29354         * lisp/emacs-lisp/map.el (map-let): Better docstring.
29356 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
29358         * test/automated/help-fns.el (abc\\\[universal-argument\]b\`c\'d\\e\"f):
29359         (help-fns-test-funny-names): Spelling fixes.
29361 2015-06-14  Glenn Morris  <rgm@gnu.org>
29363         * lisp/version.el (emacs-repository-version-git): Demote errors.
29364         Check result is a hash.
29366 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
29368         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
29369         Catch errors that happen before going async.  (Bug#20809)
29371 2015-06-14  Eli Zaretskii  <eliz@gnu.org>
29373         Another improvement of documentation of set-fontset-font
29374         * doc/lispref/display.texi (Fontsets): Say explicitly that
29375         CHARACTER can be a single codepoint.
29376         * src/fontset.c (Fset_fontset_font): Doc fix.
29378         Another improvement for symbol and punctuation characters
29379         * lisp/international/fontset.el (setup-default-fontset): Exclude
29380         from Symbola character ranges for symbols and punctuation covered
29381         well by popular Unicode fonts.  Prefer fixed-misc Unicode font, if
29382         installed and where its coverage of symbols and punctuation is
29383         known to be good.  (Bug#20727)
29385 2015-06-14  Christoph Wedler  <christoph.wedler@sap.com>
29387         Some generic support for multi-mode indentation.
29388         * lisp/progmodes/prog-mode.el (prog-indentation-context):
29389         New variable.
29390         (prog-first-column, prog-widen): New convenience functions.
29392 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
29394         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
29395         Don't assume that `tabulated-list-printer' will leave point at the
29396         end of the buffer.  (Bug#20810)
29398 2015-06-13  Glenn Morris  <rgm@gnu.org>
29400         Tweaks for getting repository version; a bit more like it was for bzr
29401         * lisp/version.el (emacs-repository-version-git)
29402         (emacs-repository--version-git-1): New functions,
29403         split from emacs-repository-get-version.
29404         (emacs-repository-get-version): Make the second argument meaningful.
29406         * lisp/startup.el (command-line-1): Inform if skipping relative
29407         file names due to deleted PWD.
29409         * src/xsmfns.c (x_session_initialize): Avoid libSM crash
29410         when starup directory is missing.  (Bug#18851)
29411         (errno.h): Include it.
29413 2015-06-13  Paul Eggert  <eggert@cs.ucla.edu>
29415         Better fix for documenting `X as "`X"
29416         Fix suggested by Stefan Monnier.
29417         * lisp/help-fns.el (help-fns--signature):
29418         Insert "`X", not "(\` X)", when documenting `X (Bug#20759).
29419         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
29420         Don't treat `X specially, as help-fns--signature now handles this.
29422 2015-06-13  Eli Zaretskii  <eliz@gnu.org>
29424         Improve the default fontset when Symbola is not installed
29425         * lisp/international/fontset.el (setup-default-fontset): Only
29426         prepend Symbola and FreeMono font specs for symbols and
29427         punctuation; do not replace the default spec for them.  This
29428         should have better results when Symbola/FreeMono are not
29429         installed.  (Bug#20727)
29431         Improve documentation of ':lang' in font specs
29432         * src/font.c (Ffont_spec): Doc fix: elaborate on the values and
29433         use of the ':lang' property of the font spec.
29434         * doc/emacs/frames.texi (Fonts): Document the language names that
29435         can be in the STYLE part of XLFD.
29436         * doc/lispref/display.texi (Low-Level Font): Document the ':lang'
29437         property.
29439         * nt/README: Don't advertise the (obsolescent) w32 FAQ.
29441         * nt/README.W32: Don't advertise the (obsolescent) w32 FAQ.
29443         Revert last change in fontset.el
29444         * lisp/international/fontset.el (setup-default-fontset): Revert
29445         the change "Configure Symbola font only if installed", since font
29446         search is evidently not yet set up when this function is called.
29447         (Bug#20727)
29449 2015-06-12  Glenn Morris  <rgm@gnu.org>
29451         Ensure early startup warnings are visible at the end.  (Bug#20792)
29452         * lisp/emacs-lisp/warnings.el (display-warning):
29453         If startup isn't complete, delay the warning.
29454         * lisp/startup.el (normal-top-level, command-line):
29455         Let display-warning automatically handle the needed delays.
29456         Run delayed-warnings-hook.
29458         * lisp/version.el (emacs-repository-get-version):
29459         Avoid calling external executable if possible.  (Bug#20799)
29461 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
29463         Document `X as "`X", not as "(` X)"
29464         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
29465         Document (backquote FOO) as "`FOO", not as "(` FOO)" (Bug#20759).
29467         * src/print.c (print_object): Minor simplification.
29469 2015-06-12  Glenn Morris  <rgm@gnu.org>
29471         * src/buffer.c (init_buffer): Add final newline to message.
29473 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
29475         Configure Symbola font only if installed
29476         * lisp/international/fontset.el (setup-default-fontset):
29477         Don't specify the Symbola font if it's not installed.
29478         Likewise for FreeMono.  (Bug#20727)
29480 2015-06-12  Eli Zaretskii  <eliz@gnu.org>
29482         Configure Symbola font only for symbols and punctuation
29483         * lisp/international/fontset.el (setup-default-fontset): Leave
29484         only symbols and punctuation in the fontset setup for Symbola
29485         font; remove "Greek and Coptic" and "Cyrillic Supplement".
29486         (Bug#20798)
29488 2015-06-12  Andreas Schwab  <schwab@linux-m68k.org>
29490         Fix crash in fontset-info
29491         * src/fontset.c (Ffontset_info): Check that the RFONT-DEF elt is
29492         non-nil.
29494 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
29496         Port to Solaris 10 sparc + Sun C 5.13
29497         * configure.ac (SETUP_SLAVE_PTY) [sol2* | unixware]:
29498         Adjust to process.c change.
29499         * src/process.c (create_process): Declare volatile variables at
29500         top level of this function, so that they're less likely to be
29501         reused later in the function in the code executed by the vforked
29502         child.  Do not declare locals used only in the vforked child, as
29503         they might share memory with locals still live in the parent.
29504         Instead, use the same variables in the child as in the parent.
29505         This works around a subtle bug that causes a garbage collector
29506         crash when Emacs is built with Sun C 5.13 sparc on Solaris 10.
29508 2015-06-12  Glenn Morris  <rgm@gnu.org>
29510         * lisp/startup.el (normal-top-level): Don't let *Messages* get
29511         a nil default-directory.
29513 2015-06-11  Glenn Morris  <rgm@gnu.org>
29515         * lisp/startup.el (normal-top-level): Use delay-warning.  (Bug#20792)
29517         Some progress towards starting with PWD deleted.  (Bug#18851)
29518         * src/buffer.c (init_buffer): Handle get_current_dir_name failures.
29519         * lisp/startup.el (normal-top-level, command-line-1):
29520         * lisp/minibuffer.el (read-file-name-default):
29521         Handle default-directory being nil.
29523 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
29525         Fix "not a tty" bug on Solaris 10
29526         * configure.ac (PTY_OPEN): Define to plain 'open'
29527         on SVR4-derived hosts, so that the O_CLOEXEC flag isn't set.
29528         * src/process.c (allocate_pty): Set the O_CLOEXEC flag after
29529         calling PTY_TTY_NAME_SPRINTF, for the benefit of SVR4-derived
29530         hosts that call grantpt which does its work via a setuid subcommand
29531         (Bug#19191, Bug#19927, Bug#20555, Bug#20686).
29532         Also, set O_CLOEXEC even if PTY_OPEN is not defined, since it
29533         seems relevant in that case too.
29535 2015-06-11  Juri Linkov  <juri@linkov.net>
29537         * lisp/bindings.el (debug-ignored-errors): Add mark-inactive.
29538         * lisp/simple.el (kill-region): Replace 'error' with 'user-error'.
29539         (Bug#20785)
29541 2015-06-11  Glenn Morris  <rgm@gnu.org>
29543         * lisp/international/characters.el (char-script-table): Fix typo.
29545 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
29547         Fix quoting of help for functions with odd names
29548         While investigating Bug#20759, I discovered other quoting problems:
29549         C-h f mishandled characters like backslash and quote in function names.
29550         This fix changes the behavior so that 'C-h f pcase RET' now
29551         generates "... (\` QPAT) ..." instead of "... (` QPAT) ...",
29552         because '(format "%S" '(` FOO))' returns "(\\` FOO)".  A comment
29553         in src/lread.c's read1 function says that the backslash will be
29554         needed starting in Emacs 25, which implies that 'format' is
29555         correct and the old pcase documention was wrong to omit the backslash.
29556         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
29557         * lisp/help-fns.el (help-fns--signature):
29558         * lisp/help.el (help-add-fundoc-usage):
29559         * lisp/progmodes/elisp-mode.el (elisp-function-argstring):
29560         Use help--make-usage-docstring rather than formatting
29561         help-make-usage.
29562         * lisp/emacs-lisp/pcase.el (pcase--make-docstring):
29563         Return raw docstring.
29564         * lisp/help-fns.el (help-fns--signature): New arg RAW, to return
29565         raw docstring.  Take more care to distinguish raw from cooked dstrings.
29566         (describe-function-1): Let help-fns--signature substitute
29567         command keys.
29568         * lisp/help.el (help--docstring-quote): New function.
29569         (help-split-fundoc): Use it, to quote funny characters more
29570         systematically.
29571         (help--make-usage): Rename from help-make-usage, since this
29572         should be private.  Leave an obsolete alias for the old name.
29573         (help--make-usage-docstring): New function.
29574         * test/automated/help-fns.el (help-fns-test-funny-names): New test.
29576 2015-06-11  Stefan Monnier  <monnier@iro.umontreal.ca>
29578         * lisp/thingatpt.el (in-string-p): Revert last change,
29579         since in-string-p is not used in thingatpt.el but only from outside.
29580         Also, use lexical binding.
29582 2015-06-11  Artur Malabarba  <bruce.connor.am@gmail.com>
29584         * lisp/emacs-lisp/let-alist.el (let-alist--deep-dot-search): Fix cons.
29585         * test/automated/let-alist.el (let-alist-cons): Test it.
29587 2015-06-11  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
29589         * src/syntax.c (Fbackward_prefix_chars): Reword docstring.
29591 2015-06-10  Glenn Morris  <rgm@gnu.org>
29593         * build-aux/gitlog-to-emacslog: Also ignore pointless merge commits.
29595         Improve generated ChangeLog for gitmerge.el commits.  (Bug#20717)
29596         * build-aux/gitlog-to-changelog: Handle gitmerge.el skipped commits.
29597         * admin/gitmerge.el (gitmerge-commit-message):
29598         Exclude "skipped" messages from ChangeLog once again.
29600         Slight namespace cleanup for thingatpt.el.
29601         * lisp/thingatpt.el (thing-at-point--in-string-p)
29602         (thing-at-point--end-of-sexp, thing-at-point--beginning-of-sexp)
29603         (thing-at-point--read-from-whole-string): Rename from
29604         old versions without "thing-at-point--" prefix.
29605         Keep old versions as obsolete aliases.  Update all uses.
29607         * lisp/emacs-lisp/checkdoc.el (checkdoc-get-keywords):
29608         Move requiring of finder from here...
29609         (checkdoc-package-keywords): ... to here.
29611         Use 'user-error' in a few calendar files.
29612         * lisp/calendar/appt.el (appt-add):
29613         * lisp/calendar/calendar.el (calendar-absolute-from-gregorian)
29614         (calendar-generate):
29615         * lisp/calendar/diary-lib.el (diary-mail-entries, diary-cyclic):
29616         Replace 'error' with 'user-error'.
29618         * lisp/progmodes/f90.el (f90-backslash-not-special): Use user-error.
29620         * lisp/files-x.el (add-file-local-variable):
29621         Special-case 'lexical-binding'.  (Bug#20641)
29623         * lisp/progmodes/executable.el (executable-self-display): Obsolete.
29624         No longer autoload.
29625         * doc/misc/autotype.texi (Executables):
29626         Undocument executable-self-display.
29628         * lisp/progmodes/executable.el (executable-self-display):
29629         Use non-obsolete tail syntax.  (Bug#20779)
29630         (executable-self-display): Doc update.
29632 2015-06-10  Stefan Monnier  <monnier@iro.umontreal.ca>
29634         * lisp/emacs-lisp/checkdoc.el: Use lexical-binding
29635         (finder-known-keywords): Silence byte-compiler.
29637 2015-06-09  Stefan Monnier  <monnier@iro.umontreal.ca>
29639         * lisp/simple.el (eval-expression): Macroexpand before evaluating
29640         (bug#20730).
29642         * lisp/progmodes/sh-script.el: Better handle nested quotes.
29643         (sh-here-doc-open-re): Don't mis-match the <<< operator (bug#20683).
29644         (sh-font-lock-quoted-subshell): Make sure double quotes within single
29645         quotes don't mistakenly end prematurely the surrounding string.
29647         * lisp/progmodes/elisp-mode.el: Require cl-lib for cl-defstruct.
29649 2015-06-09  Glenn Morris  <rgm@gnu.org>
29651         * test/automated/Makefile.in (ELFILES): Sort.
29653         * Makefile.in (SUBDIR_MAKEFILES):
29654         * lwlib/Makefile.in (WARN_CFLAGS):
29655         Use built-in Make functions rather than echo+sed.
29657 2015-06-09  Eli Zaretskii  <eliz@gnu.org>
29659         Update char-script-table
29660         * lisp/international/characters.el (char-script-table): Update
29661         from Unicode 8.0 Draft.
29663         Improve font selection for punctuation and other symbols
29664         * src/fontset.c (face_for_char): If the character's script is
29665         'symbol', and the font used for ASCII face has a glyph for it, use
29666         the font for the ASCII face instead of searching the fontsets.
29667         This comes instead of NS-specific code that used the current
29668         face's font instead, which is now disabled due to undesirable
29669         consequences.  (Bug#20727)
29671 2015-06-08  Dmitry Gutov  <dgutov@yandex.ru>
29673         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
29674         Skip past `#' to find BEG (bug#20771).
29675         * test/automated/elisp-mode-tests.el
29676         (elisp-completes-functions-after-hash-quote): New test.
29678 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
29680         Fix compilation warning/error in --without-x builds
29681         * src/xdisp.c (append_space_for_newline): Condition GUI-specific
29682         code on HAVE_WINDOW_SYSTEM.
29684         Improve the default fontset wrt symbols
29685         * lisp/international/fontset.el (setup-default-fontset): Better
29686         setup of fontset-default for symbols: use Symbola and FreeMono.
29687         (Bug#20727)
29689 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
29691         Add new command checkdoc-package-keywords
29692         * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag):
29693         New defcustom.
29694         (checkdoc-list-of-strings-p): Add doc.
29695         (checkdoc-current-buffer): When `checkdoc-package-keywords-flag' is
29696         non-nil, call `checkdoc-package-keywords'.
29697         (checkdoc-get-keywords): New defun.
29698         (checkdoc-package-keywords): New command.  Warns if the current file
29699         has package.el-style keywords that aren't in `finder-known-keywords'.
29700         * etc/NEWS: Add entry.
29702 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
29704         Avoid crashes when key-binding is called from a timer
29705         * src/keymap.c (Fkey_binding): Don't segfault if called with an
29706         empty vector as KEY.  (Bug#20705)
29708         Fix a thinko in arc-mode.el
29709         * lisp/arc-mode.el (archive-zip-summarize): Fix last change in the
29710         non-Zip64 case.  (Bug#20769)
29712 2015-06-08  Artur Malabarba  <bruce.connor.am@gmail.com>
29714         * lisp/emacs-lisp/package.el (package-delete): Make interactive.
29716 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
29718         * lisp/emacs-lisp/checkdoc.el (checkdoc-file): New function.
29719         (checkdoc-error): When `checkdoc-diagnostic-buffer' is set to
29720         "*warn*", print the warning to the standard output.  (bug#20754)
29722 2015-06-07  Glenn Morris  <rgm@gnu.org>
29724         * admin/update_autogen (changelog_files): Remove gitlog-to-emacslog.
29726         * src/font.c (syms_of_font) <font-log>: Doc fix.
29728         Remove the obsolete leading "*" from some C doc strings.
29729         * src/coding.c (syms_of_coding):
29730         * src/font.c (syms_of_font): Remove leading "*" from docs.
29731         * lisp/cus-start.el (enable-character-translation): Add it.
29733 2015-06-07  Paul Eggert  <eggert@cs.ucla.edu>
29735         Move gen_origin from program to data
29736         That way, 'make change-history' needs to change only ChangeLog.2,
29737         instead of having to change two files.
29738         * ChangeLog.2: Add commit info for range that this file covers.
29739         * Makefile.in (new_commit_regexp): New macro.
29740         (change-history-nocommit): Simplify, by putting what used to be
29741         the gen_origin value into the data (ChangeLog.2) rather than
29742         into the program (gitlog-to-emacslog).
29743         * build-aux/gitlog-to-emacslog (gen_origin): Calculate from
29744         the input file (e.g., ChangeLog.2) rather than by having a
29745         constant in the program.  Substitute it into the output.
29747 2015-06-07  Dmitry Gutov  <dgutov@yandex.ru>
29749         * lisp/help-fns.el (help-fns--signature): Quote any quotes in the
29750         function name (bug#20759).
29752 2015-06-07  Eli Zaretskii  <eliz@gnu.org>
29754         Adapt 'struct timespec' to next release of MinGW runtime
29755         * nt/inc/ms-w32.h (struct timespec): Don't declare if
29756         __struct_timespec_defined is defined.
29758 2015-06-06  Paul Eggert  <eggert@cs.ucla.edu>
29760         Merge from gnulib
29761         This incorporates:
29762         2015-06-06 acl-permissions: pacify -Wsuggest-attribute=const
29763         2015-06-05 stdio: Don't redefine gets when using C++
29764         2015-06-05 acl-permissions: port to AIX, C89 HP-UX
29765         2015-06-02 file-has-acl: fix build on Mac OS X 10
29766         2015-06-01 gnulib-tool: concatenate lib_SOURCES to a single line
29767         2015-06-01 pthread_sigmask: discount system version if a simple macro
29768         2015-05-31 readlinkat: avoid OS X 10.10 trailing slash bug
29769         * doc/misc/texinfo.tex, lib/acl-internal.h, lib/get-permissions.c:
29770         * lib/readlinkat.c, lib/set-permissions.c, lib/stdio.in.h:
29771         * m4/acl.m4, m4/pthread_sigmask.m4, m4/readlinkat.m4: Copy from gnulib.
29772         * lib/gnulib.mk: Regenerate.
29774 2015-06-06  Juri Linkov  <juri@linkov.net>
29776         * lisp/progmodes/grep.el (zrgrep): Let-bind grep-highlight-matches
29777         before calling grep-compute-defaults because now it affects the
29778         command lines computed in grep-compute-defaults.  (Bug#20728)
29780 2015-06-06  Glenn Morris  <rgm@gnu.org>
29782         Address some compilation warnings.
29783         * lisp/international/mule-cmds.el (w32-get-console-codepage)
29784         (w32-get-console-output-codepage):
29785         * lisp/progmodes/elisp-mode.el (xref-collect-references):
29786         * lisp/version.el (cairo-version-string): Declare.
29787         * lisp/erc/erc.el (erc-nickname-in-use): Fix typo.
29789 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
29791         Fix display when a font claims large values of ascent and descent
29792         This fixes bug#20628.
29793         * src/xdisp.c (get_phys_cursor_geometry): Correct the Y
29794         coordinate of a hollow cursor glyph when the original glyph's
29795         ascent is too small.
29796         (get_font_ascent_descent, normal_char_ascent_descent)
29797         (normal_char_height): New functions.
29798         (handle_single_display_spec, append_space_for_newline)
29799         (calc_pixel_width_or_height, produce_stretch_glyph)
29800         (calc_line_height_property): Use normal_char_ascent_descent and
29801         normal_char_height.
29802         (x_produce_glyphs): When font-global values of ascent and descent
29803         are too large, use per-character glyph metrics instead, if
29804         possible.  But don't allow the glyph row's ascent and descent
29805         values become smaller than the values from the metrics of the
29806         font's "normal" character.
29807         * src/xftfont.c (xftfont_draw):
29808         * src/w32font.c (w32font_draw): Correct the values of ascent and
29809         descent used to draw glyphless characters' hex code in a box.
29810         * src/xterm.c (x_draw_glyph_string_background):
29811         * src/xdisp.c (x_produce_glyphs):
29812         * src/w32term.c (x_draw_glyph_string_background):
29813         * src/nsterm.m (ns_maybe_dumpglyphs_background): Use FONT_TOO_HIGH
29814         to detect fonts whose global ascent and descent values are too
29815         large to be used in layout decision, and redraw the background
29816         when that happens.
29817         * src/dispextern.h (FONT_TOO_HIGH): New macro.
29818         (get_font_ascent_descent): Add prototype.
29819         * src/xterm.c (x_new_font):
29820         * src/w32term.c (x_new_font):
29821         * src/nsterm.m (x_new_font):
29822         * src/font.c (font_open_entity):
29823         * src/composite.c (composition_gstring_width):
29824         Use get_font_ascent_descent to obtain reasonable values for ascent
29825         and descent of a font.
29827 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
29829         Add assertion in adjust_point_for_property
29830         * src/keyboard.c (adjust_point_for_property): Add eassert for
29831         current buffer being shown in selected window.
29833 2015-06-06  Dmitry Gutov  <dgutov@yandex.ru>
29835         Replace uses of in-string-p; make it obsolete
29836         * lisp/thingatpt.el (in-string-p): Declare obsolete (bug#20732).
29837         (end-of-sexp, beginning-of-sexp): Use syntax-ppss instead.
29839 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
29841         Fix Dired display of an explicit list of files by ls-lisp.el
29842         * lisp/ls-lisp.el (ls-lisp-uid-d-fmt, ls-lisp-uid-s-fmt)
29843         (ls-lisp-gid-d-fmt, ls-lisp-gid-s-fmt): Make the initial values be
29844         correct for when displaying individual files separately, not as
29845         part of listing a directory, in which case these values are not
29846         recomputed by 'ls-lisp-insert-directory', but used verbatim.
29848         * lisp/dired.el (dired): Doc fix.  (Bug#20739)
29850 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
29852         Do not adjust point in a non-selected window
29853         * src/keyboard.c (command_loop_1): Do not adjust point when
29854         current buffer is not shown in selected window (Bug#20590).
29856         * etc/DEBUG: Mention 'maybe_call_debugger'
29858 2015-06-05  Nicolas Petton  <nicolas@petton.fr>
29860         Fix a unit test for map.el
29861         * test/automated/map-tests.el (test-map-let): Fix the test to work
29862         with the new syntax of `map-let'.
29864         * lisp/emacs-lisp/map.el (map-let): Better docstring.
29866         Better syntax for the map pcase pattern
29867         * lisp/emacs-lisp/map.el: Improves the map pcase pattern to take
29868         bindings of the form (KEY PAT) or SYMBOL.  KEY is not quoted.
29870         * lisp/emacs-lisp/map.el (map--dispatch): Better docstring.
29872         Fix a byte-compiler error in map-put and map-delete
29873         * lisp/emacs-lisp/map.el (map-put, map-delete): Ensure that `setq' is
29874         called with a symbol.
29876 2015-06-05  Glenn Morris  <rgm@gnu.org>
29878         * admin/gitmerge.el (gitmerge-commit-message):
29879         Revert to including "skipped" messages in ChangeLog once again.
29881 2015-06-05  Tassilo Horn  <tsdh@gnu.org>
29883         Use string> instead of equiv lambda with string<
29884         * lisp/help.el (view-emacs-news): Use string> instead of equivalent
29885         lambda with string<.
29887 2015-06-05  Glenn Morris  <rgm@gnu.org>
29889         * lisp/emacs-lisp/map.el (map--dispatch): Move before use.
29890         (map--delete-array): Fix typo.
29892         * test/automated/map-tests.el: Replace "assert" with "should".
29894         * lisp/Makefile.in (SUBDIRS): Rename from SUBDIRS_ABS.
29895         (SUBDIRS_REL): Derive from SUBDIRS.
29897         Tweak some build messages.
29898         * lisp/Makefile.in ($(lisp)/loaddefs.el):
29899         * lisp/cus-dep.el (custom-make-dependencies):
29900         * lisp/finder.el (finder-compile-keywords): Say what we are doing.
29901         * lisp/international/titdic-cnv.el (batch-titdic-convert):
29902         Don't say how to compile.
29904 2015-06-05  Paul Eggert  <eggert@cs.ucla.edu>
29906         Omit U+0332 COMBINING LOW LINE in previous change
29907         It turns out that it does not work on Ubuntu 15.04.
29909         Fix transliteration of Bahá'í months
29910         * lisp/calendar/cal-bahai.el (calendar-bahai-month-name-array):
29911         Improve quality of Latin transliteration of Bahá'í month names.
29913         Fix curved quotes in a few places
29914         * lisp/calc/calc-misc.el (calc-help): Fix quoting.
29915         The strings in question are not doc strings, so this partially
29916         undoes the recent change that assumed they were doc strings.
29917         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
29918         * lisp/info.el (Info-finder-find-node):
29919         Use curved quotes.
29920         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
29921         Also allow curved quotes in doc strings.
29923 2015-06-04  Glenn Morris  <rgm@gnu.org>
29925         * lisp/Makefile.in (AM_V_at): Add missing definition.
29927         * lisp/Makefile.in: Quieten output a bit.
29928         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el):
29929         Don't echo directories, since the commands we invoke print them.
29931         * lisp/Makefile.in: Replace shell fragments in variables with $(shell).
29932         (SUBDIRS_REL, SUBDIRS_ABS, SUBDIRS_ALMOST, SUBDIRS_FINDER)
29933         (SUBDIRS_SUBDIRS): New variables.
29934         (setwins, setwins_almost, setwins_finder, setwins_for_subdirs):
29935         Remove.
29936         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el, $(lisp)/loaddefs.el)
29937         (update-subdirs, compile-main, compile-clean):
29938         Replace "setwins" usage with new "SUBDIRS" variables.
29940         * lisp/vc/compare-w.el (compare-windows-get-window-function):
29941         Fix :version tag.
29943 2015-06-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
29945         * src/ftfont.c (ftfont_open2): Round divisions by upEM.
29947         Undo removal of x_clear_area call on expose for GTK3 or cairo
29948         * src/xterm.c (handle_one_xevent) [HAVE_GTK3 || USE_CAIRO]:
29949         Clear exposed area.  (Bug#20677)
29951 2015-06-04  Glenn Morris  <rgm@gnu.org>
29953         * doc/lispref/hash.texi (Creating Hash): Remove obsolete makehash.
29955         * lisp/Makefile.in (check-defun-dups): Also skip ldefs-boot.
29957         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
29958         Rename from quail-lao-update-translation, since lao.el defines that.
29960 2015-06-04  Dmitry Gutov  <dgutov@yandex.ru>
29962         Handle new-style advice in find-funct
29963         * lisp/emacs-lisp/find-func.el (find-function-advised-original):
29964         Handle new-style advice.  Return the symbol's function definition.
29965         (Bug#20718)
29966         (find-function-library): Update accordingly.
29968 2015-06-04  Nicolas Petton  <nicolas@petton.fr>
29970         Merge branch 'map'
29972         * lisp/emacs-lisp/map.el: Better docstring for the map pcase macro.
29974         Add new function string-greaterp
29975         * lisp/subr.el (string-greaterp): New function.  Also aliased to
29976         `string>'.
29977         * test/automated/subr-tests.el (string-comparison-test): Add unit
29978         tests for `string>'and `string<'.
29979         * src/fns.c (string-lessp): Better docstring.
29981 2015-06-04  Eli Zaretskii  <eliz@gnu.org>
29983         Fix timezone-related functions on MS-Windows
29984         * src/editfns.c (set_time_zone_rule) [WINDOWSNT]: Always call
29985         'xputenv', even if no reallocation of tzvalbuf was necessary.
29986         This fixes a bug in timezone-related functions on MS-Windows.
29987         Reported by Fabrice Popineau <fabrice.popineau@gmail.com>.
29989 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
29991         Don't pass raw directory name to 'error'
29992         * lisp/files.el (basic-save-buffer-2): Avoid format error if
29993         a directory name contains a string like "%s".
29995 2015-06-03  Dmitry Gutov  <dgutov@yandex.ru>
29997         Override 'grep --color=always'
29998         * lisp/progmodes/xref.el (xref-collect-matches):
29999         Override --color=always in grep-find-template.
30001 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
30003         Fix error introduced recently in file-notify-tests.el
30004         * test/automated/file-notify-tests.el
30005         (file-notify--test-remote-enabled): Do not use `file-notify--test-desc'.
30006         (file-notify--deftest-remote): Revert previous patch, not
30007         necessary anymore.
30009 2015-06-03  Wolfgang Jenkner  <wjenkner@inode.at>
30011         * src/indent.c (Fvertical_motion): Amend motion by 0 lines.
30012         Starting from a display string after a newline, point went to the
30013         previous line.  Also, fix an inadvertent use of a buffer position
30014         with FETCH_BYTE.  (Bug#20701)
30016 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
30018         Instrument file-notify-test.el in order to catch hydra error
30019         * test/automated/file-notify-tests.el (file-notify--deftest-remote):
30020         Wrap body by `ignore-case', in order to trap non-local errors.
30022 2015-06-03  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
30024         Undo previous changes in non-toolkit scroll bar drawing
30025         * src/xterm.c (x_scroll_bar_set_handle, x_scroll_bar_expose)
30026         [!USE_TOOLKIT_SCROLL_BARS]: Draw into scroll bar window.  (Bug#20668)
30028 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
30030         * .gitignore: Also ignore doc/*/*/*.html and .ps.
30032         Support quotes 'like this' in info files
30033         This is possible when 'makeinfo --disable-encoding' is used
30034         in Texinfo 5.
30035         * lisp/calc/calc-help.el (calc-describe-thing):
30036         * lisp/gnus/gnus-art.el (gnus-button-alist):
30037         * lisp/info.el (Info-find-index-name):
30038         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
30039         Also support quotes 'like this'.
30040         * lisp/calc/calc-help.el (calc-describe-thing): Simplify.
30041         * lisp/finder.el (finder-font-lock-keywords): Remove var that
30042         hasn't been used in years, instead of bothering to fix its quoting.
30044 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
30046         * .gitignore: Remove !test/etags/html-src/*.html.
30047         It's no longer needed, since *.html was removed.  Sort.
30049 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
30051         Restore <D> instead of '.' in grep-find-template
30052         * lisp/cedet/semantic/symref/grep.el
30053         (semantic-symref-grep-use-template): Update a comment.
30054         * lisp/progmodes/grep.el (grep-compute-defaults): Restore <D>
30055         instead of '.' in grep-find-template (bug#20719).
30056         (rgrep): Pass nil as the directory to rgrep-default-command.
30057         * lisp/progmodes/grep.el (grep-expand-keywords): Use '.' as the
30058         default value for DIR.
30059         * lisp/progmodes/xref.el (xref-collect-matches): Drop the
30060         workaround.
30062 2015-06-02  Glenn Morris  <rgm@gnu.org>
30064         * configure.ac (emacs_config_features): Add X toolkit and scroll-bars.
30066         * configure.ac (emacs_config_features): Add Cairo.
30068         * configure.ac [HAVE_GTK3]: Remove USE_CAIRO that gets reset later.
30070 2015-06-02  Michael Albinus  <michael.albinus@gmx.de>
30072         Ensure that autorevert works for remote files in file-notify-tests.el
30073         * test/automated/file-notify-tests.el (file-notify--test-desc):
30074         New defvar.
30075         (file-notify--test-remote-enabled)
30076         (file-notify-test00-availability, file-notify-test01-add-watch)
30077         (file-notify-test02-events): Use it.
30078         (file-notify--test-event-test): Check proper descriptor.
30079         (file-notify-test03-autorevert): Ensure that
30080         `visited-file-modtime' has changed.  (Bug#20392)
30082 2015-06-02  Nicolas Petton  <nicolas@petton.fr>
30084         Add a pcase pattern for maps and `map-let' based on it
30085         * lisp/emacs-lisp/map.el (map-let): New macro.
30086         (map--make-pcase-bindings, map--make-pcase-patterns): New functions.
30087         * test/automated/map-tests.el: New test for `map-let'.
30089 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
30091         Reuse rgrep mechanics in xref-find-regexp
30092         * lisp/progmodes/grep.el (rgrep-default-command):
30093         Extract from `rgrep'.
30094         * lisp/progmodes/xref.el (xref-collect-references): Split from
30095         `xref-collect-matches'.  Only handle the case of symbol search.
30096         (xref-collect-matches): Instead of Semantic Symref, use
30097         `rgrep-default-command', to take advantage of its directory and
30098         file ignore settings.
30099         (xref--collect-match): Remove the last argument, leaving the
30100         regexp construction up to the caller.
30101         * lisp/progmodes/elisp-mode.el (elisp--xref-find-matches):
30102         Change to take the xref-collect- function to use as an argument.
30103         (elisp-xref-find): Update accordingly.
30104         * lisp/progmodes/etags.el (etags--xref-find-matches)
30105         (etags-xref-find): Same.
30107         Move xref-elisp-location to elisp-mode.el
30108         * lisp/progmodes/xref.el (xref-elisp-location)
30109         (xref-make-elisp-location, xref-location-marker): Remove here.
30110         (xref--xref): Don't limit the type of the location slot.
30111         * lisp/progmodes/elisp-mode.el (xref-elisp-location):
30112         Define as a cl-struct here.
30113         (xref-location-marker): Move here.
30115 2015-06-02  Eli Zaretskii  <eliz@gnu.org>
30117         Minor tweaks for .gitignore
30118         * .gitignore: Don't ignore versioned *.html and *.ps files.
30119         Don't ignore admin/notes/tags that might be ignored as TAGS
30120         on case-insensitive filesystems.  (Bug#20710)
30122 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
30124         Generate curved quotes in ert doc
30125         * lisp/emacs-lisp/ert.el (ert--print-test-for-ewoc)
30126         (ert-results-mode-menu)
30127         (ert-results-pop-to-backtrace-for-test-at-point)
30128         (ert-results-pop-to-messages-for-test-at-point)
30129         (ert-results-pop-to-should-forms-for-test-at-point)
30130         (ert-describe-test):
30131         Quote ‘like this’, not `like this', when generating doc strings
30132         and the like.
30133         * test/automated/ert-x-tests.el (ert-test-describe-test):
30134         Allow quoting ‘like this’.
30136 2015-06-02  Nicolas Richard  <youngfrog@members.fsf.org>
30138         Add test for previous commit
30139         * test/automated/replace-tests.el: New file.
30140         (query-replace--split-string-tests): Add test for previous commit.
30142         Avoid confusion in query-replace history when replacing NUL chars
30143         * lisp/replace.el (query-replace--split-string): New function.
30144         (query-replace-read-from): Rely on the 'separator' property
30145         instead of searching for the NUL character (Bug#20690).
30147 2015-06-02  Glenn Morris  <rgm@gnu.org>
30149         Merge from origin/emacs-24
30150         8b5f2f4 * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
30152         * admin/gitmerge.el (gitmerge-commit-message):
30153         Exclude "skipped" messages from ChangeLog.
30155 2015-06-01  Michael Albinus  <michael.albinus@gmx.de>
30157         Sync with Tramp repository
30158         * lisp/net/tramp.el (tramp-message): Dump connection buffer error
30159         messages.
30160         (tramp-handle-make-auto-save-file-name): When calling
30161         `make-auto-save-file-name' internally, make sure it uses Unix-like
30162         behavior, not Windows-like behavior.
30163         * lisp/net/tramp-sh.el (tramp-set-file-uid-gid): Add a timeout for
30164         the local case, because "chown" might fail on w32.
30165         * lisp/net/trampver.el (tramp-repository-get-version): Don't run
30166         for XEmacs.
30168 2015-06-01  Eli Zaretskii  <eliz@gnu.org>
30170         MS-Windows followup for batch stdout/stderr output changes
30171         * lisp/international/mule-cmds.el (set-locale-environment):
30172         In batch mode, use console codepages for keyboard and terminal
30173         encoding.  (Bug#20545)
30175         Update .gitattributes for DOS EOL files
30176         * .gitattributes: Use "whitespace=cr-at-eol" for files with DOS
30177         CRLF end-of-line format.
30179         NS equivalents of xterm.c and w32term.c changes
30180         * src/nsterm.m (ns_maybe_dumpglyphs_background): Force redraw of
30181         glyph string background also when the font in use claims
30182         preposterously large global height value.  Helps to remove
30183         artifacts left from previous displays when glyphless characters
30184         are displayed as hex code in a box.
30185         (x_new_font): Call get_font_ascent_descent to obtain a reasonable
30186         value for FRAME_LINE_HEIGHT, even when a font claims very large
30187         value for its height.
30189 2015-06-01  Paul Eggert  <eggert@cs.ucla.edu>
30191         Avoid grave accent quoting in stderr diagnostics
30192         A few Emacs diagnostics go directly to stderr, and so can't easily
30193         contain curved quotes (as non-UTF-8 locales might mishandle them).
30194         Instead of bothering to add support for this rarity, reword the
30195         diagnostics so that they don't use grave accent to quote.
30196         * src/alloc.c (mark_memory): Fix comment.
30197         * src/buffer.c (init_buffer):
30198         * src/dispnew.c (init_display):
30199         * src/emacs.c (main, sort_args):
30200         * src/lread.c (dir_warning):
30201         * src/term.c (init_tty):
30202         * src/unexmacosx.c (unexec):
30203         * src/xfns.c (select_visual):
30204         * src/xterm.c (cvt_string_to_pixel, x_io_error_quitter):
30205         Reword stderr diagnostics to avoid quoting `like this'.
30206         * src/unexmacosx.c: Include errno.h.
30207         * src/xfns.c (select_visual): Encode value for locale.
30209 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
30211         Treat batch stdout/stderr like standard display
30212         Calls like (print FOO) could generate improperly encoded or
30213         hard-to-read output if FOO contains characters outside the system
30214         locale.  Fix this by treating batch stdout and stderr like
30215         interactive standard display, when it comes to transliterating and
30216         encoding characters (Bug#20545).
30217         * doc/emacs/mule.texi (Communication Coding):
30218         * doc/lispref/display.texi (Active Display Table):
30219         * doc/lispref/nonascii.texi (Locales):
30220         * etc/NEWS:
30221         * src/coding.c (syms_of_coding):
30222         * src/dispnew.c (syms_of_display):
30223         Document this.
30224         * src/print.c: Include disptab.h.
30225         (printchar_to_stream): New function, with much of the guts of the
30226         old Fexternal_debugging_output, except this one also uses the
30227         standard display table.
30228         (printchar, strout, Fexternal_debugging_output): Use it.
30230 2015-05-31  Glenn Morris  <rgm@gnu.org>
30232         * src/emacs.c (syms_of_emacs) <system-configuration-features>: Doc fix.
30234 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
30236         Remove DEFSYMs that aren't used at the C level.  Also:
30237         * src/decompress.c (Qzlib_dll):
30238         * src/font.c (Qunicode_sip):
30239         * src/frame.c (Qtip_frame):
30240         * src/ftfont.c (Qserif):
30241         * src/gnutls.c (Qgnutls_dll):
30242         * src/xml.c (Qlibxml2_dll):
30243         Move from here ...
30244         * src/w32fns.c (syms_of_w32fns): ... to here,
30245         as these are used only on MS-Windows.
30247 2015-05-31  Michael Albinus  <michael.albinus@gmx.de>
30249         Use another default value for tramp-histfile-override
30250         * lisp/net/tramp-sh.el (tramp-histfile-override):
30251         Use ".tramp_history" as default.
30252         Fixes bug#20446
30254 2015-05-29  Nicolas Petton  <nicolas@petton.fr>
30256         * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
30258 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
30260         * etc/NEWS: Add an entry about map.el.
30262         Improve the docstring of functions in map.el
30263         Since a map is not a data structure but a concept, adding information
30264         about the possible types of maps can be useful information.
30265         * lisp/emacs-lisp/map.el: Add documentation about the type of MAP to
30266         each public function.
30268 2015-04-29  Nicolas Petton  <nicolas@petton.fr>
30270         * lisp/emacs-lisp/map.el (map-empty-p): Faster implementation using
30271         specific tests depending on the type of the map.
30273         * lisp/emacs-lisp/map.el: Better docstrings.
30275 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
30277         * lisp/emacs-lisp/map.el (map-pairs): Dump redundant lambda.
30279 2015-04-25  Nicolas Petton  <nicolas@petton.fr>
30281         * lisp/emacs-lisp/map.el (map--elt-list): Better docstring.
30283         * lisp/emacs-lisp/map.el (map--elt-list): Minor refactoring.
30285         Fix a false negative in `map-elt' with alists and values being nil
30286         * lisp/emacs-lisp/map.el (map-elt): If map is an alist and key is
30287         found but its associated value is nil, do not return the default
30288         value.
30289         * test/automated/map-tests.el: Add a regression test.
30291 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
30293         * lisp/emacs-lisp/map.el (map--dispatch): Improve the docstring.
30295         Do not signal an error when trying to delete a key from an array
30296         * lisp/emacs-lisp/map.el (map-delete): When map is an array, check if
30297         the key is present to avoid signaling an error.
30298         * test/automated/map-tests.el: Add a test for deleting non-existing
30299         keys from maps.
30301         * lisp/emacs-lisp/map.el: Better docstring.
30303         Minor improvement in map-elt
30304         * lisp/emacs-lisp/map.el (map-elt): Do not use `ignore-errors' when
30305         doing a lookup in arrays, but check the boundaries of the array
30306         instead.
30307         * test/automated/map-tests.el: Adds a test for `map-elt' with arrays
30308         and a negative integer as key.
30310 2015-04-21  Nicolas Petton  <nicolas@petton.fr>
30312         * test/automated/map-tests.el: Refactoring of test methods.
30314         * test/automated/map-tests.el: Renamed from map-test.el.
30316 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
30318         * lisp/emacs-lisp/map.el (map-into): Better error message.
30320         * lisp/emacs-lisp/map.el: Remove byte-compilation warnings.
30322         Throw an error when converting a map into an unknown map type
30323         * lisp/emacs-lisp/map.el (map-into): Throw an error if type is
30324         not valid.
30325         * test/automated/map-tests.el: Add a regression test.
30327         New library map.el similar to seq.el but for mapping data structures.
30328         * test/automated/map-tests.el: New file.
30329         * lisp/emacs-lisp/map.el: New file.
30331 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
30333         * lisp/progmodes/etags.el (tag-implicit-name-match-p): Make sure
30334         there's no explicit tag name (bug#20629).
30336 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
30338         Remove format2
30339         * src/editfns.c, src/lisp.h (format2): Remove.
30340         It is more trouble than it's worth, now that we have CALLN.
30341         This is just a minor refactoring.
30342         * src/buffer.c (Fkill_buffer):
30343         * src/dbusbind.c (XD_OBJECT_TO_STRING):
30344         * src/fileio.c (barf_or_query_if_file_exists):
30345         Adjust to format2 going away.
30347         Don't misencode C-generated messages
30348         Also, be more consistent about calls to 'Fmessage' vs 'message'.
30349         * src/alloc.c (Fgc_status):
30350         Prefer AUTO_STRING to build_string for Fmessage call.
30351         * src/data.c (Fmake_variable_buffer_local)
30352         (Fmake_local_variable, Fmake_variable_frame_local):
30353         * src/doc.c (store_function_docstring):
30354         Use Fmessage, not message, since the argument can contain
30355         non-ASCII characters, and this can cause the resulting message
30356         to be incorrectly encoded for the current environment.
30357         * src/fns.c (maybe_resize_hash_table):
30358         * src/xselect.c (x_clipboard_manager_save_all):
30359         Use message, not Fmessage, since Fmessage's power isn't needed here.
30360         * src/process.c (Fmake_network_process): Reword message to avoid %s.
30361         * src/xdisp.c (vmessage): Document restrictions on message contents.
30362         (message_nolog) [false]: Remove unused code.
30364         Use \r rather than ^M in string literals
30365         This is less likely to cause problems on platforms that
30366         use CRLF (or CR!) termination for lines.
30368         Update .gitattributes to match current sources
30369         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00879.html
30370         * .gitattributes: Accommodate tests that insist on DOS format.
30371         Remove test/automated/data/decompress/foo-gzipped.
30372         Add etc/e/eterm-color.
30374 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
30376         * doc/emacs/mule.texi (Modifying Fontsets):
30377         Document face-ignored-fonts.  (Bug#20628)
30379         Add etags test for the new -Q option
30380         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
30381         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
30382         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
30383         test-case changes below.
30384         * test/etags/ETAGS.good_6: New file.
30385         * test/etags/cp-src/x.cc: New file.
30386         * test/etags/Makefile (CPSRC): Add x.cc.
30387         (check): Add one more test, for -Q.
30389 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
30391         Use list for the tags completion table, not obarray
30392         * lisp/progmodes/etags.el (etags-tags-completion-table): Return a
30393         list instead of an obarray
30394         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00876.html).
30395         (tags-completion-table): Combine those lists.
30396         (tags-completion-table): Update the docstring.
30398 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
30400         Restore EOL format testing in etags
30401         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
30402         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
30403         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
30404         test-case changes below.
30405         * test/etags/html-src/algrthms.html: Convert back to DOS EOL format.
30406         * test/etags/cp-src/c.C (B): Add back stray CR character.
30407         * test/etags/c-src/dostorture.c: Add back.
30408         * test/etags/Makefile (CSRC): Add back c-src/dostorture.c.
30410 2015-05-30  Vitaly Takmazov  <vitalyster@gmail.com>  (tiny change)
30412         Declare Emacs on MS-Windows to be DPI-aware
30413         * nt/emacs-x86.manifest (asmv3:windowsSettings): Add dpiAware.
30414         * nt/emacs-x64.manifest (asmv3:windowsSettings): Add dpiAware.
30415         This avoids Windows entering compatibility mode for Emacs,
30416         which causes fonts to look less nice.
30418 2015-05-30  Michael Albinus  <michael.albinus@gmx.de>
30420         Improve Tramp traces
30421         * lisp/net/trampver.el (tramp-repository-get-version): New defun.
30422         * lisp/net/tramp.el (tramp-debug-message): Use it.
30424 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
30426         backup-buffer minor reworking of internals
30427         * lisp/files.el (backup-buffer): Rework to avoid a couple of
30428         unused locals inadvertently introduced in the previous change.
30430         backup-buffer now reports .emacs.d/%backup% ills
30431         * lisp/files.el (backup-buffer): If the write to .emacs.d/%backup%
30432         fails due to disk space exhaustion or whatever, do not pretend
30433         that it succeeded.  More generally, do a better job of checking
30434         for I/O failures, and limit the scope of the condition-case to
30435         just the operations where file errors should be caught and ignored
30436         (Bug#20595).  Also, don't bother trying to delete later backups if
30437         an earlier deletion fails, as this is a sign of trouble and it's
30438         better to stop when there's trouble.
30440         copy-file now truncates output after writing
30441         * src/fileio.c (Fcopy_file): Truncate output after writing rather
30442         than before.  This is more likely to work than truncation before
30443         writing, if the file system is out of space or the user is over
30444         disk quota (Bug#20595).  Also, check for read errors.
30446 2015-05-29  Artur Malabarba  <bruce.connor.am@gmail.com>
30448         * lisp/emacs-lisp/package.el (package-load-all-descriptors):
30449         Don't load descriptors from directories above the package directories.
30451 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
30453         Merge from gnulib
30454         This incorporates the following (Bug#20681):
30455         2015-05-29 acl-permissions: Fix build on Mac OS X and older AIX
30456         2015-05-29 acl-permissions: Fix build on Solaris and Cygwin
30457         * lib/set-permissions.c: Copy from gnulib.
30459 2015-05-29  Michael Albinus  <michael.albinus@gmx.de>
30461         Improve Tramp traces
30462         * lisp/net/tramp.el (tramp-call-process-region): New defun.
30463         * lisp/net/tramp-sh.el (tramp-get-inline-coding): Use it.
30465 2015-05-29  Glenn Morris  <rgm@gnu.org>
30467         * test/automated/vc-tests.el: Try enabling tests on hydra.nixos.org.
30469 2015-05-29  Wolfgang Jenkner  <wjenkner@inode.at>
30471         * src/xfns.c (x_set_menu_bar_lines): Fix calls to x_clear_area.
30472         The signature was changed in the cairo branch, merged on 2015-05-23.
30473         This oversight broke compiling only the non-toolkit X version.
30475 2015-05-29  Samer Masterson  <samer@samertm.com>
30477         * doc/lispref/os.texi: Update initial-buffer-choice docs.
30479 2015-05-29  Glenn Morris  <rgm@gnu.org>
30481         * test/automated/vc-tests.el (vc-test-rcs04-checkout-model):
30482         Mark as an expected failure.
30484 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
30486         Change package test to look for curved quotes
30487         * test/automated/package-test.el (package-test-describe-package)
30488         (package-test-signed): Search for curved single quotes as well as
30489         for grave accent and apostrophe.
30491 2015-05-28  Katsumi Yamaoka  <yamaoka@jpl.org>
30493         * lisp/gnus/gnus-art.el (gnus-button-alist): Re-revert last change.
30494         cf. <http://news.gmane.org/group/gmane.emacs.devel/thread=186896>
30496 2015-05-28  Samer Masterson  <samer@samertm.com>
30498         Show files when `initial-buffer-choice' is non-nil
30499         * lisp/startup.el (command-line-1): When Emacs is given a file as an
30500         argument and `initial-buffer-choice' is non-nil, display both the file
30501         and `initial-buffer-choice'.  For more than one file, show
30502         `initial-buffer-choice' and *Buffer List*.  Refactor display-changing
30503         commands out of the command line arg parser.
30504         (initial-buffer-choice): Clarify docstring.
30506 2015-05-28  Eli Zaretskii  <eliz@gnu.org>
30508         Fix last commit
30509         * nt/gnulib.mk (libgnu_a_SOURCES): Add get-permissions.c back.
30510         (gnulib module qcopy-acl): Add back, as it is harmless.  This
30511         minimizes differences wrt lib/gnulib.mk.
30513         Fix the MS-Windows build as followup to gnulib update
30514         * nt/gnulib.mk (libgnu_a_SOURCES): Remove get-permissions.c and
30515         set-permissions.c, as they don't compile on MinGW.
30516         (gnulib module qcopy-acl): Remove, as it needs set-permissions.c.
30518 2015-05-28  Paul Eggert  <eggert@cs.ucla.edu>
30520         Revert my change to gnus-art.el
30521         * lisp/gnus/gnus-art.el (gnus-button-alist): Revert last change.
30522         It wasn't that important, and it caused a Gnus build to fail.  See:
30523         http://www.randomsample.de:4456/builders/emacs-devel/builds/734
30525         New minor mode Electric Quote
30526         This lets you easily insert quotes ‘like this’ by typing
30527         quotes `like this', and similarly you can easily insert
30528         quotes “like this” by typing quotes ``like this'' (Bug#20545).
30529         * doc/emacs/basic.texi (Inserting Text):
30530         * doc/emacs/modes.texi (Minor Modes):
30531         * etc/NEWS: Document it.
30532         * doc/emacs/text.texi (Quotation Marks): New section.
30533         * lisp/electric.el (electric-quote-comment)
30534         (electric-quote-string, electric-quote-paragraph):
30535         New custom vars.
30536         (electric--insertable-p)
30537         (electric-quote-post-self-insert-function): New functions.
30538         (electric-quote-mode, electric-quote-local-mode): New minor modes.
30539         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
30540         Add curved single quotes to electric-pair-text-pairs.
30541         Set electric-quote-string in this buffer.
30543         A few more doc string fixes (Bug#20385)
30545         Accept curved quotes in doc strings
30546         * lisp/info-look.el (info-lookup-guess-custom-symbol):
30547         (info-lookup-alist): Treat ‘’ like `' when parsing help buffers etc.
30549         Generate curved quotes in pseudo-info nodes
30550         * lisp/info.el (Info-virtual-index-find-node)
30551         (Info-virtual-index, Info-apropos-find-node, info-apropos):
30552         Quote ‘like this’, not `like this', when generating pseudo-info nodes.
30554         Fix minor quoting problems in doc strings
30555         Most of these fixes involve escaping grave accents that are
30556         actually intended to be grave accents, not left quotes.
30557         (Bug#20385)
30559         Support curved quotes in doc strings
30560         Emacs's traditional doc string style has been to quote symbols
30561         `like this'.  This worked well on now-obsolete terminals where
30562         ` and ' were symmetric quotes, but nowadays curved quotes
30563         ‘like this’ look better.  Support quoting the new way too.
30564         (Bug#20385)
30565         * doc/lispref/tips.texi (Documentation Tips): Symbols can be quoted
30566         ‘like-this’ as well as `like-this'.
30567         * etc/NEWS: Mention this.
30568         * lisp/cedet/mode-local.el (overload-docstring-extension)
30569         (mode-local-print-binding, mode-local-describe-bindings-2):
30570         * lisp/cus-theme.el (describe-theme-1):
30571         * lisp/descr-text.el (describe-text-properties-1, describe-char):
30572         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
30573         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
30574         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
30575         (eieio-help-constructor):
30576         * lisp/emacs-lisp/package.el (describe-package-1):
30577         * lisp/faces.el (describe-face):
30578         * lisp/help-fns.el (help-fns--key-bindings)
30579         (help-fns--compiler-macro, help-fns--parent-mode, help-fns--obsolete):
30580         (help-fns--interactive-only, describe-function-1):
30581         (describe-variable):
30582         * lisp/help.el (describe-mode):
30583         * lisp/international/mule-cmds.el (describe-input-method)
30584         (describe-language-environment):
30585         * lisp/international/mule-diag.el (describe-character-set)
30586         (print-coding-system-briefly, list-input-methods)
30587         (list-input-methods-1):
30588         Insert curved quotes rather than grave accent and apostrophe.
30589         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
30590         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
30591         (checkdoc-proper-noun-region-engine):
30592         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2)
30593         (lisp-cl-font-lock-keywords-2):
30594         * lisp/finder.el (finder-font-lock-keywords):
30595         * lisp/gnus/gnus-art.el (gnus-button-alist):
30596         * lisp/help-fns.el (help-do-arg-highlight)
30597         (describe-function-1, describe-variable):
30598         * lisp/help-mode.el (help-xref-symbol-regexp)
30599         (help-xref-info-regexp, help-xref-url-regexp):
30600         * lisp/help.el (describe-mode):
30601         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
30602         * lisp/wid-edit.el (widget-documentation-link-regexp):
30603         Parse symbols quoted ‘like-this’ as well as `like-this'.
30604         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
30605         Add "‘" and "’" to electric-pair-text-pairs.
30606         (elisp--form-quoted-p): Also allow "‘" as a quoting char.
30607         (elisp-completion-at-point, elisp--preceding-sexp):
30608         Also treat "‘" and "’" as quoting chars.
30610         substitute-command-keys now curves quotes
30611         So, for example, it turns "`abc'" into "‘abc’" (Bug#20385).
30612         * doc/lispref/help.texi (Keys in Documentation):
30613         * etc/NEWS: Document this.
30614         * src/doc.c (Fsubstitute_command_keys): Implement it.
30616 2015-05-28  Glenn Morris  <rgm@gnu.org>
30618         * lisp/mail/rmailsum.el (rmail-summary-by-recipients)
30619         (rmail-summary-by-topic, rmail-summary-by-senders):
30620         No longer strip leading/trailing whitespace.
30622         * lisp/progmodes/f90.el (f90-type-def-re): Add "type, extends".
30623         (f90-no-block-limit): Add "enum".  (Bug#20680)
30624         * test/automated/f90.el (f90-test-bug20680, f90-test-bug20680b):
30625         New tests.
30627 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
30629         * lisp/isearch.el (isearch--current-buffer): Give a default value.
30630         Un-revert changes mistakenly dropped by f9fabb2b.
30632 2015-05-27  Paul Eggert  <eggert@cs.ucla.edu>
30634         Merge from gnulib
30635         This incorporates:
30636         2015-05-27 qacl: Reimplement qset_acl and qcopy_acl (Bug#20666)
30637         2015-05-27 file-has-acl: Split feature tests again (Bug#20667)
30638         2015-05-27 string: fix build failure on BSD/OSX with FORTIFY_SOURCE
30639         2015-05-26 stdio: limit __gnu_printf__ witness to gcc 4.4+
30640         2015-05-26 inttypes: force correct mingw PRIdMAX even without <stdio.h>
30641         2015-05-26 stdio: fix probe on mingw under gcc 5.1
30642         * admin/merge-gnulib (GNULIB_MODULES):
30643         Replace qacl with qcopy-acl, since we don't need the rest of qacl.
30644         * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
30645         * lib/inttypes.in.h, lib/qcopy-acl.c, lib/qset-acl.c:
30646         * lib/string.in.h, m4/acl.m4, m4/stdio_h.m4:
30647         Get latest versions from gnulib.
30648         * lib/get-permissions.c, lib/set-permissions.c: New files.
30649         * lib/gnulib.mk, m4/gnulib-comp.m4:
30650         Regenerate.
30651         * nt/gnulib.mk: Merge lib/gnulib.mk changes by hand.
30653 2015-05-27  Dmitry Gutov  <dgutov@yandex.ru>
30655         * lisp/vc/vc-dispatcher.el (vc-setup-buffer): Delete the old
30656         process here.
30657         (vc-do-command): Rather than here (bug#20608).
30659 2015-05-27  Ivan Shmakov  <ivan@siamics.net>
30661         Avoid gratuitous delete-dups in face-at-point
30662         * lisp/faces.el (face-at-point): Do not compute the properly
30663         ordered, duplicate-free list if only a single value is
30664         requested anyway.  (Bug#20519)
30666         Show the exact C-x 8 RET invocation in describe-char
30667         * lisp/descr-text.el (describe-char): Show the exact C-x 8 RET
30668         invocation instead of a template.  (Bug#20522)
30670 2015-05-27  Artur Malabarba  <bruce.connor.am@gmail.com>
30672         * lisp/emacs-lisp/package.el: Don't erase tags on refresh.
30673         (package-menu--post-refresh): Call `tabulated-list-print' with the
30674         UPDATE argument.  This only affects the refresh action, the revert
30675         action still erases tags.
30676         (package-menu-get-status): Change `assq' to `assoc'.
30677         (package-menu--mark-upgrades-1): New function.
30678         (package-menu--mark-upgrades-pending): New variable.
30679         (package-menu-mark-upgrades): Use them to delay marking until
30680         after refresh is done.
30681         (package-menu--post-refresh): Call mark-upgrades-1 if
30682         mark-upgrades-pending is non-nil.
30684 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
30686         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
30687         Fix typo in "Improve tramp-handle-make-auto-save-file-name"
30688         (commit 3953c4be2816537be95520605d45b866dc731f4b).
30690 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
30692         * lisp/isearch.el (isearch--current-buffer): New var.
30693         (isearch-update): Set cursor-sensor-inhibit here.
30694         (isearch-done): Unset cursor-sensor-inhibit in the right buffer
30695         (bug#20532).
30697         Change inhibit-point-motion-hooks to t
30698         * src/textprop.c (syms_of_textprop): Default Vinhibit_point_motion_hooks
30699         to t and document it as obsolete.
30701 2015-05-27  Eli Zaretskii  <eliz@gnu.org>
30703         Support ZIP files that use Zip64 extensions
30704         * lisp/arc-mode.el (archive-zip-summarize): Handle the new ZIP
30705         format of central directory offsets used by Zip64 extensions.
30706         (Bug#20665)
30708 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
30710         New test tramp-test30-make-auto-save-file-name
30711         * test/automated/tramp-tests.el
30712         (tramp-test30-make-auto-save-file-name): New test.
30713         (tramp-test31-special-characters)
30714         (tramp-test31-special-characters-with-stat)
30715         (tramp-test31-special-characters-with-perl)
30716         (tramp-test31-special-characters-with-ls, tramp-test32-utf8)
30717         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
30718         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
30719         (tramp-test34-recursive-load, tramp-test35-unload): Rename.
30721         Improve tramp-handle-make-auto-save-file-name
30722         * lisp/net/tramp.el (tramp-auto-save-directory): Add :tags.
30723         (tramp-handle-make-auto-save-file-name): Let native
30724         `make-auto-save-file-name' use `auto-save-file-name-transforms',
30725         if `tramp-auto-save-directory' is not set.
30727 2015-05-27  Glenn Morris  <rgm@gnu.org>
30729         No longer set dired-directory in eshell.  (Bug#16477)
30730         * lisp/eshell/esh-mode.el (eshell-mode):
30731         * lisp/eshell/em-dirs.el (eshell/cd): No longer set dired-directory.
30733         * lisp/mail/sendmail.el (mail-position-on-field): Doc fix.
30735         Make c-submit-bug-report file reports at debbugs.gnu.org.  (Bug#15784)
30736         * lisp/progmodes/cc-mode.el (c-mode-help-address):
30737         Change to submit@debbugs.
30738         (c-mode-bug-package): New constant.
30739         (mail-position-on-field): Declare.
30740         (c-submit-bug-report): Insert X-Debbugs-Package header.
30741         * doc/misc/cc-mode.texi (Mailing Lists and Bug Reports):
30742         Mention debbugs.gnu.org.
30744 2015-05-26  Glenn Morris  <rgm@gnu.org>
30746         * lisp/mail/rmailsum.el: Commas no longer separate regexps.  (Bug#19026)
30747         (rmail-summary-by-recipients, rmail-summary-by-topic)
30748         (rmail-summary-by-senders): No longer use mail-comma-list-regexp.
30749         * doc/emacs/rmail.texi (Rmail Make Summary): Update for this change.
30751 2015-05-26  Paul Eggert  <eggert@cs.ucla.edu>
30753         Handle curved quotes in info files
30754         * lisp/calc/calc-help.el (calc-describe-thing):
30755         * lisp/info.el (Info-find-index-name)
30756         (Info-try-follow-nearest-node, Info-fontify-node):
30757         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
30758         In info files, process quotes ‘like this’ the same way we process
30759         quotes `like this'.  This catches a few places we missed earlier.
30761 2015-05-26  Dmitry Gutov  <dgutov@yandex.ru>
30763         xref-prompt-for-identifier: Use a list value
30764         * lisp/progmodes/xref.el (xref-prompt-for-identifier): Allow list
30765         value, to be interpreted as a list of commands.
30766         (xref--prompt-p): New function.
30767         (xref--read-identifier): Use it.
30769 2015-05-26  Eli Zaretskii  <eliz@gnu.org>
30771         Teach MS-Windows font back-end return per-glyph ascent/descent
30772         * src/w32font.h (struct w32_metric_cache): Add ascent and descent
30773         values.
30774         * src/w32font.c (w32font_text_extents): Compute, cache, and
30775         accumulate per-glyph ascent and descent values, instead of copying
30776         global values from the font.  If the values are not available from
30777         the font data, i.e., non-TTF fonts, fall back on font-global values.
30778         (compute_metrics): Compute and return per-glyph ascent and descent
30779         values, if returned by GetGlyphOutlineW, falling back on
30780         font-global values.  (Bug#20628)
30781         * src/w32term.c (w32_draw_rectangle): Add 1 pixel to width and
30782         height of rectangle to be drawn, to be compatible with
30783         XDrawRectangle.  Fixes glyphless-char display as hex codes in a
30784         box, when per-glyph ascent/descent values are used.
30786 2015-05-26  Artur Malabarba  <bruce.connor.am@gmail.com>
30788         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
30789         Don't sort if sorter is nil.
30791 2015-05-26  Michael Albinus  <michael.albinus@gmx.de>
30793         Fix Bug#20621
30794         * lisp/net/tramp-sh.el (tramp-set-auto-save): Remove it.  There
30795         are major modes which set `auto-save-mode' on their own rules;
30796         Tramp shall not overwrite such settings.
30798 2015-05-26  Glenn Morris  <rgm@gnu.org>
30800         * lisp/desktop.el: If modes aren't autoloaded, try simple guesswork.
30801         (desktop-load-file): Guess that "foobar" defines "foobar-mode".
30802         (desktop-buffer-mode-handlers, desktop-minor-mode-handlers):
30803         Doc updates.
30804         (vc-dir-mode): Remove unnecessary autoload.
30806 2015-05-25  Philipp Stephani  <phst@google.com>
30808         * lisp/term/xterm.el: Add gui-get-selection support via OSC-52.
30809         (xterm--extra-capabilities-type): Add `getSelection'.
30810         (xterm--query): Add `no-async' argument.
30811         (xterm--init-activate-get-selection): New function.
30812         (terminal-init-xterm): Use it.
30813         (xterm--init-modify-other-keys): Rename from
30814         terminal-init-xterm-modify-other-keys.
30815         (xterm--init-bracketed-paste-mode): Rename from
30816         terminal-init-xterm-bracketed-paste-mode.
30817         (xterm--init-activate-set-selection): Rename from
30818         terminal-init-xterm-activate-set-selection.
30819         (xterm--selection-char): New function.
30820         (gui-backend-set-selection): Use it.  Use the &context to only apply
30821         this method in terminals where we enabled the feature.
30822         (gui-backend-get-selection): New method.
30824 2015-05-25  Daniel Colascione  <dancol@dancol.org>
30826         * lisp/progmodes/cc-langs.el (c-constant-kwds): Add C-language
30827         keyword constants to C++.
30829 2015-05-25  Paul Eggert  <eggert@cs.ucla.edu>
30831         Make TAGS files more portable to MS-Windows
30832         * etc/NEWS: Document this.
30833         * lib-src/etags.c (readline_internal) [DOS_NT]:
30834         Don't treat CRs differently from GNUish hosts.
30835         * lisp/progmodes/etags.el (etags-goto-tag-location):
30836         Adjust STARTPOS to account for the skipped CRs in dos-style files.
30838 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
30840         Improve fix of bug#20634 in tramp-sh.el
30842 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
30844         Fix a typo in last commit
30845         * lib-src/etags.c (C_entries): Fix a typo.
30846         * test/etags/ETAGS.good_1:
30847         * test/etags/ETAGS.good_2:
30848         * test/etags/ETAGS.good_3:
30849         * test/etags/ETAGS.good_4:
30850         * test/etags/ETAGS.good_5:
30851         * test/etags/CTAGS.good: Update due to the change in etags.c.
30853         Fix tagging of class members in C-like OO languages
30854         * lib-src/etags.c (longopts): Add new option --class-qualify and
30855         its shorthand -Q.
30856         (print_help): Add help text for --class-qualify.
30857         (main): Add handling of -Q.
30858         (consider_token, C_entries) <omethodparm>: Append argument types
30859         to Objective C methods only if --class-qualify was specified.
30860         Qualify C++, Objective C, and Java class members with their class
30861         names only if --class-qualify was specified.
30862         (C_entries): If --class-qualify was not specified, remove the
30863         namespace and class qualifiers from tag names of C++ methods.
30864         This allows to use etags.el as xref back-end without the
30865         tag-symbol-match-p method, which greatly increases the number of
30866         potentially false positives.  (Bug#20629)
30867         * doc/man/etags.1: Update to document the new --class-qualify
30868         option.
30869         * test/etags/ETAGS.good_1:
30870         * test/etags/ETAGS.good_2:
30871         * test/etags/ETAGS.good_3:
30872         * test/etags/ETAGS.good_4:
30873         * test/etags/ETAGS.good_5:
30874         * test/etags/CTAGS.good: Update due to changes in etags.c.
30876 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
30878         (cl-generic-define-method): Side effects are evil (bug#20644)
30879         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method): Don't reuse
30880         cons-cells that might be used as keys in an `equal' hash-table.
30882 2015-05-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
30884         Make erc timestamps visible again
30885         * lisp/erc/erc-stamp.el (erc-munge-invisibility-spec):
30886         Make timestamps visible again (if requested).
30888 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
30890         Fix last change in etags.c that broke tagging compresed files
30891         * lib-src/etags.c (process_file_name) [MSDOS || DOS_NT]: Fix
30892         quoting of decompression shell command for MS-Windows/MS-DOS.
30894 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
30896         * lisp/emacs-lisp/cl-macs.el (cl-tagbody): Scope cl--tagbody-alist.
30897         (Bug#20639)
30899 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
30901         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer):
30902         Fix typo in "Inhibit `epa-file-handler' in Tramp"
30903         (commit 89035e247591c8d688fce922b7079881aa110f33).
30905 2015-05-25  Orivej Desh  <orivej@gmx.fr>  (tiny change)
30907         Fix IPv6 addresses in Tramp
30908         * lisp/net/tramp-sh.el (tramp-make-copy-program-file-name):
30909         Add square brackets around host name.
30911 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
30913         Inhibit `epa-file-handler' in Tramp (Bug#20634)
30914         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer)
30915         (tramp-sh-handle-insert-file-contents-literally): Inhibit also
30916         `epa-file-handler'.
30918 2015-05-24  Stefan Monnier  <monnier@iro.umontreal.ca>
30920         * lisp/emacs-lisp/pcase.el: Use PAT rather than UPAT in docstring.
30921         (pcase-let): Document the behavior in case the pattern doesn't match.
30923 2015-05-24  Artur Malabarba  <bruce.connor.am@gmail.com>
30925         * lisp/emacs-lisp/tabulated-list.el: New optional print method.
30926         (tabulated-list-print): New optional argument, UPDATE.  If
30927         non-nil, the list is printed by only adding and deleting the
30928         changed entries, instead of erasing the whole buffer.  This method
30929         is much faster when few or no entries have changed.
30930         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
30931         * etc/NEWS: Document it.
30933         * lisp/emacs-lisp/tabulated-list.el: Improve printing.
30934         (tabulated-list--get-sorter): New function.
30935         (tabulated-list-print): Restore window-line when remember-pos is
30936         passed and optimize away the `nreverse'.
30938 2015-05-24  Paul Eggert  <eggert@cs.ucla.edu>
30940         Simpilify etags TEX mode scanning
30941         * lib-src/etags.c (TEX_mode, TEX_esc, TEX_opgrp, TEX_clgrp):
30942         Remove static vars.
30943         (TeX_commands): Deduce escapes here instead.
30944         (TEX_LESC, TEX_SESC, TEX_mode): Remove; all uses removed.
30945         This removes the need for a reset_input call.
30947         Improve etags I/O error reporting
30948         * lib-src/etags.c:
30949         Don't include sys/types.h and sys/stat.h; no longer needed.
30950         (infilename): New static var.
30951         (process_file_name): Don't call 'stat'.  Instead, just open the
30952         file for reading and report any errors.  Don't bother making
30953         a copy of the file argument; it's not needed.  Be more careful to
30954         use the failing errno when reporting an error.
30955         Quote the real name better (though no perfectly)
30956         when passing it to the shell.
30957         (reset_input): New function, which reports I/O errors.
30958         All uses of 'rewind' changed to use this function.
30959         (perhaps_more_input): New function, which also checks for
30960         I/O errors.  All uses of 'feof' changed to use this function.
30961         (analyze_regex): Report an error if fclose fails.
30962         (readline_internal): Report an error if getc fails.
30963         (etags_mktmp): Return an error if close fails.
30965         etags.c: avoid side effects in 'if'
30966         * lib-src/etags.c (process_file_name, Perl_functions)
30967         (TEX_decode_env): Hoist side effects into previous statement.
30969         .gitignore tweaks
30970         * .gitignore: Ignore all *.stamp files.  Sort.
30971         Ignore [0-9]*.txt (commonly used name for git patches)
30972         and /vc-dwim-log-* (vc-dwim temporary).
30974 2015-05-24  Eli Zaretskii  <eliz@gnu.org>
30976         Fix last change in etags.c, which failed the test suite
30977         * lib-src/etags.c (intoken): Add '$' to the set, as it was there
30978         before the last change.
30980 2015-05-23  Glenn Morris  <rgm@gnu.org>
30982         Remove charset map files from repository, generate in first bootstrap
30983         * admin/charsets/Makefile.in (${srcdir}/charsets.stamp): New.
30984         (all): Create the stamp file.
30985         (extraclean): Delete the stamp file.
30986         * src/Makefile.in (lispintdir, charsets): New variables.
30987         (${lispintdir}/cp51932.el, ${lispintdir}/eucjp-ms.el, ${charsets}):
30988         New rules.
30989         (emacs$(EXEEXT), temacs$(EXEEXT)): Depend on $charsets.
30990         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
30991         * etc/charsets/*.map: Remove from repository.
30993 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
30995         Cleanup etags.c to use locale-independent code
30996         Although this doesn't alter behavior (as etags doesn't use
30997         setlocale), the new version is more clearly locale-independent and
30998         the executable is a bit smaller on my platform.
30999         * lib-src/etags.c: Include <limits.h>, for UCHAR_MAX.
31000         Include <c-ctype.h> instead of <ctype.h>.
31001         (CHARS, CHAR, init, _wht, _nin, _itk, _btk, _etk, white, nonam, endtk)
31002         (begtk, midtk):
31003         Remove; no longer needed.
31004         (iswhite, ISALNUM, ISALPHA, ISDIGIT, ISLOWER, lowcase): Remove.
31005         All callers changed to use c_isspace, c_isalnum, c_isalpha, c_isdigit,
31006         c_islower, c_tolower, respectively.
31007         (notinname, begtoken, intoken, endtoken): Rewrite as functions
31008         instead of macros, and initialize the tables at compile-time
31009         rather than at run-time.
31011         Put default action first in src/Makefile
31012         * src/Makefile.in (all): Put this rule before lisp.mk.
31013         That way, plain 'make' works in the src directory again.
31015 2015-05-23  Glenn Morris  <rgm@gnu.org>
31017         * Makefile.in: Fix extraclean rule.
31018         (extraclean_dirs): New.
31019         (extraclean): Use it.
31021 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
31023         Avoid compiler warning in image.c on MS-Windows
31024         * src/w32term.h (x_query_color): Add prototype, to avoid compiler
31025         warning in image.c.
31027 2015-05-23  Glenn Morris  <rgm@gnu.org>
31029         Fix --without-toolkit-scroll-bars builds.
31030         * src/xterm.c (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]:
31031         Add new argument to x_clear_area1.
31032         (XTset_horizontal_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
31033         Update x_clear_area arguments.
31035         * admin/charsets/glibc/: New directory, imported from glibc 2.21.
31036         * admin/charsets/Makefile.in (GLIBC_CHARMAPS):
31037         Change to included version.
31038         (LOCAL, local, totalclean): Remove.
31039         (extraclean): Delete all generated files.
31041 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
31043         * lisp/pcmpl-cvs.el (pcmpl-cvs-entries): Don't assume
31044         CVS/Entries exists.
31046         * lisp/progmodes/xref.el (xref-find-apropos): Use read-string.
31048         * lisp/progmodes/etags.el (tags-completion-at-point-function):
31049         Don't trust the find-tag function.
31051 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
31053         Pacify --enable-gcc-warnings
31054         * src/frame.h (x_query_color): Remove redundant extern decl.
31055         * src/ftcrfont.c (ftcrfont_glyph_extents, ftcrfont_list)
31056         (ftcrfont_match, ftcrfont_open, ftcrfont_close)
31057         (ftcrfont_text_extents, ftcrfont_draw):
31058         * src/xterm.c (x_set_window_size_1, *x_color_cells, x_update_end)
31059         (XTframe_up_to_date, x_clear_area1, x_clear_frame)
31060         (x_ins_del_lines, frame_highlight, frame_unhighlight)
31061         (x_new_focus_frame, x_focus_changed, XTframe_rehighlight)
31062         (x_draw_hollow_cursor, x_draw_bar_cursor, x_flush, x_update_begin)
31063         (x_update_window_begin, x_connection_closed)
31064         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
31065         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
31066         (*x_gc_get_ext_data, x_extension_initialize)
31067         (x_cr_accumulate_data):
31068         Remove redundant static decl.  Many of these GCC doesn't complain
31069         about, but we might as well clean out the duplication while we're
31070         in the neighborhood.
31071         * src/xterm.c (x_fill_trapezoid_for_relief):
31072         Remove decl of nonexistent function.
31074 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
31076         Replace gui-method macros with cl-generic with &context
31077         * lisp/frame.el (gui-method--name, gui-method, gui-method-define)
31078         (gui-method-declare, gui-call): Remove.
31079         (frame-creation-function): Use cl-defgeneric.
31080         (make-frame): Adjust callers.
31081         * lisp/menu-bar.el (menu-bar-edit-menu):
31082         Use gui-backend-selection-exists-p.
31083         * lisp/select.el (x-get-clipboard): Use gui-backend-get-selection.
31084         (gui-backend-get-selection): New cl-generic to replace
31085         gui-get-selection method.
31086         (gui-backend-set-selection): New cl-generic to replace
31087         gui-set-selection method.
31088         (gui-selection-owner-p): New cl-generic to replace
31089         gui-selection-owner-p method.
31090         (gui-backend-selection-exists-p): New cl-generic to replace
31091         gui-selection-exists-p method.  Adjust all callers.
31092         * lisp/server.el (server-create-window-system-frame): Don't ignore
31093         window-system spec even when unsupported.
31094         * lisp/simple.el (deactivate-mark): Use new gui-backend-* functions.
31095         * lisp/startup.el (handle-args-function, window-system-initialization):
31096         Use cl-defgeneric.
31097         (command-line): Adjust calls accordingly.
31098         * lisp/term/ns-win.el (ns-window-system-initialization): Turn into
31099         a window-system-initialization method.
31100         (handle-args-function, frame-creation-function): Use cl-defmethod.
31101         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
31102         (gui-get-selection): Use cl-defmethod on the new functions instead.
31103         * lisp/term/pc-win.el (w16-get-selection-value): Turn into
31104         a gui-backend-get-selection method.
31105         (gui-selection-exists-p, gui-selection-owner-p, gui-set-selection):
31106         Use cl-defmethod on the new functions instead.
31107         (msdos-window-system-initialization): Turn into
31108         a window-system-initialization method.
31109         (frame-creation-function, handle-args-function): Use cl-defmethod.
31110         * lisp/term/w32-win.el (w32-window-system-initialization): Turn into
31111         a window-system-initialization method.
31112         (handle-args-function, frame-creation-function): Use cl-defmethod.
31113         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
31114         (gui-get-selection): Use cl-defmethod on the new functions instead.
31115         * lisp/term/x-win.el (x-window-system-initialization): Turn into
31116         a window-system-initialization method.
31117         (handle-args-function, frame-creation-function): Use cl-defmethod.
31118         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
31119         (gui-get-selection): Use cl-defmethod on the new functions instead.
31120         * lisp/term/xterm.el (xterm--set-selection): Turn into
31121         a gui-backend-set-selection method.
31122         * src/nsselect.m (Fns_selection_exists_p): Remove unused arg `terminal'.
31123         (Fns_selection_owner_p): Remove unused arg `terminal'.
31124         (Fns_get_selection): Remove unused args `time_stamp' and `terminal'.
31126 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
31128         Revert "Fix etags Bug#20629 that broke C++ support"
31129         This reverts commit 13dd9d4f7e75d2c78aa5537cef09de03663e9748.
31131 2015-05-23  Jan D  <jan.h.d@swipnet.se>
31133         Fix etags Bug#20629 that broke C++ support
31134         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
31135         Revert commit from Sun May 10 (Bug#20629).
31137         Merge branch 'cairo'.
31138         Main work done by YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>.
31139         Small fixes and image work by Jan D. <jan.h.d@swipnet.se>.
31141         Merge branch 'master' into cairo
31143         Fixes to compile cairo branch without cairo
31144         * src/gtkutil.c (xg_update_scrollbar_pos): x_clear_area takes frame as
31145         first argument.
31146         * src/xterm.c (handle_one_xevent): Surround x_cr_destroy_surface with
31147         USE_CAIRO.
31149 2015-05-23  Artur Malabarba  <bruce.connor.am@gmail.com>
31151         * lisp/emacs-lisp/package.el: Always update selected-packages.
31152         (package--update-selected-packages): New function.
31153         (package-menu-execute): Use it before starting the transaction,
31154         this way the list of selected packages is updated even when the
31155         transaction fails.
31156         (package-menu--perform-transaction): Don't edit selected-packages.
31158 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
31160         Fix etags reading of compressed files
31161         * lib-src/etags.c (O_CLOEXEC) [WINDOWSNT]: Define.
31162         Include fcntl.h, for O_CLOEXEC.
31163         (process_file_name): Don't use 'popen', whose streams cannot be
31164         rewound.  Instead, uncompress the file to a temporary file,
31165         created by 'etags_mktmp', and read from that as usual.
31166         (etags_mktmp): New function.
31167         * test/etags/ETAGS.good_1:
31168         * test/etags/ETAGS.good_2:
31169         * test/etags/ETAGS.good_3:
31170         * test/etags/ETAGS.good_4:
31171         * test/etags/ETAGS.good_5: Update to be consistent with latest
31172         changes in etags.c regarding reading compressed files.
31174         Improve documentation of 'set-fontset-font'
31175         * doc/lispref/display.texi (Fontsets): Document the value of nil
31176         for the 3rd argument of 'set-fontset-font'.
31178         Fix documentation of forward-line
31179         * src/cmds.c (Fforward_line): Clarify the return value if the line
31180         at end of accessible portion of the buffer has no newline.
31181         * doc/lispref/positions.texi (Text Lines): Document what happens
31182         if the line at end of accessible portion of buffer has no newline.
31183         (Bug#20587)
31185 2015-05-22  Glenn Morris  <rgm@gnu.org>
31187         * admin/charsets/Makefile.in (TRANS_TABLE): Add short aliases.
31189         * admin/charsets/mapconv (LC_ALL): Set to C.
31191         * Makefile.in: Add admin/charsets into top-level clean rules.
31192         (clean): Add admin/charsets.
31193         (maybeclean_dirs): New variable.
31194         (distclean, bootstrap-clean, maintainer-clean): Use $maybeclean_dirs.
31196         * admin/charsets/Makefile.in (LOCAL, local): Fix members.
31198 2015-05-22  Artur Malabarba  <bruce.connor.am@gmail.com>
31200         * lisp/emacs-lisp/package.el (package-selected-packages): Fix doc.
31202 2015-05-22  Glenn Morris  <rgm@gnu.org>
31204         Generate admin/charsets Makefile via configure, and make more portable
31205         * configure.ac (SUBDIR_MAKEFILES): Add admin/charsets/Makefile.
31206         (admin/charsets/Makefile): Generate it.
31207         * admin/charsets/Makefile.in: Rename from Makefile.
31208         (AWK, srcdir, top_srcdir, AM_DEFAULT_VERBOSITY):
31209         New variables, set by configure.
31210         (charsetdir, lispintdir, mapfiledir, AM_V_GEN, am__v_GEN_)
31211         (am__v_GEN_0, am__v_GEN_1, AM_V_at, am__v_at_, am__v_at_0)
31212         (am__v_at_1, LOCAL, mapconv, run_mapconv, big5, compact, cp51932)
31213         (cp932, eucjp_ms, gb180302, gb180304, kuten): New variables.
31214         (TRANS_TABLE, CHARSETS): Add directory prefix to value.
31215         (all): Declare PHONY.
31216         (local): New PHONY target.
31217         (map_template): New template.  Use to define short PHONY aliases.
31218         (*.map): Add directory prefixes to targets and prerequisites.
31219         Respect make verbosity.
31220         (JISC6226.map): Replace non-portable sed append without newline.
31221         (install): Remove rule.
31222         (clean): Only delete temporary sedscript.
31223         (bootstrap-clean, distclean, maintainer-clean, extraclean)
31224         (totalclean): New PHONY rules.
31225         * admin/charsets/mapconv (BASE): Replace basename with expr.
31226         (FILE): Add "mapfiles" subdirectory.
31227         (AWK): New variable.  Use throughout in place of "awk".
31228         (main): Use "gunzip -c" in place of "zcat".
31229         Don't leave whitespace before "p", for older sed.
31230         * admin/charsets/mapfiles/PTCP154: Add final newline,
31231         to make older sed versions happy.
31233 2015-05-22  Stefan Monnier  <monnier@iro.umontreal.ca>
31235         * lisp/autorevert.el: Use lexical-binding.  Fix hook usage.
31236         (global-auto-revert-ignore-buffer, auto-revert-notify-modified-p)
31237         (auto-revert-notify-watch-descriptor): Use defvar-local.
31238         (find-file-hook, auto-revert-tail-mode)
31239         (auto-revert-notify-add-watch): Use setq-local.
31240         (auto-revert-notify-add-watch): Don't call make-local-variable on
31241         kill-buffer-hook (bug#20601).
31243 2015-05-21  Stefan Monnier  <monnier@iro.umontreal.ca>
31245         Change defgeneric so it doesn't completely redefine the function
31246         * lisp/emacs-lisp/cl-generic.el (cl-generic-define): Don't throw away
31247         previously defined methods.
31248         (cl-generic-define-method): Let-bind purify-flag instead of
31249         using `fset'.
31250         (cl--generic-prefill-dispatchers): Only define during compilation.
31251         (cl-method-qualifiers): Remove redundant alias.
31252         (help-fns-short-filename): Silence byte-compiler.
31253         * test/automated/cl-generic-tests.el:
31254         Adjust to new defgeneric semantics.
31256 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
31258         * lisp/emacs-lisp/package.el (package-menu-execute):
31259         Remove reference to remove-dups.
31261 2015-05-21  kwhite  <kwhite@gnu.org>
31263         * lisp/erc/erc.el: Hide network/channel messages.
31264         (erc-network-hide-list, erc-channel-hide-list): New lists to define
31265         message types per network/channel.
31266         (erc-add-targets): New function to parse list of targets.
31267         (erc-hide-current-message-p): Modify to check for new targets.
31269 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
31271         Don't quote nil and t in doc strings
31272         This is as per "Tips for Documentation Strings" in the elisp manual.
31273         For consistency, do the same in diagnostics and comments.
31275 2015-05-21  Eli Zaretskii  <eliz@gnu.org>
31277         Fix a minor problem with mouse-face on mode line
31278         * src/xdisp.c (note_mode_line_or_margin_highlight): Reset the
31279         mouse face also if the mouse pointer hovers above mode-line glyphs
31280         that don't come from any Lisp string.  (Bug#20620)
31282 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
31284         * lisp/emacs-lisp/package.el: Fix selected-package logic.
31285         (package-menu-execute): Mark as selected all non-upgrade packages
31286         being installed.
31287         (package-menu--perform-transaction): Don't mark anything.
31289         * lisp/emacs-lisp/package.el: Mode-line progress report.
31290         (package-menu--transaction-status): New variable.
31291         (package-menu-mode, package-menu--perform-transaction): Use it.
31293         * lisp/emacs-lisp/package.el: Better transaction messages.
31294         (package-menu--partition-transaction): New function.
31295         (package-menu--prompt-transaction-p, package-menu-execute):
31296         Use it.
31297         (package-menu--perform-transaction): Don't do any messaging.
31299         * lisp/emacs-lisp/package.el: Revert async package transactions.
31300         (package-menu-async): Update doc.
31301         (package-install-from-archive, package-download-transaction)
31302         (package-install, package-menu--perform-transaction)
31303         (package-menu-execute): Remove asynchronous functionality.
31305 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
31307         Revert doc string changes to f90.el
31308         Problem reported by Glenn Morris in:
31309         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00596.html
31310         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
31311         Revert recent changes to doc strings, as it's intended that they
31312         use grave accent, not quote.
31314 2015-05-20  Bozhidar Batsov  <bozhidar@batsov.com>
31316         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p):
31317         Improve parameter name.
31319         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p): New inline function.
31321 2015-05-20  Paul Eggert  <eggert@cs.ucla.edu>
31323         Don't require help-fns when not needed
31324         * lisp/emacs-lisp/autoload.el, lisp/emacs-lisp/advice.el:
31325         * lisp/emacs-lisp/elint.el:
31326         Don't require help-fns at the top level
31327         * lisp/emacs-lisp/advice.el (ad-arglist):
31328         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
31329         Don't require help-fns.  (Bug#17001)
31331 2015-05-20  Eli Zaretskii  <eliz@gnu.org>
31333         Fix slash collapsing in etags on MS-Windows
31334         * lib-src/etags.c (canonicalize_filename) [DOS_NT]: Separate the
31335         MS-Windows code from the Posix code, and support collapsing both
31336         forward- and back-slashes on MS-Windows.  Fixes a regression found
31337         by the test suite.
31339         Improve documentation of glyphless-char-display
31340         * doc/lispref/display.texi (Glyphless Chars): Improve
31341         documentation of glyphless character display.
31343         Fix "acronym" display of glyphless characters on w32
31344         * src/w32term.c (x_draw_glyphless_glyph_string_foreground): Don't
31345         ignore "acronym" substitutes of 1 character for glyphless characters.
31347 2015-05-20  Oleh Krehel  <ohwoeowho@gmail.com>
31349         Add an automated test for let-when-compile
31350         * test/automated/subr-tests.el (let-when-compile): New test.
31352         Add let-when-compile macro instead of using pcase-let
31353         * lisp/subr.el (let-when-compile): New let-like macro that makes its
31354         bindings known to macros like `eval-when-compile' in the body.
31355         * lisp/emacs-lisp/lisp-mode.el: Change the top-level `pcase-let' to
31356         a `let-when-compile'.  Also comment out the unused lexical var
31357         `el-kws-re'.
31358         The change greatly improves readability, while providing almost the
31359         same (even shorter) byte code: instead of pre-evaluating 10 variables,
31360         tossing them into a list, and destructuring that list a full screen
31361         page later, the variables are simply bound as they are evaluated,
31362         wrapped individually in `eval-when-compile'.
31364 2015-05-20  Artur Malabarba  <bruce.connor.am@gmail.com>
31366         * lisp/emacs-lisp/package.el: "Delete" button in Help buffer.
31367         (package-delete-button-action): New function.
31368         (describe-package-1): Add Delete button.
31370         * lisp/emacs-lisp/package.el: Better dependency description.
31371         (package--used-elsewhere-p): New optional arg, ALL, and return
31372         package-desc objects instead of names.
31373         (package-delete): Update accordingly.
31374         (describe-package-1): Describe which packages require the package.
31376 2015-05-20  Martin Rudalics  <rudalics@gmx.at>
31378         Fix handling and doc-string of FRAME arg of `other-buffer' (Bug#20533)
31379         * src/buffer.c (Fother_buffer): Argument FRAME must denote a live frame.
31380         Fix doc-string.
31382         Improve `switch-to-buffer' in strongly dedicated windows (Bug#20472)
31383         * lisp/window.el (switch-to-buffer-in-dedicated-window): New option.
31384         (switch-to-buffer): If the selected window is strongly dedicated
31385         to its buffer, signal error before prompting for buffer name.
31386         Handle `switch-to-buffer-in-dedicated-window'.
31387         * doc/lispref/windows.texi (Switching Buffers):
31388         Document `switch-to-buffer-in-dedicated-window'.
31390 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
31392         Prefer "this" to “this” in doc strings
31393         This mostly just straightens quotes introduced in my previous patch.
31394         Suggested by Dmitry Gutov in:
31395         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00565.html
31396         * lisp/faces.el, lisp/gnus/gnus-group.el, lisp/ldefs-boot.el:
31397         * lisp/mail/supercite.el, lisp/net/tramp.el, lisp/recentf.el:
31398         * lisp/textmodes/artist.el, lisp/textmodes/rst.el:
31399         * lisp/textmodes/tildify.el, lisp/vc/ediff-util.el:
31400         * lisp/vc/log-edit.el, lisp/xt-mouse.el:
31401         Prefer straight double quotes to curved double quotes in doc strings.
31403         Fix minor quoting problems in doc strings
31404         These were glitches regardless of how or whether we tackle the
31405         problem of grave accent in doc strings.
31406         * lisp/calc/calc-aent.el (math-restore-placeholders):
31407         * lisp/ido.el (ido-ignore-buffers, ido-ignore-files):
31408         * lisp/leim/quail/cyrillic.el ("bulgarian-alt-phonetic"):
31409         * lisp/leim/quail/hebrew.el ("hebrew-new")
31410         ("hebrew-biblical-sil"):
31411         * lisp/leim/quail/thai.el ("thai-kesmanee"):
31412         * lisp/progmodes/idlw-shell.el (idlwave-shell-file-name-chars):
31413         Used curved quotes to avoid ambiguities like ‘`''’ in doc strings.
31414         * lisp/calendar/calendar.el (calendar-month-abbrev-array):
31415         * lisp/cedet/semantic/mru-bookmark.el (semantic-mrub-cache-flush-fcn):
31416         * lisp/cedet/semantic/symref.el (semantic-symref-tool-baseclass):
31417         * lisp/cedet/semantic/tag.el (semantic-tag-copy)
31418         (semantic-tag-components):
31419         * lisp/cedet/srecode/cpp.el (srecode-semantic-handle-:cpp):
31420         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
31421         * lisp/emacs-lisp/byte-opt.el (byte-optimize-all-constp):
31422         * lisp/emacs-lisp/checkdoc.el (checkdoc-message-text-engine):
31423         * lisp/emacs-lisp/generator.el (iter-next):
31424         * lisp/gnus/gnus-art.el (gnus-treat-strip-list-identifiers)
31425         (gnus-article-mode-syntax-table):
31426         * lisp/net/rlogin.el (rlogin-directory-tracking-mode):
31427         * lisp/net/soap-client.el (soap-wsdl-get):
31428         * lisp/net/telnet.el (telnet-mode):
31429         * lisp/org/org-compat.el (org-number-sequence):
31430         * lisp/org/org.el (org-remove-highlights-with-change)
31431         (org-structure-template-alist):
31432         * lisp/org/ox-html.el (org-html-link-org-files-as-html):
31433         * lisp/play/handwrite.el (handwrite-10pt, handwrite-11pt)
31434         (handwrite-12pt, handwrite-13pt):
31435         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
31436         * lisp/progmodes/idlwave.el (idlwave-mode, idlwave-check-abbrev):
31437         * lisp/progmodes/verilog-mode.el (verilog-tool)
31438         (verilog-string-replace-matches, verilog-preprocess)
31439         (verilog-auto-insert-lisp, verilog-auto-insert-last):
31440         * lisp/textmodes/makeinfo.el (makeinfo-options):
31441         * src/font.c (Ffont_spec):
31442         Fix minor quoting problems in doc strings, e.g., missing quote,
31443         ``x'' where `x' was meant, etc.
31444         * lisp/erc/erc-backend.el (erc-process-sentinel-2):
31445         Fix minor quoting problem in other string.
31446         * lisp/leim/quail/ethiopic.el ("ethiopic"):
31447         * lisp/term/tvi970.el (tvi970-set-keypad-mode):
31448         Omit unnecessary quotes.
31449         * lisp/faces.el (set-face-attribute, set-face-underline)
31450         (set-face-inverse-video, x-create-frame-with-faces):
31451         * lisp/gnus/gnus-group.el (gnus-group-nnimap-edit-acl):
31452         * lisp/mail/supercite.el (sc-attribs-%@-addresses)
31453         (sc-attribs-!-addresses, sc-attribs-<>-addresses):
31454         * lisp/net/tramp.el (tramp-methods):
31455         * lisp/recentf.el (recentf-show-file-shortcuts-flag):
31456         * lisp/textmodes/artist.el (artist-ellipse-right-char)
31457         (artist-ellipse-left-char, artist-vaporize-fuzziness)
31458         (artist-spray-chars, artist-mode, artist-replace-string)
31459         (artist-put-pixel, artist-text-see-thru):
31460         * lisp/vc/ediff-util.el (ediff-submit-report):
31461         * lisp/vc/log-edit.el (log-edit-changelog-full-paragraphs):
31462         Use double-quotes rather than TeX markup in doc strings.
31463         * lisp/skeleton.el (skeleton-pair-insert-maybe):
31464         Reword to avoid the need for grave accent and apostrophe.
31465         * lisp/xt-mouse.el (xterm-mouse-tracking-enable-sequence):
31466         Don't use grave and acute accents to quote.
31468 2015-05-19  Stefan Monnier  <monnier@iro.umontreal.ca>
31470         * lisp/emacs-lisp/generator.el (cps--gensym, cps--transform-1):
31471         Silence compiler.
31473 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
31475         Try to port new etags tests to MS-Windows
31476         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
31477         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
31478         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
31479         Adjust to test-case changes below.
31480         * test/etags/Makefile (CSRC): Remove dostorture.c.
31481         Whatever it was trying to test, wasn't working portably.
31482         (LC_ALL): Remove.  Apparently there wasn't an encoding problem,
31483         just a line-ending problem.
31484         * test/etags/c-src/dostorture.c: Remove.
31485         * test/etags/cp-src/c.C: Remove stray CR.
31486         * test/etags/html-src/algrthms.html: Remove trailing CRs.
31487         State UTF-8 as the encoding.  The file is ASCII so it doesn't matter,
31488         but if someone edits it later it should stay UTF-8-compatible.
31490 2015-05-19  Eli Zaretskii  <eliz@gnu.org>
31492         Fix display of overlapping window-specific overlays
31493         * src/keyboard.c (adjust_point_for_property): When adjusting point
31494         due to display strings, ignore overlays that are specific to
31495         windows other than the currently selected one.
31496         * src/xdisp.c (handle_single_display_spec): If the display
31497         property comes from an overlay, arrange for buffer iteration to
31498         resume only after the end of that overlay.  (Bug#20607)
31500 2015-05-19  Dmitry Gutov  <dgutov@yandex.ru>
31502         New command icomplete-force-complete-and-exit
31503         * lisp/icomplete.el (icomplete-force-complete-and-exit):
31504         New command
31505         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00461.html)
31506         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00516.html).
31507         (icomplete-minibuffer-map): Bind C-j to it.
31508         (icomplete-forward-completions, icomplete-backward-completions):
31509         Mention the new command in the docstring.
31510         * lisp/minibuffer.el (minibuffer-force-complete-and-exit):
31511         Revert the previous fix for bug#17545.
31513 2015-05-19  Martin Rudalics  <rudalics@gmx.at>
31515         Fix last commit
31517         In Elisp manual explain how to override window manager positioning
31518         (Bug#20552)
31519         * doc/lispref/frames.texi (Position Parameters): Give example of
31520         how to override a window manager positioning decision.
31522         Clarify concept of "surrogate minibuffer frames" (Bug#20538)
31523         * src/frame.c (Fdelete_frame): In doc-string mention that frame
31524         can't be deleted if it has a surrogate minibuffer.
31525         * doc/lispref/frames.texi (Minibuffers and Frames)
31526         (Deleting Frames): Explain "surrogate minibuffer frames".
31528         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 19/12 MB.
31530 2015-05-18  Glenn Morris  <rgm@gnu.org>
31532         Add option to ignore commit lines matching a pattern in ChangeLog
31533         * build-aux/gitlog-to-changelog: Add --ignore-line option.
31534         * build-aux/gitlog-to-emacslog: Ignore lines matching '^; '.
31536 2015-05-18  Paul Eggert  <eggert@cs.ucla.edu>
31538         Don't skip new etags tests on non-UTF-8 hosts
31539         Problem reported by Eli Zaretskii for MS-Windows.
31540         * test/etags/Makefile (UTF8_LOCALE, UTF8_ENCODING): Remove.
31541         (LC_ALL): Set to C if the current locale isn't UTF-8.
31542         (.PHONY): Remove ediff_1 thru ediff_5.
31543         (check): Always run.
31545 2015-05-18  Glenn Morris  <rgm@gnu.org>
31547         * lisp/calculator.el (calculator-funcall):
31548         * lisp/textmodes/artist.el (artist-spray-random-points):
31549         Use standard degree/radian conversion utilities.
31551         Further lisp-complete-symbol related cleanup.
31552         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol):
31553         Unadvertise non-functional argument.  Replace obsolete alias.
31555 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
31557         Add a test case for Maven warning ouput
31558         * test/automated/compile-tests.el
31559         (compile-tests--test-regexps-data): Add a case for Maven warning
31560         ouput.
31561         (compile--test-error-line): Check the compilation message type, if
31562         it's specified in the test data.
31564 2015-05-18  Paul Pogonyshev  <pogonyshev@gmail.com>
31566         Update Maven compilation-mode entry to distinguish warnings
31567         * lisp/progmodes/compile.el
31568         (compilation-error-regexp-alist-alist): Update Maven entry to
31569         distinguish warnings (bug#20556).
31571 2015-05-18  Przemysław Wojnowski  <esperanto@cumego.com>
31573         * test/automated/sgml-mode-tests.el: New file.
31575 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
31577         Improve handling of the first Git revision
31578         * lisp/vc/log-view.el (log-view-toggle-entry-display): When
31579         there's no next entry, delete until the end of the buffer.
31580         (log-view-end-of-defun-1): Stop at eob.
31581         * lisp/vc/vc-annotate.el
31582         (vc-annotate-show-diff-revision-at-line-internal): Don't give up
31583         when previous-revision is nil.
31584         * lisp/vc/vc-git.el (vc-git-expanded-log-entry): End the arguments
31585         with `--' to avoid ambiguity.
31586         (vc-git-annotate-extract-revision-at-line): Exclude `^' from the
31587         returned revision string.
31588         (vc-git-annotate-time): Expect `^' before the first revision.
31589         * lisp/vc/vc-git.el (vc-git-diff): Diff against an empty tree if
31590         REV1 is nil, and REV2 is not.
31591         * lisp/vc/vc.el: Update the description of the `diff' function.
31593 2015-05-18  Oleh Krehel  <ohwoeowho@gmail.com>
31595         Allow checkdoc to be called in batch
31596         * lisp/emacs-lisp/checkdoc.el (checkdoc-error): When `noninteractive'
31597         is non-nil, echo the error with `warn'.
31598         How it can be used in -batch:
31599         (with-current-buffer (find-file "checkdoc.el")
31600           (checkdoc-current-buffer t))
31602 2015-05-18  Glenn Morris  <rgm@gnu.org>
31604         * lisp/calendar/solar.el (solar-ecliptic-coordinates): Use float-pi.
31606 2015-05-17  Paul Eggert  <eggert@cs.ucla.edu>
31608         * admin/notes/unicode: New section "binary files".
31610         Change new etags test to use UTF-8 encoding
31611         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
31612         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
31613         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
31614         * test/etags/html-src/index.shtml, test/etags/html-src/software.html:
31615         * test/etags/html-src/softwarelibero.html:
31616         Switch to UTF-8 encoding.
31617         * test/etags/Makefile (SRCS): Adjust to switch to UTF-8.
31618         Remove Makefile, as it's too incestuous to have the test input
31619         include the build procedure.
31620         (UTF8_LOCALE, UTF_ENCODING): New macros.
31621         (LC_ALL): If possible, set to a UTF-8 encoding if not already UTF-8.
31622         (check): Skip if not UTF-8.
31623         (.PHONY): New rule.
31624         (FRC): Remove, as superseded by .PHONY.  All uses removed.
31625         (regexfile): Prefer printf to echo when outputting oddball chars.
31626         (.PRECIOUS): Remove, as these files are not built.
31628         Rename 'foo-gzipped' to 'foo.gz'
31629         * test/automated/data/decompress/foo.gz:
31630         Rename from test/automated/data/decompress/foo-gzipped,
31631         to make it easier for other tools to tell that it's compressed.
31632         * test/automated/zlib-tests.el (zlib--decompress):
31633         Adjust to renamed file.
31635 2015-05-17  Dmitry Gutov  <dgutov@yandex.ru>
31637         Set up default-directory
31638         * lisp/vc/vc-annotate.el (vc-annotate-mode-map): Remove duplicate
31639         binding for `v'.
31640         (vc-annotate-show-changeset-diff-revision-at-line): Set up an
31641         appropriate value for default-directory.
31643 2015-05-17  Samer Masterson  <samer@samertm.com>
31645         * lisp/eshell/em-term.el (eshell-term-sentinel):
31646         No-op by default, only kills term buffer if
31647         `eshell-destroy-buffer-when-process-dies' is non-nil.  (Bug#18108)
31648         (eshell-destroy-buffer-when-process-dies): New custom to preserve
31649         previous behavior.
31651         eshell: Introduce new buffer syntax
31652         The new buffer syntax '#<buffer-name>' is equivalent to '#<buffer
31653         buffer-name>'.  Remove `eshell-buffer-shorthand', as it is no longer
31654         needed (Bug#19319).
31655         * lisp/eshell/esh-io.el (eshell-buffer-shorthand): Remove.
31656         (eshell-get-target): Remove shorthand-specific code.
31657         * lisp/eshell/esh-arg.el (eshell-parse-special-reference): Parse
31658         '#<buffer-name>'.
31660 2015-05-17  Jan D  <jan.h.d@swipnet.se>
31662         Merge branch 'master' into cairo
31664 2015-04-26  Jan D  <jan.h.d@swipnet.se>
31666         Merge branch 'master' into cairo
31668         Add PBM support for cairo
31669         * src/image.c (xcolor_to_argb32): New function.
31670         (get_spec_bg_or_alpha_as_argb): Call xcolor_to_argb32.
31671         (pbm_load, png_load_body, jpeg_load_body, gif_load): Only use
31672         XImagePtr if ! USE_CAIRO.
31673         (pbm_load): Add cairo support.
31675 2015-04-12  Jan D  <jan.h.d@swipnet.se>
31677         * src/xterm.c (x_free_cr_resources): Rename from x_prepare_for_xlibdraw.
31678         (x_cr_draw_frame, x_cr_export_frames, x_shift_glyphs_for_insert)
31679         (x_free_frame_resources): Rename x_prepare_for_xlibdraw to
31680         x_free_cr_resources.
31682         Handle specified bg in images.  Use generic libpng code for PNGs.
31683         * src/image.c (get_spec_bg_or_alpha_as_argb)
31684         (create_cairo_image_surface): New functions when USE_CAIRO.
31685         (xpm_load): Call the above functions.  Handle XPM without mask
31686         when USE_CAIRO.
31687         (png_load_body): Handle USE_CAIRO case.
31688         (png_load): Remove USE_CAIRO specific fuction, modify png_load_body
31689         instead.
31690         (jpeg_load_body): Call create_cairo_image_surface.
31691         (gif_load, svg_load_image): Handle specified background, call
31692         create_cairo_image_surface.
31693         * src/xterm.c (x_draw_image_glyph_string): Add missing USE_CAIRO.
31695 2015-04-11  Jan D  <jan.h.d@swipnet.se>
31697         Support GIF and TIFF with cairo
31698         * configure.ac: Allow jpeg with cairo.
31699         Allow tiff and gif with cairo.
31700         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
31701         (tiff_load): Create cairo image surface if USE_CAIRO.
31702         (gif_load): Ditto.
31704         Support JPEG with USE_CAIRO
31705         * configure.ac: Allow jpeg with cairo.
31706         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
31708 2015-04-05  Jan D  <jan.h.d@swipnet.se>
31710         Support RSVG and cairo
31711         * configure.ac: Allow rsvg with cairo.  Move back HAVE_RSVG.
31712         * src/dispextern.h (struct image): Add cr_data2 if cairo.
31713         * src/image.c: #undef COLOR_TABLE_SUPPORT when USE_CAIRO.
31714         (x_clear_image): Free cr_data and cr_data2 if set.
31715         (xpm_load): Assign data to cr_data2.
31716         (svg_load_image): Convert from GdkPixbuf to CAIRO_FORMAT_ARGB32.
31718 2015-04-03  Jan D  <jan.h.d@swipnet.se>
31720         Introduce limited Xpm support (32 bit ZPixmap) for Cairo
31721         * configure.ac (HAVE_RSVG): Move after cairo.
31722         (USE_CAIRO): Disable rsvg, don't disable Xpm.
31723         * src/image.c (prepare_image_for_display): Don't load if USE_CAIRO.
31724         (x_clear_image): If USE_CAIRO, also free possible img->ximg->obdata and
31725         don't return early.
31726         (ALLOC_XPM_COLORS): Don't define when USE_CAIRO.
31727         (xpm_load): Convert simple Xpms (32 bit ZPixmap) to CAIRO_FORMAT_ARGB32
31728         and create a surface.
31730         Tool tips for menus did not show any text.
31731         * src/xterm.c (x_update_begin): Don't create any surface for non-visible
31732         tip frames, the geometry may be wrong.
31734         Merge branch 'master' into cairo, fixes tooltips not shown.
31736         Merge branch 'master' into cairo
31738         Add CAIRO_CFLAGS to lwlib/Makefile.in
31739         * Makefile.in (CAIRO_CFLAGS): Add.
31741 2015-02-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
31743         * src/ftcrfont.c (ftcrfont_draw): Don't flush when drawing to screen.
31745 2015-02-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
31747         Draw outermost line using black relief and erase corners also for cairo.
31748         * src/xterm.c [USE_CAIRO]: Include math.h.
31749         (enum corners) [USE_CAIRO]: New enum.
31750         (x_erase_corners_for_relief) [USE_CAIRO]: New function.
31751         (x_draw_relief_rect) [USE_CAIRO]: Use it.  If box width is larger
31752         than 1, draw the outermost line using the black relief.
31754         * src/xterm.c (x_fill_trapezoid_for_relief):
31755         Remove unnecessary cairo_close_path.
31757 2015-02-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
31759         * src/xterm.c (x_draw_relief_rect) [USE_CAIRO]: Reset clipping.
31761         * src/xterm.c (x_draw_stretch_glyph_string):
31762         Call x_reset_clip_rectangles instead of XSetClipMask.
31764         Use int instead of unsigned int for width and height args.
31765         * src/xterm.c (x_cr_draw_image, x_fill_rectangle, x_draw_rectangle)
31766         (x_fill_trapezoid_for_relief): Use int instead of unsigned int for
31767         width and height args.
31769         Modernize k&r cairo-related function declarations.
31770         * src/gtkutil.c (xg_page_setup_dialog, xg_get_page_setup, draw_page)
31771         (xg_print_frames_dialog): Modernize k&r declarations.
31772         * src/xfns.c (Fx_export_frames, Fx_page_setup_dialog, Fx_get_page_setup)
31773         (Fx_print_frames_dialog): Modernize k&r declarations.
31774         * src/xterm.c (x_gc_get_ext_data, x_extension_initialize)
31775         (x_begin_cr_clip, x_end_cr_clip, x_set_cr_source_with_gc_foreground)
31776         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
31777         (x_cr_destroy_fringe_bitmap, x_cr_draw_frame, x_cr_accumulate_data)
31778         (x_cr_destroy, x_cr_export_frames, x_prepare_for_xlibdraw)
31779         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
31780         (x_draw_rectangle, x_clear_window, x_fill_trapezoid_for_relief)
31781         (x_clear_area): Modernize k&r declarations.
31783         Implement wave-style variant of underlining for cairo.
31784         * src/xterm.c (x_draw_horizontal_wave) [USE_CAIRO]: New function.
31785         (x_draw_underwave) [USE_CAIRO]: Use it.
31787         * src/xterm.c (x_draw_window_divider): Use x_fill_rectangle
31788         instead of XFillRectangle.
31790 2015-02-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
31792         Fix fringe bitmap initialization for cairo
31793         * src/fringe.c (init_fringe_bitmap) [USE_CAIRO]: Adjust bitmap
31794         data for cairo image surface.
31795         * src/xterm.c (x_cr_define_fringe_bitmap):
31796         Call cairo_surface_mark_dirty.
31798 2015-02-11  Jan D  <jan.h.d@swipnet.se>
31800         Add cairo drawing
31801         * configure.ac (with-cairo): New option.
31802         (USE_CAIRO): Default to yes for Gtk+ 3.  Add code to test for cairo,
31803         set CAIRO_CFLAGS, CAIRO_LIBS.  Add ftcrfonto to FONT_OBJ if cairo.
31804         Output "Does Emacs use cairo?".
31805         * lisp/version.el (emacs-version): Add cairo version.
31806         * src/Makefile.in (CAIRO_CFLAGS, CAIRO_LIBS): New variables.
31807         (FONT_OBJ): Add comment about ftcrfont.
31808         (ALL_CFLAGS): Add CAIRO_CFLAGS.
31809         (LIBES): Add CAIRO_LIBS.
31810         * src/dispextern.h (struct image): Add cr_data for cairo.
31811         (x_cr_init_fringe): Declare.
31812         * src/font.c (syms_of_font): Call syms_of_ftcrfont for cairo.
31813         * src/font.h (ftcrfont_driver, syms_of_ftcrfont): Declare
31814         * src/fringe.c (x_cr_init_fringe): New function name that shares code
31815         with w32_init_fringe.
31816         * src/ftcrfont.c: New font driver for cairo, based on the ftfont driver.
31817         * src/ftfont.c (ftfont_info_size); New global variable.
31818         (ftfont_open2): New extern function almost the same as old ftfont_open,
31819         but takes the font_object as argument.
31820         (ftfont_open): Build font object and call ftfont_open2.
31821         * src/ftfont.h (ftfont_open2, ftfont_info_size): Declare.
31822         * src/gtkutil.c (xg_clear_under_internal_border)
31823         (xg_update_scrollbar_pos, xg_update_horizontal_scrollbar_pos):
31824         Only queue_draw if not cairo.  Change args to x_clear_area.
31825         (xg_get_font): Use Qftcr when using cairo, Qxft otherwise.
31826         (xg_page_setup_dialog, xg_get_page_setup, draw_page)
31827         (xg_print_frames_dialog): New functions for printing.
31828         * src/gtkutil.h (xg_page_setup_dialog, xg_get_page_setup)
31829         (xg_print_frames_dialog): Declare.
31830         * src/image.c: Add defined (USE_CAIRO) for PNG.
31831         Add !defined USE_CAIRO for W32 PNG code.
31832         (x_clear_image): If cairo, destroy the surface in cr_data.
31833         (png_load): Add new cairo compatible implementation.
31834         (lookup_image_type): Add defined (USE_CAIRO) for define png_type.
31835         * src/xfns.c: New section Printing.
31836         (x-export-frames, x-page-setup-dialog, x-get-page-setup)
31837         (x-print-frames-dialog): New printing functions.
31838         (Fx_create_frame, x_create_tip_frame): Register ftcrfont if cairo.
31839         (syms_of_xfns): Defsym Qorientation, Qtop_margin, Qbottom_margin,
31840         Qportrait, Qlandscape, Qreverse_portrait, Qreverse_landscape).
31841         (syms_of_xfns): Provide cairo and defvar cairo-version-string.
31842         defsubr Sx_page_setup_dialog, Sx_get_page_setup, Sx_print_frames_dialog.
31843         * src/xterm.c (x_clear_area1, x_prepare_for_xlibdraw)
31844         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
31845         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
31846         (x_gc_get_ext_data, x_extension_initialize, x_cr_accumulate_data):
31847         Declare.
31848         (FRAME_CR_CONTEXT, FRAME_CR_SURFACE): New macros.
31849         (max_fringe_bmp, fringe_bmp): New variables.
31850         (x_gc_get_ext_data, x_extension_initialize)
31851         (x_cr_destroy_surface, x_begin_cr_clip, x_end_cr_clip)
31852         (x_set_cr_source_with_gc_foreground)
31853         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
31854         (x_cr_destroy_fringe_bitmap, x_cr_draw_image, x_cr_draw_frame)
31855         (x_cr_accumulate_data, x_cr_destroy, x_cr_export_frames)
31856         (x_prepare_for_xlibdraw, x_set_clip_rectangles)
31857         (x_reset_clip_rectangles, x_fill_rectangle, x_draw_rectangle)
31858         (x_clear_window, x_fill_trapezoid_for_relief): New functions.
31859         (x_update_begin): Create cairo surface if needed.
31860         (x_draw_vertical_window_border): Call x_fill_rectangle for cairo.
31861         (x_update_end): Paint cairo drawing surface to xlib surface.
31862         (x_clear_under_internal_border, x_after_update_window_line): Adjust
31863         arguments to x_clear_area.
31864         (x_draw_fringe_bitmap): Call x_fill_rectangle.  Get GC values and
31865         call x_cr_draw_image for cairo.  Call x_reset_clip_rectangles instead
31866         of XSetClipMask.
31867         (x_set_glyph_string_clipping)
31868         (x_set_glyph_string_clipping_exactly): Use x_set_clip_rectangles
31869         instead of XSetClipRectangles.
31870         (x_clear_glyph_string_rect, x_draw_glyph_string_background):
31871         Use x_fill_rectangle instead of XFillRectangle.
31872         (x_draw_glyph_string_foreground)
31873         (x_draw_composite_glyph_string_foreground)
31874         (x_draw_glyphless_glyph_string_foreground): Use x_draw_rectangle
31875         instead of XDrawRectangle.
31876         (x_draw_relief_rect): Add code for USE_CAIRO.
31877         Call x_reset_clip_rectangles instead of XSetClipMask.
31878         (x_draw_box_rect): x_set_clip_rectangles instead of XSetClipRectangles,
31879         x_fill_rectangle instead of XFillRectangle, x_reset_clip_rectangles
31880         instead of XSetClipMask.
31881         (x_draw_image_foreground, x_draw_image_foreground_1):
31882         x_draw_rectangle instead of XDrawRectangle.
31883         (x_draw_glyph_string_bg_rect): x_fill_rectangle instead of
31884         XFillRectangle.
31885         (x_draw_image_glyph_string): If img has cr_data, use it as
31886         a cairo surface.
31887         (x_draw_stretch_glyph_string): x_set_clip_rectangles instead of
31888         XSetClipRectangles, x_fill_rectangle instead of XFillRectangle.
31889         (x_draw_glyph_string): x_fill_rectangle instead of XFillRectangle.,
31890         x_reset_clip_rectangles instead of XSetClipMask.
31891         (x_shift_glyphs_for_insert): Call x_prepare_for_xlibdraw.
31892         (x_clear_area1): New function that calls XClearArea.
31893         (x_clear_area): Takes frame as parameter, calls x_clear_area1 for
31894         non-cairo.
31895         (x_clear_frame): x_clear_window instead of XClearWindow.
31896         (x_scroll_run): Set frame garbaged if cairo.
31897         (XTmouse_position): Initialize *part to 0.
31898         (x_scroll_bar_create): Adjust arguments to x_clear_area.
31899         (x_scroll_bar_set_handle): x_clear_area1 instead of x_clear_area,
31900         x_fill_rectangle instead of XFillRectangle.
31901         (XTset_vertical_scroll_bar, XTset_horizontal_scroll_bar): Adjust
31902         arguments to x_clear_area.
31903         (x_scroll_bar_expose): x_draw_rectangle instead of XDrawRectangle.
31904         (handle_one_xevent): Adjust arguments to x_clear_area.
31905         Destroy cairo surface for frame if ConfigureNotify.
31906         (x_clip_to_row): x_set_clip_rectangles instead of XSetClipRectangles.
31907         (x_draw_hollow_cursor): x_draw_rectangle instead of XDrawRectangle,
31908         x_reset_clip_rectangles instead of XSetClipMask.
31909         (x_draw_bar_cursor): x_fill_rectangle instead of XFillRectangle,
31910         x_reset_clip_rectangles instead of XSetClipMask.
31911         (x_clear_frame_area): Adjust arguments to x_clear_area.
31912         (x_free_frame_resources): Call x_prepare_for_xlibdraw.
31913         (x_term_init): Call x_extension_initialize if cairo.
31914         (x_redisplay_interface): Add x_cr_define_fringe_bitmap,
31915         x_cr_destroy_fringe_bitmap for cairo.
31916         (x_initialize): Call x_cr_init_fringe for cairo.
31917         * src/xterm.h: Add include of cairo header files.
31918         (x_bitmap_record): Add img if cairo.
31919         (x_gc_ext_data): New struct for cairo.
31920         (x_display_info): Add ext_codes for cairo.
31921         (x_output): Add cr_context and cr_surface for cairo.
31922         (x_clear_area): Change arguments from Display*/Window to frame pointer.
31923         (x_query_color, x_begin_cr_clip, x_end_cr_clip)
31924         (x_set_cr_source_with_gc_foreground, x_set_cr_source_with_gc_background)
31925         (x_cr_draw_frame, x_cr_export_frames): Declare.
31927 2015-05-17  Johan Bockgård  <bojohan@gnu.org>
31929         Fix integer-valued `mouse-highlight' (Bug#20590)
31930         * src/xterm.c (handle_one_xevent) [USE_GTK]: Fix ifdef scope.
31932 2015-05-17  Eli Zaretskii  <eliz@gnu.org>
31934         MS-Windows followup for ASCIIfication of curved quotes
31935         * lisp/term/w32console.el (terminal-init-w32console): Repeat the
31936         test for curved quotes being displayable, after switching the
31937         terminal encoding.  (Bug#20545)
31939 2015-05-17  Jan D  <jan.h.d@swipnet.se>
31941         Add comment that x_shift_glyphs_for_insert is never called
31942         * src/xterm.c (x_shift_glyphs_for_insert, x_redisplay_interface):
31943         Add comment that this function is never called.
31945 2015-05-16  Glenn Morris  <rgm@gnu.org>
31947         * src/lisp.mk: Remove from repository and generate at build-time.
31948         * src/Makefile.in (lisp.mk): New rule to generate from loadup.el.
31949         (shortlisp_filter): New variable.
31950         (emacs$(EXEEXT), $(etc)/DOC): Depend on lisp.mk.
31951         (distclean): Remove lisp.mk.
31952         * Makefile.in ($(MAKEFILE_NAME)): No longer depend on src/lisp.mk.
31953         * lisp/loadup.el: Tweak layout to make it easier to parse.
31954         * make-dist: Do not distribute src/lisp.mk.
31956 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
31958         Display shorter dates in Git annotate output
31959         * lisp/vc/vc-git.el (vc-git-annotate-command): Use the short date
31960         format (when not overridden with vc-git-annotate-switches).
31961         (vc-git-annotate-time): Support the short format, as well as ISO
31962         8601 that has been used until now (bug#5428).
31964 2015-05-16  Paul Eggert  <eggert@cs.ucla.edu>
31966         ASCIIfy curved quotes on displays lacking them
31967         * lisp/international/mule-cmds.el (set-locale-environment):
31968         If curved quotes don't work, display straight ASCII approximations
31969         (Bug#20545).
31971 2015-05-16  Glenn Morris  <rgm@gnu.org>
31973         Small src/Makefile simplification
31974         * src/lisp.mk (shortlisp): Rename from lisp, remove $lispsource prefix.
31975         * src/Makefile.in (lisp): Derive from shortlisp.
31976         ($(etc)/DOC): Use $shortlisp rather than parsing lisp.mk.
31978 2015-05-16  Eli Zaretskii  <eliz@gnu.org>
31980         * lisp/help-mode.el (help-go-forward): Doc fix.
31981         (Bug#20577)
31983         * doc/lispref/debugging.texi (Profiling): Improve indexing.
31984         (Bug#20576)
31986 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
31988         * lisp/vc/vc-git.el (vc-git-resolve-when-done): Use `unless' to
31989         have one fewer `not'.
31991         * lisp/vc/vc-git.el (vc-git-diff-switches)
31992         (vc-git-annotate-switches, vc-git-resolve-conflicts)
31993         (vc-git-program, vc-git-root-log-format): Remove the redundant
31994         :group declarations.
31996 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
31998         Removes the predicate from lisp-complete-symbol (Bug#20456)
31999         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol): Do not use predicate
32000         and remove it from the docstring.
32002 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
32004         Add new option vc-git-resolve-conflicts
32005         * lisp/vc/vc-git.el (vc-git-resolve-conflicts): New variable.
32006         (vc-git-find-file-hook): Add to after-save-hook only when the
32007         above is non-nil.
32008         (vc-git-resolve-when-done): Update to honor the new variable.
32009         (Bug#20292)
32011 2015-05-16  Artur Malabarba  <bruce.connor.am@gmail.com>
32013         * lisp/emacs-lisp/tabulated-list.el: Don't error on null header-string.
32014         (tabulated-list-init-header): Document new behavior.
32015         (tabulated-list-print-fake-header): Do nothing if
32016         `tabulated-list--header-string' is nil.
32017         (tabulated-list--header-string): Add a docstring.
32018         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
32019         * etc/NEWS: Document it.
32021 2015-05-15  Leo Liu  <sdl.web@gmail.com>
32023         Revert "Fix cps--gensym"
32024         * lisp/emacs-lisp/generator.el (cps--gensym): Revert commit
32025         fbda511ab8069d0115eafca411a43353b85431b1 on 2015-05-14.
32027 2015-05-15  Glenn Morris  <rgm@gnu.org>
32029         Replace AC_SUBST_FILE in configure with include in Makefiles
32030         * configure.ac (DEPDIR, MKDEPDIR, deps_frag, lwlib_deps_frag)
32031         (oldxmenu_deps_frag, lisp_frag): Remove output variables/files.
32032         (AUTO_DEPEND): New output variable.
32033         * lwlib/Makefile.in (AUTO_DEPEND): New, set by configure.
32034         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
32035         (lwlib_deps_frag): Replace by conditional include.
32036         * lwlib/autodeps.mk: Remove file.
32037         * oldXMenu/Makefile.in (AUTO_DEPEND): New, set by configure.
32038         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
32039         (oldxmenu_deps_frag): Replace by conditional include.
32040         * oldXMenu/autodeps.mk: Remove file.
32041         * src/Makefile.in (AUTO_DEPEND): New, set by configure.
32042         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
32043         (lisp_frag): Replace by an include.
32044         (deps_frag): Replace by conditional include.
32045         * src/autodeps.mk: Remove file.
32047         Tweak japanese.el's loading of dependencies
32048         * lisp/loadup.el: Explicitly load cp51932 and eucjp-ms.
32049         * lisp/language/japanese.el: Use require rather than load.
32050         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
32051         Provide a feature.
32052         * admin/charsets/eucjp-ms.awk, admin/charsets/cp51932.awk:
32053         Provide a feature in the generated file.
32055 2015-05-15  Jan D  <jan.h.d@swipnet.se>
32057         Fix NS warnings
32058         * src/nsmenu.m (ns_popup_dialog)
32059         * src/nsimage.m (initFromXBM:width:height:fg:bg:)
32060         * src/nsfns.m (Fx_create_frame): Remove unused variables.
32061         (Fns_read_file_name): Initialize fname, remove ret.
32062         * src/nsterm.m (ns_draw_window_cursor): Handle DEFAULT_CURSOR in switch.
32063         (ns_get_color, ns_set_horizontal_scroll_bar, keyDown):
32064         Remove unused variable.
32065         (init): Add parantesis in if.
32066         (ns_create_terminal): Assign set_horizontal_scroll_bar_hook.
32068 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
32070         Fix a enum conversion warning in macfont.m
32071         * src/macfont.h (CharacterCollection): Typedef to NSCharacterCollection.
32072         (MAC_CHARACTER_COLLECTION_*): Use the NS variants.
32074 2015-05-15  Eli Zaretskii  <eliz@gnu.org>
32076         * lisp/textmodes/ispell.el (ispell-aspell-find-dictionary):
32077         Support Aspell dictionaries with names like "de-alt".  (Bug#20581)
32079 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
32081         * lisp/cus-start.el: Add ns-confirm-quit.
32083         Fix warnings on OSX 10.10
32084         * src/nsfns.m (MODAL_OK_RESPONSE): New define for different
32085         OSX versions.
32086         (Fns_read_file_name): Check against MODAL_OK_RESPONSE.
32087         (compute_tip_xy): Use convertRectToScreen for OSX >= 10.7
32088         * src/nsmenu.m (initWithContentRect:styleMask:backing:defer:)
32089         * src/nsimage.m (allocInitFromFile, setPixmapData): Only call
32090         setScalesWhenResized for OSX < 10.6.
32091         * src/nsterm.h (EmacsScroller): Declare scrollerWidth.
32092         * src/nsterm.m (ns_copy_bits): New function that does not use
32093         deprecated NSCopyBits.
32094         (ns_scroll_run, ns_shift_glyphs_for_insert): Call ns_copy_bits.
32095         (runAlertPanel): New function.
32096         (applicationShouldTerminate:): Call runAlertPanel.
32097         (initFrameFromEmacs, toggleFullScreen:): Only call
32098         useOptimizedDrawing for OSX < 10.10.
32099         (initFrameFromEmacs:): Only call allocateGState for OSX < 10.10.
32100         (windowWillUseStandardFrame:defaultFrame:): Cast arg to abs to int.
32101         (draggingEntered:): Returns NSDragOperation.
32102         (scrollerWidth): Use scrollerWidthForControlSize for OSX >= 10.7.
32104 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
32106         * lisp/emacs-lisp/package.el: Don't ensure-init during startup.
32107         (package--init-file-ensured): New variable.
32108         (package-initialize, package--ensure-init-file): Use it.
32110 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
32112         Honor :fore/background for XBM on NS (Bug#14969)
32113         * src/nsterm.h (EmacsImage): Add xbm_fg, remove initFromSkipXBM,
32114         initFromXBM takes bg, fg args, remove flip arg.
32115         (ns_image_from_XBM): Add bg, fg args.
32116         * src/image.c (x_create_bitmap_from_data)
32117         (Create_Pixmap_From_Bitmap_Data): ns_image_from_XBM takes bg, fg args.
32118         * src/nsimage.m (ns_image_from_XBM): Add fg, bg args, pass to
32119         initFromXBM.  Remove flip arg.
32120         (initFromSkipXBM): Move code to initFromXBM.
32121         (initFromXBM): Actually set fg and bg, instead of playing alpha games.
32122         Use fg, bg from args (Bug#14969).  Remove if (length) section, was
32123         always false.
32124         Remove bit flipping (bitPat, swt), generated incorrect images when
32125         width/height wasn't a multiple of 8.
32126         (setXBMColor:): Modify planes by comparing to saved xbm_fg.
32127         * src/nsterm.m (ns_draw_fringe_bitmap): initFromXBM takes fg, bg args,
32128         remove flip arg.
32130 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
32132         * lisp/emacs-lisp/package.el: Be more careful with the init file.
32133         (package--ensure-init-file): Check that user-init-file is set,
32134         exists, is readable, and is writable.  (Bug#20584)
32135         Also expand the docstring.
32137 2015-05-14  Wilson Snyder  <wsnyder@wsnyder.org>
32139         Sync with upstream verilog-mode revision 6232468
32140         * lisp/progmodes/verilog-mode.el
32141         (verilog-font-lock-grouping-keywords-face)
32142         (verilog-highlight-grouping-keywords): Fix use of face when
32143         `verilog-highlight-grouping-keywords' set.  Reported by Jeff Pompa.
32144         (verilog-auto-reset): Fix AUTORESET to ignore member resets if
32145         parent is reset, bug906.  Reported by Ken Schmidt.
32146         (verilog-auto-inout-module): Add fourth regexp argument to
32147         AUTOINOUTMODULE and AUTOINOUTCOMP for signals to not match, bug856.
32148         Reported by John Tillema.
32149         (verilog-auto-inst-port): Fix AUTOINST interfaces to not show
32150         modport if signal attachment is itself a modport.  Reported by
32151         Matthew Lovell.
32152         (verilog-auto-reset, verilog-auto-sense-sigs): Fix AUTORESET with
32153         always_comb and always_latch, bug844.  Reported by Greg Hilton.
32154         (verilog-at-constraint-p, verilog-beg-of-statement-1): Fix hanging
32155         with many curly-bracket pairs, bug663.
32156         (verilog-set-auto-endcomments): Fix end comments for functions of
32157         type void, etc.  Reported by Alex Reed.
32158         (verilog-do-indent): Fix electric tab deleting form-feeds.  Note
32159         caused by indent-line-to deleting tabls pre 24.5.
32160         (verilog-nameable-item-re): Fix nameable items that can have an
32161         end-identifier to include endchecker, endgroup, endprogram,
32162         endproperty, and endsequence.  Reported by Alex Reed.
32163         (verilog-label-be): When auto-commenting a buffer, consider
32164         auto-comments on all known keywords (not just a subset thereof).
32165         Reported by Alex Reed.
32166         (verilog-auto-end-comment-lines-re)
32167         (verilog-end-block-ordered-re, verilog-set-auto-endcomments):
32168         Automatically comment property/endproperty blocks to match other
32169         similar blocks like sequence/endsequence, function/endfunction, etc.
32170         Reported by Alex Reed.
32171         (verilog-set-auto-endcomments): Detect the function- or task-name
32172         when auto-commenting blocks that lack an explicit portlist.
32173         Reported by Alex Reed.
32174         (verilog-auto, verilog-auto-insert-last): Add AUTOINSERTLAST to
32175         allow post-AUTO user fixups, bug826.  Reported by Dennis Muhlestein.
32176         (verilog-no-indent-begin-re): When `verilog-indent-begin-after-if'
32177         is nil, fix indenting initial/final to match always statements,
32178         bug825.  Reported by Tim Clapp.
32179         (verilog-extended-complete-re): Fix indentation of DPI-C imports
32180         with c_identifiers, and DPI-C imports, bug557.  Reported by ZeDong
32181         Mao and Jason Forkey.
32182         (verilog-read-decls): Fix parsing typed interfaces.  Fix
32183         AUTOINOUTMODPORT missing types.  Reported by Stephan Bourduas.
32184         Fix localparam not being ignored in AUTOINSTPARAM,
32185         bug889.  Reported by Shannon Hill.
32186         (verilog-auto-output-every): Add regexp to AUTOOUTPUTEVERY,
32187         bug793.  Reported by Pierre-David Pfister.
32188         (verilog-auto-arg-format, verilog-auto-arg-ports):
32189         Add verilog-auto-arg-format to support newlines in AUTOARG.
32190         Reported by Jie Xiao.
32191         (verilog-batch-execute-func): Do not batch re-auto files loaded by
32192         Local Variables.  Fix printing "no changes to be saved" with
32193         verilog-batch.  Reported by Dan Dever.
32194         (verilog-auto-inout-module): Fix AUTOINOUTMODULE not inserting
32195         interface-only modules, bug721.  Reported by Dean Hoyt.
32196         Author: Alex Reed <acreed4@gmail.com>
32197         * lisp/progmodes/verilog-mode.el (verilog-beg-of-statement):
32198         Don't treat '<keyword>:<identifier>' as the start of a labeled
32199         statement, bug905.  Reported by Enzo Chi.
32200         (verilog-directive-re, verilog-compiler-directives)
32201         (verilog-keywords): Match full set of IEEE 2012-1800 compiler
32202         directives (plus some extras) when determining indentation, bug
32203         901.  Reported by Bernd Beuster.
32204         (verilog-at-constraint-p): Fix indentation of coverpoint bins if
32205         iff expression doesn't start with word-character, bug900.
32206         (verilog-optional-signed-range-re, verilog-optional-signed-re):
32207         Fix incorrect indentation/alignment of unsigned declarations,
32208         bug897.
32209         (verilog-looking-back, verilog-in-attribute-p): Fix labeling of
32210         always constructs, bug895.
32211         (verilog-calc-1): Fix verilog-mode constraint indentation, bug324.
32212         Reported by Eric Mastromarchi.
32213         (verilog-beg-of-statement): Fix indenting for some forms of
32214         constraintsm bug433.  Reported by Brad Parker.  Fix indentation of
32215         continued assignment incorrect if first line ends with ']', bug437.
32216         Reported by Dan Dever.  Fix indention of cover inside an
32217         ifdef, bug 862.  Reported by Bernd Beuster.  Fix labeling do-while
32218         blocks, bug842.
32219         (verilog-preprocessor-re): Fix fork/end UNMATCHED warning, bug859.
32220         Reported by Kaushal Modi.
32221         (verilog-set-auto-endcomments): Fix endlabel end comments, bug888.
32222         (verilog-backward-token): Fix indenting sensitivity lists with
32223         named events, bug840.  Reed.
32224         (verilog-no-indent-begin-re): Fix `verilog-indent-begin-after-if'
32225         nil not honoring 'forever', 'foreach', and 'do' keywords.
32227 2015-05-14  Paul Eggert  <eggert@cs.ucla.edu>
32229         Check for invalid GTK+ monitor scales
32230         * src/gtkutil.c (xg_get_gdk_scale): Return 1 for invalid scales,
32231         INT_MAX for too-large scales.  All callers changed to assume the
32232         result is valid (Bug#20432).
32233         (xg_frame_set_char_size, xg_update_scrollbar_pos):
32234         Calculate scale only if needed.
32235         Show ASCII approximations instead.
32237 2015-05-14  Eli Zaretskii  <eliz@gnu.org>
32239         Fix daemon crashes when linum-mode is turned on early on
32240         * src/window.c (Fwindow_end): Don't try calling display engine
32241         functions on initial-frame frame.  (Bug#20565)
32243         Fix selective diff browsing in Ediff
32244         * lisp/vc/ediff-util.el (ediff-focus-on-regexp-matches):
32245         Go to the beginning of the region before searching for the
32246         ediff-regexp-focus-* regexps.  (Bug#20568)
32248 2015-05-14  Jan D  <jan.h.d@swipnet.se>
32250         Fixes bug#20142
32251         * src/gtkutil.c (delete_cb): Don't send delete event here, it does
32252         arrive in the main loop, even for Gtk 3 (Bug#20142).
32254         Don't access display after i/o error (Bug#19147).
32255         * src/xterm.c (x_connection_closed): Add third arg ioerror.
32256         If ioerror, set display to 0 (Bug#19147).
32257         (x_error_quitter): Call x_connection_closed with third arg false.
32258         (x_io_error_quitter): Call x_connection_closed with third arg true.
32260         Handle GTK_SCALE, fixes Bug#20432.
32261         * src/gtkutil.c (xg_get_gdk_scale): New function.
32262         (xg_frame_set_char_size)
32263         (x_wm_set_size_hint, xg_get_default_scrollbar_width)
32264         (xg_get_default_scrollbar_height)
32265         (xg_update_horizontal_scrollbar_pos): Take GTK_SCALE in to account
32266         when setting sizes (Bug#20432).
32268 2015-05-13  Leo Liu  <sdl.web@gmail.com>
32270         * lisp/emacs-lisp/generator.el (cps--gensym): Fix.
32272 2015-05-13  Glenn Morris  <rgm@gnu.org>
32274         Fix bootstrap (void function cl-member).
32275         * lisp/emacs-lisp/cl-lib.el: Load cl-seq if no cl-loaddefs file.
32276         * lisp/emacs-lisp/cl-seq.el: Provide a feature.
32278 2015-05-13  Stefan Monnier  <monnier@iro.umontreal.ca>
32280         * lisp/loadup.el ("emacs-lisp/cl-generic"): Preload
32281         * src/lisp.mk (lisp): Add emacs-lisp/cl-generic.elc.
32282         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method):
32283         Avoid defalias for closures which are not immutable.
32284         (cl--generic-prefill-dispatchers): New macro.  Use it to prefill
32285         the dispatchers table with various entries.
32286         * lisp/emacs-lisp/ert.el (emacs-lisp-mode-hook):
32287         * lisp/emacs-lisp/seq.el (emacs-lisp-mode-hook): Use add-hook.
32289 2015-05-13  Eli Zaretskii  <eliz@gnu.org>
32291         Improve tagging of C bindings in DEFVAR_*
32292         * src/Makefile.in (TAGS): Add --regex options to tag the C binding
32293         from DEFVAR_*.
32295 2015-05-13  Paul Eggert  <eggert@cs.ucla.edu>
32297         * src/editfns.c (Fformat): Fix use-after-free bug (Bug#20548).
32299 2015-05-12  Glenn Morris  <rgm@gnu.org>
32301         * lisp/progmodes/tcl.el (tcl-filter):
32302         Handle comint-prompt-read-only like gud.el does.  (Bug#20549)
32304         Add basic VC push support
32305         * lisp/vc/vc.el (vc-push): New autoloaded command.
32306         * lisp/vc/vc-hooks.el (vc-prefix-map, vc-menu-map): Add vc-push.
32307         * lisp/vc/vc-bzr.el (vc-bzr--pushpull): New, factored from vc-bzr-pull.
32308         (vc-bzr-pull): Reimplement using vc-bzr--pushpull.
32309         (vc-bzr-push): New.
32310         * lisp/vc/vc-git.el (vc-git--pushpull): New, factored from vc-git-pull.
32311         (vc-git-pull): Reimplement using vc-git--pushpull.
32312         (vc-git-push): New.
32313         * lisp/vc/vc-hg.el (vc-hg--pushpull): New, factored from vc-hg-pull.
32314         (vc-hg-pull, vc-hg-push): Reimplement using vc-hg--pushpull.
32315         * doc/emacs/maintaining.texi (Pulling / Pushing):
32316         Rename from "VC Pull".  Mention pushing.
32317         (VC With A Merging VCS, VC Change Log): Update xrefs.
32318         (Branches): Update menu.
32319         * doc/emacs/emacs.texi: Update menu.
32320         * etc/NEWS: Mention this.
32322 2015-05-12  Nicolas Petton  <nicolas@petton.fr>
32324         Improve the seq pcase pattern and the `seq-let' macro
32325         * lisp/emacs-lisp/seq.el: The pcase pattern now matches only if the
32326         object is a sequence, and binds each element of ARGS to the
32327         corresponding element of the sequence.
32329 2015-05-12  Eli Zaretskii  <eliz@gnu.org>
32331         Fix tags created from DEFVAR_* declarations in C
32332         * src/Makefile.in (TAGS): Improve the --regex argument to etags,
32333         to make tags extracted from DEFVAR_* declarations more accurate.
32335         Add a test suite for etags
32336         * test/etags/: New test suite, adapted from
32337         http://fly.isti.cnr.it/pub/software/unix/etags-regression-test.tar.bz2,
32338         whose original author is Francesco Potortì <pot@gnu.org>.
32340         Fix tagging of symbols in C enumerations
32341         * lib-src/etags.c (consider_token): Don't tag symbols in
32342         expressions that assign values to enum constants.  See
32343         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00291.html
32344         for details.
32345         (C_entries): Reset fvdef to fvnone after processing a preprocessor
32346         conditional and after a comma outside of parentheses.
32348 2015-05-12  Glenn Morris  <rgm@gnu.org>
32350         * lisp/url/url-handlers.el (url-file-name-completion)
32351         (url-file-name-all-completions): Silence compiler.
32353         * lisp/emacs-lisp/chart.el (chart-axis-draw): Replace obsolete alias.
32355         * lisp/play/dunnet.el (dun-dos-boot-msg): Fix time.  (Bug#20554)
32357 2015-05-12  Stefan Monnier  <monnier@iro.umontreal.ca>
32359         * lisp/emacs-lisp/cl-generic.el: Add dispatch on &context arguments
32360         (cl--generic-mandatory-args): Remove.
32361         (cl--generic-split-args): New function.
32362         (cl-generic-define, cl--generic-lambda): Use it.
32363         (cl-generic-define-method): Use it as well, and add support for
32364         context args.
32365         (cl--generic-get-dispatcher): Handle &context dispatch.
32366         (cl--generic-cache-miss): `dispatch-arg' can now be a
32367         context expression.
32368         (cl--generic-dispatchers): Pre-fill.
32369         * test/automated/cl-generic-tests.el (sm-generic-test-12-context):
32370         New test.
32372 2015-05-11  Glenn Morris  <rgm@gnu.org>
32374         * make-dist: Abort if "make ChangeLog" fails.  Add "--no-changelog".
32376 2015-05-11  Stefan Monnier  <monnier@iro.umontreal.ca>
32378         * lisp/term/xterm.el: Fix xterm-paste handling for rxvt
32379         * lisp/term/rxvt.el: Require term/xterm.
32380         (rxvt-function-map): Use xterm-rxvt-function-map.
32381         (rxvt-standard-colors): Move before first use.
32382         (terminal-init-rxvt): Use xterm--push-map and
32383         xterm-register-default-colors.
32384         (rxvt-rgb-convert-to-16bit, rxvt-register-default-colors): Remove.
32385         * lisp/term/xterm.el (xterm-rxvt-function-map): New var.
32386         Move shared bindings between rxvt and xterm to it.
32387         (xterm-function-map): Use it.  Move the xterm-paste binding to
32388         xterm-rxvt-function-map (bug#20444).
32389         (xterm-standard-colors): Move before first use.
32390         (xterm--push-map): New function.
32391         (xterm-register-default-colors): Take standard colors as argument.
32392         (terminal-init-xterm): Use it.  Adjust call to
32393         xterm-register-default-colors.
32395 2015-05-11  Glenn Morris  <rgm@gnu.org>
32397         * lisp/term/x-win.el: Quieten --without-x compilation.
32398         (x-own-selection-internal, x-disown-selection-internal)
32399         (x-selection-owner-p, x-selection-exists-p, x-get-selection-internal):
32400         Declare.
32402         * Makefile.in (emacslog): Remove srcdir.
32403         (ChangeLog): Update for the above.
32405 2015-05-10  Fabián Ezequiel Gallina  <fgallina@gnu.org>
32407         python.el: better limit for looking-back calls
32408         * lisp/progmodes/python.el (python-shell-accept-process-output):
32409         Use last comint prompt start as limit for looking-back.
32411 2015-05-10  Stefan Monnier  <monnier@iro.umontreal.ca>
32413         CEDET (srecode-insert-fcn): Fix use of oref on a class
32414         * lisp/cedet/srecode/insert.el (srecode-insert-fcn): Fix use of oref
32415         on a class.  Reported by Pierre Lorenzon.
32416         (srecode-template-inserter-point): Remove declaration.
32418         CEDET (srecode-create-dictionary): Avoid obsolete object name
32419         * lisp/cedet/srecode/dictionary.el (srecode-create-dictionary):
32420         Don't use a symbol as an object name.  Reported by Pierre Lorenzon.
32422 2015-05-10  Paul Eggert  <eggert@cs.ucla.edu>
32424         C-x 8 shorthands for curved quotes, Euro, etc.
32425         Although C-x 8 lets you insert arbitrary Unicode characters,
32426         it's awkward to use this to insert commonly used symbols such as curved
32427         quotes, the Euro symbol, etc.  This patch adds simpler sequences for
32428         characters commonly found in English text and in basic math.
32429         For example, assuming the Alt key works on your keyboard and iso-transl
32430         is loaded, one can now type "A-[" instead of "A-RET LEFT SIN TAB RET"
32431         to get the character "‘" (U+2018 LEFT SINGLE QUOTATION MARK).
32432         (Bug#20499)
32433         * doc/emacs/mule.texi (Unibyte Mode):
32434         A few other printing characters now work too.
32435         * etc/NEWS: Document this.
32436         * lisp/international/iso-transl.el (iso-transl-char-map):
32437         Also support the following characters:
32438         ‐ ‑ ‒ – — ― ‘ ’ “ ” † ‡ • ′ ″ € № ← → ↔ − ≈ ≠ ≤ ≥
32440 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
32442         Add xref-find-regexp
32443         * lisp/progmodes/xref.el (xref-find-function): Describe the
32444         `matches' action.
32445         (xref-find-regexp): New command, using it.
32446         (xref-collect-references): Rename to xref-collect-matches.
32447         (xref--collect-reference): Rename to xref--collect-match.
32448         (xref-collect-matches, xref--collect-match): Accept new argument,
32449         KIND.  Update accordingly.
32450         (xref--regexp-to-extended): New function.
32451         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Support the
32452         `matches' action.
32453         (elisp--xref-find-matches): Accept new argument.  Resolve a FIXME.
32454         * lisp/progmodes/etags.el (etags-xref-find):
32455         Support the `matches' action.
32456         (etags--xref-find-matches): New function.
32458 2015-05-10  Glenn Morris  <rgm@gnu.org>
32460         * Makefile.in: Fixes for recent change-history changes.
32461         (change-history-nocommit): Update footer regexp.
32462         Ensure output script stays executable.
32464 2015-05-10  Nicolas Petton  <nicolas@petton.fr>
32466         New version of `seq-let' based on a pcase pattern
32467         * lisp/emacs-lisp/seq.el (seq-let): Define the macro in terms of a
32468         pcase pattern if `pcase-defmacro' is defined (Emacs>=25.1).
32470 2015-05-10  Przemysław Wojnowski  <esperanto@cumego.com>
32472         Add basic HTML5 tags and a template
32473         * lisp/textmodes/sgml-mode.el: Basic HTML5 support.
32474         (html-tag-alist): Add HTML5 tags.
32475         (html-tag-help): Add new tags descriptions.
32476         (html-navigational-links): Template for nav links.
32477         (html-html5-template): Template for a HTML5 page.
32479 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
32481         semantic/symref/grep: Don't use word boundaries
32482         * lisp/cedet/semantic/symref/grep.el
32483         (semantic-symref-perform-search): Instead of wrapping input in
32484         word boundaries, check that the characters before and after are
32485         not word constituents.
32487         semantic/symref/grep: Support regexp search
32488         * lisp/cedet/semantic/symref.el
32489         (semantic-symref-hit-to-tag-via-buffer): Don't regexp-quote when
32490         the search type is regexp.
32491         * lisp/cedet/semantic/symref/grep.el
32492         (semantic-symref-perform-search): Support the regexp search type.
32493         Pass -E to Grep when it's used.
32495         semantic-symref-regexp: Allow to input an arbitrary string
32496         * lisp/cedet/semantic/symref/list.el (semantic-symref-regexp):
32497         Allow to input an arbitrary string interactively.
32499         Remove tag-symbol-match-p from etags-xref-find-definitions-tag-order
32500         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
32501         Remove tag-symbol-match-p from the default value
32502         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00292.html).
32504         Declare find-tag obsolete
32505         * lisp/progmodes/etags.el (find-tag): Declare obsolete in favor of
32506         xref-find-definitions.
32508 2015-05-10  Jan D  <jan.h.d@swipnet.se>
32510         Draw composite string correctly (Bug#20537)
32511         * src/nsterm.m (ns_draw_composite_glyph_string_foreground):
32512         New function.
32513         (ns_draw_glyph_string): Call it.
32515 2015-05-09  Eli Zaretskii  <eliz@gnu.org>
32517         Avoid infloop in ERC
32518         * lisp/simple.el (line-move-to-column): Ignore field boundaries
32519         while computing line beginning position.  (Bug#20498)
32521 2015-05-08  Glenn Morris  <rgm@gnu.org>
32523         * Makefile.in (ChangeLog): No longer pass "srcprefix"; cd instead.
32524         * build-aux/gitlog-to-emacslog: Check called from right directory.
32525         (srcprefix): Remove.
32527         * build-aux/gitlog-to-emacslog: Get rid of "distprefix".
32528         * Makefile.in (ChangeLog): No longer pass "distprefix".
32529         * make-dist: Update "make ChangeLog" syntax for the above change.
32531         * build-aux/gitlog-to-emacslog: Don't hard-code "ChangeLog.2".
32532         * Makefile.in (ChangeLog): Pass -n to gitlog-to-emacslog.
32534         * build-aux/gitlog-to-emacslog: Add "for earlier changes" to footer.
32536         Add command-line option-parsing to gitlog-to-emacslog
32537         * build-aux/gitlog-to-emacslog: Add command-line options.
32538         By default, refuse to remove an existing output file.
32539         * Makefile.in (CHANGELOG): Update default.
32540         (ChangeLog): Do not test for existing file.
32541         (change-history-nocommit): Ensure temp file does not exist.
32543         Quieten --without-x compilation
32544         * lisp/term/common-win.el: Provide a feature.
32545         * lisp/term/x-win.el (term/common-win): Require it.
32547         * lisp/dired-aux.el (dired-do-print): Require lpr.
32549         Quieten compilation, eg in --without-x builds
32550         * lisp/dired-aux.el (lpr-printer-switch):
32551         * lisp/frame.el (tool-bar-height):
32552         * lisp/linum.el (font-info):
32553         * lisp/window.el (font-info, overflow-newline-into-fringe)
32554         (tool-bar-height):
32555         * lisp/emacs-lisp/package-x.el (tar-data-buffer):
32556         * lisp/gnus/gnus-util.el (iswitchb-mode):
32557         * lisp/mail/rmailmm.el (libxml-parse-html-region):
32558         * lisp/net/nsm.el (gnutls-peer-status)
32559         (gnutls-peer-status-warning-describe):
32560         * lisp/net/shr.el (libxml-parse-xml-region):
32561         * lisp/url/url-http.el (gnutls-peer-status): Declare.
32563 2015-05-08  Stefan Monnier  <monnier@iro.umontreal.ca>
32565         CEDET (srecode-pop, srecode-peek): Don't use `subclass'
32566         * lisp/cedet/srecode/insert.el (srecode-pop, srecode-peek): Don't use
32567         `subclass' since they're never called with a class.
32568         (srecode-insert-method, srecode-insert-subtemplate): Avoid obsolete
32569         srecode-dictionary-child-p.
32571 2015-05-08  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
32573         * lisp/help.el (help--binding-locus): Document argument POSITION.
32574         (Bug#20530)
32576 2015-05-08  Paul Eggert  <eggert@cs.ucla.edu>
32578         Merge from gnulib
32579         * doc/misc/texinfo.tex: Get latest version.
32581 2015-05-08  Oleh Krehel  <ohwoeowho@gmail.com>
32583         ffap.el (ffap-read-file-or-url): Fix completing-read call
32584         * lisp/ffap.el (ffap-read-file-or-url): The HIST argument of
32585         `completing-read' should be a symbol.
32587 2015-05-08  Eli Zaretskii  <eliz@gnu.org>
32589         Verify file modifications by other programs
32590         * src/filelock.c (lock_file): Check whether the file was modified
32591         since it was visited even if 'create-lockfiles' is nil.  (Bug#18828)
32593         Fix keyboard macros that include function keys
32594         * src/keyboard.c (read_char_minibuf_menu_prompt): Record function
32595         keys in the macro before returning.  (Bug#20454)
32597 2015-05-08  Glenn Morris  <rgm@gnu.org>
32599         * build-aux/gitlog-to-changelog: Treat "Tiny-change" like
32600         "Copyright-paperwork-exempt".  (Bug#20324)
32602         * lisp/vc/log-edit.el: Handle "(tiny change)".  (Bug#20324)
32603         (log-edit-rewrite-tiny-change): New variable.
32604         (log-edit-insert-changelog): Maybe add "Copyright-paperwork-exempt".
32605         (log-edit-changelog-ours-p): Set log-edit-author to a cons.
32606         * etc/NEWS: Mention this.
32608         * lisp/calc/calc.el (math-zerop): Declare.
32610         * lisp/emacs-lisp/eieio-opt.el (help-fns-short-filename): Declare.
32612 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
32614         * lisp/emacs-lisp/subr-x.el (if-let): Fix debug spec.
32615         Support the case when BINDINGS is a single tuple.  (Bug#20525)
32617         * etc/NEWS: Fix typo in previous commit
32618         (14bb519f1034ddb38ce375cbad7095d9b07f8b26).
32620 2015-05-07  Jan D  <jan.h.d@swipnet.se>
32622         * configure.ac: Warn for multiple display crash for all Gtk+ versions.
32623         Output URL to Gtk+ bug (Bug#20452).
32625         * lisp/term/ns-win.el (ns-paste-secondary): Use gui-get-selection.
32627 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
32629         * lisp/emacs-lisp/package.el: New "external" package status.
32630         An external package is any installed package that's not built-in
32631         and not from `package-user-dir', which usually means it's from an
32632         entry in `package-directory-list'.  They are treated much like
32633         built-in packages, in that they cannot be through the Package Menu
32634         deleted and are not considered for upgrades.
32635         (package-desc-status): Identify if a package is installed outside
32636         `package-user-dir'.
32637         (package-menu--print-info-simple)
32638         (package-menu--status-predicate): Add support for it.
32639         * etc/NEWS: Document it.
32641 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
32643         * lisp/mail/rmail.el: Use lexical-binding.
32644         (rmail-bury): Remove unused var `buffer-to-bury'.
32645         (rmail-get-new-mail): Remove unused vars `opoint' and `success'.
32646         (rmail-parse-url): Remove unused var `proto', `user', and `host'.
32647         (rmail-unrmail-new-mail-maybe): Remove unused var `new-file'.
32648         (rmail-insert-inbox-text): Remove unused var `movemail'.
32649         (rmail-add-mbox-headers): Remove unused var `limit'.
32650         (rmail-undelete-previous-message): Remove unused var `value'.
32651         (rmail-reply): Remove unused vars `resent-to', `resent-cc',
32652         `resent-reply-to'.
32653         (rmail-mime-mbox-buffer, rmail-mime-view-buffer): Declare.
32654         (rmail-restore-desktop-buffer): Rename arguments.
32656 2015-05-06  Glenn Morris  <rgm@gnu.org>
32658         * Makefile.in (change-history-commit): Add missing piece of previous.
32660         Avoid unnecessary bumping of Makefile.in's timestamp
32661         * Makefile.in (gen_origin): Move to gitlog-to-emacslog.
32662         (emacslog): New variable.
32663         (ChangeLog): Use $emacslog.  Don't pass $gen_origin.
32664         (unchanged-history-files): Use $emacslog rather than Makefile.in.
32665         (change-history-nocommit): Store hash in $emacslog.
32666         * build-aux/gitlog-to-emacslog (gen_origin): Move default here.
32667         * admin/update_autogen (changelog_files): Update for the above.
32669         * Makefile.in: Don't always insist on removing existing "ChangeLog".
32670         (CHANGELOG): New variable.
32671         (no-ChangeLog): Remove.
32672         (ChangeLog): Replace "no-ChangeLog"; pass output file to script.
32673         (change-history-nocommit): Use a temp file rather than insisting
32674         on deletion of any existing "ChangeLog".
32676         * build-aux/gitlog-to-emacslog: Allow specification of output.
32678         * admin/update_autogen: Add option to update ChangeLog.
32679         (usage): Mention -H.
32680         (changelog_flag, changelog_n, changelog_files): New variables.
32681         (main): Check for -H, and maybe run change-history-nocommit.
32683 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
32685         * lisp/subr.el (delete-dups): Pre-size the hashtable.
32687         * lisp/emacs-lisp/cl.el (define-modify-macro): Make sure
32688         cl--arglist-args is defined (bug#20517).
32690 2015-05-06  Glenn Morris  <rgm@gnu.org>
32692         * Makefile.in (change-history-nocommit): New.
32694 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
32696         * lisp/cedet/pulse.el (pulse-momentary-unhighlight): Only cancel
32697         timer when it is non-nil
32698         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00223.html).
32700 2015-05-06  Glenn Morris  <rgm@gnu.org>
32702         Quieten CEDET compilation
32703         * lisp/cedet/semantic/db-el.el (semanticdb-elisp-sym->tag):
32704         Invert fboundp test to quieten on current Emacs.
32705         * lisp/cedet/ede/config.el (ede-shell-run-something)
32706         (semanticdb-file-table-object, semanticdb-needs-refresh-p)
32707         (semanticdb-refresh-table): Declare.
32708         (ede-preprocessor-map): Require semantic/db.
32710         Quieten cc-mode compilation
32711         * lisp/progmodes/cc-awk.el (c-forward-sws):
32712         * lisp/progmodes/cc-cmds.el (c-forward-subword, c-backward-subword):
32713         Declare.
32715 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
32717         * lisp/subr.el (delete-dups): Avoid nreverse.
32719 2015-05-06  Artur Malabarba  <bruce.connor.am@gmail.com>
32721         * lisp/subr.el (delete-dups): Make it destructive again.
32723 2015-05-06  Paul Eggert  <eggert@cs.ucla.edu>
32725         * doc/lispref/sequences.texi (Sequence Functions): Fix quoting.
32727 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
32729         * lisp/emacs-lisp/testcover.el: Don't use edebug--read (bug#20487).
32730         * lisp/emacs-lisp/testcover.el: Use lexical-binding.
32731         (testcover--read): Rename from testcover-read.  Change calling
32732         convention.  Use edebug-read-and-maybe-wrap-form now that edebug-read
32733         is gone.
32734         (testcover-start): Use add-function.  Move edebug-all-defs binding to
32735         testcover--read.
32736         (testcover-this-defun): Tighten scope of edebug-all-defs binding.
32737         (testcover-mark): Remove unused var `item'.
32738         * src/lread.c (syms_of_lread): Default load-read-function to `read'.
32740 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
32742         * lisp/subr.el (delete-dups): When there are more than 100 candidates,
32743           use a hash table.  This can result in ~500 times speed-up for typical
32744           collections of size 5000, like that of `load-library'.
32746 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
32748         CEDET: Avoid `oref' on classes in a few more cases
32749         * lisp/cedet/ede/generic.el (ede-find-target):
32750         * lisp/cedet/ede.el (ede-project-forms-menu): Avoid `oref' on classes.
32751         * lisp/cedet/semantic/bovine/gcc.el (semantic-gcc-setup): Remove unused
32752         var `prefix'.
32754         * lisp/cedet/semantic/symref/grep.el: Fix unused var warnings.
32755         (grepflags, greppattern): Declare.
32756         (semantic-symref-perform-search): Remove unused var `pat'.
32758         CEDET (srecode-compile-inserter): Avoid `oref' on classes
32759         * lisp/cedet/srecode/compile.el (srecode-compile-inserter):
32760         Avoid `oref' on classes (bug#20491).
32761         (srecode-compile-split-code): Remove unused var `key'.
32763 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
32765         Clean up pulse.el a little
32766         * lisp/cedet/pulse.el (pulse): Remove.
32767         (pulse-momentary-timer): Save instead of the stop time.
32768         (pulse-momentary-highlight-overlay):
32769         Call pulse-momentary-unhighlight first thing.
32770         Treat pulse-momentary-overlay as a single value, not a list.
32771         Save the created timer.  Only pass the stop time to the timer.
32772         (pulse-tick): Update accordingly.
32773         (pulse-momentary-unhighlight): Treat pulse-momentary-overlay as a
32774         single value.  Cancel the timer.
32776 2015-05-06  Tassilo Horn  <tsdh@gnu.org>
32778         * lisp/textmodes/reftex-cite.el (reftex-format-bib-entry):
32779         Support the biblatex journaltitle field.
32781 2015-05-05  Glenn Morris  <rgm@gnu.org>
32783         Minor declare-function improvement
32784         * lisp/emacs-lisp/bytecomp.el
32785         (byte-compile-macroexpand-declare-function):
32786         Handle declarations after calls.  (Bug#20509)
32788         * lisp/progmodes/js.el (js--optimize-arglist): Remove declaration.
32790         * lisp/w32-fns.el (w32-shell-name): Silence compiler.
32792 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
32794         Pulse using a timer
32795         * lisp/cedet/pulse.el (pulse-momentary-stop-time): New variable.
32796         (pulse-momentary-highlight-overlay): Set up the timer instead of
32797         calling `pulse'
32798         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/).
32799         (pulse-tick): New function.
32800         (pulse-momentary-unhighlight): Cut off the stop time.
32801         (pulse-delay): Update the docstring WRT to not using sit-for.
32803         Add semantic/symref/grep file patterns for ruby-mode
32804         * lisp/cedet/semantic/symref/grep.el
32805         (semantic-symref-filepattern-alist): Add patterns for ruby-mode.
32806         Clarify the docstring.
32808         Don't require match
32809         * lisp/progmodes/xref.el (xref--read-identifier): Don't require
32810         match.  That doesn't work for every command, and some identifier
32811         completion tables are bound to be imperfect anyway.
32813 2015-05-05  Stefan Monnier  <monnier@iro.umontreal.ca>
32815         * lisp/cedet/semantic/grammar.el: Fix compiler warnings (bug#20505).
32816         (semantic-grammar--template-expand): New function.
32817         (semantic-grammar-header, semantic-grammar-footer): Use it.
32818         (semantic-grammar--lex-block-specs): Remove unused var `block-spec'.
32819         (semantic-grammar-file-regexp): Refine regexp.
32820         (semantic-grammar-eldoc-get-macro-docstring):
32821         Use elisp-get-fnsym-args-string when available.
32822         (semantic-idle-summary-current-symbol-info): Use new elisp-* names
32823         instead of the old eldoc-* names.
32824         * lisp/emacs-lisp/eldoc.el (eldoc-docstring-format-sym-doc): Move back
32825         from elisp-mode.el.  Tweak calling convention.
32826         * lisp/progmodes/elisp-mode.el (package-user-dir): Declare.
32827         (elisp-get-fnsym-args-string): Add `prefix' argument.  Rename from
32828         elisp--get-fnsym-args-string.
32829         (elisp--highlight-function-argument): Add `prefix' arg.
32830         (elisp-get-var-docstring): Rename from elisp--get-var-docstring.
32831         (elisp--docstring-format-sym-doc): Move back to eldoc.el.
32833 2015-05-05  Glenn Morris  <rgm@gnu.org>
32835         * lisp/help-fns.el (describe-function-1):
32836         Handle builtins with advertised calling conventions.  (Bug#20479)
32838 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
32840         Merge branch 'seq-let'
32842         Update `seq-let' documentation
32843         * doc/lispref/sequences.texi: Update the documentation of `seq-let'
32844         with the support of  `&rest'.
32846         Add support for &rest in `seq-let'
32847         * lisp/emacs-lisp/seq.el (seq--make-bindings): Add support for `&rest'
32848         in the argument list.
32849         * test/automated/seq-tests.el: Add a test for parsing and binding
32850         `&rest' in `seq-let'.
32852 2015-05-05  Pierre Lorenzon  <devel@pollock-nageoire.net>  (tiny change)
32854         * lisp/emacs-lisp/eieio-custom.el (eieio-object-value-get):
32855         Add missing increment (Bug#20467).
32856         (eieio-object-value-create): Adjust to new slots representation
32857         (Bug#20467).
32858         (eieio-object-value-create): Fix missed adjustment to new
32859         representation of slots metadata.
32861 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
32863         * lisp/emacs-lisp/seq.el (seq--make-bindings): Improve the docstring.
32865 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
32867         Work around "Attempt to modify read-only object"
32868         * lisp/progmodes/elisp-mode.el (elisp--xref-format): Extract from
32869         elisp--xref-find-definitions, to work around "Attempt to modify
32870         read-only object" error.
32872         Only skip some variables that have function counterparts
32873         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
32874         Only skip minor-mode-named variable if it's defined in a Lisp
32875         file, and it's in minor-mode-list (bug#20506).
32876         * test/automated/elisp-mode-tests.el
32877         (elisp-xref-finds-both-function-and-variable)
32878         (elisp-xref-finds-only-function-for-minor-mode): New tests.
32880 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
32882         * lisp/progmodes/xref.el (xref--location-at-point): Revert the
32883         previous change.
32884         (xref--insert-xrefs): Buttonize the whole line, including the
32885         number at the beginning.
32887         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
32888         Make sure we're inside the let bindings.
32889         * test/automated/elisp-mode-tests.el
32890         (elisp-completes-functions-after-let-bindings): New test.
32892 2015-05-04  Glenn Morris  <rgm@gnu.org>
32894         * lisp/cedet/semantic/grammar.el (eldoc-function-argstring)
32895         (eldoc-docstring-format-sym-doc, eldoc-last-data-store)
32896         (eldoc-get-fnsym-args-string, eldoc-get-var-docstring):
32897         Remove outdated declarations.
32899         Replace instances of "(eval-when-compile (autoload ...))"
32900         * lisp/gnus/gnus-art.el (nneething-get-file-name):
32901         Declare rather than autoload.
32902         * lisp/gnus/gnus-async.el (gnus-html-prefetch-images):
32903         Remove pointless autoload.
32904         * lisp/gnus/gnus-sync.el (gnus-group-topic): Autoload at run-time.
32905         (gnus-topic-create-topic, gnus-topic-enter-dribble):
32906         Declare rather than autoload.
32907         * lisp/gnus/mm-archive.el (gnus-recursive-directory-files)
32908         (mailcap-extension-to-mime): Autoload at run-time.
32909         * lisp/gnus/mm-util.el (latin-unity-massage-name)
32910         (latin-unity-maybe-remap, latin-unity-representations-feasible-region)
32911         (latin-unity-representations-present-region):
32912         Declare rather than autoload.
32913         * lisp/gnus/mml-smime.el (epg-make-context)
32914         (epg-passphrase-callback-function): Autoload at run-time.
32915         (epg-context-set-signers, epg-context-result-for)
32916         (epg-new-signature-digest-algorithm)
32917         (epg-verify-result-to-string, epg-list-keys, epg-verify-string)
32918         (epg-sign-string, epg-encrypt-string)
32919         (epg-context-set-passphrase-callback, epg-sub-key-fingerprint)
32920         (epg-configuration, epg-expand-group, epa-select-keys):
32921         Declare rather than autoload.
32922         * lisp/gnus/nnir.el (nnimap-change-group, nnimap-make-thread-query):
32923         Autoload at run-time.
32924         (gnus-group-topic-name, nnimap-buffer, nnimap-command)
32925         (gnus-registry-get-id-key, gnus-registry-action):
32926         Declare rather than autoload.
32927         * lisp/gnus/nnmail.el (mail-send-and-exit): Autoload at run-time.
32928         * lisp/gnus/spam.el (spam-stat-buffer-change-to-non-spam)
32929         (spam-stat-buffer-change-to-spam, spam-stat-buffer-is-non-spam)
32930         (spam-stat-buffer-is-spam, spam-stat-load, spam-stat-save)
32931         (spam-stat-split-fancy): Remove pointless autoloads.
32932         * lisp/net/mairix.el: Load gnus-util when compiling.
32933         (gnus-group-read-ephemeral-group, gnus-summary-toggle-header)
32934         (message-field-value): Declare rather than autoload.
32935         (mairix-gnus-ephemeral-nndoc, mairix-gnus-fetch-field):
32936         Check gnus-alive-p is fbound.
32937         (vm-quit, vm-visit-folder, vm-select-folder-buffer)
32938         (vm-check-for-killed-summary, vm-error-if-folder-empty)
32939         (vm-get-header-contents, vm-select-marked-or-prefixed-messages):
32940         Declare rather than autoload.
32942         * lisp/gnus/mm-view.el (epg-decrypt-string): Autoload.
32944         * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
32945         (epg-sub-key-capability, epg-sub-key-validity): Fix declarations.
32947         * lisp/progmodes/elisp-mode.el (xref-collect-references): Declare.
32949         * lisp/emacs-lisp/debug.el (help-xref-interned): Update declaration.
32951         * lisp/allout.el (epg-user-id-string, epg-key-user-id-list):
32952         * lisp/emacs-lisp/package.el (epg-signature-status):
32953         Fix declarations.
32955         * lisp/play/gametree.el (gametree-show-children-and-entry)
32956         (gametree-apply-layout, gametree-mouse-show-subtree)
32957         (gametree-mouse-hide-subtree): Replace obsolete outline aliases.
32959         * lisp/emacs-lisp/check-declare.el (check-declare-verify):
32960         Handle cl-defgeneric, cl-defmethod.
32962 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
32964         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions):
32965         Highlight both type and symbol name.
32967         Insert, highlight and align line numbers in xref output
32968         * lisp/progmodes/etags.el (xref-location-line): Specialize for
32969         xref-etags-location.
32970         * lisp/progmodes/xref.el (xref-location-line): New generic method.
32971         (xref-file-location): Add reader for the line slot.
32972         (xref--location-at-point): Skip to the `xref-location' property.
32973         (xref--collect-reference): Drop the line number from description.
32974         (xref--insert-xrefs): Insert, highlight and align line numbers.
32976 2015-05-04  Daniel Colascione  <dancol@dancol.org>
32978         * lisp/simple.el (save-mark-and-excursion--save)
32979         (save-mark-and-excursion--restore): Fix previous commit
32980         (255a011f0ecf004b31c59945b10154b10fac3af1).
32982 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
32984         Don't pulse the indentation, or the newline
32985         * lisp/cedet/pulse.el (pulse-lighten-highlight)
32986         (pulse-reset-face): Fall back to the inherited background
32987         attribute in FACE.
32988         (pulse-momentary-highlight-region): Add autoload cookie.
32989         * lisp/progmodes/xref.el (xref--maybe-pulse): Don't highlight the
32990         indentation, or the newline, if the line's non-empty
32991         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00118.html).
32993 2015-05-04  Daniel Colascione  <dancol@dancol.org>
32995         Add `save-mark-and-excursion', which has the old
32996         `save-excursion' behavior
32997         * doc/lispref/positions.texi (Excursions):
32998         Document `save-mark-and-excursion'.
32999         * lisp/font-lock.el (font-lock-fontify-block):
33000         Use `save-mark-and-excursion' instead of `save-excursion',
33001         restoring Emacs 24 behavior.
33002         * lisp/simple.el (save-mark-and-excursion--save)
33003         (save-mark-and-excursion--restore): New functions.
33004         (save-mark-and-excursion): New user macro.
33005         * src/editfns.c (Fsave_excursion): Mention `save-mark-and-excursion'
33006         in `save-excursion' documentation.
33008 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
33010         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
33011         Classify lone symbol inside let varlist as variable.
33012         * test/automated/elisp-mode-tests.el
33013         (completest-variables-in-let-bindings): New test.
33015         Add xref-pulse-on-jump
33016         * lisp/cedet/pulse.el (pulse-momentary-highlight-one-line):
33017         Add autoload cookie.
33018         * lisp/progmodes/xref.el (xref-pulse-on-jump): New option.
33019         (xref--maybe-pulse): New function.
33020         (xref-pop-marker-stack, xref--pop-to-location)
33021         (xref--display-position): Use it.
33022         (xref--location-at-point): Use back-to-indentation.
33024 2015-05-04  Stefan Monnier  <monnier@iro.umontreal.ca>
33026         lisp/org/org-{macs,list}.el: Fix lexical warnings
33027         * lisp/org/org-list.el (org-list-struct): Remove unused var `ind'.
33028         (org-list-get-next-item, org-list-get-prev-item)
33029         (org-list-get-children): Mark unused arg `struct'.
33030         (org-list-use-alpha-bul-p): Remove unused var `bul'.
33031         (org-toggle-checkbox): Mark unused var.
33032         (org-update-checkbox-count): Remove unused var `box-num'.
33033         (org-adapt-indentation): Declare.
33034         (org-list-parse-list): Declare var instead of adding a dummy duplicate.
33035         (org-list-send-list): Remove unused var `txt'.
33036         (org-list-to-latex, org-list-to-texinfo): Mark unused arg `params'.
33037         (org-list-to-subtree): Add prefix to dyn-bind var, and declare them.
33038         * lisp/org/org-macs.el: Use `declare'.
33039         (org-with-limited-levels): Declare dyn-bound vars.
33041 2015-05-04  Eli Zaretskii  <eliz@gnu.org>
33043         Fix minor issues with CEDET on MS-Windows
33044         * lisp/cedet/semantic/symref/idutils.el
33045         (semantic-symref-parse-tool-output-one-line): Fix the search
33046         regexp to match MS-Windows file names with drive letters.
33047         (Bug#19468)
33048         * lisp/cedet/semantic/symref/grep.el
33049         (semantic-symref-grep-use-template): Remove "--color=always" from
33050         Grep switches on MS-Windows.
33051         (semantic-symref-grep-shell): Use shell-file-name as the default
33052         value, so this works not only on Posix platforms.
33053         (semantic-symref-perform-search): Use shell-quote-argument instead
33054         of literal '..' for portable quoting of Grep command-line
33055         argument.  Use shell-command-switch instead of a literal "-c".
33056         * lisp/cedet/semantic/bovine/gcc.el
33057         (semantic-gcc-get-include-paths): Use file-name-absolute-p to test
33058         for an absolute file name in a portable way.
33060 2015-05-04  Artur Malabarba  <bruce.connor.am@gmail.com>
33062         * lisp/emacs-lisp/package.el: Remove `package--silence' variable.
33063         (package-import-keyring, package-refresh-contents)
33064         (package-compute-transaction, package--save-selected-packages)
33065         (package-install-from-archive, package-delete)
33066         (package-menu--perform-transaction): Use `inhibit-message' instead.
33067         (package--compile): Set `warning-minimum-level' to :error.
33069 2015-05-03  Stefan Monnier  <monnier@iro.umontreal.ca>
33071         * lisp/term/screen.el (xterm-screen-extra-capabilities): New custom.
33072         (terminal-init-screen): Use it (bug#20356).
33073         * lisp/term/xterm.el: Provide `term/xterm' instead of `xterm'.
33074         (xterm--extra-capabilities-type): New const.
33075         (xterm-extra-capabilities): Use it.
33076         (xterm--version-handler): Lower the pseudo-version for `screen'.
33078 2015-05-03  Dmitry Gutov  <dgutov@yandex.ru>
33080         * lisp/progmodes/xref.el (xref--insert-xrefs): Tweak the faces.
33081         Always insert a newline at the end (to avoid mouse-face background
33082         tail at the last line).
33084         elisp-completion-at-point: Prioritize being quoted over funpos
33085         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
33086         Only consider function position when not inside quoted form
33087         (bug#20425).
33088         * test/automated/elisp-mode-tests.el: New file.
33090         Stop vc-print-log from jumping to the top
33091         * lisp/vc/vc.el (vc-print-log-internal): Pass nil
33092         GOTO-LOCATION-FUNC to vc-log-internal-common when WORKING-REVISION
33093         is not specified.
33094         (vc-incoming-outgoing-internal): Always pass nil.
33095         (vc-log-internal-common): When GOTO-LOCATION-FUNC is nil, don't
33096         call it, and don't set vc-sentinel-movepoint (bug#15322).
33097         (vc-print-root-log): Don't fetch the root working revision, nor
33098         pass it to vc-print-log-internal.
33100 2015-05-02  Michael Vehrs  <Michael.Burschik@gmx.de>
33102         Fix display of keyboard layouts for right-to-left scripts
33103         * lisp/international/quail.el (quail-insert-kbd-layout):
33104         Force left-to-right paragraph direction.
33106 2015-05-02  K. Handa  <handa@gnu.org>
33108         * src/cmds.c (internal_self_insert): When we insert spaces for
33109         padding, set point before the padding spaces, not after them.
33111 2015-05-02  Nicolas Petton  <nicolas@petton.fr>
33113         * lisp/emacs-lisp/seq.el (seq-p): New alias to `sequencep'.
33115 2015-05-02  Dmitry Gutov  <dgutov@yandex.ru>
33117         Fix etags-xref-find for references
33118         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
33119         Use `cl-mapcan'.
33120         * lisp/progmodes/etags.el (etags-xref-find): Ditto.  Prompt for
33121         directory if no tags tables are loaded (bug#19468).
33123 2015-05-02  Philipp Stephani  <phst@google.com>
33125         Update the options in whitespace-style defcustom
33126         * lisp/whitespace.el (whitespace-style): Use `set' instead of a
33127         `repeat' because the option is really set-like.  Add missing
33128         options.  Reorder options to match the order in the
33129         documentation.  (Bug#20346)
33131 2015-05-02  Eli Zaretskii  <eliz@gnu.org>
33133         Fix error diagnostics of c-macro-expand
33134         * lisp/progmodes/cmacexp.el (c-macro-expansion): Don't bail out
33135         too early if no start-marker string was found -- that generally
33136         means cpp exited abnormally, and we still want to show its error
33137         messages to the user.
33139         Don't require Texinfo 5.0 for Emacs documentation
33140         * doc/emacs/docstyle.texi: Use "@set txicodequoteundirected" and
33141         "@set txicodequotebacktick" instead of "@codequotebacktick on" and
33142         "@codequoteundirected on", respectively, to avoid requiring
33143         Texinfo 5.x for Emacs documentation.
33145 2015-05-01  Simen Heggestøyl  <simenheg@gmail.com>
33147         * lisp/files.el (pwd):
33148         When called with a prefix argument, insert the current default
33149         directory at point.
33151 2015-05-01  Stefan Monnier  <monnier@iro.umontreal.ca>
33153         * lisp/isearch.el (isearch-mode-map): Allow backspace remapping
33154         * lisp/isearch.el (isearch-mode-map): Don't inhibit
33155         function-key-map remapping for backspace (bug#20466).
33157 2015-05-01  Dmitry Gutov  <dgutov@yandex.ru>
33159         Implement xref-find-references in etags and elisp-mode
33160         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references): New function.
33161         (elisp-xref-find): Use it.
33162         * lisp/progmodes/etags.el (etags-xref-find): Use `xref-collect-references'.
33163         * lisp/progmodes/xref.el (xref-collect-references):
33164         (xref--collect-reference): New functions.
33166 2015-05-01  Paul Eggert  <eggert@cs.ucla.edu>
33168         Prefer plain characters to Texinfo circumlocutions
33169         For example, prefer 'François' to 'Fran\c{c}ois', 'Fran\c cois',
33170         'Fran@,{c}ois' or 'Francois' (all of which were used!) in Texinfo sources.
33172         Fix single-quoting style in PDF manuals
33173         The PDF versions of the GNU manuals used curved single quotes to
33174         represent grave accent and apostrophe, which made it a pain to cut
33175         and paste code examples from them.  Fix the PDF versions to use
33176         grave accent and apostrophe for Lisp source code, keystrokes, etc.
33177         This change does not affect the info files, nor does it affect
33178         ordinary uses of curved single quotes in PDF.
33179         * doc/emacs/docstyle.texi: New file, which specifies treatment for
33180         grave accent and apostrophe, as well as the document encoding.
33181         * doc/emacs/emacs-xtra.texi, doc/emacs/emacs.texi:
33182         * doc/lispintro/emacs-lisp-intro.texi:
33183         * doc/lispref/back.texi, doc/lispref/book-spine.texi:
33184         * doc/lispref/elisp.texi, doc/lispref/lay-flat.texi:
33185         * doc/misc/ada-mode.texi, doc/misc/auth.texi:
33186         * doc/misc/autotype.texi, doc/misc/bovine.texi, doc/misc/calc.texi:
33187         * doc/misc/cc-mode.texi, doc/misc/cl.texi, doc/misc/dbus.texi:
33188         * doc/misc/dired-x.texi, doc/misc/ebrowse.texi, doc/misc/ede.texi:
33189         * doc/misc/ediff.texi, doc/misc/edt.texi, doc/misc/efaq-w32.texi:
33190         * doc/misc/efaq.texi, doc/misc/eieio.texi, doc/misc/emacs-gnutls.texi:
33191         * doc/misc/emacs-mime.texi, doc/misc/epa.texi, doc/misc/erc.texi:
33192         * doc/misc/ert.texi, doc/misc/eshell.texi, doc/misc/eudc.texi:
33193         * doc/misc/eww.texi, doc/misc/flymake.texi, doc/misc/forms.texi:
33194         * doc/misc/gnus-coding.texi, doc/misc/gnus-faq.texi:
33195         * doc/misc/gnus.texi, doc/misc/htmlfontify.texi:
33196         * doc/misc/idlwave.texi, doc/misc/ido.texi, doc/misc/info.texi:
33197         * doc/misc/mairix-el.texi, doc/misc/message.texi, doc/misc/mh-e.texi:
33198         * doc/misc/newsticker.texi, doc/misc/nxml-mode.texi:
33199         * doc/misc/octave-mode.texi, doc/misc/org.texi, doc/misc/pcl-cvs.texi:
33200         * doc/misc/pgg.texi, doc/misc/rcirc.texi, doc/misc/reftex.texi:
33201         * doc/misc/remember.texi, doc/misc/sasl.texi, doc/misc/sc.texi:
33202         * doc/misc/semantic.texi, doc/misc/ses.texi, doc/misc/sieve.texi:
33203         * doc/misc/smtpmail.texi, doc/misc/speedbar.texi:
33204         * doc/misc/srecode.texi, doc/misc/todo-mode.texi, doc/misc/tramp.texi:
33205         * doc/misc/url.texi, doc/misc/vhdl-mode.texi, doc/misc/vip.texi:
33206         * doc/misc/viper.texi, doc/misc/widget.texi, doc/misc/wisent.texi:
33207         * doc/misc/woman.texi:
33208         Use it instead of '@documentencoding UTF-8', to lessen the need for
33209         global changes like this in the future.
33210         * doc/emacs/Makefile.in (EMACS_XTRA):
33211         * doc/lispintro/Makefile.in (srcs):
33212         * doc/lispref/Makefile.in (srcs):
33213         Add dependency on docstyle.texi.
33214         * doc/misc/Makefile.in (style): New macro.
33215         (${buildinfodir}/%.info, %.dvi, %.pdf, %.html)
33216         (${buildinfodir}/ccmode.info, ${buildinfodir}/efaq%.info, gnus_deps):
33217         Use it.
33219 2015-05-01  Glenn Morris  <rgm@gnu.org>
33221         * test/automated/cl-lib-tests.el (cl-lib-adjoin-test): Fix it.
33223         * lisp/emacs-lisp/pcase.el (get-edebug-spec, edebug-match)
33224         (help-fns--signature): Declare.
33226         * lisp/emacs-lisp/pcase.el (pcase--make-docstring): Require help-fns.
33228 2015-05-01  Nicolas Petton  <nicolas@petton.fr>
33230         New macro seq-let, providing destructuring support to seq.el
33231         * lisp/emacs-lisp/seq.el (seq-let): New macro.  `seq-let' is similar
33232         to `cl-destructuring-bind' but works on all sequence types supported
33233         by `seq.el'.  Bump version number to 1.6.
33234         * test/automated/seq-tests.el: Add tests for seq-let.
33235         * doc/lispref/sequences.texi: Add documentation for seq-let.
33237 2015-05-01  Pontus Michael  <m.pontus@gmail.com>
33239         * lisp/simple.el (blink-matching-open): Better behavior in minibuffer.
33241 2015-05-01  Glenn Morris  <rgm@gnu.org>
33243         * lisp/emacs-lisp/ert.el (ert--special-operator-p): Fix previous.
33245 2015-05-01  Artur Malabarba  <bruce.connor.am@gmail.com>
33247         * lisp/emacs-lisp/bytecomp.el: Revert "Silence noninteractive compilations"
33248         This reverts commit 9a7ddde977378cb5276a81476ae458889c403267.
33249         This reverts commit 3c0ea587daf8b17960b90603a70e3ac4057d883d.
33250         With message: "* lisp/emacs-lisp/bytecomp.el: Use `inhibit-message'".
33251         (Bug#20445).
33253 2015-05-01  K. Handa  <handa@gnu.org>
33255         * lisp/international/mule-cmds.el (input-method-use-echo-area):
33256         Change :type to 'boolean.
33258 2015-05-01  Lars Magne Ingebrigtsen  <larsi@gnus.org>
33260         Start using proportional fonts in eww by default
33261         * lisp/net/shr.el (shr-use-fonts): Switch the default to t, since
33262         it seems to work well.
33264         Fix links in tables in shr
33265         * lisp/net/shr.el: Remove `shr-inhibit-decoration', because that
33266         makes (some) links in tables not work.
33268 2015-05-01  Jan D  <jan.h.d@swipnet.se>
33270         * lisp/term/ns-win.el (ns-get-cut-buffer-internal): Remove this alias.
33272 2015-04-30  Glenn Morris  <rgm@gnu.org>
33274         * lisp/emacs-lisp/ert.el (ert--special-operator-p):
33275         Update for 2015-02-08 change to indirect-function.
33277         * lisp/term/ns-win.el (ns-get-selection-internal):
33278         Remove declaration for function deleted 2014-10-21.
33280         * lisp/dom.el: Load subr-x when compiling, for when-let.
33282         Silence some compilation warnings
33283         * lisp/emacs-lisp/check-declare.el (compilation-forget-errors):
33284         * lisp/emulation/cua-base.el (delete-active-region):
33285         * lisp/net/net-utils.el (w32-get-console-output-codepage):
33286         * lisp/term/ns-win.el (ns-own-selection-internal)
33287         (ns-disown-selection-internal, ns-selection-owner-p)
33288         (ns-selection-exists-p, ns-get-selection):
33289         Declare for compiler.
33291         Function declaration updates prompted by 'make check-declare'
33292         * lisp/emacs-lisp/package.el (lm-homepage):
33293         * lisp/gnus/gnus-util.el (iswitchb-read-buffer):
33294         * lisp/gnus/mm-decode.el (libxml-parse-html-region):
33295         * lisp/gnus/mml.el (libxml-parse-html-region):
33296         * lisp/gnus/nnrss.el (libxml-parse-html-region):
33297         * lisp/net/eww.el (libxml-parse-html-region):
33298         * lisp/net/shr.el (libxml-parse-html-region):
33299         * lisp/vc/vc-bzr.el (vc-annotate-convert-time):
33300         * lisp/vc/vc-cvs.el (vc-annotate-convert-time):
33301         * lisp/vc/vc-git.el (vc-annotate-convert-time):
33302         * lisp/vc/vc-hg.el (vc-annotate-convert-time):
33303         * lisp/vc/vc-mtn.el (vc-annotate-convert-time):
33304         * lisp/vc/vc-rcs.el (vc-annotate-convert-time):
33305         Update declaration.
33307         Remove compatibility code for 20-year old function renaming
33308         * lisp/progmodes/idlw-shell.el (idlwave-shell-comint-filter):
33309         Make it an obsolete alias.
33310         (idlwave-shell-filter): Change all uses to comint-output-filter.
33312 2015-04-30  Tassilo Horn  <tsdh@gnu.org>
33314         Add ace-window face config
33315         * etc/themes/tsdh-light-theme.el (tsdh-light): Add ace-window face
33316         configuration.
33318 2015-04-30  Paul Eggert  <eggert@cs.ucla.edu>
33320         Unclutter 'make doc' output a bit
33321         * Makefile.in ($(DOCS), $(INSTALL_DOC), $(UNINSTALL_DOC)):
33322         Use make subst rather than sh IFS to split target string apart.
33323         This makes 'make' output easier to follow.
33325         Merge from gnulib
33326         * doc/misc/texinfo.tex: Update from gnulib.
33328 2015-04-30  Artur Malabarba  <bruce.connor.am@gmail.com>
33330         * lisp/emacs-lisp/package.el: Some speed optimizations on menu refresh.
33331         (package-menu--print-info): Obsolete.
33332         (package-menu--print-info-simple): New function.
33333         (package-menu--refresh): Use it, simplify code, and improve
33334         performance.
33335         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print-entry):
33336         Tiny performance improvement.
33338         * lisp/emacs-lisp/package.el (package--message): inhibit-message.
33340 2015-04-29  Paul Eggert  <eggert@cs.ucla.edu>
33342         Omit -Wstrict-overflow workaround in GCC 5
33343         * src/process.c: Remove workaround for GCC -Wstrict-overflow bug
33344         if it's GCC 5 or later, as the bug appears to be fixed in GCC 5.1.
33346         Merge from gnulib
33347         This incorporates:
33348         2015-04-29 extern-inline: no need for workaround in GCC 5.1
33349         2015-04-26 file-has-acl: port to CentOS 6
33350         * m4/acl.m4, m4/extern-inline.m4: Update from gnulib.
33352 2015-04-29  Helmut Eller  <eller.helmut@gmail.com>
33354         Set next-error-* in xref--xref-buffer-mode
33355         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
33356         Set `next-error-function' and `next-error-last-buffer'.
33357         (xref--next-error-function): New function.
33358         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01311.html)
33360 2015-04-29  Fabián Ezequiel Gallina  <fgallina@gnu.org>
33362         python.el: Fix warnings on looking-back calls missing LIMIT
33363         * lisp/progmodes/python.el (python-shell-accept-process-output):
33364         Pass LIMIT arg to looking-back.
33366 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
33368         * lisp/emacs-lisp/package.el: Use pushnew for downloads in progress.
33369         (package--download-and-read-archives): Use pushnew instead of
33370         append.  If something terrible happened during a previous
33371         download, simply refreshing should now make things work again.
33373 2015-04-29  Dmitry Gutov  <dgutov@yandex.ru>
33375         Introduce etags-xref-find-definitions-tag-order
33376         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
33377         New variable.
33378         (etags--xref-find-definitions): Use it (bug#19468).
33380 2015-04-29  Eli Zaretskii  <eliz@gnu.org>
33382         PATH- and completion-related fixes in Eshell on MS-Windows
33383         * lisp/eshell/esh-ext.el (eshell-search-path): When running on
33384         MS-Windows, prepend "." to list of directories produced from PATH,
33385         as Windows always implicitly searches the current directory first.
33386         (eshell-force-execution): Make it have a non-nil default value on
33387         MS-Windows and MS-DOS.
33388         * lisp/eshell/em-cmpl.el (eshell-complete-commands-list): If
33389         eshell-force-execution is non-nil, complete on readable files and
33390         directories, not only executables.  When running on MS-Windows,
33391         prepend "." to list of directories produced from PATH, as Windows
33392         always implicitly searches the current directory first.
33394 2015-04-29  Sam Steingold  <sds@gnu.org>
33396         Bury RCIRC buffers when there is no activity
33397         * lisp/net/rcirc.el (rcirc-non-irc-buffer): Remove.
33398         (rcirc-bury-buffers): New function.
33399         (rcirc-next-active-buffer): When there is no new activity, use
33400         `rcirc-bury-buffers' to hide all RCIRC buffers.
33402 2015-04-29  Krzysztof Jurewicz  <krzysztof.jurewicz@gmail.com>  (tiny change)
33404         Fix DBUS query result parsing for secrets-search-items
33405         * lisp/net/secrets.el (secrets-search-items): Fix DBUS query result
33406         parsing.  The function assumed that return value of the
33407         SearchItems method called on a collection is a list of two lists,
33408         however this is true only when no collection is specified.  GNOME
33409         had used to incorrectly return a list of two lists in both cases,
33410         but this was already fixed:
33411         https://bugzilla.gnome.org/show_bug.cgi?id=695115 .  Also fix an
33412         incorrect information in the secrets-search-items’ docstring.
33413         (Bug#20449)
33415 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
33417         * lisp/emacs-lisp/bytecomp.el (byte-compile--message):
33418         Use `inhibit-message' instead of hiding the previous message
33419         with (message nil).
33421 2015-04-29  Oleh Krehel  <ohwoeowho@gmail.com>
33423         Remove the deprecated INTERNAL_FIELD macro by expanding it
33424         * src/lisp.h (INTERNAL_FIELD): Remove.
33425         (DEFVAR_KBOARD): Modify accordingly.
33426         * src/alloc.c, src/buffer.c, src/buffer.h, src/category.c:
33427         * src/keyboard.c, src/keyboard.h, src/syntax.c: Adjust users.
33428         * src/buffer.c (compact_buffer): Use BVAR.
33430 2015-04-29  Glenn Morris  <rgm@gnu.org>
33432         Replace an obsolete function alias
33433         * lisp/isearch.el (isearch-yank-x-selection):
33434         * lisp/mouse-copy.el (mouse-drag-secondary-pasting)
33435         (mouse-drag-secondary-moving):
33436         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
33437         Replace obsolete alias x-get-selection with gui-get-selection.
33439 2015-04-29  Stefan Monnier  <monnier@iro.umontreal.ca>
33441         * lisp/mail/rmailsum.el: Use lexical-binding.
33443 2015-04-29  Glenn Morris  <rgm@gnu.org>
33445         * test/automated/package-test.el (package-test-update-archives-async):
33446         Skip test on hydra.nixos.org.
33448 2015-04-28  Glenn Morris  <rgm@gnu.org>
33450         * lisp/foldout.el: Update for 2015-01-30 outline.el changes.
33451         (foldout-zoom-subtree, foldout-exit-fold, foldout-mouse-show)
33452         (foldout-mouse-hide-or-exit): Use new names for outline functions.
33454         * lisp/cedet/semantic/bovine/c.el (semantic-c-do-lex-if):
33455         Update for 2014-06-26 hideif.el change.
33457         * lisp/mail/rmailsum.el: Fix search for encoded subjects.  (Bug#19088)
33458         (rmail--decode-and-apply): New function.
33459         (rmail-message-regexp-p-1, rmail-message-subject-p): Use it.
33461         * lisp/mail/rmail.el (rmail-highlighted-headers): Fix :type.
33463 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
33465         * lisp/emacs-lisp/package.el: Fix priority-hiding corner case
33466         (package-menu--refresh): Delegate obsolete-hiding to
33467         `package--remove-hidden'.
33468         (package--remove-hidden): Disregard high-priority package if it is
33469         older than the installed one.
33471 2015-04-28  Paul Eggert  <eggert@cs.ucla.edu>
33473         Update source file encoding list
33474         Update admin/notes/unicode, along with coding system cookies in
33475         other files, so that the two match each other better.
33476         * admin/notes/unicode: lisp/language/ethio-util.el and
33477         lisp/language/ethiopic.el also use utf-8-emacs.
33478         * admin/notes/hydra, doc/misc/dbus.texi, doc/misc/org.texi:
33479         * doc/misc/remember.texi, etc/refcards/cs-dired-ref.tex:
33480         * etc/refcards/cs-refcard.tex, etc/refcards/cs-survival.tex:
33481         * etc/refcards/sk-dired-ref.tex, etc/refcards/sk-refcard.tex:
33482         * etc/refcards/sk-survival.tex:
33483         Add "coding: utf-8" so that this file is not mishandled in a
33484         Latin-1 or Big-5 locale.
33485         * lisp/international/robin.el, lisp/org/ox-ascii.el:
33486         Specify utf-8, not utf-8-emacs, as these are plain UTF-8 files.
33487         * lisp/language/ethio-util.el: Fix trailer.
33489 2015-04-28  Eli Zaretskii  <eliz@gnu.org>
33491         Fix synchronous invocation of Ispell
33492         * lisp/textmodes/ispell.el (ispell-init-process): Assign a non-nil
33493         value to ispell-process-directory before calling ispell-init-process.
33494         Don't call set-process-coding-system if ispell-async-processp is nil.
33495         (Bug#20448)
33497 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
33499         * lisp/emacs-lisp/package.el: Skip space and comments in init file
33500         (package--ensure-init-file): Insert snippet at first
33501         non-whitespace non-comments line.  Respects local-vars at the top
33502         of the file.
33504 2015-04-28  Glenn Morris  <rgm@gnu.org>
33506         * lisp/mail/rmail.el (rmail-copy-headers):
33507         Handle rmail-nonignored-headers being nil.  (Bug#18878)
33509         * lisp/subr.el (delay-mode-hooks): Fix doc typo.
33511         * lisp/vc/vc-bzr.el (vc-bzr-after-dir-status):
33512         Don't get confused by a bzrlib version mismatch warning.
33514 2015-04-27  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
33516         Change default location of EUDC options file
33517         * etc/NEWS: Document change to EUDC options file's default location.
33518         * lisp/net/eudc-vars.el (eudc-options-file): Use
33519         `locate-user-emacs-file' to change default options file location.
33521 2015-04-27  Glenn Morris  <rgm@gnu.org>
33523         * test/automated/package-test.el (package-test-update-archives-async):
33524         Try to handle the test server script dying.
33526 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
33528         * lisp/saveplace.el (save-place-mode): New minor mode.
33529         (save-place): Redefine as an obsolete alias.
33531         * lisp/midnight.el: Make it a minor mode.  Allow predicates.
33532         * lisp/midnight.el: Use lexical-binding.
33533         (midnight-mode): Make it a proper minor mode.
33534         (midnight-buffer-display-time): Make arg non-optional.
33535         (midnight-find): Remove.
33536         (clean-buffer-list-kill-never-regexps)
33537         (clean-buffer-list-kill-regexps): Tweak type for new function choice.
33538         (clean-buffer-list-delay): Allow clean-buffer-list-kill-regexps to
33539         contain functions.
33540         (clean-buffer-list): Use cl-find.
33541         Allow clean-buffer-list-kill-never-regexps to contain functions.
33543 2015-04-27  Nicolas Petton  <nicolas@petton.fr>
33545         Bump version of seq.el to 1.5
33546         * lisp/emacs-lisp/seq.el (seq-doseq): Remove undocumented return value
33547         from seq-doseq.  Bump version number of seq.el.
33549 2015-04-27  Glenn Morris  <rgm@gnu.org>
33551         * lisp/mail/rmail.el (rmail-reply):
33552         Decode subject before matching "Re:" prefix.  (Bug#20396)
33554 2015-04-27  Artur Malabarba  <bruce.connor.am@gmail.com>
33556         * lisp/emacs-lisp/package.el: Small improvements
33557         (package--with-work-buffer-async): More informative error.
33558         (package-install-user-selected-packages): Rename to
33559         `package-install-selected-packages'.
33561 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
33563         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last
33564         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last change.
33565         (eieio--class-make): Remove leftover `tag'.
33567 2015-04-27  Glenn Morris  <rgm@gnu.org>
33569         * lisp/gnus/message.el (gnus-extract-address-components):
33570         Remove bogus declaration that was masking previous problem.
33572 2015-04-27  Nicolas Graner  <nicolas.graner@u-psud.fr>  (tiny change)
33574         * lisp/gnus/message.el (message-insert-formatted-citation-line):
33575         Fix typo.  (Bug#20318)
33577 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
33579         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Reuse oldc.
33581         * lisp/textmodes/reftex-toc.el: Improve multi-frame behavior
33582         * lisp/textmodes/reftex-toc.el (reftex-toc-revert): Avoid displaying
33583         the buffer in yet another frame.
33584         (reftex-toc-visit-location): Make sure toc-window has focus at the end
33585         when `final' is nil.
33586         (reftex--rebuilding-toc): Defvar to avoid `boundp' and
33587         silence warnings.  Use `--' to clarify that it's internal.
33588         (reftex-toc-next, reftex-toc-previous, reftex-toc-demote)
33589         (reftex-toc-promote): Clarify unused argument.
33590         (reftex--pro-or-de, reftex--start-line, reftex--mark-line):
33591         Add `reftex--' prefix.  Fix all users.
33592         (reftex-toc-promote-prepare): Use _ for dummy variable.
33593         (reftex-toc-restore-region): Rename `m.
33595 2015-04-27  Eli Zaretskii  <eliz@gnu.org>
33597         Fix a typo in bibtex.el
33598         * lisp/textmodes/bibtex.el (bibtex-insert-kill): Fix a typo from
33599         last change.  (Bug#20429)
33601         Fix redisplay of frame after loading new fonts
33602         * src/xdisp.c (redisplay_internal): When retrying redisplay of
33603         a frame because new fonts were loaded, disable all redisplay
33604         optimizations on that frame by calling SET_FRAME_GARBAGED.
33605         (Bug#20410)
33607 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
33609         * lisp/info.el (Info-menu): Properly provide the `default'
33610         (Bug#20391)
33612         * lisp/progmodes/elisp-mode.el (elisp--get-fnsym-args-string):
33613         Catch errors from documentation (bug#20418).
33614         (emacs-lisp-mode-abbrev-table): Remove redundant defvar.
33616 2015-04-26  Stefan Monnier  <monnier@iro.umontreal.ca>
33618         * lisp/emacs-lisp/package.el: Move variables to silence byte-compiler.
33619         Remove redundant ":group 'package".
33621 2015-04-26  Eli Zaretskii  <eliz@gnu.org>
33623         Fix a typo in rmail.el
33624         * lisp/mail/rmail.el (rmail-ensure-blank-line): Fix a typo in the
33625         last commit.  (Bug#20429)
33627 2015-04-26  Dmitry Gutov  <dgutov@yandex.ru>
33629         Introduce xref-prompt-for-identifier
33630         * lisp/progmodes/xref.el (xref-prompt-for-identifier): New option.
33631         (xref--read-identifier): Use it
33632         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01205.html).
33634 2015-04-26  João Távora  <joaotavora@gmail.com>
33636         `tex-insert-quote' after single `'' opens quotes instead of closing
33637         Without this, it's very hard to precede double quotes with the
33638         apostrophe character, i.e. insert the sequence '``
33639         (quote-backquote-backquote), commonly useful in portuguese, for
33640         instance.
33641         * lisp/textmodes/tex-mode.el (tex-insert-quote): Add ?' to the list of
33642         preceding chars making `tex-insert-quote' be in the "opening" context.
33644 2015-04-25  Dmitry Gutov  <dgutov@yandex.ru>
33646         Pass `id' to `completing-read' as def instead of initial input
33647         * lisp/progmodes/xref.el (xref--read-identifier): Pass `id' to
33648         `completing-read' as the default value instead of initial input
33649         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01182.html).
33651 2015-04-25  Paul Eggert  <eggert@cs.ucla.edu>
33653         Don't freeze with unreadable processes
33654         Don't freeze if an exiting process can't be read from.  (Bug#19860).
33655         This fixes a bug I introduced in
33656         2014-07-08T07:24:07Z@eggert@cs.ucla.edu
33657         "* process.c: Add sanity checks for file descriptors."
33658         Dmitry Gutov did most of the legwork in finding the problem.
33659         * src/process.c (wait_reading_process_output):
33660         Treat non-running processes that can't be read from
33661         the same as other non-running processes.
33663 2015-04-25  Alan Mackenzie  <acm@muc.de>
33665         Fix change from 2015-04-22 "On C-y, stop some text property entries ..."
33666         * lisp/subr.el (remove-yank-excluded-properties): Put
33667         `with-silent-modifications' around only the last three lines of code.
33669 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
33671         * lisp/emacs-lisp/package.el (package-all-keywords): Don't cache
33672         (package--all-keywords): Deleted variable.
33674         * etc/NEWS: Document package-hiding functionality.
33676 2015-04-25  Eli Zaretskii  <eliz@gnu.org>
33678         * lisp/window.el (recenter-last-op): Doc fix.  (Bug#20419)
33680         Clarify the doc string of 'replace-regexp-in-string'
33681         * lisp/subr.el (replace-regexp-in-string): Doc fix.  (Bug#20395)
33683         Improve doc string of 'insert-buffer-substring'
33684         * src/editfns.c (Finsert_buffer_substring): Doc fix.  (Bug#20421)
33686         MS-Windows followup for the recent gnulib update
33687         * nt/gnulib.mk (libgnu_a_SOURCES): Replace file-has-acl.c with
33688         acl-internal.c.
33690 2015-04-24  Paul Eggert  <eggert@cs.ucla.edu>
33692         Spelling fixes
33694         Merge from gnulib
33695         This incorporates:
33696         2015-04-24 file-has-acl: new module, split from acl
33697         2015-04-24 manywarnings: add GCC 5.1 warnings
33698         2015-04-21 lstat: fix cross-compilation 'ln -s' problem
33699         2015-04-15 qacl: Simplify HP-UX acl_nontrivial check
33700         2015-04-15 acl: On Linux, check for acls without libacl
33701         2015-04-14 tempname: avoid unused parameter warnings (trivial)
33702         * lib/acl-internal.c: New file, from gnulib.
33703         * lib/file-has-acl.c: Remove; no longer imported from gnulib.
33704         * lib/acl-internal.h, lib/gnulib.mk, lib/qcopy-acl.c, lib/tempname.c:
33705         * m4/acl.m4, m4/gnulib-comp.m4, m4/lstat.m4, m4/manywarnings.m4:
33706         Update from gnulib.
33708         Port --enable-gcc-warnings to GCC 5.1 x86-64
33709         * lib-src/ebrowse.c (dump_sym):
33710         * lib-src/hexl.c (main):
33711         * src/ccl.c (ccl_driver):
33712         * src/character.c (string_escape_byte8):
33713         * src/dbusbind.c (xd_retrieve_arg, xd_add_watch):
33714         * src/gnutls.c (Fgnutls_boot):
33715         * src/gtkutil.c (xg_check_special_colors):
33716         * src/image.c (x_build_heuristic_mask):
33717         * src/print.c (safe_debug_print, print_object):
33718         * src/term.c (produce_glyphless_glyph):
33719         * src/xdisp.c (get_next_display_element)
33720         (produce_glyphless_glyph):
33721         * src/xterm.c (x_draw_glyphless_glyph_string_foreground):
33722         Don't use a signed format to print an unsigned integer, or vice
33723         versa.  GCC 5.1's new -Wformat-signedness option warns about this.
33724         * src/image.c (png_load_body, jpeg_load_body):
33725         Silence a bogus setjump diagnostic from GCC 5.1 (GCC bug 54561).
33727 2015-04-24  Tassilo Horn  <tsdh@gnu.org>
33729         Add new faces to tsdh-light-theme
33730         * etc/themes/tsdh-light-theme.el (tsdh-light): New face
33731         definitions for Info-quoted, ace-jump-face-foreground,
33732         hl-paren-face, show-paren-match, and show-paren-mismatch.
33734 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
33736         * lisp/emacs-lisp/seq.el (seq-doseq): Fix the macro.
33738 2015-04-24  Glenn Morris  <rgm@gnu.org>
33740         * build-aux/gitlog-to-emacslog:
33741         Use raw log format rather than wrapped one.
33743 2015-04-24  Stefan Monnier  <monnier@iro.umontreal.ca>
33745         * lisp/emacs-lisp/seq.el (seq-doseq): Tighten the code.
33746         (seq-doseq): Fix out-of-scope binding.
33747         Don't call `seq-length at every iteration.
33748         Reduce `if's from 3 to 2 per iteration.
33749         (emacs-lisp-mode-hook): Don't tweak in Emacs≥25.
33751 2015-04-24  Glenn Morris  <rgm@gnu.org>
33753         * lisp/textmodes/text-mode.el (text-mode-hook):
33754         Move text-mode-hook-identify to default.
33756         * lisp/mouse.el (minor-mode-menu-from-indicator):
33757         Handle non-function members of minor-mode-map-alist.  (Bug#20201)
33759         * lisp/help-fns.el (describe-function): More type checking.
33760         (describe-function-1): Handle changed symbol-function.  (Bug#20201)
33762         * build-aux/gitlog-to-emacslog: Convert "Fixes:" to "(Bug#)".
33763         (Bug#20325)
33765 2015-04-24  Andreas Schwab  <schwab@linux-m68k.org>
33767         shr: strip leading whitespace when expanding URLs
33768         * lisp/net/shr.el (shr-expand-url): Strip leading whitespace from URL.
33770 2015-04-24  Eli Zaretskii  <eliz@gnu.org>
33772         Clarify "co-authored" some more
33774         * CONTRIBUTE: Clarify "co-authored-by".  (Bug#20400)
33776         Clarify doc strings of functions that search for properties
33777         * src/textprop.c (Fnext_char_property_change)
33778         (Fprevious_char_property_change)
33779         (Fnext_single_char_property_change)
33780         (Fprevious_single_char_property_change, Fnext_property_change)
33781         (Fnext_single_property_change, Fprevious_property_change)
33782         (Fprevious_single_property_change): Clarify doc strings wrt return
33783         value and the optional LIMIT argument.  (Bug#20411)
33785 2015-04-24  Glenn Morris  <rgm@gnu.org>
33787         * test/automated/message-mode-tests.el (message-mode-propertize):
33788         Handle non-writable HOME; eg on hydra.nixos.org.
33790 2015-04-23  Eli Zaretskii  <eliz@gnu.org>
33792         Avoid starting threads by w32-shell-execute
33793         * src/w32fns.c (Fw32_shell_execute): Convert "file:///" URLs into
33794         local file names, before invoking ShellExecute.  (Bug#20220)
33796 2015-04-23  Martin Rudalics  <rudalics@gmx.at>
33798         Fix following doc-links in `widget-documentation-link-action'
33799         * lisp/wid-edit.el (widget-documentation-link-action): Make
33800         following doc-links less simplistic (Bug#20398).
33802 2015-04-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
33804         Improve EUDC manual
33805         * doc/misc/eudc.texi (Troubleshooting):
33806         New LDAP troubleshooting subsection.
33808 2015-04-22  Paul Eggert  <eggert@cs.ucla.edu>
33810         Omit needless "\ " after multibyte then newline
33811         * src/print.c: Include <c-ctype.h>, for c_isxdigit.
33812         (print_object): When print-escape-multibyte is non-nil and a
33813         multibyte character is followed by a newline or formfeed, followed
33814         by a hex digit, don't output a needless "\ " before the hex digit.
33815         * test/automated/print-tests.el (print-hex-backslash): New test.
33817 2015-04-22  Oleh Krehel  <ohwoeowho@gmail.com>
33819         Add a new `inhibit-message' variable
33820         * src/xdisp.c (syms_of_xdisp): Define a boolean `inhibit_message'.
33821         (message3): Don't call `message3_nolog' (i.e. use the Echo Area) when
33822         `inhibit_message' is non-zero.
33823         * etc/NEWS: Add an entry.
33824         * doc/lispref/display.texi: Add an entry for `inhibit-message',
33825         mention it in `message'.
33827 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
33829         Fix last fix in `display-buffer-record-window'.
33830         * lisp/window.el (display-buffer-record-window): Fix last fix.
33832 2015-04-22  Eli Zaretskii  <eliz@gnu.org>
33834         Minor edits in CONTRIBUTE
33835         * CONTRIBUTE: Rearrange instructions about log messages.
33836         Use "Git" capitalized all over.
33837         Use 2 spaces between sentences.
33839 2015-04-22  Artur Malabarba  <bruce.connor.am@gmail.com>
33841         * lisp/files.el (basic-save-buffer): Fix argument.
33843         * lisp/cus-edit.el (custom-file): Consider init-file-had-error.
33844         In case `(and (null custom-file) init-file-had-error)' do the same
33845         thing we'd do if `(null user-init-file)', which is to either error out
33846         or return nil.  This is in line with `custom-save-all' which would
33847         throw an error in that situation.  (Bug#20355)
33849         * lisp/emacs-lisp/package.el: Hide lower-priority packages in menu.
33850         (package-menu-hide-low-priority): New variable, see its doc.
33851         (package-archive-priorities): Update doc.
33852         (package-desc-priority): New function.
33853         (package-desc-priority-version): Use it.
33854         (package--remove-hidden): New function.
33855         (package-menu--refresh): Use it.
33857         * lisp/emacs-lisp/package.el: Implement displaying obsolete packages.
33858         (package-menu--hide-obsolete): New variable.
33859         (package--remove-hidden): Use it.
33860         (package-menu-hide-obsolete): New interactive function to toggle
33861         the variable.
33862         (package--quick-help-keys): Document it.
33863         (package-menu-async): Add :version tag.
33864         (package-menu-mode-map): Bind package-menu-hide-obsolete.
33865         (package-desc-status): Indicate non-installed obsolete packages as
33866         avail-obso.
33867         (package-menu-mark-install): Allow installation of avail-obso.
33868         (package-menu--status-predicate): Sort avail-obso with available.
33870 2015-04-22  Alan Mackenzie  <acm@muc.de>
33872         On C-y, stop some text property entries being written into buffer-undo-list
33873         * lisp/subr.el (remove-yank-excluded-properties): Enclose the code in
33874         `with-silent-modifications'.
33876 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
33878         In display-buffer-record-window record selected window if necessary
33879         * lisp/window.el (display-buffer-record-window): Store selected window
33880         if it differs from 3rd element of 'quit-restore' parameter (Bug#20353).
33882 2015-04-22  Tassilo Horn  <tsdh@gnu.org>
33884         Fix reftex-citation bug
33885         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
33886         Fix `wrong-type-argument stringp nil' error that occurs when AUCTeX
33887         integration is enabled and there are no citations in the document
33888         so far.
33890 2015-04-21  Dmitry Gutov  <dgutov@yandex.ru>
33892         Add or reset based on the presence of MERGE_HEAD
33893         * lisp/vc/vc-git.el (vc-git-find-file-hook): Add
33894         `vc-git-resolve-when-done' to `after-save-hook' in either case.
33895         (vc-git-conflicted-files): Add a TODO.
33896         (vc-git-resolve-when-done): Depending on the presence of
33897         MERGE_HEAD, either update the resolved file in the index, or
33898         remove it from there.  (Bug#20292)
33900 2015-04-21  Glenn Morris  <rgm@gnu.org>
33902         * lisp/custom.el (custom-declare-group): No need to purecopy
33903         custom-current-group-alist members following recent change to set
33904         it to nil before dumping.
33906         * build-aux/gitlog-to-emacslog: Get footer from ChangeLog.2.
33907         (Bug#20399)
33909 2015-04-21  Daniel Colascione  <dancol@dancol.org>
33911         Unbreak no-op buffer save message
33912         * lisp/files.el (basic-save-buffer): Accept called-interactively as
33913         an argument instead of directly invoking called-interactively-p,
33914         which will always yield nil in that context.
33916 2015-04-21  Alan Mackenzie  <acm@muc.de>
33918         CC Mode: Do nothing in before/after-change-functions for text
33919         property changes
33920         Fixes bug#20266.
33921         * lisp/progmodes/cc-mode.el (c-basic-common-init): Make
33922         yank-handled-properties buffer local, and remove 'category from it.
33923         (c-called-from-text-property-change-p): New function.
33924         (c-before-change): Don't do anything if a call of the new function
33925         returns non-nil.
33926         (c-after-change): Don't do much if a call of the new function returns
33927         non-nil.
33928         (c-extend-after-change-region): Put changes to text property 'fontified
33929         inside c-save-buffer-state.
33931 2015-04-20  Stefan Monnier  <monnier@iro.umontreal.ca>
33933         Fix byte-compiler warnings about looking-back
33934         * lisp/vc/log-view.el (log-view-end-of-defun-1):
33935         * lisp/textmodes/tex-mode.el (latex-forward-sexp-1):
33936         * lisp/textmodes/reftex-ref.el (reftex-goto-label):
33937         * lisp/textmodes/bibtex.el (bibtex-insert-kill):
33938         * lisp/progmodes/sh-script.el (sh--maybe-here-document):
33939         * lisp/progmodes/ruby-mode.el (ruby-end-of-defun):
33940         * lisp/progmodes/ada-mode.el (ada-in-numeric-literal-p):
33941         * lisp/org/org.el (org-insert-heading, org-sort-entries):
33942         * lisp/org/org-mouse.el (org-mouse-end-headline)
33943         (org-mouse-context-menu):
33944         * lisp/org/org-clock.el (org-clock-cancel):
33945         * lisp/man.el (Man-default-man-entry):
33946         * lisp/mail/rmail.el (rmail-get-new-mail, rmail-insert-inbox-text)
33947         (rmail-ensure-blank-line):
33948         * lisp/mail/footnote.el (Footnote-delete-footnote):
33949         * lisp/mail/emacsbug.el (report-emacs-bug):
33950         * lisp/info.el (Info-follow-reference, Info-fontify-node):
33951         * lisp/info-look.el (info-lookup-guess-custom-symbol):
33952         * lisp/help-fns.el (help-fns--key-bindings):
33953         * lisp/files.el (hack-local-variables):
33954         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-cmd-complete)
33955         (viper-get-ex-pat, ex-expand-filsyms, viper-get-ex-file)
33956         (viper-complete-filename-or-exit):
33957         * lisp/emulation/viper-cmd.el (viper-backward-indent):
33958         * lisp/emacs-lisp/lisp-mode.el (calculate-lisp-indent):
33959         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
33960         * lisp/cus-edit.el (custom-face-edit-value-create):
33961         * lisp/calendar/todo-mode.el (todo-set-item-priority)
33962         (todo-filter-items-1, todo-convert-legacy-files)
33963         (todo-prefix-overlays): Add explicit second arg to looking-back.
33965 2015-04-20  Glenn Morris  <rgm@gnu.org>
33967         Avoid non-nil current-load-list at startup
33968         * src/process.c (init_process_emacs): Move Fprovide statement...
33969         (syms_of_process): ... to here.
33971         * lisp/loadup.el (custom-current-group-alist): Reset before dumping.
33973         * lisp/startup.el (command-line) <site-run-file>: Avoid rogue value
33974         in emacs -Q.
33976 2015-04-20  Ludovic Courtès  <ludo@gnu.org>
33978         * lisp/loadup.el (exec-path): Avoid storing build-time PATH in binary.
33979         (Bug#20330)
33981 2015-04-20  Glenn Morris  <rgm@gnu.org>
33983         * lisp/cus-start.el (exec-path): Set standard value, to avoid rogue.
33985         Tweak exec-path in uninstalled case
33986         * src/callproc.c (init_callproc): If running uninstalled, do not
33987         include eventual installation libexec directory in exec-path.
33989 2015-04-20  Artur Malabarba  <bruce.connor.am@gmail.com>
33991         * lisp/emacs-lisp/package.el: Filter by multiple keywords and
33992         cache keywords.
33993         (package-menu-filter): Accept a list of keywords.
33994         (package--all-keywords): New variable to cache known keywords.
33995         (package-all-keywords): Populate it if necessary.
33996         (package-refresh-contents): Reset it.
33998         * lisp/emacs-lisp/package.el: Make archive and status pseudo-keywords
33999         (package--has-keyword-p): Understand "arc:xxxx" and "status:xxxx"
34000         as special keywords which match agains package archive and status
34001         respectively.
34002         * etc/NEWS: Document it.
34004 2015-04-20  Eli Zaretskii  <eliz@gnu.org>
34006         Describe and index "empty overlays".
34007         * doc/lispref/display.texi (Overlays): Improve indexing.
34008         (Managing Overlays): Describe "empty" overlays.
34009         (Overlay Properties, Finding Overlays): Add cross-reference to
34010         where empty overlays are described.
34012 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
34014         Spelling fixes
34016         Quote 'like this' in top-level files
34017         * CONTRIBUTE, INSTALL, Makefile.in, README, configure.ac, make-dist:
34018         Prefer to single-quote 'like this' (instead of the older style
34019         `like this').
34020         * configure.ac: Fix some space-before-tab problems that 'git commit'
34021         complained about.
34023         Use bool for boolean in textprop.c, undo.c
34024         * src/textprop.c (soft, hard): Now constants instead of macros.
34025         (validate_plist): Rewrite to avoid need for boolean local.
34026         (interval_has_all_properties, interval_has_some_properties)
34027         (interval_has_some_properties_list, add_properties)
34028         (remove_properties, get_char_property_and_overlay)
34029         (Fnext_single_char_property_change)
34030         (Fprevious_single_char_property_change, add_text_properties_1)
34031         (Fremove_text_properties, Fremove_list_of_text_properties)
34032         (copy_text_properties):
34033         * src/tparam.c (tparam1):
34034         * src/undo.c (record_change, record_property_change)
34035         (syms_of_undo):
34036         Use 'true' and 'false' for booleans.
34038 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
34040         * lisp/vc/vc-git.el (vc-git-find-file-hook):
34041         Call `smerge-start-session' even when dealing with a stash
34042         conflict (bug#20292).
34044 2015-04-19  Vibhav Pant  <vibhavp@gmail.com>
34046         Add option to eshell/clear to clear scrollback.
34047         * lisp/eshell/esh-mode.el (eshell/clear-scrollback): New function.
34048         (eshell/clear): Add an optional SCROLLBACK argument.  If non-nil,
34049         scrollback contents are cleared.
34050         * etc/NEWS: Describe change.
34051         * doc/misc/eshell.texi: Add entry for `clear'.
34053 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
34055         * src/widget.c (set_frame_size): Prefer 'int' to 'unsigned'
34056         where either will do.
34058 2015-04-19  Steve Purcell  <steve@sanityinc.com>
34060         Assume package archive-contents are UTF8-encoded
34061         * lisp/emacs-lisp/package.el (package--read-archive-file):
34062         Set `coding-system-for-read' explicitly to 'utf-8 when reading the
34063         downloaded and cached archive-contents files, so that non-ASCII
34064         characters in package descriptions are displayed correctly in the
34065         `list-packages' menu.  (Bug#20231)
34067 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
34069         Abort when looking at stashed changes
34070         * lisp/vc/vc-git.el (vc-git-find-file-hook): Abort when looking at
34071         stashed changes (bug#20292).
34073 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
34075         Refactor low-level printing for simplicity
34076         * src/print.c (PRINTDECLARE): Remove.  Move its contents into
34077         PRINTPREPARE; doable now that we assume C99.  All callers changed.
34078         (PRINTCHAR): Remove, as it adds more mystery than clarity.
34079         All callers changed.
34080         (strout): Assume that caller computes length.  All callers changed.
34081         (print_c_string): New function.
34082         (write_string, write_string_1): Compute length instead of asking
34083         the caller to compute it.  All callers changed.
34084         (write_string): Simplify by using write_string_1.
34085         (write_string_1): Simplify by using print_c_string.
34086         (Fterpri): Compute default val more clearly.
34087         (Fprin1_to_string, print_object):
34088         Assume C99 to avoid unnecessary nesting.
34089         (print_object): Prefer print_c_string to multiple printchar, or
34090         to calling strout with -1 length.  Coalesce into sprintf when
34091         this is easy.
34093 2015-04-18  Paul Eggert  <eggert@cs.ucla.edu>
34095         Prefer "Bug#1234" in commit messages (Bug#20325)
34096         * .dir-locals.el (log-edit-mode): Don't rewrite Bug#,
34097         as this isn't useful for Git.
34098         * CONTRIBUTE: Suggest "Bug#1234" instead of "Fixes: debbugs:1234".
34100 2015-04-18  Glenn Morris  <rgm@gnu.org>
34102         * lisp/files.el (auto-mode-alist): Use conf mode for gitconfig, hgrc.
34103         (Bug#19506)
34105 2015-04-18  Tom Willemse  <tom@ryuslash.org>  (tiny change)
34107         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
34108         Do not use `chomp' as a function.  (Bug#19505)
34110 2015-04-18  Glenn Morris  <rgm@gnu.org>
34112         * lisp/net/browse-url.el (browse-url, browse-url-at-point): Doc fixes.
34114         * doc/emacs/misc.texi (Sorting): Small edit.
34115         (Bug#19896)
34117         * admin/admin.el (make-manuals): Add emacs-xtra in pdf and ps.
34119 2015-04-18  Simen Heggestøyl  <simenheg@gmail.com>
34121         css-mode.el: Support multi-line comment filling
34122         (Bug#20256)
34123         * lisp/textmodes/css-mode.el (css-fill-paragraph): Support multi-line
34124         comment filling.
34125         (css-adaptive-fill): New function.
34126         (css-mode): Set `adaptive-fill-function'.
34127         (scss-mode): Set `comment-continue'.
34129 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
34131         * lisp/emacs-lisp/seq.el (seq-concatenate, seq-into):
34132         Better error messages.
34134 2015-04-18  Ivan Radanov Ivanov  <ivanradanov@yahoo.co.uk>  (tiny change)
34136         Minor improvements in Bulgarian input methods
34137         * lisp/leim/quail/cyrillic.el (bulgarian-phonetic, bulgarian-bds):
34138         Replace U+042C with U+045D, as the former character is not used in
34139         the modern Bulgarian language.
34140         (Bug#20350)
34142 2015-04-17  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
34144         Improve EUDC manual
34145         * doc/misc/eudc.texi (LDAP Configuration): Mention simple and SASL
34146         authentication schemes.  Add index items.  Shorten example server
34147         name.
34149 2015-04-17  Dmitry Gutov  <dgutov@yandex.ru>
34151         Don't show both feature and function with the same name
34152         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
34153         Don't show both feature and function with the same name.
34155         (elisp--xref-identifier-location): Skip variable, if it's also
34156         a function
34157         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
34158         Avoid returning both the variable and the function for the same
34159         minor mode.
34161 2015-04-17  Wolfgang Jenkner  <wjenkner@inode.at>
34163         Fix fontification of keywords clobbered by the prompt
34164         * lisp/comint.el (comint-output-filter): Remove the uses of
34165         with-silent-modifications I introduced as part of the last change.
34166         This fixes, e.g., erratically missing highlighting when running
34167         ./configure --help; ./configure in a shell-mode buffer with
34168         compilation-shell-minor-mode turned on.
34170 2015-04-17  Glenn Morris  <rgm@gnu.org>
34172         * admin/authors.el (authors-valid-file-names)
34173         (authors-renamed-files-alist): Additions.
34175 2015-04-17  Stefan Monnier  <monnier@iro.umontreal.ca>
34177         * lisp/indent.el (indent-region): Don't deactivate the mark.
34178         (Bug#20357)
34180 2015-04-17  Sam Steingold  <sds@gnu.org>
34182         * lisp/net/rcirc.el (defun-rcirc-command): Mark `target' as ignorable.
34184 2015-04-16  Leo Liu  <sdl.web@gmail.com>
34186         * lisp/progmodes/xref.el (xref-push-marker-stack): Add optional arg.
34188 2015-04-16  Stefan Monnier  <monnier@iro.umontreal.ca>
34190         * lisp/erc/erc-pcomplete.el (erc-pcomplete):
34191         Don't use `pcomplete' any more.
34193 2015-04-16  Glenn Morris  <rgm@gnu.org>
34195         * admin/authors.el (authors-lax-changelogs): Update for erc changes.
34197 2015-04-16  Eli Zaretskii  <eliz@gnu.org>
34199         Don't link with -ljpeg on MS-Windows, to avoid dependency on DLL
34200         * configure.ac (LIBJPEG): Leave it empty for MinGW.
34202 2015-04-16  Glenn Morris  <rgm@gnu.org>
34204         * lisp/replace.el (query-replace-from-to-separator):
34205         Delay initialization to avoid rogue setting after startup.
34207 2015-04-16  Paul Eggert  <eggert@cs.ucla.edu>
34209         Pre-4.6 GCC succeeds with unknown option
34210         * configure.ac (emacs_cv_prog_cc_nopie): Port to pre-4.6 GCC.
34211         (Bug#20338)
34213 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
34215         '[:graph:]' now excludes whitespace, not just ' '
34216         * doc/lispref/searching.texi (Char Classes):
34217         * lisp/emacs-lisp/rx.el (rx): Document [:graph:] to be [:print:]
34218         sans whitespace (not sans space).
34219         * src/character.c (graphicp): Exclude all Unicode whitespace chars,
34220         not just space.
34221         * src/regex.c (ISGRAPH): Exclude U+00A0 (NO-BREAK SPACE).
34223 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
34225         * lisp/subr.el (substitute-key-definition-key, special-form-p)
34226         (macrop): Drop deprecated second arg to indirect-function.
34227         (looking-back): Make the second arg non-optional.
34229         * lisp/org/org-clock.el (org-x11idle-exists-p): Be honest about which
34230         command is actually sent to the shell.
34232 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
34234         Port jpeg configuration to Solaris 10 with Sun C
34235         * configure.ac: Check for jpeglib 6b by trying to link it, instead
34236         of relying on cpp magic that has problems in practice.  Check for
34237         both jpeglib.h and jerror.h features.  Remove special case for
34238         mingw32, which should no longer be needed (and if it were needed,
34239         should now be addressable by hotwiring emacs_cv_jpeglib).
34240         (Bug#20332)
34242 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
34244         Move some Elisp-specific code from lisp-mode.el to elisp-mode.el
34245         * lisp/emacs-lisp/lisp-mode.el (lisp--el-font-lock-flush-elisp-buffers):
34246         Move to elisp-mode.el.
34247         (lisp-mode-variables): (Re)move elisp-specific settings.
34248         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode): Add settings removed
34249         from lisp-mode-variables.
34250         (elisp--font-lock-flush-elisp-buffers): New function, moved from
34251         lisp-mode.el.
34253         * lisp/emacs-lisp/lisp-mode.el (lisp--el-non-funcall-position-p):
34254         Avoid pathological slowdown at top-level in large file.
34256 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
34258         Standardize names of ChangeLog history files
34259         Suggested by Glenn Morris in:
34260         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
34261         * Makefile.in (install-man): Don't treat ChangeLog.1 as a man page.
34262         * doc/man/ChangeLog.1: Rename back from doc/man/ChangeLog.01.
34263         * lisp/erc/ChangeLog.1: New file, containing the old contents of ...
34264         * lisp/erc/ChangeLog.01, lisp/erc/ChangeLog.02, lisp/erc/ChangeLog.03:
34265         * lisp/erc/ChangeLog.04, lisp/erc/ChangeLog.05, lisp/erc/ChangeLog.06:
34266         * lisp/erc/ChangeLog.07, lisp/erc/ChangeLog.08, lisp/erc/ChangeLog.09:
34267         Remove.
34269         Split top-level entries into pre- and post-April 7
34270         This more clearly distingiushes pre-April-7 ChangeLog entries (which
34271         are for top-level files only) from post-April-7 entries (which are
34272         about files at all levels.  Problem reported by Glenn Morris in:
34273         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
34274         * ChangeLog.1: Move post-April-7 entries from here ...
34275         * ChangeLog.2: ... to this new file.
34276         * Makefile.in (CHANGELOG_HISTORY_INDEX_MAX): Bump to 2.
34278 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
34280         Fix recent cus-start changes that added customize-rogues
34281         * lisp/cus-start.el (custom-delayed-init-variables): Initialize the
34282         vars early.
34283         * lisp/loadup.el ("cus-start"): Move to the end to reduce
34284         customize-rogue.
34286 2015-04-15  Nicolas Petton  <nicolas@petton.fr>
34288         Define cl-concatenate as an alias to seq-concatenate
34289         * lisp/emacs-lisp/cl-extra.el (cl-concatenate): Removes duplicated
34290           code by making cl-concatenate an alias to seq-concatenate.
34292 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
34294         * src/lread.c (intern_1): Make sure we'd find the symbol we add
34295         (Bug#20334)
34296         * src/xfaces.c (resolve_face_name): Don't use `intern' with
34297         Lisp_Strings.
34299 2015-04-15  Glenn Morris  <rgm@gnu.org>
34301         * doc/lispref/sequences.texi (Sequence Functions): Fix typo in previous.
34303 2015-04-15  Lars Magne Ingebrigtsen  <larsi@gnus.org>
34305         Clean up gnus-uu saving code slightly
34306         * lisp/gnus/gnus-uu.el (gnus-uu-save-article): Make the
34307         save-restriction/widen calls make more sense.
34309 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
34311         Make [:graph:] act like [:print:] sans space
34312         In POSIX [[:print:]] is equivalent to [ [:graph:]], so change
34313         [:graph:] so that it matches everything that [:print:] does,
34314         except for space.
34315         * doc/lispref/searching.texi (Char Classes):
34316         * etc/NEWS:
34317         * lisp/emacs-lisp/rx.el (rx):
34318         Document [:graph:] to be [:print:] sans ' '.
34319         * src/character.c, src/character.h (graphicp): New function.
34320         * src/regex.c (ISGRAPH) [emacs]: Use it.
34321         (BIT_GRAPH): New macro.
34322         (BIT_PRINT): Increase to 0x200, to make room for BIT_GRAPH.
34323         (re_wctype_to_bit) [! WIDE_CHAR_SUPPORT]:
34324         Return BIT_GRAPH for RECC_GRAPH.
34325         (re_match_2_internal) [emacs]: Use ISGRAPH if BIT_GRAPH,
34326         and ISPRINT if BIT_PRINT.
34328 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
34330         automated/eieio-test-methodinvoke.el (make-instance) <(subclass C)>:
34331         Don't use call-next-method in a cl-defmethod.
34333         * lisp/emacs-lisp/eieio-core.el (eieio--class): Derive from cl--class
34334         (eieio--class-p): Remove, provided by cl-defstruct.
34336 2015-04-14  Nicolas Petton  <nicolas@petton.fr>
34338         Add seq-intersection and seq-difference to the seq library
34339         * lisp/emacs-lisp/seq.el (seq-intersection, seq-difference):
34340         New functions.
34341         * test/automated/seq-tests.el: Add tests for seq-intersection and
34342         seq-difference.
34343         * doc/lispref/sequences.texi: Add documentation for seq-intersection
34344         and seq-difference.
34346 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
34348         * lisp/emacs-lisp/eieio-core.el (class-abstract-p): Don't inline,
34349         to avoid leaking internals.
34351 2015-04-14  Sam Steingold  <sds@gnu.org>
34353         package--ensure-init-file: widen requires save-restriction
34355 2015-04-14  Eli Zaretskii  <eliz@gnu.org>
34357         Improve the commit-msg Git hook for unibyte environments
34358         * build-aux/git-hooks/commit-msg: Set LC_ALL=C, before running Awk
34359         in unibyte environments.  (Suggested by Paul Eggert
34360         <eggert@cs.ucla.edu>.)  Use a more accurate approximation to
34361         [:print:], based on UTF-8 sequences of the unprintable characters.
34363         Describe problems with cursor caused by Windows Magnifier
34364         * etc/PROBLEMS: Describe the problem with cursor shape on
34365         MS-Windows due to Windows Magnifier.
34366         (Bug#20271)
34368         Make [:print:] support non-ASCII characters correctly
34369         * src/regex.c (ISPRINT): Call 'printablep' for multibyte characters.
34370         (BIT_PRINT): New bit mask.
34371         (re_wctype_to_bit): Return BIT_PRINT for RECC_PRINT.
34372         * src/character.c (printablep): New function.
34373         * src/character.h (printablep): Add prototype.
34374         * lisp/emacs-lisp/rx.el (rx): Doc fix: document the new behavior
34375         of 'print', 'alnum', and 'alphabetic'.
34376         * doc/lispref/searching.texi (Char Classes): Document the new
34377         behavior of [:print:].
34378         * etc/NEWS: Mention the new behavior of [:print:].
34380         Assign correct general-category and names to surrogates
34381         * admin/unidata/unidata-gen.el (unidata-setup-list): Don't ignore
34382         surrogates.  This avoids assigning them the default
34383         general-category of 'Cn', i.e. unassigned codepoints.
34384         (unidata-get-name): Give surrogates synthetic names.
34386 2015-04-14  Paul Eggert  <eggert@cs.ucla.edu>
34388         Assume C89 offsetof in xterm.c, xlwmenu.c
34389         * lwlib/xlwmenu.c (offset):
34390         * src/xterm.c (cvt_string_to_pixel_args):
34391         Use offsetof, not XtOffset.
34393 2015-04-14  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
34395         Assume C89 offsetof in widget.c
34396         * src/widget.c (XtOffset): Remove; no longer needed.
34397         (offset): Implement via offsetof instead of via pre-C89 XtOffset hack.
34399         Fix think-o in previous patch
34400         * src/window.c (count_windows, get_leaf_windows):
34401         Don't optimize count_windows incorrectly.
34403 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
34405         Avoid some int overflows in window.c
34406         * src/print.c (print_object):
34407         * src/window.c (sequence_number):
34408         * src/window.h (struct window.sequence_number):
34409         Don't assume window sequence number fits in int.
34410         * src/window.c (window_select_count):
34411         * src/window.h (struct window.use_time, window_select_count):
34412         Don't assume window use time fits in int.
34413         * src/window.c (Fsplit_window_internal):
34414         Don't assume user-supplied integer, or sum, fits in int.
34415         (Fset_window_configuration, count_windows, get_leaf_windows)
34416         (save_window_save, Fcurrent_window_configuration):
34417         Use ptrdiff_t for object counts.
34418         (Fset_window_configuration): Omit unused local 'n'.
34419         (count_windows): Simplify by writing in terms of get_leaf_windows.
34420         (get_leaf_windows): Don't store through FLAT if it's null.
34421         (extract_dimension): New static function.
34422         (set_window_margins, set_window_fringes, set_window_scroll_bars):
34423         Use it to avoid undefined behavior when converting user-supplied
34424         integer to 'int'.
34426 2015-04-13  Glenn Morris  <rgm@gnu.org>
34428         Minor doc copyedits
34429         * doc/emacs/custom.texi (Init Examples): Tweak example, replace typo.
34430         * doc/lispintro/emacs-lisp-intro.texi (condition-case): Typo fix.
34432 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
34434         [Gnus] Catch the invalid-operation that idna.el will issue
34435         * lisp/gnus/gnus-art.el (gnus-use-idna):
34436         * lisp/gnus/gnus-sum.el (gnus-summary-idna-message):
34437         * lisp/gnus/message.el (message-use-idna):
34438         Catch the invalid-operation that idna.el will issue.
34440 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
34442         * doc/lispref/processes.texi (Shell Arguments): Prefer diff -u.
34444 2015-04-13  Sam Steingold  <sds@gnu.org>
34446         package--ensure-init-file: widen before looking for
34447         "(package-initialize)"
34449 2015-04-13  Dmitry Gutov  <dgutov@yandex.ru>
34451         Change diff-switches default to `-u' (Bug#20290)
34452         * doc/emacs/files.texi (Comparing Files): Document the new default
34453         value of `diff-switches'.
34454         * doc/emacs/trouble.texi (Sending Patches): Document the preference
34455         for unified diff format.  Escape the plus in the suggested `-F' regexp
34456         value.
34457         * lisp/vc/diff.el (diff-switches): Change the default to `-u'.
34459 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
34461         (gnus-group--setup-tool-bar-update): Fix last change
34462         * lisp/gnus/gnus-group.el (gnus-group--setup-tool-bar-update):
34463         cursor-sensor-functions should be a list of functions.
34465 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
34467         * lisp/gnus/gnus-topic.el (gnus-topic-mode):
34468         Use gmm-called-interactively-p.
34470 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
34472         * lisp/loadup.el ("cus-start"): Load it after loaddefs.el
34473         (Bug#20321)
34474         * lisp/cus-start.el (read-buffer-function): Don't advertise
34475         iswitchb-read-buffer any more.
34476         (iswitchb): Don't tweak this obsolete group any more.
34478 2015-04-13  Artur Malabarba  <bruce.connor.am@gmail.com>
34480         * lisp/emacs-lisp/package.el: Fix package--ensure-init-file.
34482         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Implement docstrings.
34483         Adding a string after a constructor's argument list will use
34484         that string as the constructor function docstring.  If this string
34485         is absent but the struct itself was given a docstring, use that as
34486         the constructor's docstring.
34487         Fixes bug#17284.
34489 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
34491         Deprecate `intangible' and `point-entered' properties
34492         * lisp/emacs-lisp/cursor-sensor.el: New file.
34493         * lisp/simple.el (pre-redisplay-functions): New hook.
34494         (redisplay--pre-redisplay-functions): New function.
34495         (pre-redisplay-function): Use it.
34496         (minibuffer-avoid-prompt): Mark obsolete.
34497         (redisplay--update-region-highlight): Adapt it to work as a function on
34498         pre-redisplay-functions.
34499         * lisp/cus-start.el (minibuffer-prompt-properties--setter): New fun.
34500         (minibuffer-prompt-properties): Use it.  Use cursor-intangible rather
34501         than point-entered to make the prompt intangible.
34502         * lisp/forms.el: Move `provide' calls to the end.
34503         (forms-mode): Don't use `run-hooks' on a local var.
34504         (forms--make-format, forms--make-format-elt-using-text-properties):
34505         Use cursor-intangible rather than `intangible'.
34506         (forms-mode): Enable cursor-intangible-mode.
34507         * lisp/isearch.el (isearch-mode): Use defvar-local.
34508         (cursor-sensor-inhibit): Declare.
34509         (isearch-mode): Set cursor-sensor-inhibit.
34510         (isearch-done): Set it back.
34511         (isearch-open-overlay-temporary, isearch-open-necessary-overlays)
34512         (isearch-close-unnecessary-overlays): Don't bother with `intangible'
34513         any more.
34514         * lisp/ses.el (ses-localvars): Remove `mode-line-process'.
34515         (ses-sym-rowcol, ses-cell-value, ses-col-width, ses-col-printer):
34516         Add Edebug spec.
34517         (ses-goto-print, ses-print-cell, ses-adjust-print-width)
34518         (ses-goto-data, ses-setup, ses-copy-region): Don't let-bind
34519         inhibit-point-motion-hooks any more.
34520         (ses--cell-at-pos, ses--curcell): New functions, extracted from
34521         ses-set-curcell.
34522         (ses-set-curcell): Use them.
34523         (ses-print-cell, ses-setup): Use cursor-intangible instead of
34524         `intangible'.  Make sure cursor-intangible isn't sticky at BOB.
34525         (ses-print-cell-new-width, ses-reprint-all, ses-recalculate-all):
34526         Use ses--cell-at-pos.
34527         (ses--mode-line-process, ses--cursor-sensor-highlight): New functions,
34528         extracted from ses-command-hook.  Make them work with multiple windows
34529         displaying the same buffer.
34530         (ses-mode): Use them via mode-line-process and pre-redisplay-functions.
34531         Enable cursor-intangible-mode.
34532         (ses-command-hook): Remove cell highlight and mode-line update code.
34533         (ses-forward-or-insert, ses-copy-region-helper, ses-sort-column):
34534         Update for new name of text-property holding the cell name.
34535         (ses-rename-cell): Don't mess with mode-line-process.
34536         * lisp/erc/erc-stamp.el (erc-add-timestamp): Use the new
34537         cursor-sensor-functions property instead of point-entered.
34538         (erc-insert-timestamp-right, erc-format-timestamp):
34539         Use cursor-intangible rather than `intangible'.
34540         (erc-munge-invisibility-spec): Use add-to-invisibility-spec and
34541         remove-from-invisibility-spec.  Enable cursor-intangible-mode and
34542         cursor-sensor-mode if needed.
34543         (erc-echo-timestamp): Adapt to calling convention of
34544         cursor-sensor-functions.
34545         (erc-insert-timestamp-right): Remove unused vars `current-window' and
34546         `indent'.
34547         * lisp/gnus/gnus-group.el (gnus-tmp-*): Declare.
34548         (gnus-update-group-mark-positions): Remove unused `topic' var.
34549         (gnus-group-insert-group-line): Remove unused var `header'.
34550         (gnus-group--setup-tool-bar-update): New function.
34551         (gnus-group-insert-group-line): Use it.
34552         (gnus-group-update-eval-form): Declare local
34553         dynamically-bound variables.
34554         (gnus-group-unsubscribe-group): Use \` and \' to match string bounds.
34555         * lisp/gnus/gnus-topic.el (gnus-topic-jump-to-topic)
34556         (gnus-group-prepare-topics, gnus-topic-update-topic)
34557         (gnus-topic-change-level, gnus-topic-catchup-articles)
34558         (gnus-topic-remove-group, gnus-topic-delete, gnus-topic-indent):
34559         Use inhibit-read-only.
34560         (gnus-topic-prepare-topic): Use gnus-group--setup-tool-bar-update.
34561         (gnus-topic-mode): Use define-minor-mode and derived-mode-p.
34562         * lisp/textmodes/reftex-index.el (reftex-display-index):
34563         Use cursor-intangible-mode if available.
34564         (reftex-index-post-command-hook): Check cursor-intangible.
34565         * lisp/textmodes/reftex-toc.el (reftex-toc):
34566         Use cursor-intangible-mode if available.
34567         (reftex-toc-recenter, reftex-toc-post-command-hook):
34568         Check cursor-intangible.
34569         * lisp/textmodes/sgml-mode.el: Use lexical-binding.
34570         (sgml-tag): Use cursor-sensor-functions instead of point-entered.
34571         (sgml-tags-invisible): Use with-silent-modifications and
34572         inhibit-read-only.  Enable cursor-sensor-mode.
34573         (sgml-cursor-sensor): Rename from sgml-point-entered and adjust to
34574         calling convention of cursor-sensor-functions.
34575         * lisp/textmodes/table.el (table-cell-map-hook, table-load-hook)
34576         (table-point-entered-cell-hook, table-point-left-cell-hook):
34577         Don't autoload.
34578         (table-cell-entered-state): Remove var.
34579         (table--put-cell-point-entered/left-property)
34580         (table--remove-cell-properties):
34581         Use cursor-sensor-functions rather than point-entered/left.
34582         (table--point-entered/left-cell-function): Merge
34583         table--point-entered-cell-function and table--point-left-cell-function
34584         and adjust to calling convention of cursor-sensor-functions.
34586         Update ldef-boots.el
34588         * lisp/emacs-lisp/pcase.el (pcase-dolist): Autoload as well.
34590         * doc/misc/eieio.texi: Don't advertise now obsolete constructs
34592         Collapse successive char deletions in the undo log
34593         * src/cmds.c (remove_excessive_undo_boundaries): New function,
34594         extracted from Fself_insert_command.
34595         (Fdelete_char, Fself_insert_command): Use it.
34596         * src/fileio.c (Fmake_symbolic_link): Rename arg to `target'.
34597         * src/keyboard.c (syms_of_keyboard): `top-level' shouldn't be special.
34599         xterm and OSC 52: Add NEWS entry, and tweak the code
34600         * lisp/term/xterm.el (gui-set-selection) <nil>: Move method definition
34601         to top-level.
34602         (terminal-init-xterm-activate-set-selection): Set a terminal property.
34603         (xterm--set-selection): Use it instead of checking the value of
34604         `terminal-initted'.  Don't use string-bytes.
34606 2015-04-13  Philipp Stephani  <p.stephani2@gmail.com>
34608         xterm.el: Implement OSC-52 functionality for setting the X selection
34609         * lisp/term/xterm.el (xterm-max-cut-length): New var.
34610         (xterm--set-selection, terminal-init-xterm-activate-set-selection):
34611         New funs.
34612         (terminal-init-xterm, xterm--version-handler): Use them.
34614 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
34616         Remove left over code from when we used an obsolete/loaddefs.el file
34617         * lisp/subr.el (do-after-load-evaluation): Remove left over code from
34618         when we used an obsolete/loaddefs.el file.
34620         * lisp/cedet/semantic/fw.el (semantic-exit-on-input)
34621         (semanticdb-without-unloaded-file-searches): Use declare.
34622         (semantic-fw-add-edebug-spec): Remove.
34624         * lisp/completion.el (completion-lisp-mode-hook):
34625         Use completion-separator-chars rather than local key binding.
34627         * src/*.c: Set deactivate_mark buffer-locally
34628         (Bug#20260)
34629         * src/insdel.c (prepare_to_modify_buffer_1):
34630         * src/fileio.c (Finsert_file_contents): Set deactivate_mark
34631         buffer-locally.
34633 2015-04-12  Fabián Ezequiel Gallina  <fgallina@gnu.org>
34635         python.el: Keep symmetry on sexp navigation with parens
34636         (Bug#19954)
34637         * lisp/progmodes/python.el
34638         (python-nav--forward-sexp): Add argument skip-parens-p.
34639         (python-nav-forward-sexp, python-nav-backward-sexp)
34640         (python-nav-forward-sexp-safe)
34641         (python-nav-backward-sexp-safe): Use it.
34642         * test/automated/python-tests.el
34643         (python-nav-forward-sexp-1): Fix test.
34645 2015-04-12  João Távora  <joaotavora@gmail.com>
34647         Don't use `setq-local' in Gnus code
34648         This might break upstream builds with older Emacsen
34649         * lisp/gnus/message.el (message-mode): Use `set' and
34650         `make-local-variable' instead of `setq-local'.
34652 2015-04-12  Paul Eggert  <eggert@cs.ucla.edu>
34654         Update Makefile.in's .PHONY dependencies
34655         * Makefile.in (change-history-commit, master-branch-is-current)
34656         (no-ChangeLog): Now phony.
34658         Remove configure's --with-mmdf option
34659         * configure.ac (MAIL_USE_MMDF): Remove.
34660         * etc/NEWS: Document this.
34661         * lib-src/movemail.c: Assume MAIL_USE_MMDF is not defined.
34662         (Bug#20308)
34664         * doc/man/ChangeLog.01: Rename from doc/man/ChangeLog.1.
34665         That way, 'make install' won't think it's a man page.
34666         Reported by Ashish SHUKLA in:
34667         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00656.html
34669         Improve 'make change-history' prereq tests
34670         * Makefile.in (gen_origin): Fix to match what's in the master branch.
34671         (no-ChangeLog, master-branch-is-current): New rules.
34672         (change-history): Depend on them, to avoid similar future problems.
34673         Escape the local-variables string to pacify Emacs when editing
34674         Makefile.in.
34676 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
34678         * test/automated/package-test.el (with-package-test):
34679         Kill Packages buffer.
34681         * lisp/emacs-lisp/package.el: Improve transaction y-or-n prompt.
34682         (package-menu--prompt-transaction-p): Prompt for "Delete" first,
34683         "Upgrade" last, and use capitalized instead of all-caps.
34685         * lisp/emacs-lisp/package.el: Completely silence async operations.
34686         (package--make-autoloads-and-stuff): Silence autoloads.
34687         (package--save-selected-packages): New function, silences
34688         `customize-save-variable'.
34689         (package--user-selected-p, package-install-from-buffer)
34690         (package-delete, package-install): Use it.
34691         (package-install-from-archive)
34692         (package-menu--perform-transaction): Silence.
34693         (package-menu-execute): Feedback when operation starts.
34695         Use delay-mode-hooks when visiting the init-file
34696         * lisp/emacs-lisp/package.el (package--ensure-init-file):
34697         delay-mode-hooks.
34698         * lisp/cus-edit.el (custom-save-all): delay-mode-hooks.
34700         * lisp/files.el: Only message when saving if save-silently is nil.
34701         (save-silently): New variable.
34702         (files--message): New function.
34703         (find-file-noselect, save-buffer, basic-save-buffer)
34704         (basic-save-buffer-2, save-some-buffers, not-modified)
34705         (append-to-file): Use them.
34707 2015-04-12  Johan Bockgård  <bojohan@gnu.org>
34709         Support debug declarations in pcase macros
34710         * lisp/emacs-lisp/pcase.el (pcase-MACRO): New edebug spec.
34711         (pcase-UPAT): Use it.  Remove "`".
34712         (pcase--edebug-match-macro): New function.
34713         (pcase-defmacro): Support debug declarations.
34714         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
34715         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>:
34716         * lisp/emacs-lisp/pcase.el (\`): <pcase-defmacro>:
34717         Add debug declaration.
34719         pcase.el: Edebug support for `app' and vector patterns
34720         * lisp/emacs-lisp/pcase.el (pcase-FUN): New edebug spec.
34721         (pcase-UPAT): Use it.  Support `app' patterns.
34722         (pcase-QPAT): Support vector patterns.
34724         edebug.el: Disambiguate vector specifications
34725         * lisp/emacs-lisp/edebug.el (edebug-match-list): Always treat
34726         `(vector ...)' as a vector specification, not as a sublist.
34728         (gnus-summary-refer-thread): Don't clobber unread articles
34729         This fixes a bug where `A T' causes "random" articles to become marked
34730         as read.
34731         * lisp/gnus/gnus-sum.el (gnus-summary-refer-thread): Make sure
34732         gnus-newsgroup-unreads remains sorted.
34734         mouse-sel.el: Fix mouse-sel-get-selection-function
34735         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
34736         Use gui--last-selected-text-primary instead of no longer existing
34737         gui-last-selected-text.
34739         * lisp/rect.el (delete-whitespace-rectangle-line): Don't cross EOL.
34741         * lisp/net/nsm.el (nsm-query-user): Use cursor-in-echo-area.
34743 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
34745         * lisp/emacs-lisp/package.el (list-packages): Avoid redundant generate.
34747         * lisp/emacs-lisp/package.el (list-packages): Call refresh in
34748         right buffer.
34750         * lisp/emacs-lisp/bytecomp.el: Silence noninteractive compilations.
34751         (byte-compile--interactive): New var.
34752         (byte-compile--message): New function.
34753         (byte-compile-log-1, byte-force-recompile)
34754         (byte-recompile-directory, byte-recompile-file)
34755         (byte-compile-file, compile-defun)
34756         (byte-compile-file-form-defmumble, byte-compile)
34757         (byte-compile-file-form-defalias, display-call-tree): Use it.
34759         * lisp/files.el: Don't message when nothing happened.
34760         (save-some-buffers, basic-save-buffer): Before messaging to say
34761         "nothing was saved" check if (called-interactively-p 'any).
34763 2015-04-12  João Távora  <joaotavora@gmail.com>
34765         Summary: Improve sexp-based movement in message-mode
34766         Works by giving citations and smileys a different syntax.  This helps
34767         modes like `show-paren-mode', `electric-pair-mode', and C-M-*
34768         sexp-based movement.
34769         * lisp/gnus/message.el (message--syntax-propertize): New function.
34770         (message-mode): Set syntax-related vars.
34771         (message-smileys): New variable.
34772         * test/automated/message-mode-tests.el: New file
34774 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
34776         Use bool for boolean in window.c
34777         * src/window.c: Omit unnecessary static function decls.
34778         (adjust_window_count, select_window, Fselect_window)
34779         (window_body_width, Fwindow_body_height, Fwindow_body_width)
34780         (set_window_hscroll, check_window_containing, Fwindow_at)
34781         (Fwindow_end, Fset_window_start, Fpos_visible_in_window_p)
34782         (unshow_buffer, replace_window, recombine_windows)
34783         (add_window_to_list, candidate_window_p, next_window)
34784         (Fnext_window, Fprevious_window, window_loop, check_all_windows)
34785         (Fget_buffer_window, Fdelete_other_windows_internal)
34786         (replace_buffer_in_windows_safely, set_window_buffer)
34787         (Fset_window_buffer, Fforce_window_update)
34788         (temp_output_buffer_show, make_parent_window)
34789         (window_resize_check, window_resize_apply, Fwindow_resize_apply)
34790         (resize_frame_windows, Fsplit_window_internal)
34791         (Fdelete_window_internal, grow_mini_window, shrink_mini_window)
34792         (Fresize_mini_window_internal, mark_window_cursors_off)
34793         (window_scroll, window_scroll_pixel_based)
34794         (window_scroll_line_based, scroll_command, Fscroll_other_window)
34795         (Fscroll_left, Fscroll_right, displayed_window_lines, Frecenter)
34796         (Fmove_to_window_line, Fset_window_configuration)
34797         (delete_all_child_windows, apply_window_adjustment)
34798         (set_window_fringes, set_window_scroll_bars)
34799         (Fset_window_vscroll, foreach_window, foreach_window_1)
34800         (compare_window_configurations, Fcompare_window_configurations):
34801         Prefer 'bool', 'true', and 'false' for booleans.
34802         * src/window.h (WINDOW_MODE_LINE_LINES)
34803         (WINDOW_HEADER_LINE_LINES): Omit unnecessary "!!" on bool value.
34805 2015-04-11  Artur Malabarba  <bruce.connor.am@gmail.com>
34807         Speed up byte-compilation and autoload generation by avoiding mode-hooks
34808         This prevents emacs-lisp-mode-hook from being run everytime an
34809         autoload file is generated, which can account for a fraction of
34810         package installation time depending on the hooks the user has
34811         configured.
34812         * lisp/emacs-lisp/bytecomp.el (byte-compile-file): Use delay-mode-hooks.
34813         * lisp/emacs-lisp/autoload.el (autoload-find-file)
34814         (autoload-find-generated-file): Use delay-mode-hooks.
34816         * lisp/emacs-lisp/package.el: Improve `package-menu-refresh'.
34817         (package-menu-refresh): Respect async and do new package checking.
34818         (list-packages): Use `package-menu-refresh' instead of repeating code.
34820         * lisp/emacs-lisp/package.el: Improve package-menu-quick-help.
34821         (package--quick-help-keys): New variable.
34822         (package--prettify-quick-help-key): New function.
34823         (package-menu-quick-help): Use it.
34825         * lisp/emacs-lisp/package.el: Fix initially wrong compat table.
34826         (package--build-compatibility-table): Require finder.
34828         * test/automated/package-test.el: Fix new test.
34830         * lisp/emacs-lisp/package.el: Silence async operations.
34831         (package--silence): New variable.
34832         (package--message): New function.
34833         (package-import-keyring, package-refresh-contents)
34834         (package-compute-transaction, package-install, package-delete)
34835         (package-menu--perform-transaction, package-menu-execute): Use it.
34837         * test/automated/package-test.el: Test async functionality.
34838         (package-test-update-archives-async): New test.
34840 2015-04-11  Daiki Ueno  <ueno@gnu.org>
34842         Utilize `make-process' in epg.el
34843         * lisp/epg.el (epg-error-output): Abolish.
34844         (epg-context): New slot `error-buffer'.
34845         (epg--start): Use `make-process' and `make-pipe-process'.
34846         (epg--process-filter): Remove code separating stderr from stdout.
34847         (epg-wait-for-completion): Simplify `error-output' handling.
34848         (epg-reset): Dispose error buffer.
34850 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
34852         * .gitignore: Ignore doc temps and outputs.
34854         Port commit-msg to MSYS Bash+Gawk
34855         See Eli Zaretskii in:
34856         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00610.html
34857         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format)
34858         (cent_sign, print_at_sign, at_sign): Revert previous change.
34859         (print_at_sign): Prepend "BEGIN".
34860         (at_sign): Redirect from /dev/null to be safer with pre-POSIX awk.
34862         Port commit-msg to broken MS-Windows shell
34863         * build-aux/git-hooks/commit-msg (cent_sign):
34864         Just use UTF-8 here rather than ASCII + printf, as the latter fails
34865         on a broken MS-Windows shell.  Reported by Eli Zaretskii in:
34866         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00592.html
34868 2015-04-11  Chris Zheng  <chriszheng99@gmail.com>  (tiny change)
34870         Support GnuTLS v3.4 and later on MS-Windows
34871         * src/gnutls.c (syms_of_gnutls) <libgnutls-version>: New DEFSYM.
34872         * lisp/term/w32-win.el (dynamic-library-alist): Determine which
34873         GnuTLS DLL to load according to value of libgnutls-version.
34874         (Bug#20294)
34876 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
34878         Minor quoting etc. fixes to misc manuals
34879         Fix some minor quoting and spacing issues.  Distinguish more
34880         clearly among grave accent and apostrophe (which are ASCII) and
34881         single quote (which is not).  Prefer the standard terms
34882         "apostrophe" and "grave accent" to alternative names that can be
34883         confusing.  Use apostrophes to single-quote ASCII text.
34884         * doc/misc/remember.texi: Spell the mystic's pseudonym in UTF-8
34885         rather than approximating it in ASCII with grave accent.
34887 2015-04-11  Daiki Ueno  <ueno@gnu.org>
34889         Respect more keyword args in `make-process'
34890         * src/process.c (Fmake_process): Respect `:sentinel' and `:filter'
34891         keywords as documented.
34893 2015-04-10  Dmitry Gutov  <dgutov@yandex.ru>
34895         Extract ChangeLog entries when committing a directory
34896         * lisp/vc/vc-dispatcher.el (vc-log-edit): Update FIXME comment.
34897         * lisp/vc/log-edit.el (log-edit-changelog-insert-entries):
34898         Add a FIXME comment.
34899         (log-edit-changelog-entries): Extract from
34900         `log-edit-changelog-entries', handle FILE being a directory
34901         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00555.html).
34903 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
34905         Fix problems found by --enable-gcc-warnings
34906         * src/process.c (create_process, Fmake_pipe_process)
34907         (Fmake_network_process): Omit unused locals.
34909         Fix commit-msg to handle scissors lines
34910         * build-aux/git-hooks/commit-msg:
34911         Ignore every line after a scissors line, such as a line generated
34912         by 'git commit -v'.  Problem reported by Johan Bockgård in:
34913         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00580.html
34915         port commit-msg to Gawk 3.0.4 (1999)
34916         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format, cent_sign)
34917         (print_at_sign, at_sign): New vars.  Use them to avoid problems
34918         Eli Zaretskii encountered with Gawk 3.0.4 (1999) on MSYS.  See:
34919         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
34921         Have commit-msg report commit failure
34922         * build-aux/git-hooks/commit-msg: If the commit is aborted,
34923         say so.  Simplify by doing this at the end.  Problem reported
34924         by Eli Zaretskii in:
34925         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
34927 2015-04-10  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
34929         Clean up LDAP Configuration section of EUDC manual
34930         * doc/misc/eudc.texi: Combine indices.
34931         (LDAP Configuration): Use command markup.  Add index entries.
34932         Change formatting.  Wrap long lines.  Add noindent markup.
34934 2015-04-10  Daiki Ueno  <ueno@gnu.org>
34936         Add facility to collect stderr of async subprocess
34937         * src/w32.h (register_aux_fd): New function declaration.
34938         * src/w32.c (register_aux_fd): New function.
34939         * src/process.h (struct Lisp_Process): New member stderrproc.
34940         * src/process.c (PIPECONN_P): New macro.
34941         (PIPECONN1_P): New macro.
34942         (Fdelete_process, Fprocess_status, Fset_process_buffer)
34943         (Fset_process_filter, Fset_process_sentinel, Fstop_process)
34944         (Fcontinue_process): Handle pipe process specially.
34945         (create_process): Respect p->stderrproc.
34946         (Fmake_pipe_process): New function.
34947         (Fmake_process): Add new keyword argument :stderr.
34948         (wait_reading_process_output): Specially handle a pipe process when
34949         it gets an EOF.
34950         (syms_of_process): Register Qpipe and Smake_pipe_process.
34951         * doc/lispref/processes.texi (Asynchronous Processes): Document
34952         `make-pipe-process' and `:stderr' keyword of `make-process'.
34953         * lisp/subr.el (start-process): Suggest to use `make-process' handle
34954         standard error separately.
34955         * test/automated/process-tests.el (process-test-stderr-buffer)
34956         (process-test-stderr-filter): New tests.
34957         * etc/NEWS: Mention new process type `pipe' and its usage with the
34958         `:stderr' keyword of `make-process'.
34960 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
34962         Minor quoting etc. fixes to lispref manual
34963         * doc/lispref/tips.texi (Documentation Tips):
34964         Distinguish more clearly among grave accent, apostrophe,
34965         and single quote.
34966         * doc/lispref/README, doc/lispref/buffers.texi:
34967         * doc/lispref/commands.texi, doc/lispref/control.texi:
34968         * doc/lispref/customize.texi, doc/lispref/display.texi:
34969         * doc/lispref/elisp.texi, doc/lispref/files.texi:
34970         * doc/lispref/frames.texi, doc/lispref/hash.texi:
34971         * doc/lispref/help.texi, doc/lispref/internals.texi:
34972         * doc/lispref/loading.texi, doc/lispref/makefile.w32-in:
34973         * doc/lispref/markers.texi, doc/lispref/modes.texi:
34974         * doc/lispref/nonascii.texi, doc/lispref/objects.texi:
34975         * doc/lispref/os.texi, doc/lispref/positions.texi:
34976         * doc/lispref/strings.texi, doc/lispref/syntax.texi:
34977         * doc/lispref/text.texi, doc/lispref/tips.texi:
34978         * doc/lispref/two-volume-cross-refs.txt, doc/lispref/windows.texi:
34979         Use American-style double quoting in ordinary text,
34980         and quote 'like this' when single-quoting in ASCII text.
34981         Also, fix some minor spacing issues.
34983 2015-04-10  Michael Albinus  <michael.albinus@gmx.de>
34985         Handle symlinked test directory in tramp-tests.el
34986         * test/automated/tramp-tests.el (tramp-test18-file-attributes)
34987         (tramp--test-check-files): Use `file-truename' for directories.
34989 2015-04-10  Eli Zaretskii  <eliz@gnu.org>
34991         Fix 'recenter' when visual-line-mode is turned on
34992         * src/window.c (Frecenter): Use the same code for GUI and TTY
34993         frames alike; use vmotion only for "initial" frames.  This is
34994         because vmotion doesn't support visual-line-mode.  Rewrite the
34995         'iarg >= 0' case to use move_it_* functions instead of using
34996         vmotion, for the same reason.  Fix the clipping of the argument
34997         value to support scroll-margin in all cases and avoid unwarranted
34998         recentering.  Reported by Milan Stanojević <milanst@gmail.com> in
34999         http://lists.gnu.org/archive/html/help-gnu-emacs/2015-04/msg00092.html,
35000         which see.
35002 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
35004         * lisp/abbrev.el (define-abbrev-table): Refine last change.
35006         * lisp/emacs-lisp/cl-lib.el: Partial revert of "2015-04-05 Rationalize
35007         use of c[ad]+r", so as to keep the "cl-" prefix on all
35008         cl-lib definitions.
35010         * lisp/progmodes/vhdl-mode.el (vhdl-prepare-search-2):
35011         Use inhibit-point-motion-hooks.
35013         * lisp/cedet/semantic: Remove some dead code.
35014         * lisp/cedet/semantic/util-modes.el
35015         (semantic-stickyfunc-header-line-format): Emacs<22 is not supported
35016         any more.
35017         * lisp/cedet/semantic/fw.el (semantic-buffer-local-value): Emacs<21 is
35018         not supported any more.
35019         (semantic-safe): Use `declare'.
35020         * lisp/cedet/semantic/decorate.el (semantic-set-tag-intangible)
35021         (semantic-tag-intangible-p): Remove unused functions.
35022         * lisp/cedet/semantic/complete.el (semantic-displayor-window-edges):
35023         Remove unused function.
35025         * lisp/gnus/gnus-art.el (gnus-hidden-properties): Simplify.
35026         (gnus-article-hide-text, gnus-article-unhide-text)
35027         (gnus-article-unhide-text-type): Remove special handling of
35028         `intangible' since that property is not used any more.
35029         (gnus-article-treat-body-boundary): Use gnus-hidden-properties.
35031 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
35033         Use the VC root in `log-edit-listfun'
35034         * lisp/vc/vc-dispatcher.el (vc-log-edit): Use the VC root in
35035         `log-edit-listfun'.
35037 2015-04-09  Jay Belanger  <jay.p.belanger@gmail.com>
35039         Fix description of Unix time, mention new function.
35040         * lisp/calc/calc-forms.el (calcFunc-unixtime): Fix adjustment for
35041         Unix time.
35042         * doc/misc/calc.texi (Date Forms): Fix description of Unix time.
35043         (Basic Operations on Units): Mention `calc-convert-exact-units'.
35045 2015-04-09  Artur Malabarba  <bruce.connor.am@gmail.com>
35047         * lisp/emacs-lisp/package.el: Use mode-line-process for notification.
35049 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
35051         * lisp/vc/log-edit.el (log-edit-insert-changelog-entries):
35052         Don't add newline after the last entry.
35054 2015-04-09  Simen Heggestøyl  <simenheg@gmail.com>
35056         css-mode.el: Add "not" pseudo-class
35057         (Bug#20267)
35058         * lisp/textmodes/css-mode.el (css-pseudo-class-ids): Add "not" to
35059         list of CSS pseudo-classes.
35061 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
35063         * etc/NEWS: Add missing entry for "Stop messing with the EMACS env var".
35065 2015-04-09  Michael Albinus  <michael.albinus@gmx.de>
35067         Stop messing with the EMACS env var
35068         * doc/emacs/misc.texi (Interactive Shell): Remove description of
35069         EMACS env var.
35071 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
35073         Adapt 'make change-history' to coding cookie
35074         * Makefile.in (change-history): Adjust to change of format of
35075         ChangeLog file, which now has a coding cookie before an indented
35076         copyright notice.
35078 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
35080         Adapt 'make change-history' to coding cookie
35081         * Makefile.in (change-history): Adjust to change of format of
35082         ChangeLog file, which now has a coding cookie before an indented
35083         copyright notice.
35085         gitlog-to-changelog coding cookie and mv -i
35086         * build-aux/gitlog-to-emacslog: Use ChangeLog.1, not Makefile.in,
35087         for copyright notice prototype, so that we get a proper "coding:"
35088         cookie.  Use 'mv -i' to avoid unconditionally overwriting an
35089         existing ChangeLog.  Problems reported by Eli Zaretskii in:
35090         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00504.html
35092         Merge from gnulib
35093         * build-aux/gitlog-to-changelog: Update from gnulib, incorporating:
35094         2015-04-09 gitlog-to-changelog: port to MS-Windows
35096 2015-04-09  Boruch Baum  <boruch_baum@gmx.com>  (tiny change)
35098         * lisp/bookmark.el (bookmark-bmenu-goto-bookmark): Don't inf-loop.
35099         (Bug#20212)
35101 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
35103         Stop messing with the EMACS env var
35104         (Bug#20202)
35105         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
35106         * lisp/comint.el (comint-exec-1):
35107         * lisp/term.el (term-exec-1): Don't set EMACS envvar.
35108         * lisp/progmodes/compile.el (compilation-start): Same and bring
35109         INSIDE_EMACS's format in line with other users.
35111         css-mode.el (css-smie-rules): Fix indentation after complex selectors
35112         (Bug#20282)
35113         * lisp/textmodes/css-mode.el (css-smie-rules): Don't get confused by
35114         inner structure of selectors.
35116 2015-04-08  Fabián Ezequiel Gallina  <fgallina@gnu.org>
35118         python.el: Indent docstring lines to base-indent
35119         (Bug#19595)
35120         Thanks to immerrr <immerrr@gmail.com> for reporting and providing
35121         an initial patch.
35122         * lisp/progmodes/python.el
35123         (python-indent-context): Add :inside-docstring context.
35124         (python-indent--calculate-indentation): Handle :inside-docstring.
35125         (python-indent-region): Re-indent docstrings.
35126         * test/automated/python-tests.el (python-indent-region-5)
35127         (python-indent-inside-string-2): Fix tests.
35129         python.el: Increase native completion robustness
35130         (Bug#19755)
35131         Thanks to Carlos Pita <carlosjosepita@gmail.com> for reporting
35132         this and providing useful ideas.
35133         * lisp/progmodes/python.el
35134         (python-shell-completion-native-output-timeout): Increase value.
35135         (python-shell-completion-native-try-output-timeout): New var.
35136         (python-shell-completion-native-try): Use it.
35137         (python-shell-completion-native-setup): New readline setup avoids
35138         polluting current context, ensures output when no-completions are
35139         available and includes output end marker.
35140         (python-shell-completion-native-get-completions): Trigger with one
35141         tab only.  Call accept-process-output until output end is found or
35142         python-shell-completion-native-output-timeout is exceeded.
35144 2015-04-08  Samer Masterson  <samer@samertm.com>
35146         * lisp/eshell: Make backslash a no-op in front of normal chars
35147         (Bug#8531)
35148         * lisp/eshell/esh-arg.el (eshell-parse-argument-hook): Update comment.
35149         (eshell-parse-backslash): Return escaped character after backslash
35150         if it is special.  Otherwise, if the backslash is not in a quoted
35151         string, ignore the backslash and return the character after; if
35152         the backslash is in a quoted string, return the backslash and the
35153         character after.
35154         * test/automated/eshell.el (eshell-test/escape-nonspecial)
35155         (eshell-test/escape-nonspecial-unicode)
35156         (eshell-test/escape-nonspecial-quoted)
35157         (eshell-test/escape-special-quoted): Add tests for new
35158         `eshell-parse-backslash' behavior.
35160 2015-04-08  Gustav Hållberg  <gustav@gmail.com>  (tiny change)
35162         * lisp/vc/diff-mode.el (diff-hunk-file-names): Don't require a TAB
35163         after the file name.
35164         (Bug#20276)
35166 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
35168         Minor quoting etc. fixes to Emacs manual
35169         * doc/emacs/Makefile.in, doc/emacs/ack.texi, doc/emacs/building.texi:
35170         * doc/emacs/calendar.texi, doc/emacs/cmdargs.texi:
35171         * doc/emacs/custom.texi, doc/emacs/dired.texi, doc/emacs/emacs.texi:
35172         * doc/emacs/files.texi, doc/emacs/glossary.texi, doc/emacs/gnu.texi:
35173         * doc/emacs/indent.texi, doc/emacs/macos.texi:
35174         * doc/emacs/maintaining.texi, doc/emacs/makefile.w32-in:
35175         * doc/emacs/programs.texi, doc/emacs/rmail.texi:
35176         * doc/emacs/search.texi, doc/emacs/trouble.texi:
35177         * doc/emacs/vc1-xtra.texi:
35178         Use American-style double quoting in ordinary text,
35179         and quote 'like this' when single-quoting in ASCII text.
35180         Also, fix some minor spacing issues.
35182         Minor quoting etc. fixes to elisp intro
35183         * doc/lispintro/emacs-lisp-intro.texi: Consistently use
35184         American-style double quoting in ordinary text.  In ASCII text,
35185         consistently quote 'like this' instead of `like this', unless
35186         Emacs requires the latter.
35188 2015-04-08  Dmitry Gutov  <dgutov@yandex.ru>
35190         * CONTRIBUTE: Mention log-edit-insert-changelog.
35192         * CONTRIBUTE: Emphasize creating the top-level ChangeLog file manually.
35194 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
35196         * doc/misc/calc.texi (Summary): Avoid '@:' when usurped.
35198 2015-04-08  Stefan Monnier  <monnier@iro.umontreal.ca>
35200         * lisp/emacs-lisp/eieio-core.el (eieio-copy-parents-into-subclass):
35201         Fix inheritance of initargs.  (Bug#20270)
35203 2015-04-08  Artur Malabarba  <bruce.connor.am@gmail.com>
35205         * lisp/emacs-lisp/package.el (package-menu-mode): Mode-line notification
35206         while dowloading information.
35208         * lisp/emacs-lisp/package.el: More conservative `ensure-init-file'
35209         (package--ensure-init-file): Check file contents before visiting.
35210         (package-initialize): Call it.
35211         (package-install-from-buffer, package-install): Don't call it.
35213 2015-04-08  Eli Zaretskii  <eliz@gnu.org>
35215         * src/eval.c (init_eval_once): Bump max_lisp_eval_depth to 800.
35216         (Bug#17517)
35218 2015-04-08  Michael Albinus  <michael.albinus@gmx.de>
35220         * lisp/net/tramp-cache.el (tramp-flush-file-property):
35221         Fix nasty scoping bug.
35223 2015-04-08  Tassilo Horn  <tsdh@gnu.org>
35225         Add notice to visual commands section
35226         * doc/misc/eshell.texi (Input/Output): Add notice that some tools
35227         such as git call less with its -F option which omits pagination if
35228         the contents is less than one page long.  This interferes with
35229         eshell's visual (sub-)commands.
35231 2015-04-07  Dmitry Gutov  <dgutov@yandex.ru>
35233         * lisp/ffap.el (ffap-string-at-point-mode-alist): Support
35234         environment variable expansion in file names.  (Bug#19839)
35236 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
35238         Prefer double-quote to accent-grave in man pages
35240 2015-04-07  Stefan Monnier  <monnier@iro.umontreal.ca>
35242         (Bug#20257)
35243         * lisp/files.el (set-visited-file-name): Clear auto-save if nil.
35245 2015-04-07  Ivan Shmakov  <ivan@siamics.net>
35247         Update etc/PROBLEMS.
35248         * etc/PROBLEMS: Mention visible-cursor; a few more mentions of
35249         ~/.Xresources and xrdb(1); refer to 'GNU Coreutils' and
35250         'X Window System' or 'X' (were: 'GNU Fileutils' and 'X Windows',
35251         respectively); other minor updates and tweaks.  (Bug#20011)
35253 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
35255         Add doc strings for some Isearch state vars
35256         * lisp/misearch.el (multi-isearch-buffer-list)
35257         (multi-isearch-file-list): Add doc strings.
35258         (Bug#20232)
35260 2015-04-07  Alan Mackenzie  <acm@muc.de>
35262         Always mark "<" and ">" in #include directives with text properties.
35263         * lisp/progmodes/cc-fonts.el (c-cpp-matchers): Replace a font-lock
35264         "anchored matcher" with an invocation of
35265         c-make-font-lock-search-function to allow fontification when there's
35266         no trailing space on an "#include <..>" line.
35268 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
35270         Generate a ChangeLog file from commit logs
35271         * .gitignore: Add 'ChangeLog'.
35272         * build-aux/gitlog-to-changelog: New file, from Gnulib.
35273         * build-aux/gitlog-to-emacslog: New file.
35274         * CONTRIBUTE: Document the revised workflow.
35275         * Makefile.in (clean): Remove *.tmp and etc/*.tmp*
35276         instead of just special cases.
35277         (CHANGELOG_HISTORY_INDEX_MAX, CHANGELOG_N, gen_origin): New vars.
35278         (ChangeLog, unchanged-history-files, change-history)
35279         (change-history-commit): New rules.
35280         * admin/admin.el (make-manuals-dist--1):
35281         Don't worry about doc/ChangeLog.
35282         * admin/authors.el: Add a FIXME.
35283         * admin/make-tarball.txt:
35284         * lisp/calendar/icalendar.el:
35285         * lisp/gnus/deuglify.el:
35286         * lisp/obsolete/gulp.el:
35287         * lwlib/README:
35288         Adjust to renamed ChangeLog history files.
35289         * admin/merge-gnulib (GNULIB_MODULES): Add gitlog-to-changelog.
35290         * admin/notes/repo: Call it 'master' a la Git, not 'trunk' a la Bzr.
35291         Remove obsolete discussion of merging ChangeLog files.
35292         New section "Maintaining ChangeLog history".
35293         * build-aux/git-hooks/pre-commit:
35294         Reject attempts to commit files named 'ChangeLog'.
35295         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
35296         * make-dist: Make and distribute top-level ChangeLog if there's a
35297         .git directory.  Distribute the new ChangeLog history files
35298         instead of scattered ChangeLog files.  Distribute the new files
35299         gitlog-to-changelog and gitlog-to-emacslog.
35300         (Bug#19113)
35302         Rename ChangeLogs for gitlog-to-changelog
35303         This patch was implemented via the following shell commands:
35304         find * -name ChangeLog |
35305         sed 's,.*,git mv & &.1,
35306         s, lisp/ChangeLog\.1$, lisp/ChangeLog.17,
35307         s, lisp/erc/ChangeLog\.1$, lisp/erc/ChangeLog.09,
35308         s, lisp/gnus/ChangeLog\.1$, lisp/gnus/ChangeLog.3,
35309         s, lisp/mh-e/ChangeLog\.1$, lisp/mh-e/ChangeLog.2,
35310         s, src/ChangeLog\.1$, src/ChangeLog.13,' |
35311         sh
35312         git commit -am"[this commit message]"
35314 This file records repository revisions from
35315 commit 9d56a21e6a696ad19ac65c4b405aeca44785884a (exclusive) to
35316 commit e8f0d7dcadd2b35f62f7a14b96df15e5314d7f6e (inclusive).
35317 See ChangeLog.1 for earlier changes.
35319 ;; Local Variables:
35320 ;; coding: utf-8
35321 ;; End:
35323   Copyright (C) 2015-2017 Free Software Foundation, Inc.
35325   This file is part of GNU Emacs.
35327   GNU Emacs is free software: you can redistribute it and/or modify
35328   it under the terms of the GNU General Public License as published by
35329   the Free Software Foundation, either version 3 of the License, or
35330   (at your option) any later version.
35332   GNU Emacs is distributed in the hope that it will be useful,
35333   but WITHOUT ANY WARRANTY; without even the implied warranty of
35334   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
35335   GNU General Public License for more details.
35337   You should have received a copy of the GNU General Public License
35338   along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.